private static @Nullable LineMarkerInfo<PsiElement> createIconLineMarker(@Nullable UExpression initializer, PsiElement bindingElement) {
    if (initializer == null) {
      return null;
    }

    Project project = bindingElement.getProject();
    ProjectIconsAccessor iconsAccessor = ProjectIconsAccessor.getInstance(project);
    VirtualFile file = iconsAccessor.resolveIconFile(initializer);
    if (file == null) {
      return null;
    }

    Icon icon = iconsAccessor.getIcon(file);
    if (icon == null) {
      return null;
    }

    GutterIconNavigationHandler<PsiElement> navHandler = (e, elt) -> FileEditorManager.getInstance(project).openFile(file, true);
    return new LineMarkerInfo<>(bindingElement, bindingElement.getTextRange(), icon,
                                null, navHandler,
                                GutterIconRenderer.Alignment.LEFT);
  }
private static @Nullable LineMarkerInfo<PsiElement> createIconLineMarker(@Nullable UExpression initializer, PsiElement bindingElement)