public static String javaHeuristicallyTranslateName(String stellaName, Cons caseConvertedNameList) {
    { StringWrapper pname = null;
      Cons iter000 = caseConvertedNameList;

      for (;!(iter000 == Stella.NIL); iter000 = iter000.rest) {
        pname = ((StringWrapper)(iter000.value));
        if (Stella.stringEqualP(pname.wrapperValue, stellaName)) {
          return (pname.wrapperValue);
        }
      }
    }
    { boolean testValue000 = false;

      if (((Module)(Stella.$MODULE$.get())).caseSensitiveP) {
        testValue000 = true;
      }
      else {
        { boolean foundP000 = false;

          { char ch = Stella.NULL_CHARACTER;
            String vector000 = stellaName;
            int index000 = 0;
            int length000 = vector000.length();

            loop001 : for (;index000 < length000; index000 = index000 + 1) {
              ch = vector000.charAt(index000);
              if (Stella.upperCaseCharacterP(ch)) {
                foundP000 = true;
                break loop001;
              }
            }
          }
          testValue000 = foundP000;
        }
      }
      if (testValue000) {
        {
          return (Stella.javaTranslateNamestring(Stella.makeMatchingNameFull(stellaName, Stella.KWD_NO, Stella.KWD_NO, "- ", "", "", "", "", Stella.KWD_PRESERVE, "_")));
        }
      }
      else {
        if (Native.string_memberP(stellaName, '*')) {
          {
            return (Stella.javaTranslateNamestring(Stella.makeMatchingNameFull(stellaName, Stella.KWD_CLEVER, Stella.KWD_CLEVER, "- ", "", "", "", "", Stella.KWD_UPCASE, "_")));
          }
        }
        else {
          {
            return (Stella.javaTranslateNamestring(Stella.makeMatchingNameFull(stellaName, Stella.KWD_CLEVER, Stella.KWD_CLEVER, "- ", "", "", "", "", Stella.KWD_TITLECASEX, "")));
          }
        }
      }
    }
  }