public static void collectSubsumingParentsBelow(LogicObject self, Description renamed_Super, List newparentdescriptions, MarkerTable alreadyvisitedtable, MarkerTable selfisbelowtable, java.lang.reflect.Method subsumptiontest) {
    if ((Stella.$TRACED_KEYWORDS$ != null) &&
        Stella.$TRACED_KEYWORDS$.membP(Logic.KWD_CLASSIFIER)) {
      System.out.println("COLLECT-SUBSUMING  self= " + self + "    super= " + renamed_Super);
    }
    if ((Stella.$TRACED_KEYWORDS$ != null) &&
        Stella.$TRACED_KEYWORDS$.membP(Logic.KWD_CLASSIFIER)) {
      System.out.println("   ALL-INFERABLE-SUBS:  " + Cons.consList(Cons.cons(LogicObject.allInferableDirectSubcollections(renamed_Super).listify(), Stella.NIL)));
    }
    { Object old$ReversepolarityP$000 = Logic.$REVERSEPOLARITYp$.get();

      try {
        Native.setBooleanSpecial(Logic.$REVERSEPOLARITYp$, false);
        { Description sub = null;
          Cons iter000 = LogicObject.allInferableDirectSubcollections(renamed_Super).theConsList;

          for (;!(iter000 == Stella.NIL); iter000 = iter000.rest) {
            sub = ((Description)(iter000.value));
            if (!alreadyvisitedtable.testMarkerP(sub)) {
              LogicObject.helpCollectParentsBelowP(self, sub, newparentdescriptions, alreadyvisitedtable, selfisbelowtable, subsumptiontest);
            }
          }
        }

      } finally {
        Logic.$REVERSEPOLARITYp$.set(old$ReversepolarityP$000);
      }
    }
  }