code: protected function applyFix(\SplFileInfo $file, Tokens $tokens)
      {
          $importedOriginalClassesMap = [];
          $currIndex = 0;
  
          while (null !== $currIndex) {
              $currIndex = $tokens->getNextTokenOfKind($currIndex, [[T_STRING]]);
  
              if (null === $currIndex) {
                  break;
              }
  
              $originalClass = $tokens[$currIndex]->getContent();
  
              if (1 !== Preg::match($this->originalClassRegEx, $originalClass)) {
                  ++$currIndex;
  
                  continue;
              }
  
              $substituteTokens = $this->generateReplacement($originalClass);
  
              $tokens->clearAt($currIndex);
              $tokens->insertAt(
                  $currIndex,
                  isset($importedOriginalClassesMap[$originalClass]) ? $substituteTokens[$substituteTokens->getSize() - 1] : $substituteTokens
              );
  
              $prevIndex = $tokens->getPrevMeaningfulToken($currIndex);
              if ($tokens[$prevIndex]->isGivenKind(T_USE)) {
                  $importedOriginalClassesMap[$originalClass] = true;
              } elseif ($tokens[$prevIndex]->isGivenKind(T_NS_SEPARATOR)) {
                  $prevIndex = $tokens->getPrevMeaningfulToken($prevIndex);
  
                  if ($tokens[$prevIndex]->isGivenKind(T_USE)) {
                      $importedOriginalClassesMap[$originalClass] = true;
                  }
              }
          }
      }
docs: {@inheritdoc}