public static void setTimeValues(Cons stringForm, DecodedDateTime parsedValues, DecodedDateTime defaultValues) {
    { Stella_Object formType = null;
      Stella_Object formValue = null;

      { Cons formPart = null;
        Cons iter000 = stringForm;

        for (;!(iter000 == Stella.NIL); iter000 = iter000.rest) {
          formPart = ((Cons)(iter000.value));
          formType = formPart.value;
          formValue = formPart.rest.value;
          { GeneralizedSymbol testValue000 = ((GeneralizedSymbol)(formType));

            if (testValue000 == Stella.SYM_STELLA_SECONDP) {
              { Surrogate testValue001 = Stella_Object.safePrimaryType(formValue);

                if (Surrogate.subtypeOfIntegerP(testValue001)) {
                  { IntegerWrapper formValue000 = ((IntegerWrapper)(formValue));

                    parsedValues.dateTimeSecond = formValue000.wrapperValue;
                  }
                }
                else if (Surrogate.subtypeOfFloatP(testValue001)) {
                  { FloatWrapper formValue000 = ((FloatWrapper)(formValue));

                    parsedValues.dateTimeSecond = Native.floor(formValue000.wrapperValue);
                    parsedValues.dateTimeMillis = 1000.0 * (formValue000.wrapperValue - Native.floor(formValue000.wrapperValue));
                  }
                }
                else {
                  { OutputStringStream stream000 = OutputStringStream.newOutputStringStream();

                    stream000.nativeStream.print("`" + testValue001 + "' is not a valid case option");
                    throw ((StellaException)(StellaException.newStellaException(stream000.theStringReader()).fillInStackTrace()));
                  }
                }
              }
            }
            else if (testValue000 == Stella.SYM_STELLA_MINUTE) {
              parsedValues.dateTimeMinute = ((IntegerWrapper)(formValue)).wrapperValue;
            }
            else if (testValue000 == Stella.SYM_STELLA_HOUR) {
              parsedValues.dateTimeHour = ((IntegerWrapper)(formValue)).wrapperValue;
            }
            else if (testValue000 == Stella.SYM_STELLA_DAY) {
              parsedValues.dateTimeDay = ((IntegerWrapper)(formValue)).wrapperValue;
            }
            else if (testValue000 == Stella.SYM_STELLA_MONTH) {
              parsedValues.dateTimeMonth = ((IntegerWrapper)(formValue)).wrapperValue;
            }
            else if (testValue000 == Stella.SYM_STELLA_YEAR) {
              parsedValues.dateTimeYear = ((IntegerWrapper)(formValue)).wrapperValue;
            }
            else if (testValue000 == Stella.SYM_STELLA_ZONE) {
              parsedValues.dateTimeZone = ((FloatWrapper)(formValue)).wrapperValue;
            }
            else if (testValue000 == Stella.SYM_STELLA_ZONE_MINUTE) {
              if (parsedValues.dateTimeZone > 0) {
                parsedValues.dateTimeZone = parsedValues.dateTimeZone + (((NumberWrapper)(formValue)).numberWrapperToFloat() / 60.0);
              }
              else {
                parsedValues.dateTimeZone = parsedValues.dateTimeZone + (((NumberWrapper)(formValue)).numberWrapperToFloat() / -60.0);
              }
            }
            else if (testValue000 == Stella.SYM_STELLA_WEEKDAY) {
              parsedValues.dateTimeDow = ((Keyword)(formValue));
            }
            else if (testValue000 == Stella.SYM_STELLA_AM_PM) {
              Stella_Object.dealWithAmPm(formValue, parsedValues);
            }
            else if (testValue000 == Stella.SYM_STELLA_ERA) {
              Stella_Object.dealWithEra(formValue, parsedValues);
            }
            else if (testValue000 == Stella.SYM_STELLA_NOON_MIDN) {
              Stella_Object.dealWithNoonMidn(formValue, parsedValues);
            }
            else if (testValue000 == Stella.SYM_STELLA_SPECIAL) {
              edu.isi.stella.javalib.Native.funcall(Symbol.lookupFunction(((Symbol)(formValue))).functionCode, null, new java.lang.Object [] {parsedValues, defaultValues});
            }
            else {
              { OutputStringStream stream001 = OutputStringStream.newOutputStringStream();

                stream001.nativeStream.print("Unrecognized symbol in form list: ~A.`" + formType + "'");
                throw ((StellaException)(StellaException.newStellaException(stream001.theStringReader()).fillInStackTrace()));
              }
            }
          }
        }
      }
    }
  }