class freemarker.core.BuiltInsForDates$iso_BI$Result implements freemarker.template.TemplateMethodModelEx
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: freemarker.core.BuiltInsForDates$iso_BI$Result
  super_class: java.lang.Object
{
  private final java.util.Date date;
    descriptor: Ljava/util/Date;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final int dateType;
    descriptor: I
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final freemarker.core.Environment env;
    descriptor: Lfreemarker/core/Environment;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  final freemarker.core.BuiltInsForDates$iso_BI this$1;
    descriptor: Lfreemarker/core/BuiltInsForDates$iso_BI;
    flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC

  void <init>(freemarker.core.BuiltInsForDates$iso_BI, java.util.Date, int, freemarker.core.Environment);
    descriptor: (Lfreemarker/core/BuiltInsForDates$iso_BI;Ljava/util/Date;ILfreemarker/core/Environment;)V
    flags: (0x0000) 
    Code:
      stack=2, locals=5, args_size=5
        start local 0 // freemarker.core.BuiltInsForDates$iso_BI$Result this
        start local 2 // java.util.Date date
        start local 3 // int dateType
        start local 4 // freemarker.core.Environment env
         0: .line 85
            aload 0 /* this */
            aload 1
            putfield freemarker.core.BuiltInsForDates$iso_BI$Result.this$1:Lfreemarker/core/BuiltInsForDates$iso_BI;
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 86
            aload 0 /* this */
            aload 2 /* date */
            putfield freemarker.core.BuiltInsForDates$iso_BI$Result.date:Ljava/util/Date;
         2: .line 87
            aload 0 /* this */
            iload 3 /* dateType */
            putfield freemarker.core.BuiltInsForDates$iso_BI$Result.dateType:I
         3: .line 88
            aload 0 /* this */
            aload 4 /* env */
            putfield freemarker.core.BuiltInsForDates$iso_BI$Result.env:Lfreemarker/core/Environment;
         4: .line 89
            return
        end local 4 // freemarker.core.Environment env
        end local 3 // int dateType
        end local 2 // java.util.Date date
        end local 0 // freemarker.core.BuiltInsForDates$iso_BI$Result this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    5     0      this  Lfreemarker/core/BuiltInsForDates$iso_BI$Result;
            0    5     2      date  Ljava/util/Date;
            0    5     3  dateType  I
            0    5     4       env  Lfreemarker/core/Environment;
    MethodParameters:
          Name  Flags
      this$0    final
      date      
      dateType  
      env       

  public java.lang.Object exec(java.util.List);
    descriptor: (Ljava/util/List;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=9, locals=6, args_size=2
        start local 0 // freemarker.core.BuiltInsForDates$iso_BI$Result this
        start local 1 // java.util.List args
         0: .line 92
            aload 0 /* this */
            getfield freemarker.core.BuiltInsForDates$iso_BI$Result.this$1:Lfreemarker/core/BuiltInsForDates$iso_BI;
            aload 1 /* args */
            iconst_1
            invokevirtual freemarker.core.BuiltInsForDates$iso_BI.checkMethodArgCount:(Ljava/util/List;I)V
         1: .line 94
            aload 1 /* args */
            iconst_0
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast freemarker.template.TemplateModel
            astore 2 /* tzArgTM */
        start local 2 // freemarker.template.TemplateModel tzArgTM
         2: .line 97
            aload 2 /* tzArgTM */
            instanceof freemarker.template.AdapterTemplateModel
            ifeq 10
         3: .line 99
            aload 2 /* tzArgTM */
            checkcast freemarker.template.AdapterTemplateModel
         4: .line 100
            ldc Ljava/util/TimeZone;
            invokeinterface freemarker.template.AdapterTemplateModel.getAdaptedObject:(Ljava/lang/Class;)Ljava/lang/Object;
         5: .line 98
            dup
            astore 4 /* adaptedObj */
        start local 4 // java.lang.Object adaptedObj
         6: instanceof java.util.TimeZone
         7: .line 101
            ifeq 10
         8: .line 102
            aload 4 /* adaptedObj */
            checkcast java.util.TimeZone
            astore 3 /* tzArg */
        start local 3 // java.util.TimeZone tzArg
         9: .line 103
            goto 22
        end local 4 // java.lang.Object adaptedObj
        end local 3 // java.util.TimeZone tzArg
      StackMap locals: freemarker.template.TemplateModel
      StackMap stack:
        10: aload 2 /* tzArgTM */
            instanceof freemarker.template.TemplateScalarModel
            ifeq 20
        11: .line 104
            aload 2 /* tzArgTM */
            checkcast freemarker.template.TemplateScalarModel
            aconst_null
            aconst_null
            invokestatic freemarker.core.EvalUtil.modelToString:(Lfreemarker/template/TemplateScalarModel;Lfreemarker/core/Expression;Lfreemarker/core/Environment;)Ljava/lang/String;
            astore 5 /* tzName */
        start local 5 // java.lang.String tzName
        12: .line 106
            aload 5 /* tzName */
            invokestatic freemarker.template.utility.DateUtil.getTimeZone:(Ljava/lang/String;)Ljava/util/TimeZone;
            astore 3 /* tzArg */
        start local 3 // java.util.TimeZone tzArg
        13: .line 107
            goto 22
        end local 3 // java.util.TimeZone tzArg
      StackMap locals: freemarker.core.BuiltInsForDates$iso_BI$Result java.util.List freemarker.template.TemplateModel top top java.lang.String
      StackMap stack: freemarker.template.utility.UnrecognizedTimeZoneException
        14: pop
        15: .line 108
            new freemarker.core._TemplateModelException
            dup
            iconst_4
            anewarray java.lang.Object
            dup
            iconst_0
        16: .line 109
            ldc "The time zone string specified for ?"
            aastore
            dup
            iconst_1
            aload 0 /* this */
            getfield freemarker.core.BuiltInsForDates$iso_BI$Result.this$1:Lfreemarker/core/BuiltInsForDates$iso_BI;
            getfield freemarker.core.BuiltInsForDates$iso_BI.key:Ljava/lang/String;
            aastore
            dup
            iconst_2
        17: .line 110
            ldc "(...) is not recognized as a valid time zone name: "
            aastore
            dup
            iconst_3
        18: .line 111
            new freemarker.core._DelayedJQuote
            dup
            aload 5 /* tzName */
            invokespecial freemarker.core._DelayedJQuote.<init>:(Ljava/lang/Object;)V
        19: .line 108
            aastore
            invokespecial freemarker.core._TemplateModelException.<init>:([Ljava/lang/Object;)V
            athrow
        end local 5 // java.lang.String tzName
        20: .line 115
      StackMap locals: freemarker.core.BuiltInsForDates$iso_BI$Result java.util.List freemarker.template.TemplateModel
      StackMap stack:
            new java.lang.StringBuilder
            dup
            ldc "?"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            getfield freemarker.core.BuiltInsForDates$iso_BI$Result.this$1:Lfreemarker/core/BuiltInsForDates$iso_BI;
            getfield freemarker.core.BuiltInsForDates$iso_BI.key:Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            iconst_0
            ldc "string or java.util.TimeZone"
            aload 2 /* tzArgTM */
        21: .line 114
            invokestatic freemarker.core._MessageUtil.newMethodArgUnexpectedTypeException:(Ljava/lang/String;ILjava/lang/String;Lfreemarker/template/TemplateModel;)Lfreemarker/template/TemplateModelException;
            athrow
        start local 3 // java.util.TimeZone tzArg
        22: .line 118
      StackMap locals: java.util.TimeZone
      StackMap stack:
            new freemarker.template.SimpleScalar
            dup
        23: .line 119
            aload 0 /* this */
            getfield freemarker.core.BuiltInsForDates$iso_BI$Result.date:Ljava/util/Date;
        24: .line 120
            aload 0 /* this */
            getfield freemarker.core.BuiltInsForDates$iso_BI$Result.dateType:I
            iconst_1
            if_icmpeq 25
            iconst_1
            goto 26
      StackMap locals: freemarker.core.BuiltInsForDates$iso_BI$Result java.util.List freemarker.template.TemplateModel java.util.TimeZone
      StackMap stack: new 22 new 22 java.util.Date
        25: iconst_0
        26: .line 121
      StackMap locals: freemarker.core.BuiltInsForDates$iso_BI$Result java.util.List freemarker.template.TemplateModel java.util.TimeZone
      StackMap stack: new 22 new 22 java.util.Date int
            aload 0 /* this */
            getfield freemarker.core.BuiltInsForDates$iso_BI$Result.dateType:I
            iconst_2
            if_icmpeq 27
            iconst_1
            goto 28
      StackMap locals: freemarker.core.BuiltInsForDates$iso_BI$Result java.util.List freemarker.template.TemplateModel java.util.TimeZone
      StackMap stack: new 22 new 22 java.util.Date int
        27: iconst_0
        28: .line 122
      StackMap locals: freemarker.core.BuiltInsForDates$iso_BI$Result java.util.List freemarker.template.TemplateModel java.util.TimeZone
      StackMap stack: new 22 new 22 java.util.Date int int
            aload 0 /* this */
            getfield freemarker.core.BuiltInsForDates$iso_BI$Result.this$1:Lfreemarker/core/BuiltInsForDates$iso_BI;
            aload 0 /* this */
            getfield freemarker.core.BuiltInsForDates$iso_BI$Result.date:Ljava/util/Date;
            aload 0 /* this */
            getfield freemarker.core.BuiltInsForDates$iso_BI$Result.dateType:I
            aload 0 /* this */
            getfield freemarker.core.BuiltInsForDates$iso_BI$Result.env:Lfreemarker/core/Environment;
            invokevirtual freemarker.core.BuiltInsForDates$iso_BI.shouldShowOffset:(Ljava/util/Date;ILfreemarker/core/Environment;)Z
        29: .line 123
            aload 0 /* this */
            getfield freemarker.core.BuiltInsForDates$iso_BI$Result.this$1:Lfreemarker/core/BuiltInsForDates$iso_BI;
            getfield freemarker.core.BuiltInsForDates$iso_BI.accuracy:I
        30: .line 124
            aload 3 /* tzArg */
        31: .line 125
            aload 0 /* this */
            getfield freemarker.core.BuiltInsForDates$iso_BI$Result.env:Lfreemarker/core/Environment;
            invokevirtual freemarker.core.Environment.getISOBuiltInCalendarFactory:()Lfreemarker/template/utility/DateUtil$DateToISO8601CalendarFactory;
        32: .line 118
            invokestatic freemarker.template.utility.DateUtil.dateToISO8601String:(Ljava/util/Date;ZZZILjava/util/TimeZone;Lfreemarker/template/utility/DateUtil$DateToISO8601CalendarFactory;)Ljava/lang/String;
            invokespecial freemarker.template.SimpleScalar.<init>:(Ljava/lang/String;)V
            areturn
        end local 3 // java.util.TimeZone tzArg
        end local 2 // freemarker.template.TemplateModel tzArgTM
        end local 1 // java.util.List args
        end local 0 // freemarker.core.BuiltInsForDates$iso_BI$Result this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   33     0        this  Lfreemarker/core/BuiltInsForDates$iso_BI$Result;
            0   33     1        args  Ljava/util/List;
            2   33     2     tzArgTM  Lfreemarker/template/TemplateModel;
            9   10     3       tzArg  Ljava/util/TimeZone;
           13   14     3       tzArg  Ljava/util/TimeZone;
           22   33     3       tzArg  Ljava/util/TimeZone;
            6   10     4  adaptedObj  Ljava/lang/Object;
           12   20     5      tzName  Ljava/lang/String;
      Exception table:
        from    to  target  type
          12    13      14  Class freemarker.template.utility.UnrecognizedTimeZoneException
    Exceptions:
      throws freemarker.template.TemplateModelException
    MethodParameters:
      Name  Flags
      args  
}
SourceFile: "BuiltInsForDates.java"
NestHost: freemarker.core.BuiltInsForDates
InnerClasses:
  iso_BI = freemarker.core.BuiltInsForDates$iso_BI of freemarker.core.BuiltInsForDates
  Result = freemarker.core.BuiltInsForDates$iso_BI$Result of freemarker.core.BuiltInsForDates$iso_BI
  public abstract DateToISO8601CalendarFactory = freemarker.template.utility.DateUtil$DateToISO8601CalendarFactory of freemarker.template.utility.DateUtil