public class sun.util.calendar.ZoneInfo extends java.util.TimeZone
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: sun.util.calendar.ZoneInfo
  super_class: java.util.TimeZone
{
  private static final int UTC_TIME;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 0

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

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

  private static final long OFFSET_MASK;
    descriptor: J
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 15

  private static final long DST_MASK;
    descriptor: J
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 240

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

  private static final long ABBR_MASK;
    descriptor: J
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 3840

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

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

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

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

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

  private long[] transitions;
    descriptor: [J
    flags: (0x0002) ACC_PRIVATE

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

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

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

  private transient boolean dirty;
    descriptor: Z
    flags: (0x0082) ACC_PRIVATE, ACC_TRANSIENT

  private static final long serialVersionUID;
    descriptor: J
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 2653134537216586139

  private transient java.util.SimpleTimeZone lastRule;
    descriptor: Ljava/util/SimpleTimeZone;
    flags: (0x0082) ACC_PRIVATE, ACC_TRANSIENT

  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // sun.util.calendar.ZoneInfo this
         0: .line 171
            aload 0 /* this */
            invokespecial java.util.TimeZone.<init>:()V
         1: .line 90
            aload 0 /* this */
            iconst_0
            putfield sun.util.calendar.ZoneInfo.rawOffsetDiff:I
         2: .line 159
            aload 0 /* this */
            iconst_0
            putfield sun.util.calendar.ZoneInfo.willGMTOffsetChange:Z
         3: .line 164
            aload 0 /* this */
            iconst_0
            putfield sun.util.calendar.ZoneInfo.dirty:Z
         4: .line 172
            return
        end local 0 // sun.util.calendar.ZoneInfo this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lsun/util/calendar/ZoneInfo;

  public void <init>(java.lang.String, int);
    descriptor: (Ljava/lang/String;I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=9, locals=3, args_size=3
        start local 0 // sun.util.calendar.ZoneInfo this
        start local 1 // java.lang.String ID
        start local 2 // int rawOffset
         0: .line 178
            aload 0 /* this */
            aload 1 /* ID */
            iload 2 /* rawOffset */
            iconst_0
            iconst_0
            aconst_null
            aconst_null
            aconst_null
            iconst_0
            invokespecial sun.util.calendar.ZoneInfo.<init>:(Ljava/lang/String;III[J[I[IZ)V
         1: .line 179
            return
        end local 2 // int rawOffset
        end local 1 // java.lang.String ID
        end local 0 // sun.util.calendar.ZoneInfo this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    2     0       this  Lsun/util/calendar/ZoneInfo;
            0    2     1         ID  Ljava/lang/String;
            0    2     2  rawOffset  I
    MethodParameters:
           Name  Flags
      ID         
      rawOffset  

  void <init>(java.lang.String, int, int, int, long[], int[], int[], boolean);
    descriptor: (Ljava/lang/String;III[J[I[IZ)V
    flags: (0x0000) 
    Code:
      stack=2, locals=9, args_size=9
        start local 0 // sun.util.calendar.ZoneInfo this
        start local 1 // java.lang.String ID
        start local 2 // int rawOffset
        start local 3 // int dstSavings
        start local 4 // int checksum
        start local 5 // long[] transitions
        start local 6 // int[] offsets
        start local 7 // int[] simpleTimeZoneParams
        start local 8 // boolean willGMTOffsetChange
         0: .line 196
            aload 0 /* this */
            invokespecial java.util.TimeZone.<init>:()V
         1: .line 90
            aload 0 /* this */
            iconst_0
            putfield sun.util.calendar.ZoneInfo.rawOffsetDiff:I
         2: .line 159
            aload 0 /* this */
            iconst_0
            putfield sun.util.calendar.ZoneInfo.willGMTOffsetChange:Z
         3: .line 164
            aload 0 /* this */
            iconst_0
            putfield sun.util.calendar.ZoneInfo.dirty:Z
         4: .line 204
            aload 0 /* this */
            aload 1 /* ID */
            invokevirtual sun.util.calendar.ZoneInfo.setID:(Ljava/lang/String;)V
         5: .line 205
            aload 0 /* this */
            iload 2 /* rawOffset */
            putfield sun.util.calendar.ZoneInfo.rawOffset:I
         6: .line 206
            aload 0 /* this */
            iload 3 /* dstSavings */
            putfield sun.util.calendar.ZoneInfo.dstSavings:I
         7: .line 207
            aload 0 /* this */
            iload 4 /* checksum */
            putfield sun.util.calendar.ZoneInfo.checksum:I
         8: .line 208
            aload 0 /* this */
            aload 5 /* transitions */
            putfield sun.util.calendar.ZoneInfo.transitions:[J
         9: .line 209
            aload 0 /* this */
            aload 6 /* offsets */
            putfield sun.util.calendar.ZoneInfo.offsets:[I
        10: .line 210
            aload 0 /* this */
            aload 7 /* simpleTimeZoneParams */
            putfield sun.util.calendar.ZoneInfo.simpleTimeZoneParams:[I
        11: .line 211
            aload 0 /* this */
            iload 8 /* willGMTOffsetChange */
            putfield sun.util.calendar.ZoneInfo.willGMTOffsetChange:Z
        12: .line 212
            return
        end local 8 // boolean willGMTOffsetChange
        end local 7 // int[] simpleTimeZoneParams
        end local 6 // int[] offsets
        end local 5 // long[] transitions
        end local 4 // int checksum
        end local 3 // int dstSavings
        end local 2 // int rawOffset
        end local 1 // java.lang.String ID
        end local 0 // sun.util.calendar.ZoneInfo this
      LocalVariableTable:
        Start  End  Slot                  Name  Signature
            0   13     0                  this  Lsun/util/calendar/ZoneInfo;
            0   13     1                    ID  Ljava/lang/String;
            0   13     2             rawOffset  I
            0   13     3            dstSavings  I
            0   13     4              checksum  I
            0   13     5           transitions  [J
            0   13     6               offsets  [I
            0   13     7  simpleTimeZoneParams  [I
            0   13     8   willGMTOffsetChange  Z
    MethodParameters:
                      Name  Flags
      ID                    
      rawOffset             
      dstSavings            
      checksum              
      transitions           
      offsets               
      simpleTimeZoneParams  
      willGMTOffsetChange   

  public int getOffset(long);
    descriptor: (J)I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=2
        start local 0 // sun.util.calendar.ZoneInfo this
        start local 1 // long date
         0: .line 223
            aload 0 /* this */
            lload 1 /* date */
            aconst_null
            iconst_0
            invokevirtual sun.util.calendar.ZoneInfo.getOffsets:(J[II)I
            ireturn
        end local 1 // long date
        end local 0 // sun.util.calendar.ZoneInfo this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/util/calendar/ZoneInfo;
            0    1     1  date  J
    MethodParameters:
      Name  Flags
      date  

  public int getOffsets(long, int[]);
    descriptor: (J[I)I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=3
        start local 0 // sun.util.calendar.ZoneInfo this
        start local 1 // long utc
        start local 3 // int[] offsets
         0: .line 227
            aload 0 /* this */
            lload 1 /* utc */
            aload 3 /* offsets */
            iconst_0
            invokevirtual sun.util.calendar.ZoneInfo.getOffsets:(J[II)I
            ireturn
        end local 3 // int[] offsets
        end local 1 // long utc
        end local 0 // sun.util.calendar.ZoneInfo this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lsun/util/calendar/ZoneInfo;
            0    1     1      utc  J
            0    1     3  offsets  [I
    MethodParameters:
         Name  Flags
      utc      
      offsets  

  public int getOffsetsByStandard(long, int[]);
    descriptor: (J[I)I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=3
        start local 0 // sun.util.calendar.ZoneInfo this
        start local 1 // long standard
        start local 3 // int[] offsets
         0: .line 231
            aload 0 /* this */
            lload 1 /* standard */
            aload 3 /* offsets */
            iconst_1
            invokevirtual sun.util.calendar.ZoneInfo.getOffsets:(J[II)I
            ireturn
        end local 3 // int[] offsets
        end local 1 // long standard
        end local 0 // sun.util.calendar.ZoneInfo this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0      this  Lsun/util/calendar/ZoneInfo;
            0    1     1  standard  J
            0    1     3   offsets  [I
    MethodParameters:
          Name  Flags
      standard  
      offsets   

  public int getOffsetsByWall(long, int[]);
    descriptor: (J[I)I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=3
        start local 0 // sun.util.calendar.ZoneInfo this
        start local 1 // long wall
        start local 3 // int[] offsets
         0: .line 235
            aload 0 /* this */
            lload 1 /* wall */
            aload 3 /* offsets */
            iconst_2
            invokevirtual sun.util.calendar.ZoneInfo.getOffsets:(J[II)I
            ireturn
        end local 3 // int[] offsets
        end local 1 // long wall
        end local 0 // sun.util.calendar.ZoneInfo this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lsun/util/calendar/ZoneInfo;
            0    1     1     wall  J
            0    1     3  offsets  [I
    MethodParameters:
         Name  Flags
      wall     
      offsets  

  private int getOffsets(long, int[], int);
    descriptor: (J[II)I
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=12, args_size=4
        start local 0 // sun.util.calendar.ZoneInfo this
        start local 1 // long date
        start local 3 // int[] offsets
        start local 4 // int type
         0: .line 240
            aload 0 /* this */
            getfield sun.util.calendar.ZoneInfo.transitions:[J
            ifnonnull 6
         1: .line 241
            aload 0 /* this */
            invokevirtual sun.util.calendar.ZoneInfo.getLastRawOffset:()I
            istore 5 /* offset */
        start local 5 // int offset
         2: .line 242
            aload 3 /* offsets */
            ifnull 5
         3: .line 243
            aload 3 /* offsets */
            iconst_0
            iload 5 /* offset */
            iastore
         4: .line 244
            aload 3 /* offsets */
            iconst_1
            iconst_0
            iastore
         5: .line 246
      StackMap locals: int
      StackMap stack:
            iload 5 /* offset */
            ireturn
        end local 5 // int offset
         6: .line 249
      StackMap locals:
      StackMap stack:
            lload 1 /* date */
            aload 0 /* this */
            getfield sun.util.calendar.ZoneInfo.rawOffsetDiff:I
            i2l
            lsub
            lstore 1 /* date */
         7: .line 250
            aload 0 /* this */
            lload 1 /* date */
            iload 4 /* type */
            invokevirtual sun.util.calendar.ZoneInfo.getTransitionIndex:(JI)I
            istore 5 /* index */
        start local 5 // int index
         8: .line 254
            iload 5 /* index */
            ifge 14
         9: .line 255
            aload 0 /* this */
            invokevirtual sun.util.calendar.ZoneInfo.getLastRawOffset:()I
            istore 6 /* offset */
        start local 6 // int offset
        10: .line 256
            aload 3 /* offsets */
            ifnull 13
        11: .line 257
            aload 3 /* offsets */
            iconst_0
            iload 6 /* offset */
            iastore
        12: .line 258
            aload 3 /* offsets */
            iconst_1
            iconst_0
            iastore
        13: .line 260
      StackMap locals: int int
      StackMap stack:
            iload 6 /* offset */
            ireturn
        end local 6 // int offset
        14: .line 263
      StackMap locals:
      StackMap stack:
            iload 5 /* index */
            aload 0 /* this */
            getfield sun.util.calendar.ZoneInfo.transitions:[J
            arraylength
            if_icmpge 25
        15: .line 264
            aload 0 /* this */
            getfield sun.util.calendar.ZoneInfo.transitions:[J
            iload 5 /* index */
            laload
            lstore 6 /* val */
        start local 6 // long val
        16: .line 265
            aload 0 /* this */
            getfield sun.util.calendar.ZoneInfo.offsets:[I
            lload 6 /* val */
            ldc 15
            land
            l2i
            iaload
            aload 0 /* this */
            getfield sun.util.calendar.ZoneInfo.rawOffsetDiff:I
            iadd
            istore 8 /* offset */
        start local 8 // int offset
        17: .line 266
            aload 3 /* offsets */
            ifnull 24
        18: .line 267
            lload 6 /* val */
            iconst_4
            lushr
            ldc 15
            land
            l2i
            istore 9 /* dst */
        start local 9 // int dst
        19: .line 268
            iload 9 /* dst */
            ifne 20
            iconst_0
            goto 21
      StackMap locals: long int int
      StackMap stack:
        20: aload 0 /* this */
            getfield sun.util.calendar.ZoneInfo.offsets:[I
            iload 9 /* dst */
            iaload
      StackMap locals:
      StackMap stack: int
        21: istore 10 /* save */
        start local 10 // int save
        22: .line 269
            aload 3 /* offsets */
            iconst_0
            iload 8 /* offset */
            iload 10 /* save */
            isub
            iastore
        23: .line 270
            aload 3 /* offsets */
            iconst_1
            iload 10 /* save */
            iastore
        end local 10 // int save
        end local 9 // int dst
        24: .line 272
      StackMap locals:
      StackMap stack:
            iload 8 /* offset */
            ireturn
        end local 8 // int offset
        end local 6 // long val
        25: .line 277
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual sun.util.calendar.ZoneInfo.getLastRule:()Ljava/util/SimpleTimeZone;
            astore 6 /* tz */
        start local 6 // java.util.SimpleTimeZone tz
        26: .line 278
            aload 6 /* tz */
            ifnull 38
        27: .line 279
            aload 6 /* tz */
            invokevirtual java.util.SimpleTimeZone.getRawOffset:()I
            istore 7 /* rawoffset */
        start local 7 // int rawoffset
        28: .line 280
            lload 1 /* date */
            lstore 8 /* msec */
        start local 8 // long msec
        29: .line 281
            iload 4 /* type */
            ifeq 31
        30: .line 282
            lload 8 /* msec */
            aload 0 /* this */
            getfield sun.util.calendar.ZoneInfo.rawOffset:I
            i2l
            lsub
            lstore 8 /* msec */
        31: .line 284
      StackMap locals: java.util.SimpleTimeZone int long
      StackMap stack:
            aload 6 /* tz */
            lload 8 /* msec */
            invokevirtual java.util.SimpleTimeZone.getOffset:(J)I
            aload 0 /* this */
            getfield sun.util.calendar.ZoneInfo.rawOffset:I
            isub
            istore 10 /* dstoffset */
        start local 10 // int dstoffset
        32: .line 287
            iload 10 /* dstoffset */
            ifle 34
            aload 6 /* tz */
            lload 8 /* msec */
            iload 10 /* dstoffset */
            i2l
            lsub
            invokevirtual java.util.SimpleTimeZone.getOffset:(J)I
            iload 7 /* rawoffset */
            if_icmpne 34
        33: .line 288
            iconst_0
            istore 10 /* dstoffset */
        34: .line 291
      StackMap locals: int
      StackMap stack:
            aload 3 /* offsets */
            ifnull 37
        35: .line 292
            aload 3 /* offsets */
            iconst_0
            iload 7 /* rawoffset */
            iastore
        36: .line 293
            aload 3 /* offsets */
            iconst_1
            iload 10 /* dstoffset */
            iastore
        37: .line 295
      StackMap locals:
      StackMap stack:
            iload 7 /* rawoffset */
            iload 10 /* dstoffset */
            iadd
            ireturn
        end local 10 // int dstoffset
        end local 8 // long msec
        end local 7 // int rawoffset
        38: .line 298
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.util.calendar.ZoneInfo.transitions:[J
            aload 0 /* this */
            getfield sun.util.calendar.ZoneInfo.transitions:[J
            arraylength
            iconst_1
            isub
            laload
            lstore 7 /* val */
        start local 7 // long val
        39: .line 299
            aload 0 /* this */
            getfield sun.util.calendar.ZoneInfo.offsets:[I
            lload 7 /* val */
            ldc 15
            land
            l2i
            iaload
            aload 0 /* this */
            getfield sun.util.calendar.ZoneInfo.rawOffsetDiff:I
            iadd
            istore 9 /* offset */
        start local 9 // int offset
        40: .line 300
            aload 3 /* offsets */
            ifnull 47
        41: .line 301
            lload 7 /* val */
            iconst_4
            lushr
            ldc 15
            land
            l2i
            istore 10 /* dst */
        start local 10 // int dst
        42: .line 302
            iload 10 /* dst */
            ifne 43
            iconst_0
            goto 44
      StackMap locals: long int int
      StackMap stack:
        43: aload 0 /* this */
            getfield sun.util.calendar.ZoneInfo.offsets:[I
            iload 10 /* dst */
            iaload
      StackMap locals:
      StackMap stack: int
        44: istore 11 /* save */
        start local 11 // int save
        45: .line 303
            aload 3 /* offsets */
            iconst_0
            iload 9 /* offset */
            iload 11 /* save */
            isub
            iastore
        46: .line 304
            aload 3 /* offsets */
            iconst_1
            iload 11 /* save */
            iastore
        end local 11 // int save
        end local 10 // int dst
        47: .line 306
      StackMap locals:
      StackMap stack:
            iload 9 /* offset */
            ireturn
        end local 9 // int offset
        end local 7 // long val
        end local 6 // java.util.SimpleTimeZone tz
        end local 5 // int index
        end local 4 // int type
        end local 3 // int[] offsets
        end local 1 // long date
        end local 0 // sun.util.calendar.ZoneInfo this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   48     0       this  Lsun/util/calendar/ZoneInfo;
            0   48     1       date  J
            0   48     3    offsets  [I
            0   48     4       type  I
            2    6     5     offset  I
            8   48     5      index  I
           10   14     6     offset  I
           16   25     6        val  J
           17   25     8     offset  I
           19   24     9        dst  I
           22   24    10       save  I
           26   48     6         tz  Ljava/util/SimpleTimeZone;
           28   38     7  rawoffset  I
           29   38     8       msec  J
           32   38    10  dstoffset  I
           39   48     7        val  J
           40   48     9     offset  I
           42   47    10        dst  I
           45   47    11       save  I
    MethodParameters:
         Name  Flags
      date     
      offsets  
      type     

  private int getTransitionIndex(long, int);
    descriptor: (JI)I
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=7, locals=12, args_size=3
        start local 0 // sun.util.calendar.ZoneInfo this
        start local 1 // long date
        start local 3 // int type
         0: .line 311
            iconst_0
            istore 4 /* low */
        start local 4 // int low
         1: .line 312
            aload 0 /* this */
            getfield sun.util.calendar.ZoneInfo.transitions:[J
            arraylength
            iconst_1
            isub
            istore 5 /* high */
        start local 5 // int high
         2: .line 314
            goto 19
         3: .line 315
      StackMap locals: int int
      StackMap stack:
            iload 4 /* low */
            iload 5 /* high */
            iadd
            iconst_2
            idiv
            istore 6 /* mid */
        start local 6 // int mid
         4: .line 316
            aload 0 /* this */
            getfield sun.util.calendar.ZoneInfo.transitions:[J
            iload 6 /* mid */
            laload
            lstore 7 /* val */
        start local 7 // long val
         5: .line 317
            lload 7 /* val */
            bipush 12
            lshr
            lstore 9 /* midVal */
        start local 9 // long midVal
         6: .line 318
            iload 3 /* type */
            ifeq 8
         7: .line 319
            lload 9 /* midVal */
            aload 0 /* this */
            getfield sun.util.calendar.ZoneInfo.offsets:[I
            lload 7 /* val */
            ldc 15
            land
            l2i
            iaload
            i2l
            ladd
            lstore 9 /* midVal */
         8: .line 321
      StackMap locals: int long long
      StackMap stack:
            iload 3 /* type */
            iconst_1
            if_icmpne 12
         9: .line 322
            lload 7 /* val */
            iconst_4
            lushr
            ldc 15
            land
            l2i
            istore 11 /* dstIndex */
        start local 11 // int dstIndex
        10: .line 323
            iload 11 /* dstIndex */
            ifeq 12
        11: .line 324
            lload 9 /* midVal */
            aload 0 /* this */
            getfield sun.util.calendar.ZoneInfo.offsets:[I
            iload 11 /* dstIndex */
            iaload
            i2l
            lsub
            lstore 9 /* midVal */
        end local 11 // int dstIndex
        12: .line 328
      StackMap locals:
      StackMap stack:
            lload 9 /* midVal */
            lload 1 /* date */
            lcmp
            ifge 15
        13: .line 329
            iload 6 /* mid */
            iconst_1
            iadd
            istore 4 /* low */
        14: .line 330
            goto 19
      StackMap locals:
      StackMap stack:
        15: lload 9 /* midVal */
            lload 1 /* date */
            lcmp
            ifle 18
        16: .line 331
            iload 6 /* mid */
            iconst_1
            isub
            istore 5 /* high */
        17: .line 332
            goto 19
        18: .line 333
      StackMap locals:
      StackMap stack:
            iload 6 /* mid */
            ireturn
        end local 9 // long midVal
        end local 7 // long val
        end local 6 // int mid
        19: .line 314
      StackMap locals:
      StackMap stack:
            iload 4 /* low */
            iload 5 /* high */
            if_icmple 3
        20: .line 338
            iload 4 /* low */
            aload 0 /* this */
            getfield sun.util.calendar.ZoneInfo.transitions:[J
            arraylength
            if_icmplt 22
        21: .line 339
            iload 4 /* low */
            ireturn
        22: .line 341
      StackMap locals:
      StackMap stack:
            iload 4 /* low */
            iconst_1
            isub
            ireturn
        end local 5 // int high
        end local 4 // int low
        end local 3 // int type
        end local 1 // long date
        end local 0 // sun.util.calendar.ZoneInfo this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   23     0      this  Lsun/util/calendar/ZoneInfo;
            0   23     1      date  J
            0   23     3      type  I
            1   23     4       low  I
            2   23     5      high  I
            4   19     6       mid  I
            5   19     7       val  J
            6   19     9    midVal  J
           10   12    11  dstIndex  I
    MethodParameters:
      Name  Flags
      date  
      type  

  public int getOffset(int, int, int, int, int, int);
    descriptor: (IIIIII)I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=11, args_size=7
        start local 0 // sun.util.calendar.ZoneInfo this
        start local 1 // int era
        start local 2 // int year
        start local 3 // int month
        start local 4 // int day
        start local 5 // int dayOfWeek
        start local 6 // int milliseconds
         0: .line 368
            iload 6 /* milliseconds */
            iflt 1
            iload 6 /* milliseconds */
            ldc 86400000
            if_icmplt 2
         1: .line 369
      StackMap locals:
      StackMap stack:
            new java.lang.IllegalArgumentException
            dup
            invokespecial java.lang.IllegalArgumentException.<init>:()V
            athrow
         2: .line 372
      StackMap locals:
      StackMap stack:
            iload 1 /* era */
            ifne 5
         3: .line 373
            iconst_1
            iload 2 /* year */
            isub
            istore 2 /* year */
         4: .line 374
            goto 7
      StackMap locals:
      StackMap stack:
         5: iload 1 /* era */
            iconst_1
            if_icmpeq 7
         6: .line 375
            new java.lang.IllegalArgumentException
            dup
            invokespecial java.lang.IllegalArgumentException.<init>:()V
            athrow
         7: .line 378
      StackMap locals:
      StackMap stack:
            invokestatic sun.util.calendar.CalendarSystem.getGregorianCalendar:()Lsun/util/calendar/Gregorian;
            astore 7 /* gcal */
        start local 7 // sun.util.calendar.Gregorian gcal
         8: .line 379
            aload 7 /* gcal */
            aconst_null
            invokevirtual sun.util.calendar.Gregorian.newCalendarDate:(Ljava/util/TimeZone;)Lsun/util/calendar/Gregorian$Date;
            astore 8 /* date */
        start local 8 // sun.util.calendar.CalendarDate date
         9: .line 380
            aload 8 /* date */
            iload 2 /* year */
            iload 3 /* month */
            iconst_1
            iadd
            iload 4 /* day */
            invokevirtual sun.util.calendar.CalendarDate.setDate:(III)Lsun/util/calendar/CalendarDate;
            pop
        10: .line 381
            aload 7 /* gcal */
            aload 8 /* date */
            invokevirtual sun.util.calendar.Gregorian.validate:(Lsun/util/calendar/CalendarDate;)Z
            ifne 12
        11: .line 382
            new java.lang.IllegalArgumentException
            dup
            invokespecial java.lang.IllegalArgumentException.<init>:()V
            athrow
        12: .line 386
      StackMap locals: sun.util.calendar.Gregorian sun.util.calendar.CalendarDate
      StackMap stack:
            iload 5 /* dayOfWeek */
            iconst_1
            if_icmplt 14
        13: .line 387
            iload 5 /* dayOfWeek */
            bipush 7
            if_icmple 15
        14: .line 388
      StackMap locals:
      StackMap stack:
            new java.lang.IllegalArgumentException
            dup
            invokespecial java.lang.IllegalArgumentException.<init>:()V
            athrow
        15: .line 391
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.util.calendar.ZoneInfo.transitions:[J
            ifnonnull 17
        16: .line 392
            aload 0 /* this */
            invokevirtual sun.util.calendar.ZoneInfo.getLastRawOffset:()I
            ireturn
        17: .line 395
      StackMap locals:
      StackMap stack:
            aload 7 /* gcal */
            aload 8 /* date */
            invokevirtual sun.util.calendar.Gregorian.getTime:(Lsun/util/calendar/CalendarDate;)J
            iload 6 /* milliseconds */
            i2l
            ladd
            lstore 9 /* dateInMillis */
        start local 9 // long dateInMillis
        18: .line 396
            lload 9 /* dateInMillis */
            aload 0 /* this */
            getfield sun.util.calendar.ZoneInfo.rawOffset:I
            i2l
            lsub
            lstore 9 /* dateInMillis */
        19: .line 397
            aload 0 /* this */
            lload 9 /* dateInMillis */
            aconst_null
            iconst_0
            invokevirtual sun.util.calendar.ZoneInfo.getOffsets:(J[II)I
            ireturn
        end local 9 // long dateInMillis
        end local 8 // sun.util.calendar.CalendarDate date
        end local 7 // sun.util.calendar.Gregorian gcal
        end local 6 // int milliseconds
        end local 5 // int dayOfWeek
        end local 4 // int day
        end local 3 // int month
        end local 2 // int year
        end local 1 // int era
        end local 0 // sun.util.calendar.ZoneInfo this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   20     0          this  Lsun/util/calendar/ZoneInfo;
            0   20     1           era  I
            0   20     2          year  I
            0   20     3         month  I
            0   20     4           day  I
            0   20     5     dayOfWeek  I
            0   20     6  milliseconds  I
            8   20     7          gcal  Lsun/util/calendar/Gregorian;
            9   20     8          date  Lsun/util/calendar/CalendarDate;
           18   20     9  dateInMillis  J
    MethodParameters:
              Name  Flags
      era           
      year          
      month         
      day           
      dayOfWeek     
      milliseconds  

  public synchronized void setRawOffset(int);
    descriptor: (I)V
    flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // sun.util.calendar.ZoneInfo this
        start local 1 // int offsetMillis
         0: .line 409
            iload 1 /* offsetMillis */
            aload 0 /* this */
            getfield sun.util.calendar.ZoneInfo.rawOffset:I
            aload 0 /* this */
            getfield sun.util.calendar.ZoneInfo.rawOffsetDiff:I
            iadd
            if_icmpne 2
         1: .line 410
            return
         2: .line 412
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 1 /* offsetMillis */
            aload 0 /* this */
            getfield sun.util.calendar.ZoneInfo.rawOffset:I
            isub
            putfield sun.util.calendar.ZoneInfo.rawOffsetDiff:I
         3: .line 413
            aload 0 /* this */
            getfield sun.util.calendar.ZoneInfo.lastRule:Ljava/util/SimpleTimeZone;
            ifnull 5
         4: .line 414
            aload 0 /* this */
            getfield sun.util.calendar.ZoneInfo.lastRule:Ljava/util/SimpleTimeZone;
            iload 1 /* offsetMillis */
            invokevirtual java.util.SimpleTimeZone.setRawOffset:(I)V
         5: .line 416
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_1
            putfield sun.util.calendar.ZoneInfo.dirty:Z
         6: .line 417
            return
        end local 1 // int offsetMillis
        end local 0 // sun.util.calendar.ZoneInfo this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    7     0          this  Lsun/util/calendar/ZoneInfo;
            0    7     1  offsetMillis  I
    MethodParameters:
              Name  Flags
      offsetMillis  

  public int getRawOffset();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=2, args_size=1
        start local 0 // sun.util.calendar.ZoneInfo this
         0: .line 427
            aload 0 /* this */
            getfield sun.util.calendar.ZoneInfo.willGMTOffsetChange:Z
            ifne 2
         1: .line 428
            aload 0 /* this */
            getfield sun.util.calendar.ZoneInfo.rawOffset:I
            aload 0 /* this */
            getfield sun.util.calendar.ZoneInfo.rawOffsetDiff:I
            iadd
            ireturn
         2: .line 431
      StackMap locals:
      StackMap stack:
            iconst_2
            newarray 10
            astore 1 /* offsets */
        start local 1 // int[] offsets
         3: .line 432
            aload 0 /* this */
            invokestatic java.lang.System.currentTimeMillis:()J
            aload 1 /* offsets */
            iconst_0
            invokevirtual sun.util.calendar.ZoneInfo.getOffsets:(J[II)I
            pop
         4: .line 433
            aload 1 /* offsets */
            iconst_0
            iaload
            ireturn
        end local 1 // int[] offsets
        end local 0 // sun.util.calendar.ZoneInfo this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    5     0     this  Lsun/util/calendar/ZoneInfo;
            3    5     1  offsets  [I

  public boolean isDirty();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.util.calendar.ZoneInfo this
         0: .line 437
            aload 0 /* this */
            getfield sun.util.calendar.ZoneInfo.dirty:Z
            ireturn
        end local 0 // sun.util.calendar.ZoneInfo this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/util/calendar/ZoneInfo;

  private int getLastRawOffset();
    descriptor: ()I
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // sun.util.calendar.ZoneInfo this
         0: .line 441
            aload 0 /* this */
            getfield sun.util.calendar.ZoneInfo.rawOffset:I
            aload 0 /* this */
            getfield sun.util.calendar.ZoneInfo.rawOffsetDiff:I
            iadd
            ireturn
        end local 0 // sun.util.calendar.ZoneInfo this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/util/calendar/ZoneInfo;

  public boolean useDaylightTime();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.util.calendar.ZoneInfo this
         0: .line 448
            aload 0 /* this */
            getfield sun.util.calendar.ZoneInfo.simpleTimeZoneParams:[I
            ifnull 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // sun.util.calendar.ZoneInfo this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lsun/util/calendar/ZoneInfo;

  public boolean observesDaylightTime();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=5, args_size=1
        start local 0 // sun.util.calendar.ZoneInfo this
         0: .line 453
            aload 0 /* this */
            getfield sun.util.calendar.ZoneInfo.simpleTimeZoneParams:[I
            ifnull 2
         1: .line 454
            iconst_1
            ireturn
         2: .line 456
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.util.calendar.ZoneInfo.transitions:[J
            ifnonnull 4
         3: .line 457
            iconst_0
            ireturn
         4: .line 463
      StackMap locals:
      StackMap stack:
            invokestatic java.lang.System.currentTimeMillis:()J
            aload 0 /* this */
            getfield sun.util.calendar.ZoneInfo.rawOffsetDiff:I
            i2l
            lsub
            lstore 1 /* utc */
        start local 1 // long utc
         5: .line 464
            aload 0 /* this */
            lload 1 /* utc */
            iconst_0
            invokevirtual sun.util.calendar.ZoneInfo.getTransitionIndex:(JI)I
            istore 3 /* index */
        start local 3 // int index
         6: .line 467
            iload 3 /* index */
            ifge 8
         7: .line 468
            iconst_0
            ireturn
         8: .line 472
      StackMap locals: long int
      StackMap stack:
            iload 3 /* index */
            istore 4 /* i */
        start local 4 // int i
         9: goto 13
        10: .line 473
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield sun.util.calendar.ZoneInfo.transitions:[J
            iload 4 /* i */
            laload
            ldc 240
            land
            lconst_0
            lcmp
            ifeq 12
        11: .line 474
            iconst_1
            ireturn
        12: .line 472
      StackMap locals:
      StackMap stack:
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
        13: iload 4 /* i */
            aload 0 /* this */
            getfield sun.util.calendar.ZoneInfo.transitions:[J
            arraylength
            if_icmplt 10
        end local 4 // int i
        14: .line 478
            iconst_0
            ireturn
        end local 3 // int index
        end local 1 // long utc
        end local 0 // sun.util.calendar.ZoneInfo this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   15     0   this  Lsun/util/calendar/ZoneInfo;
            5   15     1    utc  J
            6   15     3  index  I
            9   14     4      i  I

  public boolean inDaylightTime(java.util.Date);
    descriptor: (Ljava/util/Date;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=6, args_size=2
        start local 0 // sun.util.calendar.ZoneInfo this
        start local 1 // java.util.Date date
         0: .line 485
            aload 1 /* date */
            ifnonnull 2
         1: .line 486
            new java.lang.NullPointerException
            dup
            invokespecial java.lang.NullPointerException.<init>:()V
            athrow
         2: .line 489
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.util.calendar.ZoneInfo.transitions:[J
            ifnonnull 4
         3: .line 490
            iconst_0
            ireturn
         4: .line 493
      StackMap locals:
      StackMap stack:
            aload 1 /* date */
            invokevirtual java.util.Date.getTime:()J
            aload 0 /* this */
            getfield sun.util.calendar.ZoneInfo.rawOffsetDiff:I
            i2l
            lsub
            lstore 2 /* utc */
        start local 2 // long utc
         5: .line 494
            aload 0 /* this */
            lload 2 /* utc */
            iconst_0
            invokevirtual sun.util.calendar.ZoneInfo.getTransitionIndex:(JI)I
            istore 4 /* index */
        start local 4 // int index
         6: .line 497
            iload 4 /* index */
            ifge 8
         7: .line 498
            iconst_0
            ireturn
         8: .line 502
      StackMap locals: long int
      StackMap stack:
            iload 4 /* index */
            aload 0 /* this */
            getfield sun.util.calendar.ZoneInfo.transitions:[J
            arraylength
            if_icmpge 11
         9: .line 503
            aload 0 /* this */
            getfield sun.util.calendar.ZoneInfo.transitions:[J
            iload 4 /* index */
            laload
            ldc 240
            land
            lconst_0
            lcmp
            ifeq 10
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
        10: iconst_0
            ireturn
        11: .line 507
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual sun.util.calendar.ZoneInfo.getLastRule:()Ljava/util/SimpleTimeZone;
            astore 5 /* tz */
        start local 5 // java.util.SimpleTimeZone tz
        12: .line 508
            aload 5 /* tz */
            ifnull 14
        13: .line 509
            aload 5 /* tz */
            aload 1 /* date */
            invokevirtual java.util.SimpleTimeZone.inDaylightTime:(Ljava/util/Date;)Z
            ireturn
        14: .line 512
      StackMap locals: java.util.SimpleTimeZone
      StackMap stack:
            aload 0 /* this */
            getfield sun.util.calendar.ZoneInfo.transitions:[J
            aload 0 /* this */
            getfield sun.util.calendar.ZoneInfo.transitions:[J
            arraylength
            iconst_1
            isub
            laload
            ldc 240
            land
            lconst_0
            lcmp
            ifeq 15
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
        15: iconst_0
            ireturn
        end local 5 // java.util.SimpleTimeZone tz
        end local 4 // int index
        end local 2 // long utc
        end local 1 // java.util.Date date
        end local 0 // sun.util.calendar.ZoneInfo this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   16     0   this  Lsun/util/calendar/ZoneInfo;
            0   16     1   date  Ljava/util/Date;
            5   16     2    utc  J
            6   16     4  index  I
           12   16     5     tz  Ljava/util/SimpleTimeZone;
    MethodParameters:
      Name  Flags
      date  

  public int getDSTSavings();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.util.calendar.ZoneInfo this
         0: .line 524
            aload 0 /* this */
            getfield sun.util.calendar.ZoneInfo.dstSavings:I
            ireturn
        end local 0 // sun.util.calendar.ZoneInfo this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/util/calendar/ZoneInfo;

  public java.lang.String toString();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // sun.util.calendar.ZoneInfo this
         0: .line 547
            new java.lang.StringBuilder
            dup
            aload 0 /* this */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
         1: .line 548
            ldc "[id=\""
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            invokevirtual sun.util.calendar.ZoneInfo.getID:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "\""
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         2: .line 549
            ldc ",offset="
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            invokevirtual sun.util.calendar.ZoneInfo.getLastRawOffset:()I
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
         3: .line 550
            ldc ",dstSavings="
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield sun.util.calendar.ZoneInfo.dstSavings:I
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
         4: .line 551
            ldc ",useDaylight="
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            invokevirtual sun.util.calendar.ZoneInfo.useDaylightTime:()Z
            invokevirtual java.lang.StringBuilder.append:(Z)Ljava/lang/StringBuilder;
         5: .line 552
            ldc ",transitions="
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield sun.util.calendar.ZoneInfo.transitions:[J
            ifnull 6
            aload 0 /* this */
            getfield sun.util.calendar.ZoneInfo.transitions:[J
            arraylength
            goto 7
      StackMap locals:
      StackMap stack: java.lang.StringBuilder
         6: iconst_0
      StackMap locals: sun.util.calendar.ZoneInfo
      StackMap stack: java.lang.StringBuilder int
         7: invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
         8: .line 553
            ldc ",lastRule="
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield sun.util.calendar.ZoneInfo.lastRule:Ljava/util/SimpleTimeZone;
            ifnonnull 9
            aload 0 /* this */
            invokevirtual sun.util.calendar.ZoneInfo.getLastRuleInstance:()Ljava/util/SimpleTimeZone;
            goto 10
      StackMap locals:
      StackMap stack: java.lang.StringBuilder
         9: aload 0 /* this */
            getfield sun.util.calendar.ZoneInfo.lastRule:Ljava/util/SimpleTimeZone;
      StackMap locals: sun.util.calendar.ZoneInfo
      StackMap stack: java.lang.StringBuilder java.util.SimpleTimeZone
        10: invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
        11: .line 554
            ldc "]"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        12: .line 547
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 0 // sun.util.calendar.ZoneInfo this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   13     0  this  Lsun/util/calendar/ZoneInfo;

  public static java.lang.String[] getAvailableIDs();
    descriptor: ()[Ljava/lang/String;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 563
            invokestatic sun.util.calendar.ZoneInfoFile.getZoneIds:()[Ljava/lang/String;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public static java.lang.String[] getAvailableIDs(int);
    descriptor: (I)[Ljava/lang/String;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // int rawOffset
         0: .line 576
            iload 0 /* rawOffset */
            invokestatic sun.util.calendar.ZoneInfoFile.getZoneIds:(I)[Ljava/lang/String;
            areturn
        end local 0 // int rawOffset
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    1     0  rawOffset  I
    MethodParameters:
           Name  Flags
      rawOffset  

  public static java.util.TimeZone getTimeZone(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/util/TimeZone;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.lang.String ID
         0: .line 588
            aload 0 /* ID */
            invokestatic sun.util.calendar.ZoneInfoFile.getZoneInfo:(Ljava/lang/String;)Lsun/util/calendar/ZoneInfo;
            areturn
        end local 0 // java.lang.String ID
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0    ID  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      ID    

  private synchronized java.util.SimpleTimeZone getLastRule();
    descriptor: ()Ljava/util/SimpleTimeZone;
    flags: (0x0022) ACC_PRIVATE, ACC_SYNCHRONIZED
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // sun.util.calendar.ZoneInfo this
         0: .line 599
            aload 0 /* this */
            getfield sun.util.calendar.ZoneInfo.lastRule:Ljava/util/SimpleTimeZone;
            ifnonnull 2
         1: .line 600
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual sun.util.calendar.ZoneInfo.getLastRuleInstance:()Ljava/util/SimpleTimeZone;
            putfield sun.util.calendar.ZoneInfo.lastRule:Ljava/util/SimpleTimeZone;
         2: .line 602
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.util.calendar.ZoneInfo.lastRule:Ljava/util/SimpleTimeZone;
            areturn
        end local 0 // sun.util.calendar.ZoneInfo this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lsun/util/calendar/ZoneInfo;

  public java.util.SimpleTimeZone getLastRuleInstance();
    descriptor: ()Ljava/util/SimpleTimeZone;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=15, locals=1, args_size=1
        start local 0 // sun.util.calendar.ZoneInfo this
         0: .line 613
            aload 0 /* this */
            getfield sun.util.calendar.ZoneInfo.simpleTimeZoneParams:[I
            ifnonnull 2
         1: .line 614
            aconst_null
            areturn
         2: .line 616
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.util.calendar.ZoneInfo.simpleTimeZoneParams:[I
            arraylength
            bipush 10
            if_icmpne 16
         3: .line 617
            new java.util.SimpleTimeZone
            dup
            aload 0 /* this */
            invokevirtual sun.util.calendar.ZoneInfo.getLastRawOffset:()I
            aload 0 /* this */
            invokevirtual sun.util.calendar.ZoneInfo.getID:()Ljava/lang/String;
         4: .line 618
            aload 0 /* this */
            getfield sun.util.calendar.ZoneInfo.simpleTimeZoneParams:[I
            iconst_0
            iaload
         5: .line 619
            aload 0 /* this */
            getfield sun.util.calendar.ZoneInfo.simpleTimeZoneParams:[I
            iconst_1
            iaload
         6: .line 620
            aload 0 /* this */
            getfield sun.util.calendar.ZoneInfo.simpleTimeZoneParams:[I
            iconst_2
            iaload
         7: .line 621
            aload 0 /* this */
            getfield sun.util.calendar.ZoneInfo.simpleTimeZoneParams:[I
            iconst_3
            iaload
         8: .line 622
            aload 0 /* this */
            getfield sun.util.calendar.ZoneInfo.simpleTimeZoneParams:[I
            iconst_4
            iaload
         9: .line 623
            aload 0 /* this */
            getfield sun.util.calendar.ZoneInfo.simpleTimeZoneParams:[I
            iconst_5
            iaload
        10: .line 624
            aload 0 /* this */
            getfield sun.util.calendar.ZoneInfo.simpleTimeZoneParams:[I
            bipush 6
            iaload
        11: .line 625
            aload 0 /* this */
            getfield sun.util.calendar.ZoneInfo.simpleTimeZoneParams:[I
            bipush 7
            iaload
        12: .line 626
            aload 0 /* this */
            getfield sun.util.calendar.ZoneInfo.simpleTimeZoneParams:[I
            bipush 8
            iaload
        13: .line 627
            aload 0 /* this */
            getfield sun.util.calendar.ZoneInfo.simpleTimeZoneParams:[I
            bipush 9
            iaload
        14: .line 628
            aload 0 /* this */
            getfield sun.util.calendar.ZoneInfo.dstSavings:I
        15: .line 617
            invokespecial java.util.SimpleTimeZone.<init>:(ILjava/lang/String;IIIIIIIIIII)V
            areturn
        16: .line 630
      StackMap locals:
      StackMap stack:
            new java.util.SimpleTimeZone
            dup
            aload 0 /* this */
            invokevirtual sun.util.calendar.ZoneInfo.getLastRawOffset:()I
            aload 0 /* this */
            invokevirtual sun.util.calendar.ZoneInfo.getID:()Ljava/lang/String;
        17: .line 631
            aload 0 /* this */
            getfield sun.util.calendar.ZoneInfo.simpleTimeZoneParams:[I
            iconst_0
            iaload
        18: .line 632
            aload 0 /* this */
            getfield sun.util.calendar.ZoneInfo.simpleTimeZoneParams:[I
            iconst_1
            iaload
        19: .line 633
            aload 0 /* this */
            getfield sun.util.calendar.ZoneInfo.simpleTimeZoneParams:[I
            iconst_2
            iaload
        20: .line 634
            aload 0 /* this */
            getfield sun.util.calendar.ZoneInfo.simpleTimeZoneParams:[I
            iconst_3
            iaload
        21: .line 635
            aload 0 /* this */
            getfield sun.util.calendar.ZoneInfo.simpleTimeZoneParams:[I
            iconst_4
            iaload
        22: .line 636
            aload 0 /* this */
            getfield sun.util.calendar.ZoneInfo.simpleTimeZoneParams:[I
            iconst_5
            iaload
        23: .line 637
            aload 0 /* this */
            getfield sun.util.calendar.ZoneInfo.simpleTimeZoneParams:[I
            bipush 6
            iaload
        24: .line 638
            aload 0 /* this */
            getfield sun.util.calendar.ZoneInfo.simpleTimeZoneParams:[I
            bipush 7
            iaload
        25: .line 639
            aload 0 /* this */
            getfield sun.util.calendar.ZoneInfo.dstSavings:I
        26: .line 630
            invokespecial java.util.SimpleTimeZone.<init>:(ILjava/lang/String;IIIIIIIII)V
            areturn
        end local 0 // sun.util.calendar.ZoneInfo this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   27     0  this  Lsun/util/calendar/ZoneInfo;

  public java.lang.Object clone();
    descriptor: ()Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // sun.util.calendar.ZoneInfo this
         0: .line 646
            aload 0 /* this */
            invokespecial java.util.TimeZone.clone:()Ljava/lang/Object;
            checkcast sun.util.calendar.ZoneInfo
            astore 1 /* zi */
        start local 1 // sun.util.calendar.ZoneInfo zi
         1: .line 647
            aload 1 /* zi */
            aconst_null
            putfield sun.util.calendar.ZoneInfo.lastRule:Ljava/util/SimpleTimeZone;
         2: .line 648
            aload 1 /* zi */
            areturn
        end local 1 // sun.util.calendar.ZoneInfo zi
        end local 0 // sun.util.calendar.ZoneInfo this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lsun/util/calendar/ZoneInfo;
            1    3     1    zi  Lsun/util/calendar/ZoneInfo;

  public int hashCode();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // sun.util.calendar.ZoneInfo this
         0: .line 657
            aload 0 /* this */
            invokevirtual sun.util.calendar.ZoneInfo.getLastRawOffset:()I
            aload 0 /* this */
            getfield sun.util.calendar.ZoneInfo.checksum:I
            ixor
            ireturn
        end local 0 // sun.util.calendar.ZoneInfo this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/util/calendar/ZoneInfo;

  public boolean equals(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // sun.util.calendar.ZoneInfo this
        start local 1 // java.lang.Object obj
         0: .line 668
            aload 0 /* this */
            aload 1 /* obj */
            if_acmpne 2
         1: .line 669
            iconst_1
            ireturn
         2: .line 671
      StackMap locals:
      StackMap stack:
            aload 1 /* obj */
            instanceof sun.util.calendar.ZoneInfo
            ifne 4
         3: .line 672
            iconst_0
            ireturn
         4: .line 674
      StackMap locals:
      StackMap stack:
            aload 1 /* obj */
            checkcast sun.util.calendar.ZoneInfo
            astore 2 /* that */
        start local 2 // sun.util.calendar.ZoneInfo that
         5: .line 675
            aload 0 /* this */
            invokevirtual sun.util.calendar.ZoneInfo.getID:()Ljava/lang/String;
            aload 2 /* that */
            invokevirtual sun.util.calendar.ZoneInfo.getID:()Ljava/lang/String;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 9
         6: .line 676
            aload 0 /* this */
            invokevirtual sun.util.calendar.ZoneInfo.getLastRawOffset:()I
            aload 2 /* that */
            invokevirtual sun.util.calendar.ZoneInfo.getLastRawOffset:()I
            if_icmpne 9
         7: .line 677
            aload 0 /* this */
            getfield sun.util.calendar.ZoneInfo.checksum:I
            aload 2 /* that */
            getfield sun.util.calendar.ZoneInfo.checksum:I
            if_icmpne 9
         8: .line 675
            iconst_1
            ireturn
      StackMap locals: sun.util.calendar.ZoneInfo
      StackMap stack:
         9: iconst_0
            ireturn
        end local 2 // sun.util.calendar.ZoneInfo that
        end local 1 // java.lang.Object obj
        end local 0 // sun.util.calendar.ZoneInfo this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   10     0  this  Lsun/util/calendar/ZoneInfo;
            0   10     1   obj  Ljava/lang/Object;
            5   10     2  that  Lsun/util/calendar/ZoneInfo;
    MethodParameters:
      Name  Flags
      obj   

  public boolean hasSameRules(java.util.TimeZone);
    descriptor: (Ljava/util/TimeZone;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // sun.util.calendar.ZoneInfo this
        start local 1 // java.util.TimeZone other
         0: .line 692
            aload 0 /* this */
            aload 1 /* other */
            if_acmpne 2
         1: .line 693
            iconst_1
            ireturn
         2: .line 695
      StackMap locals:
      StackMap stack:
            aload 1 /* other */
            ifnonnull 4
         3: .line 696
            iconst_0
            ireturn
         4: .line 698
      StackMap locals:
      StackMap stack:
            aload 1 /* other */
            instanceof sun.util.calendar.ZoneInfo
            ifne 12
         5: .line 699
            aload 0 /* this */
            invokevirtual sun.util.calendar.ZoneInfo.getRawOffset:()I
            aload 1 /* other */
            invokevirtual java.util.TimeZone.getRawOffset:()I
            if_icmpeq 7
         6: .line 700
            iconst_0
            ireturn
         7: .line 704
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.util.calendar.ZoneInfo.transitions:[J
            ifnonnull 11
         8: .line 705
            aload 0 /* this */
            invokevirtual sun.util.calendar.ZoneInfo.useDaylightTime:()Z
            ifne 11
         9: .line 706
            aload 1 /* other */
            invokevirtual java.util.TimeZone.useDaylightTime:()Z
            ifne 11
        10: .line 707
            iconst_1
            ireturn
        11: .line 709
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        12: .line 711
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual sun.util.calendar.ZoneInfo.getLastRawOffset:()I
            aload 1 /* other */
            checkcast sun.util.calendar.ZoneInfo
            invokevirtual sun.util.calendar.ZoneInfo.getLastRawOffset:()I
            if_icmpeq 14
        13: .line 712
            iconst_0
            ireturn
        14: .line 714
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.util.calendar.ZoneInfo.checksum:I
            aload 1 /* other */
            checkcast sun.util.calendar.ZoneInfo
            getfield sun.util.calendar.ZoneInfo.checksum:I
            if_icmpne 15
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
        15: iconst_0
            ireturn
        end local 1 // java.util.TimeZone other
        end local 0 // sun.util.calendar.ZoneInfo this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   16     0   this  Lsun/util/calendar/ZoneInfo;
            0   16     1  other  Ljava/util/TimeZone;
    MethodParameters:
       Name  Flags
      other  

  public static java.util.Map<java.lang.String, java.lang.String> getAliasTable();
    descriptor: ()Ljava/util/Map;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 726
            invokestatic sun.util.calendar.ZoneInfoFile.getAliasMap:()Ljava/util/Map;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
    Signature: ()Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;

  private void readObject(java.io.ObjectInputStream);
    descriptor: (Ljava/io/ObjectInputStream;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // sun.util.calendar.ZoneInfo this
        start local 1 // java.io.ObjectInputStream stream
         0: .line 731
            aload 1 /* stream */
            invokevirtual java.io.ObjectInputStream.defaultReadObject:()V
         1: .line 734
            aload 0 /* this */
            iconst_1
            putfield sun.util.calendar.ZoneInfo.dirty:Z
         2: .line 735
            return
        end local 1 // java.io.ObjectInputStream stream
        end local 0 // sun.util.calendar.ZoneInfo this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    3     0    this  Lsun/util/calendar/ZoneInfo;
            0    3     1  stream  Ljava/io/ObjectInputStream;
    Exceptions:
      throws java.io.IOException, java.lang.ClassNotFoundException
    MethodParameters:
        Name  Flags
      stream  
}
SourceFile: "ZoneInfo.java"
InnerClasses:
  Date = sun.util.calendar.Gregorian$Date of sun.util.calendar.Gregorian