public static void upclassifyOneDescription(LogicObject self) {
    if (Logic.upclassifiedP(self) ||
        (!Stella_Object.isaP(self, Logic.SGT_LOGIC_DESCRIPTION))) {
      return;
    }
    if ((Stella.$TRACED_KEYWORDS$ != null) &&
        (Stella.$TRACED_KEYWORDS$.membP(Logic.KWD_CLASSIFIER) ||
         Stella.$TRACED_KEYWORDS$.membP(Logic.KWD_CLASSIFIER_PROFILE))) {
      System.out.println("UPCLASSIFY: " + self);
    }
    Logic.emitThinkingDot(Logic.KWD_UPCLASSIFY);
    { Cons equivalents = LogicObject.allEquivalentCollections(self, true);

      { LogicObject e = null;
        Cons iter000 = equivalents;

        for (;!(iter000 == Stella.NIL); iter000 = iter000.rest) {
          e = ((LogicObject)(iter000.value));
          if (!Description.namedDescriptionP(((Description)(e)))) {
            { Description pd = null;
              Cons iter001 = Description.allIntensionalParents(((Description)(e))).theConsList;

              for (;!(iter001 == Stella.NIL); iter001 = iter001.rest) {
                pd = ((Description)(iter001.value));
                Description.addSubsumptionLink(((Description)(self)), pd);
              }
            }
          }
        }
      }
    }
    { NamedDescription renamed_Super = null;
      Cons iter002 = Description.allNamedDirectSuperdescriptions(((Description)(self)), true);

      for (;!(iter002 == Stella.NIL); iter002 = iter002.rest) {
        renamed_Super = ((NamedDescription)(iter002.value));
        LogicObject.upclassifyOneDescription(renamed_Super);
      }
    }
    LogicObject.helpUpclassifyOneEntity(self, Logic.KWD_DESCRIPTION);
  }