@Override
  public boolean isImplicitWrite(@NotNull PsiElement element) {
    if (element instanceof PsiField field) {
      if (!isImplicitFxmlAccess(field)) return false;
      final String fieldName = field.getName();

      final PsiClass containingClass = field.getContainingClass();
      if (containingClass == null) return false;
      final String qualifiedName = containingClass.getQualifiedName();
      if (qualifiedName == null) return false;
      final Project project = element.getProject();
      if (isInjectedByFxmlLoader(field)) {
        return true;
      }

      if (field.getType() instanceof PsiClassType controllerClassType) {
        PsiClass controllerClass = controllerClassType.resolve();
        if (controllerClass != null
            && controllerClass.getQualifiedName() != null
            && !InheritanceUtil.isInheritor(controllerClass, "javafx.scene.Node")
            && !JavaFxControllerClassIndex.findFxmlsWithController(project, controllerClass.getQualifiedName()).isEmpty()) {
          // another controller injected here
          return true;
        }
      }

      Collection<VirtualFile> containingFiles = JavaFxIdsIndex.getContainingFiles(project, fieldName);
      if (containingFiles.isEmpty()) {
        return false;
      }

      // is the field declared in a controller class?
      final List<VirtualFile> fxmls = JavaFxControllerClassIndex.findFxmlsWithController(project, qualifiedName);
      for (VirtualFile fxml : fxmls) {
        if (containingFiles.contains(fxml)) return true;
      }
      // is the field declared in a superclass of a controller class?
      return isFxmlUsage(field, GlobalSearchScope.filesScope(project, containingFiles));
    }
    return false;
  }
@Override
  public boolean isImplicitWrite(@NotNull PsiElement element)