@Override
  public boolean tryReuse(@NotNull PsiFile newInjectedFile, @NotNull TextRange newHostRange) {
    if (myInjectedFile == newInjectedFile) return handlesRange(newHostRange);

    if (myInjectedFile == null || !myInjectedFile.isValid()) {
      DocumentWindow documentWindow = InjectedLanguageUtil.getDocumentWindow(newInjectedFile);
      if (documentWindow != null && handlesRange(newHostRange)) {
        myInjectedFile = newInjectedFile;
        return true;
      }
    }

    return false;
  }
@Override
  public boolean tryReuse(@NotNull PsiFile newInjectedFile, @NotNull TextRange newHostRange)