public static void normalizeParentModules(Module self) {
    if (!self.multipleParentsP()) {
      return;
    }
    { List parents = self.parentModules;
      boolean recomputefullnameP = false;

      { Module supermodule = null;
        Cons iter000 = parents.theConsList;

        for (;!(iter000 == Stella.NIL); iter000 = iter000.rest) {
          supermodule = ((Module)(iter000.value));
          { Module othersupermodule = null;
            Cons iter001 = parents.theConsList;

            for (;!(iter001 == Stella.NIL); iter001 = iter001.rest) {
              othersupermodule = ((Module)(iter001.value));
              if (!(othersupermodule == supermodule)) {
                if (supermodule.allSuperContexts.memberP(othersupermodule)) {
                  parents.remove(othersupermodule);
                  othersupermodule.childContexts.remove(self);
                  recomputefullnameP = true;
                }
              }
            }
          }
        }
      }
      if (recomputefullnameP) {
        self.moduleFullName = Stella.computeFullName("", self);
      }
    }
  }