@Override
    public boolean value(final PsiClass psiClass) {
      return MAIN_CLASS.value(psiClass) &&
             psiClass.hasModifierProperty(PsiModifier.PUBLIC) &&
             !psiClass.hasModifierProperty(PsiModifier.ABSTRACT);
    }
@Override
    public boolean value(final PsiClass psiClass)