public @Nullable PsiFile getReferencingFile(@NotNull PsiElement element) {
    String relativeFilePath = element.getText();
    if (element instanceof ShString shString) {
      if (relativeFilePath.length() >= 2 &&
          (shString.getOpenQuote() != null && shString.getCloseQuote() != null) ||
          (shString.getRawString() != null && relativeFilePath.startsWith("'") && relativeFilePath.endsWith("'"))) {
        relativeFilePath = relativeFilePath.substring(1, relativeFilePath.length() - 1);
      }
    } else {
      if (relativeFilePath.contains("\\ ")) {
        relativeFilePath = relativeFilePath.replace("\\ ", " ");
      }
    }

    PsiDirectory containingDirectory = getContainingFile().getContainingDirectory();
    if (containingDirectory == null) return null;
    VirtualFile relativeFile = VfsUtilCore.findRelativeFile(relativeFilePath, containingDirectory.getVirtualFile());
    if (relativeFile == null) return null;
    return PsiManager.getInstance(getProject()).findFile(relativeFile);
  }
public @Nullable PsiFile getReferencingFile(@NotNull PsiElement element)