public class java.util.Calendar$Builder
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: java.util.Calendar$Builder
  super_class: java.lang.Object
{
  private static final int NFIELDS;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 18

  private static final int WEEK_YEAR;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 17

  private long instant;
    descriptor: J
    flags: (0x0002) ACC_PRIVATE

  private int[] fields;
    descriptor: [I
    flags: (0x0002) ACC_PRIVATE

  private int nextStamp;
    descriptor: I
    flags: (0x0002) ACC_PRIVATE

  private int maxFieldIndex;
    descriptor: I
    flags: (0x0002) ACC_PRIVATE

  private java.lang.String type;
    descriptor: Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE

  private java.util.TimeZone zone;
    descriptor: Ljava/util/TimeZone;
    flags: (0x0002) ACC_PRIVATE

  private boolean lenient;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

  private java.util.Locale locale;
    descriptor: Ljava/util/Locale;
    flags: (0x0002) ACC_PRIVATE

  private int firstDayOfWeek;
    descriptor: I
    flags: (0x0002) ACC_PRIVATE

  private int minimalDaysInFirstWeek;
    descriptor: I
    flags: (0x0002) ACC_PRIVATE

  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // java.util.Calendar$Builder this
         0: .line 1096
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 1089
            aload 0 /* this */
            iconst_1
            putfield java.util.Calendar$Builder.lenient:Z
         2: .line 1097
            return
        end local 0 // java.util.Calendar$Builder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Ljava/util/Calendar$Builder;

  public java.util.Calendar$Builder setInstant(long);
    descriptor: (J)Ljava/util/Calendar$Builder;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // java.util.Calendar$Builder this
        start local 1 // long instant
         0: .line 1113
            aload 0 /* this */
            getfield java.util.Calendar$Builder.fields:[I
            ifnull 2
         1: .line 1114
            new java.lang.IllegalStateException
            dup
            invokespecial java.lang.IllegalStateException.<init>:()V
            athrow
         2: .line 1116
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            lload 1 /* instant */
            putfield java.util.Calendar$Builder.instant:J
         3: .line 1117
            aload 0 /* this */
            iconst_1
            putfield java.util.Calendar$Builder.nextStamp:I
         4: .line 1118
            aload 0 /* this */
            areturn
        end local 1 // long instant
        end local 0 // java.util.Calendar$Builder this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    5     0     this  Ljava/util/Calendar$Builder;
            0    5     1  instant  J
    MethodParameters:
         Name  Flags
      instant  

  public java.util.Calendar$Builder setInstant(java.util.Date);
    descriptor: (Ljava/util/Date;)Ljava/util/Calendar$Builder;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // java.util.Calendar$Builder this
        start local 1 // java.util.Date instant
         0: .line 1137
            aload 0 /* this */
            aload 1 /* instant */
            invokevirtual java.util.Date.getTime:()J
            invokevirtual java.util.Calendar$Builder.setInstant:(J)Ljava/util/Calendar$Builder;
            areturn
        end local 1 // java.util.Date instant
        end local 0 // java.util.Calendar$Builder this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Ljava/util/Calendar$Builder;
            0    1     1  instant  Ljava/util/Date;
    MethodParameters:
         Name  Flags
      instant  

  public java.util.Calendar$Builder set(int, int);
    descriptor: (II)Ljava/util/Calendar$Builder;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // java.util.Calendar$Builder this
        start local 1 // int field
        start local 2 // int value
         0: .line 1159
            iload 1 /* field */
            iflt 1
            iload 1 /* field */
            bipush 17
            if_icmplt 2
         1: .line 1160
      StackMap locals:
      StackMap stack:
            new java.lang.IllegalArgumentException
            dup
            ldc "field is invalid"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 1162
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual java.util.Calendar$Builder.isInstantSet:()Z
            ifeq 4
         3: .line 1163
            new java.lang.IllegalStateException
            dup
            ldc "instant has been set"
            invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
            athrow
         4: .line 1165
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual java.util.Calendar$Builder.allocateFields:()V
         5: .line 1166
            aload 0 /* this */
            iload 1 /* field */
            iload 2 /* value */
            invokevirtual java.util.Calendar$Builder.internalSet:(II)V
         6: .line 1167
            aload 0 /* this */
            areturn
        end local 2 // int value
        end local 1 // int field
        end local 0 // java.util.Calendar$Builder this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    7     0   this  Ljava/util/Calendar$Builder;
            0    7     1  field  I
            0    7     2  value  I
    MethodParameters:
       Name  Flags
      field  
      value  

  public java.util.Calendar$Builder setFields(int[]);
    descriptor: ([I)Ljava/util/Calendar$Builder;
    flags: (0x0081) ACC_PUBLIC, ACC_VARARGS
    Code:
      stack=4, locals=5, args_size=2
        start local 0 // java.util.Calendar$Builder this
        start local 1 // int[] fieldValuePairs
         0: .line 1195
            aload 1 /* fieldValuePairs */
            arraylength
            istore 2 /* len */
        start local 2 // int len
         1: .line 1196
            iload 2 /* len */
            iconst_2
            irem
            ifeq 3
         2: .line 1197
            new java.lang.IllegalArgumentException
            dup
            invokespecial java.lang.IllegalArgumentException.<init>:()V
            athrow
         3: .line 1199
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            invokevirtual java.util.Calendar$Builder.isInstantSet:()Z
            ifeq 5
         4: .line 1200
            new java.lang.IllegalStateException
            dup
            ldc "instant has been set"
            invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
            athrow
         5: .line 1202
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.util.Calendar$Builder.nextStamp:I
            iload 2 /* len */
            iconst_2
            idiv
            iadd
            ifge 7
         6: .line 1203
            new java.lang.IllegalStateException
            dup
            ldc "stamp counter overflow"
            invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
            athrow
         7: .line 1205
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual java.util.Calendar$Builder.allocateFields:()V
         8: .line 1206
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         9: goto 14
        10: .line 1207
      StackMap locals: int
      StackMap stack:
            aload 1 /* fieldValuePairs */
            iload 3 /* i */
            iinc 3 /* i */ 1
            iaload
            istore 4 /* field */
        start local 4 // int field
        11: .line 1209
            iload 4 /* field */
            iflt 12
            iload 4 /* field */
            bipush 17
            if_icmplt 13
        12: .line 1210
      StackMap locals: int
      StackMap stack:
            new java.lang.IllegalArgumentException
            dup
            ldc "field is invalid"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        13: .line 1212
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 4 /* field */
            aload 1 /* fieldValuePairs */
            iload 3 /* i */
            iinc 3 /* i */ 1
            iaload
            invokevirtual java.util.Calendar$Builder.internalSet:(II)V
        end local 4 // int field
        14: .line 1206
      StackMap locals:
      StackMap stack:
            iload 3 /* i */
            iload 2 /* len */
            if_icmplt 10
        end local 3 // int i
        15: .line 1214
            aload 0 /* this */
            areturn
        end local 2 // int len
        end local 1 // int[] fieldValuePairs
        end local 0 // java.util.Calendar$Builder this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   16     0             this  Ljava/util/Calendar$Builder;
            0   16     1  fieldValuePairs  [I
            1   16     2              len  I
            9   15     3                i  I
           11   14     4            field  I
    MethodParameters:
                 Name  Flags
      fieldValuePairs  

  public java.util.Calendar$Builder setDate(int, int, int);
    descriptor: (III)Ljava/util/Calendar$Builder;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=4
        start local 0 // java.util.Calendar$Builder this
        start local 1 // int year
        start local 2 // int month
        start local 3 // int dayOfMonth
         0: .line 1233
            aload 0 /* this */
            bipush 6
            newarray 10
            dup
            iconst_0
            iconst_1
            iastore
            dup
            iconst_1
            iload 1 /* year */
            iastore
            dup
            iconst_2
            iconst_2
            iastore
            dup
            iconst_3
            iload 2 /* month */
            iastore
            dup
            iconst_4
            iconst_5
            iastore
            dup
            iconst_5
            iload 3 /* dayOfMonth */
            iastore
            invokevirtual java.util.Calendar$Builder.setFields:([I)Ljava/util/Calendar$Builder;
            areturn
        end local 3 // int dayOfMonth
        end local 2 // int month
        end local 1 // int year
        end local 0 // java.util.Calendar$Builder this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    1     0        this  Ljava/util/Calendar$Builder;
            0    1     1        year  I
            0    1     2       month  I
            0    1     3  dayOfMonth  I
    MethodParameters:
            Name  Flags
      year        
      month       
      dayOfMonth  

  public java.util.Calendar$Builder setTimeOfDay(int, int, int);
    descriptor: (III)Ljava/util/Calendar$Builder;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=4
        start local 0 // java.util.Calendar$Builder this
        start local 1 // int hourOfDay
        start local 2 // int minute
        start local 3 // int second
         0: .line 1250
            aload 0 /* this */
            iload 1 /* hourOfDay */
            iload 2 /* minute */
            iload 3 /* second */
            iconst_0
            invokevirtual java.util.Calendar$Builder.setTimeOfDay:(IIII)Ljava/util/Calendar$Builder;
            areturn
        end local 3 // int second
        end local 2 // int minute
        end local 1 // int hourOfDay
        end local 0 // java.util.Calendar$Builder this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    1     0       this  Ljava/util/Calendar$Builder;
            0    1     1  hourOfDay  I
            0    1     2     minute  I
            0    1     3     second  I
    MethodParameters:
           Name  Flags
      hourOfDay  
      minute     
      second     

  public java.util.Calendar$Builder setTimeOfDay(int, int, int, int);
    descriptor: (IIII)Ljava/util/Calendar$Builder;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=5, args_size=5
        start local 0 // java.util.Calendar$Builder this
        start local 1 // int hourOfDay
        start local 2 // int minute
        start local 3 // int second
        start local 4 // int millis
         0: .line 1271
            aload 0 /* this */
            bipush 8
            newarray 10
            dup
            iconst_0
            bipush 11
            iastore
            dup
            iconst_1
            iload 1 /* hourOfDay */
            iastore
            dup
            iconst_2
            bipush 12
            iastore
            dup
            iconst_3
            iload 2 /* minute */
            iastore
            dup
            iconst_4
         1: .line 1272
            bipush 13
            iastore
            dup
            iconst_5
            iload 3 /* second */
            iastore
            dup
            bipush 6
            bipush 14
            iastore
            dup
            bipush 7
            iload 4 /* millis */
            iastore
         2: .line 1271
            invokevirtual java.util.Calendar$Builder.setFields:([I)Ljava/util/Calendar$Builder;
            areturn
        end local 4 // int millis
        end local 3 // int second
        end local 2 // int minute
        end local 1 // int hourOfDay
        end local 0 // java.util.Calendar$Builder this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    3     0       this  Ljava/util/Calendar$Builder;
            0    3     1  hourOfDay  I
            0    3     2     minute  I
            0    3     3     second  I
            0    3     4     millis  I
    MethodParameters:
           Name  Flags
      hourOfDay  
      minute     
      second     
      millis     

  public java.util.Calendar$Builder setWeekDate(int, int, int);
    descriptor: (III)Ljava/util/Calendar$Builder;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=4, args_size=4
        start local 0 // java.util.Calendar$Builder this
        start local 1 // int weekYear
        start local 2 // int weekOfYear
        start local 3 // int dayOfWeek
         0: .line 1292
            aload 0 /* this */
            invokevirtual java.util.Calendar$Builder.allocateFields:()V
         1: .line 1293
            aload 0 /* this */
            bipush 17
            iload 1 /* weekYear */
            invokevirtual java.util.Calendar$Builder.internalSet:(II)V
         2: .line 1294
            aload 0 /* this */
            iconst_3
            iload 2 /* weekOfYear */
            invokevirtual java.util.Calendar$Builder.internalSet:(II)V
         3: .line 1295
            aload 0 /* this */
            bipush 7
            iload 3 /* dayOfWeek */
            invokevirtual java.util.Calendar$Builder.internalSet:(II)V
         4: .line 1296
            aload 0 /* this */
            areturn
        end local 3 // int dayOfWeek
        end local 2 // int weekOfYear
        end local 1 // int weekYear
        end local 0 // java.util.Calendar$Builder this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    5     0        this  Ljava/util/Calendar$Builder;
            0    5     1    weekYear  I
            0    5     2  weekOfYear  I
            0    5     3   dayOfWeek  I
    MethodParameters:
            Name  Flags
      weekYear    
      weekOfYear  
      dayOfWeek   

  public java.util.Calendar$Builder setTimeZone(java.util.TimeZone);
    descriptor: (Ljava/util/TimeZone;)Ljava/util/Calendar$Builder;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // java.util.Calendar$Builder this
        start local 1 // java.util.TimeZone zone
         0: .line 1312
            aload 1 /* zone */
            ifnonnull 2
         1: .line 1313
            new java.lang.NullPointerException
            dup
            invokespecial java.lang.NullPointerException.<init>:()V
            athrow
         2: .line 1315
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* zone */
            putfield java.util.Calendar$Builder.zone:Ljava/util/TimeZone;
         3: .line 1316
            aload 0 /* this */
            areturn
        end local 1 // java.util.TimeZone zone
        end local 0 // java.util.Calendar$Builder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Ljava/util/Calendar$Builder;
            0    4     1  zone  Ljava/util/TimeZone;
    MethodParameters:
      Name  Flags
      zone  

  public java.util.Calendar$Builder setLenient(boolean);
    descriptor: (Z)Ljava/util/Calendar$Builder;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // java.util.Calendar$Builder this
        start local 1 // boolean lenient
         0: .line 1330
            aload 0 /* this */
            iload 1 /* lenient */
            putfield java.util.Calendar$Builder.lenient:Z
         1: .line 1331
            aload 0 /* this */
            areturn
        end local 1 // boolean lenient
        end local 0 // java.util.Calendar$Builder this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Ljava/util/Calendar$Builder;
            0    2     1  lenient  Z
    MethodParameters:
         Name  Flags
      lenient  

  public java.util.Calendar$Builder setCalendarType(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/util/Calendar$Builder;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=2, args_size=2
        start local 0 // java.util.Calendar$Builder this
        start local 1 // java.lang.String type
         0: .line 1354
            aload 1 /* type */
            ldc "gregorian"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 2
         1: .line 1355
            ldc "gregory"
            astore 1 /* type */
         2: .line 1357
      StackMap locals:
      StackMap stack:
            invokestatic java.util.Calendar.getAvailableCalendarTypes:()Ljava/util/Set;
            aload 1 /* type */
            invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
            ifne 5
         3: .line 1358
            aload 1 /* type */
            ldc "iso8601"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 5
         4: .line 1359
            new java.lang.IllegalArgumentException
            dup
            new java.lang.StringBuilder
            dup
            ldc "unknown calendar type: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* type */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         5: .line 1361
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.util.Calendar$Builder.type:Ljava/lang/String;
            ifnonnull 8
         6: .line 1362
            aload 0 /* this */
            aload 1 /* type */
            putfield java.util.Calendar$Builder.type:Ljava/lang/String;
         7: .line 1363
            goto 10
         8: .line 1364
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.util.Calendar$Builder.type:Ljava/lang/String;
            aload 1 /* type */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 10
         9: .line 1365
            new java.lang.IllegalStateException
            dup
            ldc "calendar type override"
            invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
            athrow
        10: .line 1368
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            areturn
        end local 1 // java.lang.String type
        end local 0 // java.util.Calendar$Builder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   11     0  this  Ljava/util/Calendar$Builder;
            0   11     1  type  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      type  

  public java.util.Calendar$Builder setLocale(java.util.Locale);
    descriptor: (Ljava/util/Locale;)Ljava/util/Calendar$Builder;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // java.util.Calendar$Builder this
        start local 1 // java.util.Locale locale
         0: .line 1392
            aload 1 /* locale */
            ifnonnull 2
         1: .line 1393
            new java.lang.NullPointerException
            dup
            invokespecial java.lang.NullPointerException.<init>:()V
            athrow
         2: .line 1395
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* locale */
            putfield java.util.Calendar$Builder.locale:Ljava/util/Locale;
         3: .line 1396
            aload 0 /* this */
            areturn
        end local 1 // java.util.Locale locale
        end local 0 // java.util.Calendar$Builder this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    4     0    this  Ljava/util/Calendar$Builder;
            0    4     1  locale  Ljava/util/Locale;
    MethodParameters:
        Name  Flags
      locale  

  public java.util.Calendar$Builder setWeekDefinition(int, int);
    descriptor: (II)Ljava/util/Calendar$Builder;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // java.util.Calendar$Builder this
        start local 1 // int firstDayOfWeek
        start local 2 // int minimalDaysInFirstWeek
         0: .line 1418
            aload 0 /* this */
            iload 1 /* firstDayOfWeek */
            invokevirtual java.util.Calendar$Builder.isValidWeekParameter:(I)Z
            ifeq 2
         1: .line 1419
            aload 0 /* this */
            iload 2 /* minimalDaysInFirstWeek */
            invokevirtual java.util.Calendar$Builder.isValidWeekParameter:(I)Z
            ifne 3
         2: .line 1420
      StackMap locals:
      StackMap stack:
            new java.lang.IllegalArgumentException
            dup
            invokespecial java.lang.IllegalArgumentException.<init>:()V
            athrow
         3: .line 1422
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 1 /* firstDayOfWeek */
            putfield java.util.Calendar$Builder.firstDayOfWeek:I
         4: .line 1423
            aload 0 /* this */
            iload 2 /* minimalDaysInFirstWeek */
            putfield java.util.Calendar$Builder.minimalDaysInFirstWeek:I
         5: .line 1424
            aload 0 /* this */
            areturn
        end local 2 // int minimalDaysInFirstWeek
        end local 1 // int firstDayOfWeek
        end local 0 // java.util.Calendar$Builder this
      LocalVariableTable:
        Start  End  Slot                    Name  Signature
            0    6     0                    this  Ljava/util/Calendar$Builder;
            0    6     1          firstDayOfWeek  I
            0    6     2  minimalDaysInFirstWeek  I
    MethodParameters:
                        Name  Flags
      firstDayOfWeek          
      minimalDaysInFirstWeek  

  public java.util.Calendar build();
    descriptor: ()Ljava/util/Calendar;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=6, args_size=1
        start local 0 // java.util.Calendar$Builder this
         0: .line 1462
            aload 0 /* this */
            getfield java.util.Calendar$Builder.locale:Ljava/util/Locale;
            ifnonnull 2
         1: .line 1463
            aload 0 /* this */
            invokestatic java.util.Locale.getDefault:()Ljava/util/Locale;
            putfield java.util.Calendar$Builder.locale:Ljava/util/Locale;
         2: .line 1465
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.util.Calendar$Builder.zone:Ljava/util/TimeZone;
            ifnonnull 4
         3: .line 1466
            aload 0 /* this */
            invokestatic java.util.TimeZone.getDefault:()Ljava/util/TimeZone;
            putfield java.util.Calendar$Builder.zone:Ljava/util/TimeZone;
         4: .line 1469
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.util.Calendar$Builder.type:Ljava/lang/String;
            ifnonnull 6
         5: .line 1470
            aload 0 /* this */
            aload 0 /* this */
            getfield java.util.Calendar$Builder.locale:Ljava/util/Locale;
            ldc "ca"
            invokevirtual java.util.Locale.getUnicodeLocaleType:(Ljava/lang/String;)Ljava/lang/String;
            putfield java.util.Calendar$Builder.type:Ljava/lang/String;
         6: .line 1472
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.util.Calendar$Builder.type:Ljava/lang/String;
            ifnonnull 12
         7: .line 1473
            aload 0 /* this */
            getfield java.util.Calendar$Builder.locale:Ljava/util/Locale;
            invokevirtual java.util.Locale.getCountry:()Ljava/lang/String;
            ldc "TH"
            if_acmpne 11
         8: .line 1474
            aload 0 /* this */
            getfield java.util.Calendar$Builder.locale:Ljava/util/Locale;
            invokevirtual java.util.Locale.getLanguage:()Ljava/lang/String;
            ldc "th"
            if_acmpne 11
         9: .line 1475
            aload 0 /* this */
            ldc "buddhist"
            putfield java.util.Calendar$Builder.type:Ljava/lang/String;
        10: .line 1476
            goto 12
        11: .line 1477
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            ldc "gregory"
            putfield java.util.Calendar$Builder.type:Ljava/lang/String;
        12: .line 1480
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.util.Calendar$Builder.type:Ljava/lang/String;
            dup
            astore 2
            invokevirtual java.lang.String.hashCode:()I
            lookupswitch { // 4
          -1581060683: 13
           -752730191: 14
            283776265: 15
           2095190916: 16
              default: 29
          }
      StackMap locals: java.util.Calendar$Builder top java.lang.String
      StackMap stack:
        13: aload 2
            ldc "buddhist"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 24
            goto 29
      StackMap locals:
      StackMap stack:
        14: aload 2
            ldc "japanese"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 27
            goto 29
      StackMap locals:
      StackMap stack:
        15: aload 2
            ldc "gregory"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 17
            goto 29
      StackMap locals:
      StackMap stack:
        16: aload 2
            ldc "iso8601"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 19
            goto 29
        17: .line 1482
      StackMap locals:
      StackMap stack:
            new java.util.GregorianCalendar
            dup
            aload 0 /* this */
            getfield java.util.Calendar$Builder.zone:Ljava/util/TimeZone;
            aload 0 /* this */
            getfield java.util.Calendar$Builder.locale:Ljava/util/Locale;
            iconst_1
            invokespecial java.util.GregorianCalendar.<init>:(Ljava/util/TimeZone;Ljava/util/Locale;Z)V
            astore 1 /* cal */
        start local 1 // java.util.Calendar cal
        18: .line 1483
            goto 30
        end local 1 // java.util.Calendar cal
        19: .line 1485
      StackMap locals:
      StackMap stack:
            new java.util.GregorianCalendar
            dup
            aload 0 /* this */
            getfield java.util.Calendar$Builder.zone:Ljava/util/TimeZone;
            aload 0 /* this */
            getfield java.util.Calendar$Builder.locale:Ljava/util/Locale;
            iconst_1
            invokespecial java.util.GregorianCalendar.<init>:(Ljava/util/TimeZone;Ljava/util/Locale;Z)V
            astore 3 /* gcal */
        start local 3 // java.util.GregorianCalendar gcal
        20: .line 1487
            aload 3 /* gcal */
            new java.util.Date
            dup
            ldc -9223372036854775808
            invokespecial java.util.Date.<init>:(J)V
            invokevirtual java.util.GregorianCalendar.setGregorianChange:(Ljava/util/Date;)V
        21: .line 1489
            aload 0 /* this */
            iconst_2
            iconst_4
            invokevirtual java.util.Calendar$Builder.setWeekDefinition:(II)Ljava/util/Calendar$Builder;
            pop
        22: .line 1490
            aload 3 /* gcal */
            astore 1 /* cal */
        start local 1 // java.util.Calendar cal
        23: .line 1491
            goto 30
        end local 3 // java.util.GregorianCalendar gcal
        end local 1 // java.util.Calendar cal
        24: .line 1493
      StackMap locals:
      StackMap stack:
            new sun.util.BuddhistCalendar
            dup
            aload 0 /* this */
            getfield java.util.Calendar$Builder.zone:Ljava/util/TimeZone;
            aload 0 /* this */
            getfield java.util.Calendar$Builder.locale:Ljava/util/Locale;
            invokespecial sun.util.BuddhistCalendar.<init>:(Ljava/util/TimeZone;Ljava/util/Locale;)V
            astore 1 /* cal */
        start local 1 // java.util.Calendar cal
        25: .line 1494
            aload 1 /* cal */
            invokevirtual java.util.Calendar.clear:()V
        26: .line 1495
            goto 30
        end local 1 // java.util.Calendar cal
        27: .line 1497
      StackMap locals:
      StackMap stack:
            new java.util.JapaneseImperialCalendar
            dup
            aload 0 /* this */
            getfield java.util.Calendar$Builder.zone:Ljava/util/TimeZone;
            aload 0 /* this */
            getfield java.util.Calendar$Builder.locale:Ljava/util/Locale;
            iconst_1
            invokespecial java.util.JapaneseImperialCalendar.<init>:(Ljava/util/TimeZone;Ljava/util/Locale;Z)V
            astore 1 /* cal */
        start local 1 // java.util.Calendar cal
        28: .line 1498
            goto 30
        end local 1 // java.util.Calendar cal
        29: .line 1500
      StackMap locals:
      StackMap stack:
            new java.lang.IllegalArgumentException
            dup
            new java.lang.StringBuilder
            dup
            ldc "unknown calendar type: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            getfield java.util.Calendar$Builder.type:Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        start local 1 // java.util.Calendar cal
        30: .line 1502
      StackMap locals: java.util.Calendar$Builder java.util.Calendar
      StackMap stack:
            aload 1 /* cal */
            aload 0 /* this */
            getfield java.util.Calendar$Builder.lenient:Z
            invokevirtual java.util.Calendar.setLenient:(Z)V
        31: .line 1503
            aload 0 /* this */
            getfield java.util.Calendar$Builder.firstDayOfWeek:I
            ifeq 34
        32: .line 1504
            aload 1 /* cal */
            aload 0 /* this */
            getfield java.util.Calendar$Builder.firstDayOfWeek:I
            invokevirtual java.util.Calendar.setFirstDayOfWeek:(I)V
        33: .line 1505
            aload 1 /* cal */
            aload 0 /* this */
            getfield java.util.Calendar$Builder.minimalDaysInFirstWeek:I
            invokevirtual java.util.Calendar.setMinimalDaysInFirstWeek:(I)V
        34: .line 1507
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual java.util.Calendar$Builder.isInstantSet:()Z
            ifeq 38
        35: .line 1508
            aload 1 /* cal */
            aload 0 /* this */
            getfield java.util.Calendar$Builder.instant:J
            invokevirtual java.util.Calendar.setTimeInMillis:(J)V
        36: .line 1509
            aload 1 /* cal */
            invokevirtual java.util.Calendar.complete:()V
        37: .line 1510
            aload 1 /* cal */
            areturn
        38: .line 1513
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.util.Calendar$Builder.fields:[I
            ifnull 67
        39: .line 1514
            aload 0 /* this */
            bipush 17
            invokevirtual java.util.Calendar$Builder.isSet:(I)Z
            ifeq 42
        40: .line 1515
            aload 0 /* this */
            getfield java.util.Calendar$Builder.fields:[I
            bipush 17
            iaload
            aload 0 /* this */
            getfield java.util.Calendar$Builder.fields:[I
            iconst_1
            iaload
        41: .line 1514
            if_icmple 42
            iconst_1
            goto 43
      StackMap locals:
      StackMap stack:
        42: iconst_0
      StackMap locals:
      StackMap stack: int
        43: istore 3 /* weekDate */
        start local 3 // boolean weekDate
        44: .line 1516
            iload 3 /* weekDate */
            ifeq 46
            aload 1 /* cal */
            invokevirtual java.util.Calendar.isWeekDateSupported:()Z
            ifne 46
        45: .line 1517
            new java.lang.IllegalArgumentException
            dup
            new java.lang.StringBuilder
            dup
            ldc "week date is unsupported by "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            getfield java.util.Calendar$Builder.type:Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        46: .line 1522
      StackMap locals: java.util.Calendar$Builder java.util.Calendar top int
      StackMap stack:
            iconst_2
            istore 4 /* stamp */
        start local 4 // int stamp
        47: goto 56
        48: .line 1523
      StackMap locals: int
      StackMap stack:
            iconst_0
            istore 5 /* index */
        start local 5 // int index
        49: goto 54
        50: .line 1524
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield java.util.Calendar$Builder.fields:[I
            iload 5 /* index */
            iaload
            iload 4 /* stamp */
            if_icmpne 53
        51: .line 1525
            aload 1 /* cal */
            iload 5 /* index */
            aload 0 /* this */
            getfield java.util.Calendar$Builder.fields:[I
            bipush 18
            iload 5 /* index */
            iadd
            iaload
            invokevirtual java.util.Calendar.set:(II)V
        52: .line 1526
            goto 55
        53: .line 1523
      StackMap locals:
      StackMap stack:
            iinc 5 /* index */ 1
      StackMap locals:
      StackMap stack:
        54: iload 5 /* index */
            aload 0 /* this */
            getfield java.util.Calendar$Builder.maxFieldIndex:I
            if_icmple 50
        end local 5 // int index
        55: .line 1522
      StackMap locals:
      StackMap stack:
            iinc 4 /* stamp */ 1
      StackMap locals:
      StackMap stack:
        56: iload 4 /* stamp */
            aload 0 /* this */
            getfield java.util.Calendar$Builder.nextStamp:I
            if_icmplt 48
        end local 4 // int stamp
        57: .line 1531
            iload 3 /* weekDate */
            ifeq 66
        58: .line 1532
            aload 0 /* this */
            iconst_3
            invokevirtual java.util.Calendar$Builder.isSet:(I)Z
            ifeq 59
            aload 0 /* this */
            getfield java.util.Calendar$Builder.fields:[I
            bipush 21
            iaload
            goto 60
      StackMap locals:
      StackMap stack:
        59: iconst_1
      StackMap locals:
      StackMap stack: int
        60: istore 4 /* weekOfYear */
        start local 4 // int weekOfYear
        61: .line 1533
            aload 0 /* this */
            bipush 7
            invokevirtual java.util.Calendar$Builder.isSet:(I)Z
            ifeq 63
        62: .line 1534
            aload 0 /* this */
            getfield java.util.Calendar$Builder.fields:[I
            bipush 25
            iaload
            goto 64
      StackMap locals: int
      StackMap stack:
        63: aload 1 /* cal */
            invokevirtual java.util.Calendar.getFirstDayOfWeek:()I
        64: .line 1533
      StackMap locals:
      StackMap stack: int
            istore 5 /* dayOfWeek */
        start local 5 // int dayOfWeek
        65: .line 1535
            aload 1 /* cal */
            aload 0 /* this */
            getfield java.util.Calendar$Builder.fields:[I
            bipush 35
            iaload
            iload 4 /* weekOfYear */
            iload 5 /* dayOfWeek */
            invokevirtual java.util.Calendar.setWeekDate:(III)V
        end local 5 // int dayOfWeek
        end local 4 // int weekOfYear
        66: .line 1537
      StackMap locals:
      StackMap stack:
            aload 1 /* cal */
            invokevirtual java.util.Calendar.complete:()V
        end local 3 // boolean weekDate
        67: .line 1540
      StackMap locals: java.util.Calendar$Builder java.util.Calendar
      StackMap stack:
            aload 1 /* cal */
            areturn
        end local 1 // java.util.Calendar cal
        end local 0 // java.util.Calendar$Builder this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   68     0        this  Ljava/util/Calendar$Builder;
           18   19     1         cal  Ljava/util/Calendar;
           23   24     1         cal  Ljava/util/Calendar;
           25   27     1         cal  Ljava/util/Calendar;
           28   29     1         cal  Ljava/util/Calendar;
           30   68     1         cal  Ljava/util/Calendar;
           20   24     3        gcal  Ljava/util/GregorianCalendar;
           44   67     3    weekDate  Z
           47   57     4       stamp  I
           49   55     5       index  I
           61   66     4  weekOfYear  I
           65   66     5   dayOfWeek  I

  private void allocateFields();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // java.util.Calendar$Builder this
         0: .line 1544
            aload 0 /* this */
            getfield java.util.Calendar$Builder.fields:[I
            ifnonnull 4
         1: .line 1545
            aload 0 /* this */
            bipush 36
            newarray 10
            putfield java.util.Calendar$Builder.fields:[I
         2: .line 1546
            aload 0 /* this */
            iconst_2
            putfield java.util.Calendar$Builder.nextStamp:I
         3: .line 1547
            aload 0 /* this */
            iconst_m1
            putfield java.util.Calendar$Builder.maxFieldIndex:I
         4: .line 1549
      StackMap locals:
      StackMap stack:
            return
        end local 0 // java.util.Calendar$Builder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Ljava/util/Calendar$Builder;

  private void internalSet(int, int);
    descriptor: (II)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=3, args_size=3
        start local 0 // java.util.Calendar$Builder this
        start local 1 // int field
        start local 2 // int value
         0: .line 1552
            aload 0 /* this */
            getfield java.util.Calendar$Builder.fields:[I
            iload 1 /* field */
            aload 0 /* this */
            dup
            getfield java.util.Calendar$Builder.nextStamp:I
            dup_x1
            iconst_1
            iadd
            putfield java.util.Calendar$Builder.nextStamp:I
            iastore
         1: .line 1553
            aload 0 /* this */
            getfield java.util.Calendar$Builder.nextStamp:I
            ifge 3
         2: .line 1554
            new java.lang.IllegalStateException
            dup
            ldc "stamp counter overflow"
            invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
            athrow
         3: .line 1556
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.util.Calendar$Builder.fields:[I
            bipush 18
            iload 1 /* field */
            iadd
            iload 2 /* value */
            iastore
         4: .line 1557
            iload 1 /* field */
            aload 0 /* this */
            getfield java.util.Calendar$Builder.maxFieldIndex:I
            if_icmple 6
            iload 1 /* field */
            bipush 17
            if_icmpge 6
         5: .line 1558
            aload 0 /* this */
            iload 1 /* field */
            putfield java.util.Calendar$Builder.maxFieldIndex:I
         6: .line 1560
      StackMap locals:
      StackMap stack:
            return
        end local 2 // int value
        end local 1 // int field
        end local 0 // java.util.Calendar$Builder this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    7     0   this  Ljava/util/Calendar$Builder;
            0    7     1  field  I
            0    7     2  value  I
    MethodParameters:
       Name  Flags
      field  
      value  

  private boolean isInstantSet();
    descriptor: ()Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // java.util.Calendar$Builder this
         0: .line 1563
            aload 0 /* this */
            getfield java.util.Calendar$Builder.nextStamp:I
            iconst_1
            if_icmpne 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // java.util.Calendar$Builder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Ljava/util/Calendar$Builder;

  private boolean isSet(int);
    descriptor: (I)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // java.util.Calendar$Builder this
        start local 1 // int index
         0: .line 1567
            aload 0 /* this */
            getfield java.util.Calendar$Builder.fields:[I
            ifnull 1
            aload 0 /* this */
            getfield java.util.Calendar$Builder.fields:[I
            iload 1 /* index */
            iaload
            ifle 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 1 // int index
        end local 0 // java.util.Calendar$Builder this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0   this  Ljava/util/Calendar$Builder;
            0    2     1  index  I
    MethodParameters:
       Name  Flags
      index  

  private boolean isValidWeekParameter(int);
    descriptor: (I)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // java.util.Calendar$Builder this
        start local 1 // int value
         0: .line 1571
            iload 1 /* value */
            ifle 1
            iload 1 /* value */
            bipush 7
            if_icmpgt 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 1 // int value
        end local 0 // java.util.Calendar$Builder this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0   this  Ljava/util/Calendar$Builder;
            0    2     1  value  I
    MethodParameters:
       Name  Flags
      value  
}
SourceFile: "Calendar.java"
NestHost: java.util.Calendar
InnerClasses:
  public Builder = java.util.Calendar$Builder of java.util.Calendar