public static List<SNode> virtual_getOwnMethods_1906502351318572840(SNode thisNode) {
   List<SNode> baseMethodDeclarations = new ArrayList<SNode>();
   ListSequence.fromList(baseMethodDeclarations)
       .addSequence(
           Sequence.fromIterable(Classifier_Behavior.call_methods_5292274854859311639(thisNode)));
   ListSequence.fromList(baseMethodDeclarations)
       .addSequence(
           Sequence.fromIterable(
               ClassConcept_Behavior.call_staticMethods_5292274854859435867(thisNode)));
   return baseMethodDeclarations;
 }
 public static boolean virtual_hasStaticMemebers_1214840444586(SNode thisNode) {
   return BehaviorReflection.invokeSuper(
           Boolean.TYPE,
           thisNode,
           "jetbrains.mps.baseLanguage.structure.Classifier",
           "virtual_hasStaticMemebers_1214840444586",
           new Object[] {})
       || Sequence.fromIterable(
               ClassConcept_Behavior.call_staticMethods_5292274854859435867(thisNode))
           .isNotEmpty();
 }
 public static SNode call_getMainMethod_1213877355884(SNode thisNode) {
   return Sequence.fromIterable(
           ClassConcept_Behavior.call_staticMethods_5292274854859435867(thisNode))
       .where(
           new IWhereFilter<SNode>() {
             public boolean accept(SNode it) {
               return StaticMethodDeclaration_Behavior.call_isMainMethod_1213877536670(it);
             }
           })
       .first();
 }
 public static List<Icon> virtual_getMarkIcons_3923831204883340393(SNode thisNode) {
   List<Icon> markIcons =
       new ArrayList<Icon>(
           BehaviorReflection.invokeSuper(
               (Class<List<Icon>>) ((Class) Object.class),
               thisNode,
               "jetbrains.mps.baseLanguage.structure.Classifier",
               "virtual_getMarkIcons_3923831204883340393",
               new Object[] {}));
   if ((ClassConcept_Behavior.call_getMainMethod_1213877355884(thisNode) != null)) {
     markIcons.add(IconResourceBundle_Behavior.getInstance().getResource("RUNNABLEMARK"));
   }
   if (SPropertyOperations.getBoolean(thisNode, "isFinal")) {
     markIcons.add(IconResourceBundle_Behavior.getInstance().getResource("FINALMARK"));
   }
   return markIcons;
 }
 @Deprecated
 @ToRemove(version = 3.0)
 public static boolean virtual_isRunnable_7941158526576616752(SNode thisNode) {
   return (ClassConcept_Behavior.call_getMainMethod_1213877355884(thisNode) != null);
 }
  @Deprecated
  public static Scope virtual_getMembers_2201875424515824604(SNode thisNode, SNode kind) {
    SNode superClass =
        SLinkOperations.getTarget(
            BehaviorReflection.invokeVirtual(
                (Class<SNode>) ((Class) Object.class),
                thisNode,
                "virtual_getSuperclass_1240936569950",
                new Object[] {}),
            "classifier",
            false);
    if (SConceptOperations.isSubConceptOf(
        kind, "jetbrains.mps.baseLanguage.structure.ClassifierMember")) {
      return BehaviorReflection.invokeSuper(
          Scope.class,
          thisNode,
          "jetbrains.mps.baseLanguage.structure.Classifier",
          "virtual_getMembers_2201875424515824604",
          new Object[] {kind});
    }

    // todo: remove this code from getMembers to getScope?
    if (SConceptOperations.isSubConceptOf(
        kind, "jetbrains.mps.baseLanguage.structure.ThisConstructorKind")) {
      return new NamedElementsScope(
          ClassConcept_Behavior.call_constructors_5292274854859503373(thisNode));
    }
    if (SConceptOperations.isSubConceptOf(
            kind, "jetbrains.mps.baseLanguage.structure.SuperConstructorKind")
        || SConceptOperations.isSubConceptOf(
            kind, "jetbrains.mps.baseLanguage.structure.SuperMethodKind")) {
      if (Classifier_Behavior.call_isSame_4855996797771684010(
          thisNode,
          SNodeOperations.getNode(
              "f:java_stub#6354ebe7-c22a-4a0f-ac54-50b52ab9b065#java.lang(JDK/java.lang@java_stub)",
              "~Object"))) {
        return new EmptyScope();
      }

      if ((superClass == null)) {
        if (LOG.isEnabledFor(Priority.WARN)) {
          LOG.warn(
              "Superclass classifier is null for not java.lang.Object classifier in " + thisNode);
        }
        return new EmptyScope();
      }

      if (SConceptOperations.isSubConceptOf(
          kind, "jetbrains.mps.baseLanguage.structure.SuperConstructorKind")) {
        return MemberScopes.visibleClassifierMembers(
            superClass,
            SConceptOperations.findConceptDeclaration(
                "jetbrains.mps.baseLanguage.structure.ThisConstructorKind"),
            thisNode);
      }
      if (SConceptOperations.isSubConceptOf(
          kind, "jetbrains.mps.baseLanguage.structure.SuperMethodKind")) {
        return MemberScopes.nonAbstractMethods(
            MemberScopes.visibleClassifierMembers(
                superClass,
                SConceptOperations.findConceptDeclaration(
                    "jetbrains.mps.baseLanguage.structure.InstanceMethodDeclaration"),
                thisNode));
      }
    }

    return BehaviorReflection.invokeSuper(
        Scope.class,
        thisNode,
        "jetbrains.mps.baseLanguage.structure.Classifier",
        "virtual_getMembers_2201875424515824604",
        new Object[] {kind});
  }