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

  static final boolean USE_OLDMAPPING;
    descriptor: Z
    flags: (0x0018) ACC_STATIC, ACC_FINAL

  static final java.lang.String[] conflictingIDs;
    descriptor: [Ljava/lang/String;
    flags: (0x0018) ACC_STATIC, ACC_FINAL

  private static final sun.util.calendar.CalendarSystem gcal;
    descriptor: Lsun/util/calendar/CalendarSystem;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  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

  private static java.lang.ref.SoftReference<java.util.Map<java.lang.String, java.lang.String>> aliasTable;
    descriptor: Ljava/lang/ref/SoftReference;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Signature: Ljava/lang/ref/SoftReference<Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;>;

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=4, locals=1, args_size=0
         0: .line 85
            new sun.security.action.GetPropertyAction
            dup
            ldc "sun.timezone.ids.oldmapping"
            ldc "false"
            invokespecial sun.security.action.GetPropertyAction.<init>:(Ljava/lang/String;Ljava/lang/String;)V
         1: .line 84
            invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedAction;)Ljava/lang/Object;
            checkcast java.lang.String
         2: .line 85
            getstatic java.util.Locale.ROOT:Ljava/util/Locale;
            invokevirtual java.lang.String.toLowerCase:(Ljava/util/Locale;)Ljava/lang/String;
         3: .line 84
            astore 0 /* oldmapping */
        start local 0 // java.lang.String oldmapping
         4: .line 86
            aload 0 /* oldmapping */
            ldc "yes"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 5
            aload 0 /* oldmapping */
            ldc "true"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 5
            iconst_0
            goto 6
      StackMap locals: java.lang.String
      StackMap stack:
         5: iconst_1
      StackMap locals:
      StackMap stack: int
         6: putstatic sun.util.calendar.ZoneInfo.USE_OLDMAPPING:Z
        end local 0 // java.lang.String oldmapping
         7: .line 90
            iconst_3
            anewarray java.lang.String
            dup
            iconst_0
         8: .line 91
            ldc "EST"
            aastore
            dup
            iconst_1
            ldc "MST"
            aastore
            dup
            iconst_2
            ldc "HST"
            aastore
         9: .line 90
            putstatic sun.util.calendar.ZoneInfo.conflictingIDs:[Ljava/lang/String;
        10: .line 94
            invokestatic sun.util.calendar.CalendarSystem.getGregorianCalendar:()Lsun/util/calendar/Gregorian;
            putstatic sun.util.calendar.ZoneInfo.gcal:Lsun/util/calendar/CalendarSystem;
        11: .line 814
            return
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            4    7     0  oldmapping  Ljava/lang/String;

  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 191
            aload 0 /* this */
            invokespecial java.util.TimeZone.<init>:()V
         1: .line 110
            aload 0 /* this */
            iconst_0
            putfield sun.util.calendar.ZoneInfo.rawOffsetDiff:I
         2: .line 179
            aload 0 /* this */
            iconst_0
            putfield sun.util.calendar.ZoneInfo.willGMTOffsetChange:Z
         3: .line 184
            aload 0 /* this */
            iconst_0
            putfield sun.util.calendar.ZoneInfo.dirty:Z
         4: .line 192
            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 198
            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 199
            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 216
            aload 0 /* this */
            invokespecial java.util.TimeZone.<init>:()V
         1: .line 110
            aload 0 /* this */
            iconst_0
            putfield sun.util.calendar.ZoneInfo.rawOffsetDiff:I
         2: .line 179
            aload 0 /* this */
            iconst_0
            putfield sun.util.calendar.ZoneInfo.willGMTOffsetChange:Z
         3: .line 184
            aload 0 /* this */
            iconst_0
            putfield sun.util.calendar.ZoneInfo.dirty:Z
         4: .line 224
            aload 0 /* this */
            aload 1 /* ID */
            invokevirtual sun.util.calendar.ZoneInfo.setID:(Ljava/lang/String;)V
         5: .line 225
            aload 0 /* this */
            iload 2 /* rawOffset */
            putfield sun.util.calendar.ZoneInfo.rawOffset:I
         6: .line 226
            aload 0 /* this */
            iload 3 /* dstSavings */
            putfield sun.util.calendar.ZoneInfo.dstSavings:I
         7: .line 227
            aload 0 /* this */
            iload 4 /* checksum */
            putfield sun.util.calendar.ZoneInfo.checksum:I
         8: .line 228
            aload 0 /* this */
            aload 5 /* transitions */
            putfield sun.util.calendar.ZoneInfo.transitions:[J
         9: .line 229
            aload 0 /* this */
            aload 6 /* offsets */
            putfield sun.util.calendar.ZoneInfo.offsets:[I
        10: .line 230
            aload 0 /* this */
            aload 7 /* simpleTimeZoneParams */
            putfield sun.util.calendar.ZoneInfo.simpleTimeZoneParams:[I
        11: .line 231
            aload 0 /* this */
            iload 8 /* willGMTOffsetChange */
            putfield sun.util.calendar.ZoneInfo.willGMTOffsetChange:Z
        12: .line 232
            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 243
            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 247
            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 251
            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 255
            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=11, 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 260
            aload 0 /* this */
            getfield sun.util.calendar.ZoneInfo.transitions:[J
            ifnonnull 6
         1: .line 261
            aload 0 /* this */
            invokevirtual sun.util.calendar.ZoneInfo.getLastRawOffset:()I
            istore 5 /* offset */
        start local 5 // int offset
         2: .line 262
            aload 3 /* offsets */
            ifnull 5
         3: .line 263
            aload 3 /* offsets */
            iconst_0
            iload 5 /* offset */
            iastore
         4: .line 264
            aload 3 /* offsets */
            iconst_1
            iconst_0
            iastore
         5: .line 266
      StackMap locals: int
      StackMap stack:
            iload 5 /* offset */
            ireturn
        end local 5 // int offset
         6: .line 269
      StackMap locals:
      StackMap stack:
            lload 1 /* date */
            aload 0 /* this */
            getfield sun.util.calendar.ZoneInfo.rawOffsetDiff:I
            i2l
            lsub
            lstore 1 /* date */
         7: .line 270
            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 274
            iload 5 /* index */
            ifge 14
         9: .line 275
            aload 0 /* this */
            invokevirtual sun.util.calendar.ZoneInfo.getLastRawOffset:()I
            istore 6 /* offset */
        start local 6 // int offset
        10: .line 276
            aload 3 /* offsets */
            ifnull 13
        11: .line 277
            aload 3 /* offsets */
            iconst_0
            iload 6 /* offset */
            iastore
        12: .line 278
            aload 3 /* offsets */
            iconst_1
            iconst_0
            iastore
        13: .line 280
      StackMap locals: int int
      StackMap stack:
            iload 6 /* offset */
            ireturn
        end local 6 // int offset
        14: .line 283
      StackMap locals:
      StackMap stack:
            iload 5 /* index */
            aload 0 /* this */
            getfield sun.util.calendar.ZoneInfo.transitions:[J
            arraylength
            if_icmpge 25
        15: .line 284
            aload 0 /* this */
            getfield sun.util.calendar.ZoneInfo.transitions:[J
            iload 5 /* index */
            laload
            lstore 6 /* val */
        start local 6 // long val
        16: .line 285
            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 286
            aload 3 /* offsets */
            ifnull 24
        18: .line 287
            lload 6 /* val */
            iconst_4
            lushr
            ldc 15
            land
            l2i
            istore 9 /* dst */
        start local 9 // int dst
        19: .line 288
            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 289
            aload 3 /* offsets */
            iconst_0
            iload 8 /* offset */
            iload 10 /* save */
            isub
            iastore
        23: .line 290
            aload 3 /* offsets */
            iconst_1
            iload 10 /* save */
            iastore
        end local 10 // int save
        end local 9 // int dst
        24: .line 292
      StackMap locals:
      StackMap stack:
            iload 8 /* offset */
            ireturn
        end local 8 // int offset
        end local 6 // long val
        25: .line 297
      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 298
            aload 6 /* tz */
            ifnull 38
        27: .line 299
            aload 6 /* tz */
            invokevirtual java.util.SimpleTimeZone.getRawOffset:()I
            istore 7 /* rawoffset */
        start local 7 // int rawoffset
        28: .line 300
            lload 1 /* date */
            lstore 8 /* msec */
        start local 8 // long msec
        29: .line 301
            iload 4 /* type */
            ifeq 31
        30: .line 302
            lload 8 /* msec */
            aload 0 /* this */
            getfield sun.util.calendar.ZoneInfo.rawOffset:I
            i2l
            lsub
            lstore 8 /* msec */
        31: .line 304
      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 307
            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 308
            iconst_0
            istore 10 /* dstoffset */
        34: .line 311
      StackMap locals: int
      StackMap stack:
            aload 3 /* offsets */
            ifnull 37
        35: .line 312
            aload 3 /* offsets */
            iconst_0
            iload 7 /* rawoffset */
            iastore
        36: .line 313
            aload 3 /* offsets */
            iconst_1
            iload 10 /* dstoffset */
            iastore
        37: .line 315
      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 317
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual sun.util.calendar.ZoneInfo.getLastRawOffset:()I
            istore 7 /* offset */
        start local 7 // int offset
        39: .line 318
            aload 3 /* offsets */
            ifnull 42
        40: .line 319
            aload 3 /* offsets */
            iconst_0
            iload 7 /* offset */
            iastore
        41: .line 320
            aload 3 /* offsets */
            iconst_1
            iconst_0
            iastore
        42: .line 322
      StackMap locals: int
      StackMap stack:
            iload 7 /* offset */
            ireturn
        end local 7 // int offset
        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   43     0       this  Lsun/util/calendar/ZoneInfo;
            0   43     1       date  J
            0   43     3    offsets  [I
            0   43     4       type  I
            2    6     5     offset  I
            8   43     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   43     6         tz  Ljava/util/SimpleTimeZone;
           28   38     7  rawoffset  I
           29   38     8       msec  J
           32   38    10  dstoffset  I
           39   43     7     offset  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 326
            iconst_0
            istore 4 /* low */
        start local 4 // int low
         1: .line 327
            aload 0 /* this */
            getfield sun.util.calendar.ZoneInfo.transitions:[J
            arraylength
            iconst_1
            isub
            istore 5 /* high */
        start local 5 // int high
         2: .line 329
            goto 19
         3: .line 330
      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 331
            aload 0 /* this */
            getfield sun.util.calendar.ZoneInfo.transitions:[J
            iload 6 /* mid */
            laload
            lstore 7 /* val */
        start local 7 // long val
         5: .line 332
            lload 7 /* val */
            bipush 12
            lshr
            lstore 9 /* midVal */
        start local 9 // long midVal
         6: .line 333
            iload 3 /* type */
            ifeq 8
         7: .line 334
            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 336
      StackMap locals: int long long
      StackMap stack:
            iload 3 /* type */
            iconst_1
            if_icmpne 12
         9: .line 337
            lload 7 /* val */
            iconst_4
            lushr
            ldc 15
            land
            l2i
            istore 11 /* dstIndex */
        start local 11 // int dstIndex
        10: .line 338
            iload 11 /* dstIndex */
            ifeq 12
        11: .line 339
            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 343
      StackMap locals:
      StackMap stack:
            lload 9 /* midVal */
            lload 1 /* date */
            lcmp
            ifge 15
        13: .line 344
            iload 6 /* mid */
            iconst_1
            iadd
            istore 4 /* low */
        14: .line 345
            goto 19
      StackMap locals:
      StackMap stack:
        15: lload 9 /* midVal */
            lload 1 /* date */
            lcmp
            ifle 18
        16: .line 346
            iload 6 /* mid */
            iconst_1
            isub
            istore 5 /* high */
        17: .line 347
            goto 19
        18: .line 348
      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 329
      StackMap locals:
      StackMap stack:
            iload 4 /* low */
            iload 5 /* high */
            if_icmple 3
        20: .line 353
            iload 4 /* low */
            aload 0 /* this */
            getfield sun.util.calendar.ZoneInfo.transitions:[J
            arraylength
            if_icmplt 22
        21: .line 354
            iload 4 /* low */
            ireturn
        22: .line 356
      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=10, 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 383
            iload 6 /* milliseconds */
            iflt 1
            iload 6 /* milliseconds */
            ldc 86400000
            if_icmplt 2
         1: .line 384
      StackMap locals:
      StackMap stack:
            new java.lang.IllegalArgumentException
            dup
            invokespecial java.lang.IllegalArgumentException.<init>:()V
            athrow
         2: .line 387
      StackMap locals:
      StackMap stack:
            iload 1 /* era */
            ifne 5
         3: .line 388
            iconst_1
            iload 2 /* year */
            isub
            istore 2 /* year */
         4: .line 389
            goto 7
      StackMap locals:
      StackMap stack:
         5: iload 1 /* era */
            iconst_1
            if_icmpeq 7
         6: .line 390
            new java.lang.IllegalArgumentException
            dup
            invokespecial java.lang.IllegalArgumentException.<init>:()V
            athrow
         7: .line 393
      StackMap locals:
      StackMap stack:
            getstatic sun.util.calendar.ZoneInfo.gcal:Lsun/util/calendar/CalendarSystem;
            aconst_null
            invokevirtual sun.util.calendar.CalendarSystem.newCalendarDate:(Ljava/util/TimeZone;)Lsun/util/calendar/CalendarDate;
            astore 7 /* date */
        start local 7 // sun.util.calendar.CalendarDate date
         8: .line 394
            aload 7 /* 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
         9: .line 395
            getstatic sun.util.calendar.ZoneInfo.gcal:Lsun/util/calendar/CalendarSystem;
            aload 7 /* date */
            invokevirtual sun.util.calendar.CalendarSystem.validate:(Lsun/util/calendar/CalendarDate;)Z
            ifne 11
        10: .line 396
            new java.lang.IllegalArgumentException
            dup
            invokespecial java.lang.IllegalArgumentException.<init>:()V
            athrow
        11: .line 400
      StackMap locals: sun.util.calendar.CalendarDate
      StackMap stack:
            iload 5 /* dayOfWeek */
            iconst_1
            if_icmplt 13
        12: .line 401
            iload 5 /* dayOfWeek */
            bipush 7
            if_icmple 14
        13: .line 402
      StackMap locals:
      StackMap stack:
            new java.lang.IllegalArgumentException
            dup
            invokespecial java.lang.IllegalArgumentException.<init>:()V
            athrow
        14: .line 405
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.util.calendar.ZoneInfo.transitions:[J
            ifnonnull 16
        15: .line 406
            aload 0 /* this */
            invokevirtual sun.util.calendar.ZoneInfo.getLastRawOffset:()I
            ireturn
        16: .line 409
      StackMap locals:
      StackMap stack:
            getstatic sun.util.calendar.ZoneInfo.gcal:Lsun/util/calendar/CalendarSystem;
            aload 7 /* date */
            invokevirtual sun.util.calendar.CalendarSystem.getTime:(Lsun/util/calendar/CalendarDate;)J
            iload 6 /* milliseconds */
            i2l
            ladd
            lstore 8 /* dateInMillis */
        start local 8 // long dateInMillis
        17: .line 410
            lload 8 /* dateInMillis */
            aload 0 /* this */
            getfield sun.util.calendar.ZoneInfo.rawOffset:I
            i2l
            lsub
            lstore 8 /* dateInMillis */
        18: .line 411
            aload 0 /* this */
            lload 8 /* dateInMillis */
            aconst_null
            iconst_0
            invokevirtual sun.util.calendar.ZoneInfo.getOffsets:(J[II)I
            ireturn
        end local 8 // long dateInMillis
        end local 7 // sun.util.calendar.CalendarDate date
        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   19     0          this  Lsun/util/calendar/ZoneInfo;
            0   19     1           era  I
            0   19     2          year  I
            0   19     3         month  I
            0   19     4           day  I
            0   19     5     dayOfWeek  I
            0   19     6  milliseconds  I
            8   19     7          date  Lsun/util/calendar/CalendarDate;
           17   19     8  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 423
            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 424
            return
         2: .line 426
      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 427
            aload 0 /* this */
            getfield sun.util.calendar.ZoneInfo.lastRule:Ljava/util/SimpleTimeZone;
            ifnull 5
         4: .line 428
            aload 0 /* this */
            getfield sun.util.calendar.ZoneInfo.lastRule:Ljava/util/SimpleTimeZone;
            iload 1 /* offsetMillis */
            invokevirtual java.util.SimpleTimeZone.setRawOffset:(I)V
         5: .line 430
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_1
            putfield sun.util.calendar.ZoneInfo.dirty:Z
         6: .line 431
            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 441
            aload 0 /* this */
            getfield sun.util.calendar.ZoneInfo.willGMTOffsetChange:Z
            ifne 2
         1: .line 442
            aload 0 /* this */
            getfield sun.util.calendar.ZoneInfo.rawOffset:I
            aload 0 /* this */
            getfield sun.util.calendar.ZoneInfo.rawOffsetDiff:I
            iadd
            ireturn
         2: .line 445
      StackMap locals:
      StackMap stack:
            iconst_2
            newarray 10
            astore 1 /* offsets */
        start local 1 // int[] offsets
         3: .line 446
            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 447
            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 451
            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 455
            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 462
            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 467
            aload 0 /* this */
            getfield sun.util.calendar.ZoneInfo.simpleTimeZoneParams:[I
            ifnull 2
         1: .line 468
            iconst_1
            ireturn
         2: .line 470
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.util.calendar.ZoneInfo.transitions:[J
            ifnonnull 4
         3: .line 471
            iconst_0
            ireturn
         4: .line 477
      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 478
            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 481
            iload 3 /* index */
            ifge 8
         7: .line 482
            iconst_0
            ireturn
         8: .line 486
      StackMap locals: long int
      StackMap stack:
            iload 3 /* index */
            istore 4 /* i */
        start local 4 // int i
         9: goto 13
        10: .line 487
      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 488
            iconst_1
            ireturn
        12: .line 486
      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 492
            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 499
            aload 1 /* date */
            ifnonnull 2
         1: .line 500
            new java.lang.NullPointerException
            dup
            invokespecial java.lang.NullPointerException.<init>:()V
            athrow
         2: .line 503
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.util.calendar.ZoneInfo.transitions:[J
            ifnonnull 4
         3: .line 504
            iconst_0
            ireturn
         4: .line 507
      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 508
            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 511
            iload 4 /* index */
            ifge 8
         7: .line 512
            iconst_0
            ireturn
         8: .line 516
      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 517
            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 521
      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 522
            aload 5 /* tz */
            ifnull 14
        13: .line 523
            aload 5 /* tz */
            aload 1 /* date */
            invokevirtual java.util.SimpleTimeZone.inDaylightTime:(Ljava/util/Date;)Z
            ireturn
        14: .line 525
      StackMap locals: java.util.SimpleTimeZone
      StackMap stack:
            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   15     0   this  Lsun/util/calendar/ZoneInfo;
            0   15     1   date  Ljava/util/Date;
            5   15     2    utc  J
            6   15     4  index  I
           12   15     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 536
            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 559
            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 560
            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 561
            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 562
            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 563
            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 564
            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 565
            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 566
            ldc "]"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        12: .line 559
            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=4, locals=3, args_size=0
         0: .line 575
            invokestatic sun.util.calendar.ZoneInfoFile.getZoneIDs:()Ljava/util/List;
            astore 0 /* idList */
        start local 0 // java.util.List idList
         1: .line 576
            invokestatic sun.util.calendar.ZoneInfoFile.getExcludedZones:()Ljava/util/List;
            astore 1 /* excluded */
        start local 1 // java.util.List excluded
         2: .line 577
            aload 1 /* excluded */
            ifnull 7
         3: .line 579
            new java.util.ArrayList
            dup
            aload 0 /* idList */
            invokeinterface java.util.List.size:()I
            aload 1 /* excluded */
            invokeinterface java.util.List.size:()I
            iadd
            invokespecial java.util.ArrayList.<init>:(I)V
            astore 2 /* list */
        start local 2 // java.util.List list
         4: .line 580
            aload 2 /* list */
            aload 0 /* idList */
            invokeinterface java.util.List.addAll:(Ljava/util/Collection;)Z
            pop
         5: .line 581
            aload 2 /* list */
            aload 1 /* excluded */
            invokeinterface java.util.List.addAll:(Ljava/util/Collection;)Z
            pop
         6: .line 582
            aload 2 /* list */
            astore 0 /* idList */
        end local 2 // java.util.List list
         7: .line 584
      StackMap locals: java.util.List java.util.List
      StackMap stack:
            aload 0 /* idList */
            invokeinterface java.util.List.size:()I
            anewarray java.lang.String
            astore 2 /* ids */
        start local 2 // java.lang.String[] ids
         8: .line 585
            aload 0 /* idList */
            aload 2 /* ids */
            invokeinterface java.util.List.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
            checkcast java.lang.String[]
            areturn
        end local 2 // java.lang.String[] ids
        end local 1 // java.util.List excluded
        end local 0 // java.util.List idList
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            1    9     0    idList  Ljava/util/List<Ljava/lang/String;>;
            2    9     1  excluded  Ljava/util/List<Ljava/lang/String;>;
            4    7     2      list  Ljava/util/List<Ljava/lang/String;>;
            8    9     2       ids  [Ljava/lang/String;

  public static java.lang.String[] getAvailableIDs(int);
    descriptor: (I)[Ljava/lang/String;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=9, args_size=1
        start local 0 // int rawOffset
         0: .line 599
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 2 /* matched */
        start local 2 // java.util.List matched
         1: .line 600
            invokestatic sun.util.calendar.ZoneInfoFile.getZoneIDs:()Ljava/util/List;
            astore 3 /* IDs */
        start local 3 // java.util.List IDs
         2: .line 601
            invokestatic sun.util.calendar.ZoneInfoFile.getRawOffsets:()[I
            astore 4 /* rawOffsets */
        start local 4 // int[] rawOffsets
         3: .line 604
            iconst_0
            istore 5 /* index */
        start local 5 // int index
         4: goto 18
         5: .line 605
      StackMap locals: int top java.util.List java.util.List int[] int
      StackMap stack:
            aload 4 /* rawOffsets */
            iload 5 /* index */
            iaload
            iload 0 /* rawOffset */
            if_icmpne 17
         6: .line 606
            invokestatic sun.util.calendar.ZoneInfoFile.getRawOffsetIndices:()[B
            astore 6 /* indices */
        start local 6 // byte[] indices
         7: .line 607
            iconst_0
            istore 7 /* i */
        start local 7 // int i
         8: goto 16
         9: .line 608
      StackMap locals: byte[] int
      StackMap stack:
            aload 6 /* indices */
            iload 7 /* i */
            baload
            iload 5 /* index */
            if_icmpne 15
        10: .line 609
            aload 2 /* matched */
            aload 3 /* IDs */
            iload 7 /* i */
            iinc 7 /* i */ 1
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast java.lang.String
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        11: .line 610
            goto 13
        12: .line 611
      StackMap locals:
      StackMap stack:
            aload 2 /* matched */
            aload 3 /* IDs */
            iload 7 /* i */
            iinc 7 /* i */ 1
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast java.lang.String
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        13: .line 610
      StackMap locals:
      StackMap stack:
            iload 7 /* i */
            aload 6 /* indices */
            arraylength
            if_icmpge 19
            aload 6 /* indices */
            iload 7 /* i */
            baload
            iload 5 /* index */
            if_icmpeq 12
        14: .line 613
            goto 19
        15: .line 607
      StackMap locals:
      StackMap stack:
            iinc 7 /* i */ 1
      StackMap locals:
      StackMap stack:
        16: iload 7 /* i */
            aload 6 /* indices */
            arraylength
            if_icmplt 9
        end local 7 // int i
        end local 6 // byte[] indices
        17: .line 604
      StackMap locals:
      StackMap stack:
            iinc 5 /* index */ 1
      StackMap locals:
      StackMap stack:
        18: iload 5 /* index */
            aload 4 /* rawOffsets */
            arraylength
            if_icmplt 5
        end local 5 // int index
        19: .line 624
      StackMap locals:
      StackMap stack:
            invokestatic sun.util.calendar.ZoneInfoFile.getExcludedZones:()Ljava/util/List;
            astore 5 /* excluded */
        start local 5 // java.util.List excluded
        20: .line 625
            aload 5 /* excluded */
            ifnull 27
        21: .line 626
            aload 5 /* excluded */
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 7
            goto 26
      StackMap locals: int top java.util.List java.util.List int[] java.util.List top java.util.Iterator
      StackMap stack:
        22: aload 7
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 6 /* id */
        start local 6 // java.lang.String id
        23: .line 627
            aload 6 /* id */
            invokestatic sun.util.calendar.ZoneInfo.getTimeZone:(Ljava/lang/String;)Ljava/util/TimeZone;
            astore 8 /* zi */
        start local 8 // java.util.TimeZone zi
        24: .line 628
            aload 8 /* zi */
            ifnull 26
            aload 8 /* zi */
            invokevirtual java.util.TimeZone.getRawOffset:()I
            iload 0 /* rawOffset */
            if_icmpne 26
        25: .line 629
            aload 2 /* matched */
            aload 6 /* id */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        end local 8 // java.util.TimeZone zi
        end local 6 // java.lang.String id
        26: .line 626
      StackMap locals:
      StackMap stack:
            aload 7
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 22
        27: .line 634
      StackMap locals: int top java.util.List java.util.List int[] java.util.List
      StackMap stack:
            aload 2 /* matched */
            invokeinterface java.util.List.size:()I
            anewarray java.lang.String
            astore 1 /* result */
        start local 1 // java.lang.String[] result
        28: .line 635
            aload 2 /* matched */
            aload 1 /* result */
            invokeinterface java.util.List.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
            pop
        29: .line 636
            aload 1 /* result */
            areturn
        end local 5 // java.util.List excluded
        end local 4 // int[] rawOffsets
        end local 3 // java.util.List IDs
        end local 2 // java.util.List matched
        end local 1 // java.lang.String[] result
        end local 0 // int rawOffset
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   30     0   rawOffset  I
           28   30     1      result  [Ljava/lang/String;
            1   30     2     matched  Ljava/util/List<Ljava/lang/String;>;
            2   30     3         IDs  Ljava/util/List<Ljava/lang/String;>;
            3   30     4  rawOffsets  [I
            4   19     5       index  I
            7   17     6     indices  [B
            8   17     7           i  I
           20   30     5    excluded  Ljava/util/List<Ljava/lang/String;>;
           23   26     6          id  Ljava/lang/String;
           24   26     8          zi  Ljava/util/TimeZone;
    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=2, locals=5, args_size=1
        start local 0 // java.lang.String ID
         0: .line 648
            aconst_null
            astore 1 /* givenID */
        start local 1 // java.lang.String givenID
         1: .line 654
            getstatic sun.util.calendar.ZoneInfo.USE_OLDMAPPING:Z
            ifeq 6
         2: .line 655
            getstatic sun.util.calendar.TzIDOldMapping.MAP:Ljava/util/Map;
            aload 0 /* ID */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.String
            astore 2 /* compatibleID */
        start local 2 // java.lang.String compatibleID
         3: .line 656
            aload 2 /* compatibleID */
            ifnull 6
         4: .line 657
            aload 0 /* ID */
            astore 1 /* givenID */
         5: .line 658
            aload 2 /* compatibleID */
            astore 0 /* ID */
        end local 2 // java.lang.String compatibleID
         6: .line 662
      StackMap locals: java.lang.String
      StackMap stack:
            aload 0 /* ID */
            invokestatic sun.util.calendar.ZoneInfoFile.getZoneInfo:(Ljava/lang/String;)Lsun/util/calendar/ZoneInfo;
            astore 2 /* zi */
        start local 2 // sun.util.calendar.ZoneInfo zi
         7: .line 663
            aload 2 /* zi */
            ifnonnull 20
         8: .line 666
            invokestatic sun.util.calendar.ZoneInfo.getAliasTable:()Ljava/util/Map;
            astore 3 /* map */
        start local 3 // java.util.Map map
         9: .line 667
            aload 0 /* ID */
            astore 4 /* alias */
        start local 4 // java.lang.String alias
        10: .line 668
            goto 17
        11: .line 669
      StackMap locals: sun.util.calendar.ZoneInfo java.util.Map java.lang.String
      StackMap stack:
            aload 4 /* alias */
            invokestatic sun.util.calendar.ZoneInfoFile.getZoneInfo:(Ljava/lang/String;)Lsun/util/calendar/ZoneInfo;
            astore 2 /* zi */
        12: .line 670
            aload 2 /* zi */
            ifnull 17
        13: .line 671
            aload 2 /* zi */
            aload 0 /* ID */
            invokevirtual sun.util.calendar.ZoneInfo.setID:(Ljava/lang/String;)V
        14: .line 672
            aload 0 /* ID */
            aload 2 /* zi */
            invokestatic sun.util.calendar.ZoneInfoFile.addToCache:(Ljava/lang/String;Lsun/util/calendar/ZoneInfo;)Lsun/util/calendar/ZoneInfo;
            astore 2 /* zi */
        15: .line 673
            aload 2 /* zi */
            invokevirtual sun.util.calendar.ZoneInfo.clone:()Ljava/lang/Object;
            checkcast sun.util.calendar.ZoneInfo
            astore 2 /* zi */
        16: .line 674
            goto 20
        17: .line 668
      StackMap locals:
      StackMap stack:
            aload 3 /* map */
            aload 4 /* alias */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.String
            dup
            astore 4 /* alias */
            ifnonnull 11
        end local 4 // java.lang.String alias
        end local 3 // java.util.Map map
        18: .line 677
            goto 20
      StackMap locals: java.lang.String java.lang.String sun.util.calendar.ZoneInfo
      StackMap stack: java.lang.Exception
        19: pop
        20: .line 682
      StackMap locals:
      StackMap stack:
            aload 1 /* givenID */
            ifnull 22
            aload 2 /* zi */
            ifnull 22
        21: .line 683
            aload 2 /* zi */
            aload 1 /* givenID */
            invokevirtual sun.util.calendar.ZoneInfo.setID:(Ljava/lang/String;)V
        22: .line 685
      StackMap locals:
      StackMap stack:
            aload 2 /* zi */
            areturn
        end local 2 // sun.util.calendar.ZoneInfo zi
        end local 1 // java.lang.String givenID
        end local 0 // java.lang.String ID
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   23     0            ID  Ljava/lang/String;
            1   23     1       givenID  Ljava/lang/String;
            3    6     2  compatibleID  Ljava/lang/String;
            7   23     2            zi  Lsun/util/calendar/ZoneInfo;
            9   18     3           map  Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;
           10   18     4         alias  Ljava/lang/String;
      Exception table:
        from    to  target  type
           8    18      19  Class java.lang.Exception
    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 696
            aload 0 /* this */
            getfield sun.util.calendar.ZoneInfo.lastRule:Ljava/util/SimpleTimeZone;
            ifnonnull 2
         1: .line 697
            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 699
      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 710
            aload 0 /* this */
            getfield sun.util.calendar.ZoneInfo.simpleTimeZoneParams:[I
            ifnonnull 2
         1: .line 711
            aconst_null
            areturn
         2: .line 713
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.util.calendar.ZoneInfo.simpleTimeZoneParams:[I
            arraylength
            bipush 10
            if_icmpne 16
         3: .line 714
            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 715
            aload 0 /* this */
            getfield sun.util.calendar.ZoneInfo.simpleTimeZoneParams:[I
            iconst_0
            iaload
         5: .line 716
            aload 0 /* this */
            getfield sun.util.calendar.ZoneInfo.simpleTimeZoneParams:[I
            iconst_1
            iaload
         6: .line 717
            aload 0 /* this */
            getfield sun.util.calendar.ZoneInfo.simpleTimeZoneParams:[I
            iconst_2
            iaload
         7: .line 718
            aload 0 /* this */
            getfield sun.util.calendar.ZoneInfo.simpleTimeZoneParams:[I
            iconst_3
            iaload
         8: .line 719
            aload 0 /* this */
            getfield sun.util.calendar.ZoneInfo.simpleTimeZoneParams:[I
            iconst_4
            iaload
         9: .line 720
            aload 0 /* this */
            getfield sun.util.calendar.ZoneInfo.simpleTimeZoneParams:[I
            iconst_5
            iaload
        10: .line 721
            aload 0 /* this */
            getfield sun.util.calendar.ZoneInfo.simpleTimeZoneParams:[I
            bipush 6
            iaload
        11: .line 722
            aload 0 /* this */
            getfield sun.util.calendar.ZoneInfo.simpleTimeZoneParams:[I
            bipush 7
            iaload
        12: .line 723
            aload 0 /* this */
            getfield sun.util.calendar.ZoneInfo.simpleTimeZoneParams:[I
            bipush 8
            iaload
        13: .line 724
            aload 0 /* this */
            getfield sun.util.calendar.ZoneInfo.simpleTimeZoneParams:[I
            bipush 9
            iaload
        14: .line 725
            aload 0 /* this */
            getfield sun.util.calendar.ZoneInfo.dstSavings:I
        15: .line 714
            invokespecial java.util.SimpleTimeZone.<init>:(ILjava/lang/String;IIIIIIIIIII)V
            areturn
        16: .line 727
      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 728
            aload 0 /* this */
            getfield sun.util.calendar.ZoneInfo.simpleTimeZoneParams:[I
            iconst_0
            iaload
        18: .line 729
            aload 0 /* this */
            getfield sun.util.calendar.ZoneInfo.simpleTimeZoneParams:[I
            iconst_1
            iaload
        19: .line 730
            aload 0 /* this */
            getfield sun.util.calendar.ZoneInfo.simpleTimeZoneParams:[I
            iconst_2
            iaload
        20: .line 731
            aload 0 /* this */
            getfield sun.util.calendar.ZoneInfo.simpleTimeZoneParams:[I
            iconst_3
            iaload
        21: .line 732
            aload 0 /* this */
            getfield sun.util.calendar.ZoneInfo.simpleTimeZoneParams:[I
            iconst_4
            iaload
        22: .line 733
            aload 0 /* this */
            getfield sun.util.calendar.ZoneInfo.simpleTimeZoneParams:[I
            iconst_5
            iaload
        23: .line 734
            aload 0 /* this */
            getfield sun.util.calendar.ZoneInfo.simpleTimeZoneParams:[I
            bipush 6
            iaload
        24: .line 735
            aload 0 /* this */
            getfield sun.util.calendar.ZoneInfo.simpleTimeZoneParams:[I
            bipush 7
            iaload
        25: .line 736
            aload 0 /* this */
            getfield sun.util.calendar.ZoneInfo.dstSavings:I
        26: .line 727
            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 743
            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 744
            aload 1 /* zi */
            aconst_null
            putfield sun.util.calendar.ZoneInfo.lastRule:Ljava/util/SimpleTimeZone;
         2: .line 745
            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 754
            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 765
            aload 0 /* this */
            aload 1 /* obj */
            if_acmpne 2
         1: .line 766
            iconst_1
            ireturn
         2: .line 768
      StackMap locals:
      StackMap stack:
            aload 1 /* obj */
            instanceof sun.util.calendar.ZoneInfo
            ifne 4
         3: .line 769
            iconst_0
            ireturn
         4: .line 771
      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 772
            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 773
            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 774
            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 772
            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 789
            aload 0 /* this */
            aload 1 /* other */
            if_acmpne 2
         1: .line 790
            iconst_1
            ireturn
         2: .line 792
      StackMap locals:
      StackMap stack:
            aload 1 /* other */
            ifnonnull 4
         3: .line 793
            iconst_0
            ireturn
         4: .line 795
      StackMap locals:
      StackMap stack:
            aload 1 /* other */
            instanceof sun.util.calendar.ZoneInfo
            ifne 12
         5: .line 796
            aload 0 /* this */
            invokevirtual sun.util.calendar.ZoneInfo.getRawOffset:()I
            aload 1 /* other */
            invokevirtual java.util.TimeZone.getRawOffset:()I
            if_icmpeq 7
         6: .line 797
            iconst_0
            ireturn
         7: .line 801
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.util.calendar.ZoneInfo.transitions:[J
            ifnonnull 11
         8: .line 802
            aload 0 /* this */
            invokevirtual sun.util.calendar.ZoneInfo.useDaylightTime:()Z
            ifne 11
         9: .line 803
            aload 1 /* other */
            invokevirtual java.util.TimeZone.useDaylightTime:()Z
            ifne 11
        10: .line 804
            iconst_1
            ireturn
        11: .line 806
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        12: .line 808
      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 809
            iconst_0
            ireturn
        14: .line 811
      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  

  static java.util.Map<java.lang.String, java.lang.String> getCachedAliasTable();
    descriptor: ()Ljava/util/Map;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=1, locals=2, args_size=0
         0: .line 817
            aconst_null
            astore 0 /* aliases */
        start local 0 // java.util.Map aliases
         1: .line 819
            getstatic sun.util.calendar.ZoneInfo.aliasTable:Ljava/lang/ref/SoftReference;
            astore 1 /* cache */
        start local 1 // java.lang.ref.SoftReference cache
         2: .line 820
            aload 1 /* cache */
            ifnull 4
         3: .line 821
            aload 1 /* cache */
            invokevirtual java.lang.ref.SoftReference.get:()Ljava/lang/Object;
            checkcast java.util.Map
            astore 0 /* aliases */
         4: .line 823
      StackMap locals: java.util.Map java.lang.ref.SoftReference
      StackMap stack:
            aload 0 /* aliases */
            areturn
        end local 1 // java.lang.ref.SoftReference cache
        end local 0 // java.util.Map aliases
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            1    5     0  aliases  Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;
            2    5     1    cache  Ljava/lang/ref/SoftReference<Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;>;
    Signature: ()Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;

  public static synchronized java.util.Map<java.lang.String, java.lang.String> getAliasTable();
    descriptor: ()Ljava/util/Map;
    flags: (0x0029) ACC_PUBLIC, ACC_STATIC, ACC_SYNCHRONIZED
    Code:
      stack=3, locals=5, args_size=0
         0: .line 835
            invokestatic sun.util.calendar.ZoneInfo.getCachedAliasTable:()Ljava/util/Map;
            astore 0 /* aliases */
        start local 0 // java.util.Map aliases
         1: .line 836
            aload 0 /* aliases */
            ifnonnull 11
         2: .line 837
            invokestatic sun.util.calendar.ZoneInfoFile.getZoneAliases:()Ljava/util/Map;
            astore 0 /* aliases */
         3: .line 838
            aload 0 /* aliases */
            ifnull 11
         4: .line 839
            getstatic sun.util.calendar.ZoneInfo.USE_OLDMAPPING:Z
            ifne 10
         5: .line 841
            getstatic sun.util.calendar.ZoneInfo.conflictingIDs:[Ljava/lang/String;
            dup
            astore 4
            arraylength
            istore 3
            iconst_0
            istore 2
            goto 9
      StackMap locals: java.util.Map top int int java.lang.String[]
      StackMap stack:
         6: aload 4
            iload 2
            aaload
            astore 1 /* key */
        start local 1 // java.lang.String key
         7: .line 842
            aload 0 /* aliases */
            aload 1 /* key */
            invokeinterface java.util.Map.remove:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
        end local 1 // java.lang.String key
         8: .line 841
            iinc 2 1
      StackMap locals:
      StackMap stack:
         9: iload 2
            iload 3
            if_icmplt 6
        10: .line 845
      StackMap locals: java.util.Map
      StackMap stack:
            new java.lang.ref.SoftReference
            dup
            aload 0 /* aliases */
            invokespecial java.lang.ref.SoftReference.<init>:(Ljava/lang/Object;)V
            putstatic sun.util.calendar.ZoneInfo.aliasTable:Ljava/lang/ref/SoftReference;
        11: .line 848
      StackMap locals:
      StackMap stack:
            aload 0 /* aliases */
            areturn
        end local 0 // java.util.Map aliases
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            1   12     0  aliases  Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;
            7    8     1      key  Ljava/lang/String;
    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 853
            aload 1 /* stream */
            invokevirtual java.io.ObjectInputStream.defaultReadObject:()V
         1: .line 856
            aload 0 /* this */
            iconst_1
            putfield sun.util.calendar.ZoneInfo.dirty:Z
         2: .line 857
            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"