final class org.joda.time.tz.DateTimeZoneBuilder$PrecalculatedZone extends org.joda.time.DateTimeZone
  minor version: 0
  major version: 59
  flags: flags: (0x0030) ACC_FINAL, ACC_SUPER
  this_class: org.joda.time.tz.DateTimeZoneBuilder$PrecalculatedZone
  super_class: org.joda.time.DateTimeZone
{
  private static final long serialVersionUID;
    descriptor: J
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 7811976468055766265

  private final long[] iTransitions;
    descriptor: [J
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final int[] iWallOffsets;
    descriptor: [I
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final int[] iStandardOffsets;
    descriptor: [I
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final java.lang.String[] iNameKeys;
    descriptor: [Ljava/lang/String;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final org.joda.time.tz.DateTimeZoneBuilder$DSTZone iTailZone;
    descriptor: Lorg/joda/time/tz/DateTimeZoneBuilder$DSTZone;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  static org.joda.time.tz.DateTimeZoneBuilder$PrecalculatedZone readFrom(java.io.DataInput, java.lang.String);
    descriptor: (Ljava/io/DataInput;Ljava/lang/String;)Lorg/joda/time/tz/DateTimeZoneBuilder$PrecalculatedZone;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=8, locals=11, args_size=2
        start local 0 // java.io.DataInput in
        start local 1 // java.lang.String id
         0: .line 1373
            aload 0 /* in */
            invokeinterface java.io.DataInput.readUnsignedShort:()I
            istore 2 /* poolSize */
        start local 2 // int poolSize
         1: .line 1374
            iload 2 /* poolSize */
            anewarray java.lang.String
            astore 3 /* pool */
        start local 3 // java.lang.String[] pool
         2: .line 1375
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         3: goto 6
         4: .line 1376
      StackMap locals: int java.lang.String[] int
      StackMap stack:
            aload 3 /* pool */
            iload 4 /* i */
            aload 0 /* in */
            invokeinterface java.io.DataInput.readUTF:()Ljava/lang/String;
            aastore
         5: .line 1375
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
         6: iload 4 /* i */
            iload 2 /* poolSize */
            if_icmplt 4
        end local 4 // int i
         7: .line 1379
            aload 0 /* in */
            invokeinterface java.io.DataInput.readInt:()I
            istore 4 /* size */
        start local 4 // int size
         8: .line 1380
            iload 4 /* size */
            newarray 11
            astore 5 /* transitions */
        start local 5 // long[] transitions
         9: .line 1381
            iload 4 /* size */
            newarray 10
            astore 6 /* wallOffsets */
        start local 6 // int[] wallOffsets
        10: .line 1382
            iload 4 /* size */
            newarray 10
            astore 7 /* standardOffsets */
        start local 7 // int[] standardOffsets
        11: .line 1383
            iload 4 /* size */
            anewarray java.lang.String
            astore 8 /* nameKeys */
        start local 8 // java.lang.String[] nameKeys
        12: .line 1385
            iconst_0
            istore 9 /* i */
        start local 9 // int i
        13: goto 26
        14: .line 1386
      StackMap locals: java.io.DataInput java.lang.String int java.lang.String[] int long[] int[] int[] java.lang.String[] int
      StackMap stack:
            aload 5 /* transitions */
            iload 9 /* i */
            aload 0 /* in */
            invokestatic org.joda.time.tz.DateTimeZoneBuilder.readMillis:(Ljava/io/DataInput;)J
            lastore
        15: .line 1387
            aload 6 /* wallOffsets */
            iload 9 /* i */
            aload 0 /* in */
            invokestatic org.joda.time.tz.DateTimeZoneBuilder.readMillis:(Ljava/io/DataInput;)J
            l2i
            iastore
        16: .line 1388
            aload 7 /* standardOffsets */
            iload 9 /* i */
            aload 0 /* in */
            invokestatic org.joda.time.tz.DateTimeZoneBuilder.readMillis:(Ljava/io/DataInput;)J
            l2i
            iastore
        17: .line 1391
            iload 2 /* poolSize */
            sipush 256
            if_icmpge 20
        18: .line 1392
            aload 0 /* in */
            invokeinterface java.io.DataInput.readUnsignedByte:()I
            istore 10 /* index */
        start local 10 // int index
        19: .line 1393
            goto 21
        end local 10 // int index
        20: .line 1394
      StackMap locals:
      StackMap stack:
            aload 0 /* in */
            invokeinterface java.io.DataInput.readUnsignedShort:()I
            istore 10 /* index */
        start local 10 // int index
        21: .line 1396
      StackMap locals: int
      StackMap stack:
            aload 8 /* nameKeys */
            iload 9 /* i */
            aload 3 /* pool */
            iload 10 /* index */
            aaload
            aastore
        end local 10 // int index
        22: .line 1397
            goto 25
      StackMap locals: java.io.DataInput java.lang.String int java.lang.String[] int long[] int[] int[] java.lang.String[] int
      StackMap stack: java.lang.ArrayIndexOutOfBoundsException
        23: pop
        24: .line 1398
            new java.io.IOException
            dup
            ldc "Invalid encoding"
            invokespecial java.io.IOException.<init>:(Ljava/lang/String;)V
            athrow
        25: .line 1385
      StackMap locals:
      StackMap stack:
            iinc 9 /* i */ 1
      StackMap locals:
      StackMap stack:
        26: iload 9 /* i */
            iload 4 /* size */
            if_icmplt 14
        end local 9 // int i
        27: .line 1402
            aconst_null
            astore 9 /* tailZone */
        start local 9 // org.joda.time.tz.DateTimeZoneBuilder$DSTZone tailZone
        28: .line 1403
            aload 0 /* in */
            invokeinterface java.io.DataInput.readBoolean:()Z
            ifeq 30
        29: .line 1404
            aload 0 /* in */
            aload 1 /* id */
            invokestatic org.joda.time.tz.DateTimeZoneBuilder$DSTZone.readFrom:(Ljava/io/DataInput;Ljava/lang/String;)Lorg/joda/time/tz/DateTimeZoneBuilder$DSTZone;
            astore 9 /* tailZone */
        30: .line 1407
      StackMap locals: java.io.DataInput java.lang.String int java.lang.String[] int long[] int[] int[] java.lang.String[] org.joda.time.tz.DateTimeZoneBuilder$DSTZone
      StackMap stack:
            new org.joda.time.tz.DateTimeZoneBuilder$PrecalculatedZone
            dup
        31: .line 1408
            aload 1 /* id */
            aload 5 /* transitions */
            aload 6 /* wallOffsets */
            aload 7 /* standardOffsets */
            aload 8 /* nameKeys */
            aload 9 /* tailZone */
        32: .line 1407
            invokespecial org.joda.time.tz.DateTimeZoneBuilder$PrecalculatedZone.<init>:(Ljava/lang/String;[J[I[I[Ljava/lang/String;Lorg/joda/time/tz/DateTimeZoneBuilder$DSTZone;)V
            areturn
        end local 9 // org.joda.time.tz.DateTimeZoneBuilder$DSTZone tailZone
        end local 8 // java.lang.String[] nameKeys
        end local 7 // int[] standardOffsets
        end local 6 // int[] wallOffsets
        end local 5 // long[] transitions
        end local 4 // int size
        end local 3 // java.lang.String[] pool
        end local 2 // int poolSize
        end local 1 // java.lang.String id
        end local 0 // java.io.DataInput in
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   33     0               in  Ljava/io/DataInput;
            0   33     1               id  Ljava/lang/String;
            1   33     2         poolSize  I
            2   33     3             pool  [Ljava/lang/String;
            3    7     4                i  I
            8   33     4             size  I
            9   33     5      transitions  [J
           10   33     6      wallOffsets  [I
           11   33     7  standardOffsets  [I
           12   33     8         nameKeys  [Ljava/lang/String;
           13   27     9                i  I
           19   20    10            index  I
           21   22    10            index  I
           28   33     9         tailZone  Lorg/joda/time/tz/DateTimeZoneBuilder$DSTZone;
      Exception table:
        from    to  target  type
          17    22      23  Class java.lang.ArrayIndexOutOfBoundsException
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      in    
      id    

  static org.joda.time.tz.DateTimeZoneBuilder$PrecalculatedZone create(java.lang.String, boolean, java.util.ArrayList<org.joda.time.tz.DateTimeZoneBuilder$Transition>, org.joda.time.tz.DateTimeZoneBuilder$DSTZone);
    descriptor: (Ljava/lang/String;ZLjava/util/ArrayList;Lorg/joda/time/tz/DateTimeZoneBuilder$DSTZone;)Lorg/joda/time/tz/DateTimeZoneBuilder$PrecalculatedZone;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=8, locals=25, args_size=4
        start local 0 // java.lang.String id
        start local 1 // boolean outputID
        start local 2 // java.util.ArrayList transitions
        start local 3 // org.joda.time.tz.DateTimeZoneBuilder$DSTZone tailZone
         0: .line 1421
            aload 2 /* transitions */
            invokevirtual java.util.ArrayList.size:()I
            istore 4 /* size */
        start local 4 // int size
         1: .line 1422
            iload 4 /* size */
            ifne 3
         2: .line 1423
            new java.lang.IllegalArgumentException
            dup
            invokespecial java.lang.IllegalArgumentException.<init>:()V
            athrow
         3: .line 1426
      StackMap locals: int
      StackMap stack:
            iload 4 /* size */
            newarray 11
            astore 5 /* trans */
        start local 5 // long[] trans
         4: .line 1427
            iload 4 /* size */
            newarray 10
            astore 6 /* wallOffsets */
        start local 6 // int[] wallOffsets
         5: .line 1428
            iload 4 /* size */
            newarray 10
            astore 7 /* standardOffsets */
        start local 7 // int[] standardOffsets
         6: .line 1429
            iload 4 /* size */
            anewarray java.lang.String
            astore 8 /* nameKeys */
        start local 8 // java.lang.String[] nameKeys
         7: .line 1431
            aconst_null
            astore 9 /* last */
        start local 9 // org.joda.time.tz.DateTimeZoneBuilder$Transition last
         8: .line 1432
            iconst_0
            istore 10 /* i */
        start local 10 // int i
         9: goto 19
        10: .line 1433
      StackMap locals: java.lang.String int java.util.ArrayList org.joda.time.tz.DateTimeZoneBuilder$DSTZone int long[] int[] int[] java.lang.String[] org.joda.time.tz.DateTimeZoneBuilder$Transition int
      StackMap stack:
            aload 2 /* transitions */
            iload 10 /* i */
            invokevirtual java.util.ArrayList.get:(I)Ljava/lang/Object;
            checkcast org.joda.time.tz.DateTimeZoneBuilder$Transition
            astore 11 /* tr */
        start local 11 // org.joda.time.tz.DateTimeZoneBuilder$Transition tr
        11: .line 1435
            aload 11 /* tr */
            aload 9 /* last */
            invokevirtual org.joda.time.tz.DateTimeZoneBuilder$Transition.isTransitionFrom:(Lorg/joda/time/tz/DateTimeZoneBuilder$Transition;)Z
            ifne 13
        12: .line 1436
            new java.lang.IllegalArgumentException
            dup
            aload 0 /* id */
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        13: .line 1439
      StackMap locals: org.joda.time.tz.DateTimeZoneBuilder$Transition
      StackMap stack:
            aload 5 /* trans */
            iload 10 /* i */
            aload 11 /* tr */
            invokevirtual org.joda.time.tz.DateTimeZoneBuilder$Transition.getMillis:()J
            lastore
        14: .line 1440
            aload 6 /* wallOffsets */
            iload 10 /* i */
            aload 11 /* tr */
            invokevirtual org.joda.time.tz.DateTimeZoneBuilder$Transition.getWallOffset:()I
            iastore
        15: .line 1441
            aload 7 /* standardOffsets */
            iload 10 /* i */
            aload 11 /* tr */
            invokevirtual org.joda.time.tz.DateTimeZoneBuilder$Transition.getStandardOffset:()I
            iastore
        16: .line 1442
            aload 8 /* nameKeys */
            iload 10 /* i */
            aload 11 /* tr */
            invokevirtual org.joda.time.tz.DateTimeZoneBuilder$Transition.getNameKey:()Ljava/lang/String;
            aastore
        17: .line 1444
            aload 11 /* tr */
            astore 9 /* last */
        end local 11 // org.joda.time.tz.DateTimeZoneBuilder$Transition tr
        18: .line 1432
            iinc 10 /* i */ 1
      StackMap locals:
      StackMap stack:
        19: iload 10 /* i */
            iload 4 /* size */
            if_icmplt 10
        end local 10 // int i
        20: .line 1449
            iconst_5
            anewarray java.lang.String
            astore 10 /* zoneNameData */
        start local 10 // java.lang.String[] zoneNameData
        21: .line 1450
            new java.text.DateFormatSymbols
            dup
            getstatic java.util.Locale.ENGLISH:Ljava/util/Locale;
            invokespecial java.text.DateFormatSymbols.<init>:(Ljava/util/Locale;)V
            invokevirtual java.text.DateFormatSymbols.getZoneStrings:()[[Ljava/lang/String;
            astore 11 /* zoneStrings */
        start local 11 // java.lang.String[][] zoneStrings
        22: .line 1451
            iconst_0
            istore 12 /* j */
        start local 12 // int j
        23: goto 28
        24: .line 1452
      StackMap locals: java.lang.String int java.util.ArrayList org.joda.time.tz.DateTimeZoneBuilder$DSTZone int long[] int[] int[] java.lang.String[] org.joda.time.tz.DateTimeZoneBuilder$Transition java.lang.String[] java.lang.String[][] int
      StackMap stack:
            aload 11 /* zoneStrings */
            iload 12 /* j */
            aaload
            astore 13 /* set */
        start local 13 // java.lang.String[] set
        25: .line 1453
            aload 13 /* set */
            ifnull 27
            aload 13 /* set */
            arraylength
            iconst_5
            if_icmpne 27
            aload 0 /* id */
            aload 13 /* set */
            iconst_0
            aaload
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 27
        26: .line 1454
            aload 13 /* set */
            astore 10 /* zoneNameData */
        end local 13 // java.lang.String[] set
        27: .line 1451
      StackMap locals:
      StackMap stack:
            iinc 12 /* j */ 1
      StackMap locals:
      StackMap stack:
        28: iload 12 /* j */
            aload 11 /* zoneStrings */
            arraylength
            if_icmplt 24
        end local 12 // int j
        29: .line 1458
            invokestatic org.joda.time.chrono.ISOChronology.getInstanceUTC:()Lorg/joda/time/chrono/ISOChronology;
            astore 12 /* chrono */
        start local 12 // org.joda.time.Chronology chrono
        30: .line 1460
            iconst_0
            istore 13 /* i */
        start local 13 // int i
        31: goto 57
        32: .line 1461
      StackMap locals: java.lang.String int java.util.ArrayList org.joda.time.tz.DateTimeZoneBuilder$DSTZone int long[] int[] int[] java.lang.String[] org.joda.time.tz.DateTimeZoneBuilder$Transition java.lang.String[] java.lang.String[][] org.joda.time.Chronology int
      StackMap stack:
            aload 8 /* nameKeys */
            iload 13 /* i */
            aaload
            astore 14 /* curNameKey */
        start local 14 // java.lang.String curNameKey
        33: .line 1462
            aload 8 /* nameKeys */
            iload 13 /* i */
            iconst_1
            iadd
            aaload
            astore 15 /* nextNameKey */
        start local 15 // java.lang.String nextNameKey
        34: .line 1463
            aload 6 /* wallOffsets */
            iload 13 /* i */
            iaload
            i2l
            lstore 16 /* curOffset */
        start local 16 // long curOffset
        35: .line 1464
            aload 6 /* wallOffsets */
            iload 13 /* i */
            iconst_1
            iadd
            iaload
            i2l
            lstore 18 /* nextOffset */
        start local 18 // long nextOffset
        36: .line 1465
            aload 7 /* standardOffsets */
            iload 13 /* i */
            iaload
            i2l
            lstore 20 /* curStdOffset */
        start local 20 // long curStdOffset
        37: .line 1466
            aload 7 /* standardOffsets */
            iload 13 /* i */
            iconst_1
            iadd
            iaload
            i2l
            lstore 22 /* nextStdOffset */
        start local 22 // long nextStdOffset
        38: .line 1467
            new org.joda.time.Period
            dup
            aload 5 /* trans */
            iload 13 /* i */
            laload
            aload 5 /* trans */
            iload 13 /* i */
            iconst_1
            iadd
            laload
            invokestatic org.joda.time.PeriodType.yearMonthDay:()Lorg/joda/time/PeriodType;
            aload 12 /* chrono */
            invokespecial org.joda.time.Period.<init>:(JJLorg/joda/time/PeriodType;Lorg/joda/time/Chronology;)V
            astore 24 /* p */
        start local 24 // org.joda.time.Period p
        39: .line 1468
            lload 16 /* curOffset */
            lload 18 /* nextOffset */
            lcmp
            ifeq 56
        40: .line 1469
            lload 20 /* curStdOffset */
            lload 22 /* nextStdOffset */
            lcmp
            ifne 56
        41: .line 1470
            aload 14 /* curNameKey */
            aload 15 /* nextNameKey */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 56
        42: .line 1471
            aload 24 /* p */
            invokevirtual org.joda.time.Period.getYears:()I
            ifne 56
            aload 24 /* p */
            invokevirtual org.joda.time.Period.getMonths:()I
            iconst_4
            if_icmple 56
            aload 24 /* p */
            invokevirtual org.joda.time.Period.getMonths:()I
            bipush 8
            if_icmpge 56
        43: .line 1472
            aload 14 /* curNameKey */
            aload 10 /* zoneNameData */
            iconst_2
            aaload
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 56
        44: .line 1473
            aload 14 /* curNameKey */
            aload 10 /* zoneNameData */
            iconst_4
            aaload
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 56
        45: .line 1475
            invokestatic org.joda.time.tz.ZoneInfoLogger.verbose:()Z
            ifeq 50
        46: .line 1476
            getstatic java.lang.System.out:Ljava/io/PrintStream;
            new java.lang.StringBuilder
            dup
            ldc "Fixing duplicate name key - "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 15 /* nextNameKey */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
        47: .line 1477
            getstatic java.lang.System.out:Ljava/io/PrintStream;
            new java.lang.StringBuilder
            dup
            ldc "     - "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            new org.joda.time.DateTime
            dup
            aload 5 /* trans */
            iload 13 /* i */
            laload
            aload 12 /* chrono */
            invokespecial org.joda.time.DateTime.<init>:(JLorg/joda/time/Chronology;)V
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
        48: .line 1478
            ldc " - "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            new org.joda.time.DateTime
            dup
            aload 5 /* trans */
            iload 13 /* i */
            iconst_1
            iadd
            laload
            aload 12 /* chrono */
            invokespecial org.joda.time.DateTime.<init>:(JLorg/joda/time/Chronology;)V
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        49: .line 1477
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
        50: .line 1480
      StackMap locals: java.lang.String int java.util.ArrayList org.joda.time.tz.DateTimeZoneBuilder$DSTZone int long[] int[] int[] java.lang.String[] org.joda.time.tz.DateTimeZoneBuilder$Transition java.lang.String[] java.lang.String[][] org.joda.time.Chronology int java.lang.String java.lang.String long long long long org.joda.time.Period
      StackMap stack:
            lload 16 /* curOffset */
            lload 18 /* nextOffset */
            lcmp
            ifle 53
        51: .line 1481
            aload 8 /* nameKeys */
            iload 13 /* i */
            new java.lang.StringBuilder
            dup
            aload 14 /* curNameKey */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc "-Summer"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.lang.String.intern:()Ljava/lang/String;
            aastore
        52: .line 1482
            goto 56
      StackMap locals:
      StackMap stack:
        53: lload 16 /* curOffset */
            lload 18 /* nextOffset */
            lcmp
            ifge 56
        54: .line 1483
            aload 8 /* nameKeys */
            iload 13 /* i */
            iconst_1
            iadd
            new java.lang.StringBuilder
            dup
            aload 15 /* nextNameKey */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc "-Summer"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.lang.String.intern:()Ljava/lang/String;
            aastore
        55: .line 1484
            iinc 13 /* i */ 1
        end local 24 // org.joda.time.Period p
        end local 22 // long nextStdOffset
        end local 20 // long curStdOffset
        end local 18 // long nextOffset
        end local 16 // long curOffset
        end local 15 // java.lang.String nextNameKey
        end local 14 // java.lang.String curNameKey
        56: .line 1460
      StackMap locals: java.lang.String int java.util.ArrayList org.joda.time.tz.DateTimeZoneBuilder$DSTZone int long[] int[] int[] java.lang.String[] org.joda.time.tz.DateTimeZoneBuilder$Transition java.lang.String[] java.lang.String[][] org.joda.time.Chronology int
      StackMap stack:
            iinc 13 /* i */ 1
      StackMap locals:
      StackMap stack:
        57: iload 13 /* i */
            aload 8 /* nameKeys */
            arraylength
            iconst_1
            isub
            if_icmplt 32
        end local 13 // int i
        58: .line 1489
            aload 3 /* tailZone */
            ifnull 79
        59: .line 1490
            aload 3 /* tailZone */
            getfield org.joda.time.tz.DateTimeZoneBuilder$DSTZone.iStartRecurrence:Lorg/joda/time/tz/DateTimeZoneBuilder$Recurrence;
            invokevirtual org.joda.time.tz.DateTimeZoneBuilder$Recurrence.getNameKey:()Ljava/lang/String;
        60: .line 1491
            aload 3 /* tailZone */
            getfield org.joda.time.tz.DateTimeZoneBuilder$DSTZone.iEndRecurrence:Lorg/joda/time/tz/DateTimeZoneBuilder$Recurrence;
            invokevirtual org.joda.time.tz.DateTimeZoneBuilder$Recurrence.getNameKey:()Ljava/lang/String;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 79
        61: .line 1492
            invokestatic org.joda.time.tz.ZoneInfoLogger.verbose:()Z
            ifeq 65
        62: .line 1493
            getstatic java.lang.System.out:Ljava/io/PrintStream;
            new java.lang.StringBuilder
            dup
            ldc "Fixing duplicate recurrent name key - "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        63: .line 1494
            aload 3 /* tailZone */
            getfield org.joda.time.tz.DateTimeZoneBuilder$DSTZone.iStartRecurrence:Lorg/joda/time/tz/DateTimeZoneBuilder$Recurrence;
            invokevirtual org.joda.time.tz.DateTimeZoneBuilder$Recurrence.getNameKey:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        64: .line 1493
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
        65: .line 1496
      StackMap locals:
      StackMap stack:
            aload 3 /* tailZone */
            getfield org.joda.time.tz.DateTimeZoneBuilder$DSTZone.iStartRecurrence:Lorg/joda/time/tz/DateTimeZoneBuilder$Recurrence;
            invokevirtual org.joda.time.tz.DateTimeZoneBuilder$Recurrence.getSaveMillis:()I
            ifle 73
        66: .line 1497
            new org.joda.time.tz.DateTimeZoneBuilder$DSTZone
            dup
        67: .line 1498
            aload 3 /* tailZone */
            invokevirtual org.joda.time.tz.DateTimeZoneBuilder$DSTZone.getID:()Ljava/lang/String;
        68: .line 1499
            aload 3 /* tailZone */
            getfield org.joda.time.tz.DateTimeZoneBuilder$DSTZone.iStandardOffset:I
        69: .line 1500
            aload 3 /* tailZone */
            getfield org.joda.time.tz.DateTimeZoneBuilder$DSTZone.iStartRecurrence:Lorg/joda/time/tz/DateTimeZoneBuilder$Recurrence;
            ldc "-Summer"
            invokevirtual org.joda.time.tz.DateTimeZoneBuilder$Recurrence.renameAppend:(Ljava/lang/String;)Lorg/joda/time/tz/DateTimeZoneBuilder$Recurrence;
        70: .line 1501
            aload 3 /* tailZone */
            getfield org.joda.time.tz.DateTimeZoneBuilder$DSTZone.iEndRecurrence:Lorg/joda/time/tz/DateTimeZoneBuilder$Recurrence;
        71: .line 1497
            invokespecial org.joda.time.tz.DateTimeZoneBuilder$DSTZone.<init>:(Ljava/lang/String;ILorg/joda/time/tz/DateTimeZoneBuilder$Recurrence;Lorg/joda/time/tz/DateTimeZoneBuilder$Recurrence;)V
            astore 3 /* tailZone */
        72: .line 1502
            goto 79
        73: .line 1503
      StackMap locals:
      StackMap stack:
            new org.joda.time.tz.DateTimeZoneBuilder$DSTZone
            dup
        74: .line 1504
            aload 3 /* tailZone */
            invokevirtual org.joda.time.tz.DateTimeZoneBuilder$DSTZone.getID:()Ljava/lang/String;
        75: .line 1505
            aload 3 /* tailZone */
            getfield org.joda.time.tz.DateTimeZoneBuilder$DSTZone.iStandardOffset:I
        76: .line 1506
            aload 3 /* tailZone */
            getfield org.joda.time.tz.DateTimeZoneBuilder$DSTZone.iStartRecurrence:Lorg/joda/time/tz/DateTimeZoneBuilder$Recurrence;
        77: .line 1507
            aload 3 /* tailZone */
            getfield org.joda.time.tz.DateTimeZoneBuilder$DSTZone.iEndRecurrence:Lorg/joda/time/tz/DateTimeZoneBuilder$Recurrence;
            ldc "-Summer"
            invokevirtual org.joda.time.tz.DateTimeZoneBuilder$Recurrence.renameAppend:(Ljava/lang/String;)Lorg/joda/time/tz/DateTimeZoneBuilder$Recurrence;
        78: .line 1503
            invokespecial org.joda.time.tz.DateTimeZoneBuilder$DSTZone.<init>:(Ljava/lang/String;ILorg/joda/time/tz/DateTimeZoneBuilder$Recurrence;Lorg/joda/time/tz/DateTimeZoneBuilder$Recurrence;)V
            astore 3 /* tailZone */
        79: .line 1512
      StackMap locals:
      StackMap stack:
            new org.joda.time.tz.DateTimeZoneBuilder$PrecalculatedZone
            dup
        80: .line 1513
            iload 1 /* outputID */
            ifeq 81
            aload 0 /* id */
            goto 82
      StackMap locals: java.lang.String int java.util.ArrayList org.joda.time.tz.DateTimeZoneBuilder$DSTZone int long[] int[] int[] java.lang.String[] org.joda.time.tz.DateTimeZoneBuilder$Transition java.lang.String[] java.lang.String[][] org.joda.time.Chronology
      StackMap stack: new 79 new 79
        81: ldc ""
      StackMap locals: java.lang.String int java.util.ArrayList org.joda.time.tz.DateTimeZoneBuilder$DSTZone int long[] int[] int[] java.lang.String[] org.joda.time.tz.DateTimeZoneBuilder$Transition java.lang.String[] java.lang.String[][] org.joda.time.Chronology
      StackMap stack: new 79 new 79 java.lang.String
        82: aload 5 /* trans */
            aload 6 /* wallOffsets */
            aload 7 /* standardOffsets */
            aload 8 /* nameKeys */
            aload 3 /* tailZone */
        83: .line 1512
            invokespecial org.joda.time.tz.DateTimeZoneBuilder$PrecalculatedZone.<init>:(Ljava/lang/String;[J[I[I[Ljava/lang/String;Lorg/joda/time/tz/DateTimeZoneBuilder$DSTZone;)V
            areturn
        end local 12 // org.joda.time.Chronology chrono
        end local 11 // java.lang.String[][] zoneStrings
        end local 10 // java.lang.String[] zoneNameData
        end local 9 // org.joda.time.tz.DateTimeZoneBuilder$Transition last
        end local 8 // java.lang.String[] nameKeys
        end local 7 // int[] standardOffsets
        end local 6 // int[] wallOffsets
        end local 5 // long[] trans
        end local 4 // int size
        end local 3 // org.joda.time.tz.DateTimeZoneBuilder$DSTZone tailZone
        end local 2 // java.util.ArrayList transitions
        end local 1 // boolean outputID
        end local 0 // java.lang.String id
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   84     0               id  Ljava/lang/String;
            0   84     1         outputID  Z
            0   84     2      transitions  Ljava/util/ArrayList<Lorg/joda/time/tz/DateTimeZoneBuilder$Transition;>;
            0   84     3         tailZone  Lorg/joda/time/tz/DateTimeZoneBuilder$DSTZone;
            1   84     4             size  I
            4   84     5            trans  [J
            5   84     6      wallOffsets  [I
            6   84     7  standardOffsets  [I
            7   84     8         nameKeys  [Ljava/lang/String;
            8   84     9             last  Lorg/joda/time/tz/DateTimeZoneBuilder$Transition;
            9   20    10                i  I
           11   18    11               tr  Lorg/joda/time/tz/DateTimeZoneBuilder$Transition;
           21   84    10     zoneNameData  [Ljava/lang/String;
           22   84    11      zoneStrings  [[Ljava/lang/String;
           23   29    12                j  I
           25   27    13              set  [Ljava/lang/String;
           30   84    12           chrono  Lorg/joda/time/Chronology;
           31   58    13                i  I
           33   56    14       curNameKey  Ljava/lang/String;
           34   56    15      nextNameKey  Ljava/lang/String;
           35   56    16        curOffset  J
           36   56    18       nextOffset  J
           37   56    20     curStdOffset  J
           38   56    22    nextStdOffset  J
           39   56    24                p  Lorg/joda/time/Period;
    Signature: (Ljava/lang/String;ZLjava/util/ArrayList<Lorg/joda/time/tz/DateTimeZoneBuilder$Transition;>;Lorg/joda/time/tz/DateTimeZoneBuilder$DSTZone;)Lorg/joda/time/tz/DateTimeZoneBuilder$PrecalculatedZone;
    MethodParameters:
             Name  Flags
      id           
      outputID     
      transitions  
      tailZone     

  private void <init>(java.lang.String, long[], int[], int[], java.lang.String[], org.joda.time.tz.DateTimeZoneBuilder$DSTZone);
    descriptor: (Ljava/lang/String;[J[I[I[Ljava/lang/String;Lorg/joda/time/tz/DateTimeZoneBuilder$DSTZone;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=7, args_size=7
        start local 0 // org.joda.time.tz.DateTimeZoneBuilder$PrecalculatedZone this
        start local 1 // java.lang.String id
        start local 2 // long[] transitions
        start local 3 // int[] wallOffsets
        start local 4 // int[] standardOffsets
        start local 5 // java.lang.String[] nameKeys
        start local 6 // org.joda.time.tz.DateTimeZoneBuilder$DSTZone tailZone
         0: .line 1532
            aload 0 /* this */
            aload 1 /* id */
            invokespecial org.joda.time.DateTimeZone.<init>:(Ljava/lang/String;)V
         1: .line 1533
            aload 0 /* this */
            aload 2 /* transitions */
            putfield org.joda.time.tz.DateTimeZoneBuilder$PrecalculatedZone.iTransitions:[J
         2: .line 1534
            aload 0 /* this */
            aload 3 /* wallOffsets */
            putfield org.joda.time.tz.DateTimeZoneBuilder$PrecalculatedZone.iWallOffsets:[I
         3: .line 1535
            aload 0 /* this */
            aload 4 /* standardOffsets */
            putfield org.joda.time.tz.DateTimeZoneBuilder$PrecalculatedZone.iStandardOffsets:[I
         4: .line 1536
            aload 0 /* this */
            aload 5 /* nameKeys */
            putfield org.joda.time.tz.DateTimeZoneBuilder$PrecalculatedZone.iNameKeys:[Ljava/lang/String;
         5: .line 1537
            aload 0 /* this */
            aload 6 /* tailZone */
            putfield org.joda.time.tz.DateTimeZoneBuilder$PrecalculatedZone.iTailZone:Lorg/joda/time/tz/DateTimeZoneBuilder$DSTZone;
         6: .line 1538
            return
        end local 6 // org.joda.time.tz.DateTimeZoneBuilder$DSTZone tailZone
        end local 5 // java.lang.String[] nameKeys
        end local 4 // int[] standardOffsets
        end local 3 // int[] wallOffsets
        end local 2 // long[] transitions
        end local 1 // java.lang.String id
        end local 0 // org.joda.time.tz.DateTimeZoneBuilder$PrecalculatedZone this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0    7     0             this  Lorg/joda/time/tz/DateTimeZoneBuilder$PrecalculatedZone;
            0    7     1               id  Ljava/lang/String;
            0    7     2      transitions  [J
            0    7     3      wallOffsets  [I
            0    7     4  standardOffsets  [I
            0    7     5         nameKeys  [Ljava/lang/String;
            0    7     6         tailZone  Lorg/joda/time/tz/DateTimeZoneBuilder$DSTZone;
    MethodParameters:
                 Name  Flags
      id               
      transitions      
      wallOffsets      
      standardOffsets  
      nameKeys         
      tailZone         

  public java.lang.String getNameKey(long);
    descriptor: (J)Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=5, args_size=2
        start local 0 // org.joda.time.tz.DateTimeZoneBuilder$PrecalculatedZone this
        start local 1 // long instant
         0: .line 1541
            aload 0 /* this */
            getfield org.joda.time.tz.DateTimeZoneBuilder$PrecalculatedZone.iTransitions:[J
            astore 3 /* transitions */
        start local 3 // long[] transitions
         1: .line 1542
            aload 3 /* transitions */
            lload 1 /* instant */
            invokestatic java.util.Arrays.binarySearch:([JJ)I
            istore 4 /* i */
        start local 4 // int i
         2: .line 1543
            iload 4 /* i */
            iflt 4
         3: .line 1544
            aload 0 /* this */
            getfield org.joda.time.tz.DateTimeZoneBuilder$PrecalculatedZone.iNameKeys:[Ljava/lang/String;
            iload 4 /* i */
            aaload
            areturn
         4: .line 1546
      StackMap locals: long[] int
      StackMap stack:
            iload 4 /* i */
            iconst_m1
            ixor
            istore 4 /* i */
         5: .line 1547
            iload 4 /* i */
            aload 3 /* transitions */
            arraylength
            if_icmpge 9
         6: .line 1548
            iload 4 /* i */
            ifle 8
         7: .line 1549
            aload 0 /* this */
            getfield org.joda.time.tz.DateTimeZoneBuilder$PrecalculatedZone.iNameKeys:[Ljava/lang/String;
            iload 4 /* i */
            iconst_1
            isub
            aaload
            areturn
         8: .line 1551
      StackMap locals:
      StackMap stack:
            ldc "UTC"
            areturn
         9: .line 1553
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.joda.time.tz.DateTimeZoneBuilder$PrecalculatedZone.iTailZone:Lorg/joda/time/tz/DateTimeZoneBuilder$DSTZone;
            ifnonnull 11
        10: .line 1554
            aload 0 /* this */
            getfield org.joda.time.tz.DateTimeZoneBuilder$PrecalculatedZone.iNameKeys:[Ljava/lang/String;
            iload 4 /* i */
            iconst_1
            isub
            aaload
            areturn
        11: .line 1556
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.joda.time.tz.DateTimeZoneBuilder$PrecalculatedZone.iTailZone:Lorg/joda/time/tz/DateTimeZoneBuilder$DSTZone;
            lload 1 /* instant */
            invokevirtual org.joda.time.tz.DateTimeZoneBuilder$DSTZone.getNameKey:(J)Ljava/lang/String;
            areturn
        end local 4 // int i
        end local 3 // long[] transitions
        end local 1 // long instant
        end local 0 // org.joda.time.tz.DateTimeZoneBuilder$PrecalculatedZone this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   12     0         this  Lorg/joda/time/tz/DateTimeZoneBuilder$PrecalculatedZone;
            0   12     1      instant  J
            1   12     3  transitions  [J
            2   12     4            i  I
    MethodParameters:
         Name  Flags
      instant  

  public int getOffset(long);
    descriptor: (J)I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=5, args_size=2
        start local 0 // org.joda.time.tz.DateTimeZoneBuilder$PrecalculatedZone this
        start local 1 // long instant
         0: .line 1560
            aload 0 /* this */
            getfield org.joda.time.tz.DateTimeZoneBuilder$PrecalculatedZone.iTransitions:[J
            astore 3 /* transitions */
        start local 3 // long[] transitions
         1: .line 1561
            aload 3 /* transitions */
            lload 1 /* instant */
            invokestatic java.util.Arrays.binarySearch:([JJ)I
            istore 4 /* i */
        start local 4 // int i
         2: .line 1562
            iload 4 /* i */
            iflt 4
         3: .line 1563
            aload 0 /* this */
            getfield org.joda.time.tz.DateTimeZoneBuilder$PrecalculatedZone.iWallOffsets:[I
            iload 4 /* i */
            iaload
            ireturn
         4: .line 1565
      StackMap locals: long[] int
      StackMap stack:
            iload 4 /* i */
            iconst_m1
            ixor
            istore 4 /* i */
         5: .line 1566
            iload 4 /* i */
            aload 3 /* transitions */
            arraylength
            if_icmpge 9
         6: .line 1567
            iload 4 /* i */
            ifle 8
         7: .line 1568
            aload 0 /* this */
            getfield org.joda.time.tz.DateTimeZoneBuilder$PrecalculatedZone.iWallOffsets:[I
            iload 4 /* i */
            iconst_1
            isub
            iaload
            ireturn
         8: .line 1570
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
         9: .line 1572
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.joda.time.tz.DateTimeZoneBuilder$PrecalculatedZone.iTailZone:Lorg/joda/time/tz/DateTimeZoneBuilder$DSTZone;
            ifnonnull 11
        10: .line 1573
            aload 0 /* this */
            getfield org.joda.time.tz.DateTimeZoneBuilder$PrecalculatedZone.iWallOffsets:[I
            iload 4 /* i */
            iconst_1
            isub
            iaload
            ireturn
        11: .line 1575
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.joda.time.tz.DateTimeZoneBuilder$PrecalculatedZone.iTailZone:Lorg/joda/time/tz/DateTimeZoneBuilder$DSTZone;
            lload 1 /* instant */
            invokevirtual org.joda.time.tz.DateTimeZoneBuilder$DSTZone.getOffset:(J)I
            ireturn
        end local 4 // int i
        end local 3 // long[] transitions
        end local 1 // long instant
        end local 0 // org.joda.time.tz.DateTimeZoneBuilder$PrecalculatedZone this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   12     0         this  Lorg/joda/time/tz/DateTimeZoneBuilder$PrecalculatedZone;
            0   12     1      instant  J
            1   12     3  transitions  [J
            2   12     4            i  I
    MethodParameters:
         Name  Flags
      instant  

  public int getStandardOffset(long);
    descriptor: (J)I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=5, args_size=2
        start local 0 // org.joda.time.tz.DateTimeZoneBuilder$PrecalculatedZone this
        start local 1 // long instant
         0: .line 1579
            aload 0 /* this */
            getfield org.joda.time.tz.DateTimeZoneBuilder$PrecalculatedZone.iTransitions:[J
            astore 3 /* transitions */
        start local 3 // long[] transitions
         1: .line 1580
            aload 3 /* transitions */
            lload 1 /* instant */
            invokestatic java.util.Arrays.binarySearch:([JJ)I
            istore 4 /* i */
        start local 4 // int i
         2: .line 1581
            iload 4 /* i */
            iflt 4
         3: .line 1582
            aload 0 /* this */
            getfield org.joda.time.tz.DateTimeZoneBuilder$PrecalculatedZone.iStandardOffsets:[I
            iload 4 /* i */
            iaload
            ireturn
         4: .line 1584
      StackMap locals: long[] int
      StackMap stack:
            iload 4 /* i */
            iconst_m1
            ixor
            istore 4 /* i */
         5: .line 1585
            iload 4 /* i */
            aload 3 /* transitions */
            arraylength
            if_icmpge 9
         6: .line 1586
            iload 4 /* i */
            ifle 8
         7: .line 1587
            aload 0 /* this */
            getfield org.joda.time.tz.DateTimeZoneBuilder$PrecalculatedZone.iStandardOffsets:[I
            iload 4 /* i */
            iconst_1
            isub
            iaload
            ireturn
         8: .line 1589
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
         9: .line 1591
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.joda.time.tz.DateTimeZoneBuilder$PrecalculatedZone.iTailZone:Lorg/joda/time/tz/DateTimeZoneBuilder$DSTZone;
            ifnonnull 11
        10: .line 1592
            aload 0 /* this */
            getfield org.joda.time.tz.DateTimeZoneBuilder$PrecalculatedZone.iStandardOffsets:[I
            iload 4 /* i */
            iconst_1
            isub
            iaload
            ireturn
        11: .line 1594
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.joda.time.tz.DateTimeZoneBuilder$PrecalculatedZone.iTailZone:Lorg/joda/time/tz/DateTimeZoneBuilder$DSTZone;
            lload 1 /* instant */
            invokevirtual org.joda.time.tz.DateTimeZoneBuilder$DSTZone.getStandardOffset:(J)I
            ireturn
        end local 4 // int i
        end local 3 // long[] transitions
        end local 1 // long instant
        end local 0 // org.joda.time.tz.DateTimeZoneBuilder$PrecalculatedZone this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   12     0         this  Lorg/joda/time/tz/DateTimeZoneBuilder$PrecalculatedZone;
            0   12     1      instant  J
            1   12     3  transitions  [J
            2   12     4            i  I
    MethodParameters:
         Name  Flags
      instant  

  public boolean isFixed();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.joda.time.tz.DateTimeZoneBuilder$PrecalculatedZone this
         0: .line 1598
            iconst_0
            ireturn
        end local 0 // org.joda.time.tz.DateTimeZoneBuilder$PrecalculatedZone this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/joda/time/tz/DateTimeZoneBuilder$PrecalculatedZone;

  public long nextTransition(long);
    descriptor: (J)J
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=7, args_size=2
        start local 0 // org.joda.time.tz.DateTimeZoneBuilder$PrecalculatedZone this
        start local 1 // long instant
         0: .line 1602
            aload 0 /* this */
            getfield org.joda.time.tz.DateTimeZoneBuilder$PrecalculatedZone.iTransitions:[J
            astore 3 /* transitions */
        start local 3 // long[] transitions
         1: .line 1603
            aload 3 /* transitions */
            lload 1 /* instant */
            invokestatic java.util.Arrays.binarySearch:([JJ)I
            istore 4 /* i */
        start local 4 // int i
         2: .line 1604
            iload 4 /* i */
            iflt 3
            iload 4 /* i */
            iconst_1
            iadd
            goto 4
      StackMap locals: long[] int
      StackMap stack:
         3: iload 4 /* i */
            iconst_m1
            ixor
      StackMap locals:
      StackMap stack: int
         4: istore 4 /* i */
         5: .line 1605
            iload 4 /* i */
            aload 3 /* transitions */
            arraylength
            if_icmpge 7
         6: .line 1606
            aload 3 /* transitions */
            iload 4 /* i */
            laload
            lreturn
         7: .line 1608
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.joda.time.tz.DateTimeZoneBuilder$PrecalculatedZone.iTailZone:Lorg/joda/time/tz/DateTimeZoneBuilder$DSTZone;
            ifnonnull 9
         8: .line 1609
            lload 1 /* instant */
            lreturn
         9: .line 1611
      StackMap locals:
      StackMap stack:
            aload 3 /* transitions */
            aload 3 /* transitions */
            arraylength
            iconst_1
            isub
            laload
            lstore 5 /* end */
        start local 5 // long end
        10: .line 1612
            lload 1 /* instant */
            lload 5 /* end */
            lcmp
            ifge 12
        11: .line 1613
            lload 5 /* end */
            lstore 1 /* instant */
        12: .line 1615
      StackMap locals: long
      StackMap stack:
            aload 0 /* this */
            getfield org.joda.time.tz.DateTimeZoneBuilder$PrecalculatedZone.iTailZone:Lorg/joda/time/tz/DateTimeZoneBuilder$DSTZone;
            lload 1 /* instant */
            invokevirtual org.joda.time.tz.DateTimeZoneBuilder$DSTZone.nextTransition:(J)J
            lreturn
        end local 5 // long end
        end local 4 // int i
        end local 3 // long[] transitions
        end local 1 // long instant
        end local 0 // org.joda.time.tz.DateTimeZoneBuilder$PrecalculatedZone this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   13     0         this  Lorg/joda/time/tz/DateTimeZoneBuilder$PrecalculatedZone;
            0   13     1      instant  J
            1   13     3  transitions  [J
            2   13     4            i  I
           10   13     5          end  J
    MethodParameters:
         Name  Flags
      instant  

  public long previousTransition(long);
    descriptor: (J)J
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=7, args_size=2
        start local 0 // org.joda.time.tz.DateTimeZoneBuilder$PrecalculatedZone this
        start local 1 // long instant
         0: .line 1619
            aload 0 /* this */
            getfield org.joda.time.tz.DateTimeZoneBuilder$PrecalculatedZone.iTransitions:[J
            astore 3 /* transitions */
        start local 3 // long[] transitions
         1: .line 1620
            aload 3 /* transitions */
            lload 1 /* instant */
            invokestatic java.util.Arrays.binarySearch:([JJ)I
            istore 4 /* i */
        start local 4 // int i
         2: .line 1621
            iload 4 /* i */
            iflt 6
         3: .line 1622
            lload 1 /* instant */
            ldc -9223372036854775808
            lcmp
            ifle 5
         4: .line 1623
            lload 1 /* instant */
            lconst_1
            lsub
            lreturn
         5: .line 1625
      StackMap locals: long[] int
      StackMap stack:
            lload 1 /* instant */
            lreturn
         6: .line 1627
      StackMap locals:
      StackMap stack:
            iload 4 /* i */
            iconst_m1
            ixor
            istore 4 /* i */
         7: .line 1628
            iload 4 /* i */
            aload 3 /* transitions */
            arraylength
            if_icmpge 13
         8: .line 1629
            iload 4 /* i */
            ifle 12
         9: .line 1630
            aload 3 /* transitions */
            iload 4 /* i */
            iconst_1
            isub
            laload
            lstore 5 /* prev */
        start local 5 // long prev
        10: .line 1631
            lload 5 /* prev */
            ldc -9223372036854775808
            lcmp
            ifle 12
        11: .line 1632
            lload 5 /* prev */
            lconst_1
            lsub
            lreturn
        end local 5 // long prev
        12: .line 1635
      StackMap locals:
      StackMap stack:
            lload 1 /* instant */
            lreturn
        13: .line 1637
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.joda.time.tz.DateTimeZoneBuilder$PrecalculatedZone.iTailZone:Lorg/joda/time/tz/DateTimeZoneBuilder$DSTZone;
            ifnull 17
        14: .line 1638
            aload 0 /* this */
            getfield org.joda.time.tz.DateTimeZoneBuilder$PrecalculatedZone.iTailZone:Lorg/joda/time/tz/DateTimeZoneBuilder$DSTZone;
            lload 1 /* instant */
            invokevirtual org.joda.time.tz.DateTimeZoneBuilder$DSTZone.previousTransition:(J)J
            lstore 5 /* prev */
        start local 5 // long prev
        15: .line 1639
            lload 5 /* prev */
            lload 1 /* instant */
            lcmp
            ifge 17
        16: .line 1640
            lload 5 /* prev */
            lreturn
        end local 5 // long prev
        17: .line 1643
      StackMap locals:
      StackMap stack:
            aload 3 /* transitions */
            iload 4 /* i */
            iconst_1
            isub
            laload
            lstore 5 /* prev */
        start local 5 // long prev
        18: .line 1644
            lload 5 /* prev */
            ldc -9223372036854775808
            lcmp
            ifle 20
        19: .line 1645
            lload 5 /* prev */
            lconst_1
            lsub
            lreturn
        20: .line 1647
      StackMap locals: long
      StackMap stack:
            lload 1 /* instant */
            lreturn
        end local 5 // long prev
        end local 4 // int i
        end local 3 // long[] transitions
        end local 1 // long instant
        end local 0 // org.joda.time.tz.DateTimeZoneBuilder$PrecalculatedZone this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   21     0         this  Lorg/joda/time/tz/DateTimeZoneBuilder$PrecalculatedZone;
            0   21     1      instant  J
            1   21     3  transitions  [J
            2   21     4            i  I
           10   12     5         prev  J
           15   17     5         prev  J
           18   21     5         prev  J
    MethodParameters:
         Name  Flags
      instant  

  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 // org.joda.time.tz.DateTimeZoneBuilder$PrecalculatedZone this
        start local 1 // java.lang.Object obj
         0: .line 1651
            aload 0 /* this */
            aload 1 /* obj */
            if_acmpne 2
         1: .line 1652
            iconst_1
            ireturn
         2: .line 1654
      StackMap locals:
      StackMap stack:
            aload 1 /* obj */
            instanceof org.joda.time.tz.DateTimeZoneBuilder$PrecalculatedZone
            ifeq 14
         3: .line 1655
            aload 1 /* obj */
            checkcast org.joda.time.tz.DateTimeZoneBuilder$PrecalculatedZone
            astore 2 /* other */
        start local 2 // org.joda.time.tz.DateTimeZoneBuilder$PrecalculatedZone other
         4: .line 1657
            aload 0 /* this */
            invokevirtual org.joda.time.tz.DateTimeZoneBuilder$PrecalculatedZone.getID:()Ljava/lang/String;
            aload 2 /* other */
            invokevirtual org.joda.time.tz.DateTimeZoneBuilder$PrecalculatedZone.getID:()Ljava/lang/String;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 13
         5: .line 1658
            aload 0 /* this */
            getfield org.joda.time.tz.DateTimeZoneBuilder$PrecalculatedZone.iTransitions:[J
            aload 2 /* other */
            getfield org.joda.time.tz.DateTimeZoneBuilder$PrecalculatedZone.iTransitions:[J
            invokestatic java.util.Arrays.equals:([J[J)Z
            ifeq 13
         6: .line 1659
            aload 0 /* this */
            getfield org.joda.time.tz.DateTimeZoneBuilder$PrecalculatedZone.iNameKeys:[Ljava/lang/String;
            aload 2 /* other */
            getfield org.joda.time.tz.DateTimeZoneBuilder$PrecalculatedZone.iNameKeys:[Ljava/lang/String;
            invokestatic java.util.Arrays.equals:([Ljava/lang/Object;[Ljava/lang/Object;)Z
            ifeq 13
         7: .line 1660
            aload 0 /* this */
            getfield org.joda.time.tz.DateTimeZoneBuilder$PrecalculatedZone.iWallOffsets:[I
            aload 2 /* other */
            getfield org.joda.time.tz.DateTimeZoneBuilder$PrecalculatedZone.iWallOffsets:[I
            invokestatic java.util.Arrays.equals:([I[I)Z
            ifeq 13
         8: .line 1661
            aload 0 /* this */
            getfield org.joda.time.tz.DateTimeZoneBuilder$PrecalculatedZone.iStandardOffsets:[I
            aload 2 /* other */
            getfield org.joda.time.tz.DateTimeZoneBuilder$PrecalculatedZone.iStandardOffsets:[I
            invokestatic java.util.Arrays.equals:([I[I)Z
            ifeq 13
         9: .line 1662
            aload 0 /* this */
            getfield org.joda.time.tz.DateTimeZoneBuilder$PrecalculatedZone.iTailZone:Lorg/joda/time/tz/DateTimeZoneBuilder$DSTZone;
            ifnonnull 11
        10: .line 1663
            aload 2 /* other */
            getfield org.joda.time.tz.DateTimeZoneBuilder$PrecalculatedZone.iTailZone:Lorg/joda/time/tz/DateTimeZoneBuilder$DSTZone;
            ifnonnull 13
            goto 12
        11: .line 1664
      StackMap locals: org.joda.time.tz.DateTimeZoneBuilder$PrecalculatedZone
      StackMap stack:
            aload 0 /* this */
            getfield org.joda.time.tz.DateTimeZoneBuilder$PrecalculatedZone.iTailZone:Lorg/joda/time/tz/DateTimeZoneBuilder$DSTZone;
            aload 2 /* other */
            getfield org.joda.time.tz.DateTimeZoneBuilder$PrecalculatedZone.iTailZone:Lorg/joda/time/tz/DateTimeZoneBuilder$DSTZone;
            invokevirtual org.joda.time.tz.DateTimeZoneBuilder$DSTZone.equals:(Ljava/lang/Object;)Z
            ifeq 13
        12: .line 1656
      StackMap locals:
      StackMap stack:
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
        13: iconst_0
            ireturn
        end local 2 // org.joda.time.tz.DateTimeZoneBuilder$PrecalculatedZone other
        14: .line 1666
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 1 // java.lang.Object obj
        end local 0 // org.joda.time.tz.DateTimeZoneBuilder$PrecalculatedZone this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   15     0   this  Lorg/joda/time/tz/DateTimeZoneBuilder$PrecalculatedZone;
            0   15     1    obj  Ljava/lang/Object;
            4   14     2  other  Lorg/joda/time/tz/DateTimeZoneBuilder$PrecalculatedZone;
    MethodParameters:
      Name  Flags
      obj   

  public void writeTo(java.io.DataOutput);
    descriptor: (Ljava/io/DataOutput;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=10, args_size=2
        start local 0 // org.joda.time.tz.DateTimeZoneBuilder$PrecalculatedZone this
        start local 1 // java.io.DataOutput out
         0: .line 1670
            aload 0 /* this */
            getfield org.joda.time.tz.DateTimeZoneBuilder$PrecalculatedZone.iTransitions:[J
            arraylength
            istore 2 /* size */
        start local 2 // int size
         1: .line 1673
            new java.util.HashSet
            dup
            invokespecial java.util.HashSet.<init>:()V
            astore 3 /* poolSet */
        start local 3 // java.util.Set poolSet
         2: .line 1674
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         3: goto 6
         4: .line 1675
      StackMap locals: int java.util.Set int
      StackMap stack:
            aload 3 /* poolSet */
            aload 0 /* this */
            getfield org.joda.time.tz.DateTimeZoneBuilder$PrecalculatedZone.iNameKeys:[Ljava/lang/String;
            iload 4 /* i */
            aaload
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
         5: .line 1674
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
         6: iload 4 /* i */
            iload 2 /* size */
            if_icmplt 4
        end local 4 // int i
         7: .line 1678
            aload 3 /* poolSet */
            invokeinterface java.util.Set.size:()I
            istore 4 /* poolSize */
        start local 4 // int poolSize
         8: .line 1679
            iload 4 /* poolSize */
            ldc 65535
            if_icmple 10
         9: .line 1680
            new java.lang.UnsupportedOperationException
            dup
            ldc "String pool is too large"
            invokespecial java.lang.UnsupportedOperationException.<init>:(Ljava/lang/String;)V
            athrow
        10: .line 1682
      StackMap locals:
      StackMap stack:
            iload 4 /* poolSize */
            anewarray java.lang.String
            astore 5 /* pool */
        start local 5 // java.lang.String[] pool
        11: .line 1683
            aload 3 /* poolSet */
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 6 /* it */
        start local 6 // java.util.Iterator it
        12: .line 1684
            iconst_0
            istore 7 /* i */
        start local 7 // int i
        13: goto 16
        14: .line 1685
      StackMap locals: java.lang.String[] java.util.Iterator int
      StackMap stack:
            aload 5 /* pool */
            iload 7 /* i */
            aload 6 /* it */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.lang.String
            aastore
        15: .line 1684
            iinc 7 /* i */ 1
      StackMap locals:
      StackMap stack:
        16: aload 6 /* it */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 14
        end local 7 // int i
        17: .line 1689
            aload 1 /* out */
            iload 4 /* poolSize */
            invokeinterface java.io.DataOutput.writeShort:(I)V
        18: .line 1690
            iconst_0
            istore 7 /* i */
        start local 7 // int i
        19: goto 22
        20: .line 1691
      StackMap locals:
      StackMap stack:
            aload 1 /* out */
            aload 5 /* pool */
            iload 7 /* i */
            aaload
            invokeinterface java.io.DataOutput.writeUTF:(Ljava/lang/String;)V
        21: .line 1690
            iinc 7 /* i */ 1
      StackMap locals:
      StackMap stack:
        22: iload 7 /* i */
            iload 4 /* poolSize */
            if_icmplt 20
        end local 7 // int i
        23: .line 1694
            aload 1 /* out */
            iload 2 /* size */
            invokeinterface java.io.DataOutput.writeInt:(I)V
        24: .line 1696
            iconst_0
            istore 7 /* i */
        start local 7 // int i
        25: goto 41
        26: .line 1697
      StackMap locals:
      StackMap stack:
            aload 1 /* out */
            aload 0 /* this */
            getfield org.joda.time.tz.DateTimeZoneBuilder$PrecalculatedZone.iTransitions:[J
            iload 7 /* i */
            laload
            invokestatic org.joda.time.tz.DateTimeZoneBuilder.writeMillis:(Ljava/io/DataOutput;J)V
        27: .line 1698
            aload 1 /* out */
            aload 0 /* this */
            getfield org.joda.time.tz.DateTimeZoneBuilder$PrecalculatedZone.iWallOffsets:[I
            iload 7 /* i */
            iaload
            i2l
            invokestatic org.joda.time.tz.DateTimeZoneBuilder.writeMillis:(Ljava/io/DataOutput;J)V
        28: .line 1699
            aload 1 /* out */
            aload 0 /* this */
            getfield org.joda.time.tz.DateTimeZoneBuilder$PrecalculatedZone.iStandardOffsets:[I
            iload 7 /* i */
            iaload
            i2l
            invokestatic org.joda.time.tz.DateTimeZoneBuilder.writeMillis:(Ljava/io/DataOutput;J)V
        29: .line 1702
            aload 0 /* this */
            getfield org.joda.time.tz.DateTimeZoneBuilder$PrecalculatedZone.iNameKeys:[Ljava/lang/String;
            iload 7 /* i */
            aaload
            astore 8 /* nameKey */
        start local 8 // java.lang.String nameKey
        30: .line 1703
            iconst_0
            istore 9 /* j */
        start local 9 // int j
        31: goto 39
        32: .line 1704
      StackMap locals: java.lang.String int
      StackMap stack:
            aload 5 /* pool */
            iload 9 /* j */
            aaload
            aload 8 /* nameKey */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 38
        33: .line 1705
            iload 4 /* poolSize */
            sipush 256
            if_icmpge 36
        34: .line 1706
            aload 1 /* out */
            iload 9 /* j */
            invokeinterface java.io.DataOutput.writeByte:(I)V
        35: .line 1707
            goto 40
        36: .line 1708
      StackMap locals:
      StackMap stack:
            aload 1 /* out */
            iload 9 /* j */
            invokeinterface java.io.DataOutput.writeShort:(I)V
        37: .line 1710
            goto 40
        38: .line 1703
      StackMap locals:
      StackMap stack:
            iinc 9 /* j */ 1
      StackMap locals:
      StackMap stack:
        39: iload 9 /* j */
            iload 4 /* poolSize */
            if_icmplt 32
        end local 9 // int j
        end local 8 // java.lang.String nameKey
        40: .line 1696
      StackMap locals:
      StackMap stack:
            iinc 7 /* i */ 1
      StackMap locals:
      StackMap stack:
        41: iload 7 /* i */
            iload 2 /* size */
            if_icmplt 26
        end local 7 // int i
        42: .line 1715
            aload 1 /* out */
            aload 0 /* this */
            getfield org.joda.time.tz.DateTimeZoneBuilder$PrecalculatedZone.iTailZone:Lorg/joda/time/tz/DateTimeZoneBuilder$DSTZone;
            ifnull 43
            iconst_1
            goto 44
      StackMap locals: org.joda.time.tz.DateTimeZoneBuilder$PrecalculatedZone java.io.DataOutput int java.util.Set int java.lang.String[] java.util.Iterator
      StackMap stack: java.io.DataOutput
        43: iconst_0
      StackMap locals: org.joda.time.tz.DateTimeZoneBuilder$PrecalculatedZone java.io.DataOutput int java.util.Set int java.lang.String[] java.util.Iterator
      StackMap stack: java.io.DataOutput int
        44: invokeinterface java.io.DataOutput.writeBoolean:(Z)V
        45: .line 1716
            aload 0 /* this */
            getfield org.joda.time.tz.DateTimeZoneBuilder$PrecalculatedZone.iTailZone:Lorg/joda/time/tz/DateTimeZoneBuilder$DSTZone;
            ifnull 47
        46: .line 1717
            aload 0 /* this */
            getfield org.joda.time.tz.DateTimeZoneBuilder$PrecalculatedZone.iTailZone:Lorg/joda/time/tz/DateTimeZoneBuilder$DSTZone;
            aload 1 /* out */
            invokevirtual org.joda.time.tz.DateTimeZoneBuilder$DSTZone.writeTo:(Ljava/io/DataOutput;)V
        47: .line 1719
      StackMap locals:
      StackMap stack:
            return
        end local 6 // java.util.Iterator it
        end local 5 // java.lang.String[] pool
        end local 4 // int poolSize
        end local 3 // java.util.Set poolSet
        end local 2 // int size
        end local 1 // java.io.DataOutput out
        end local 0 // org.joda.time.tz.DateTimeZoneBuilder$PrecalculatedZone this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   48     0      this  Lorg/joda/time/tz/DateTimeZoneBuilder$PrecalculatedZone;
            0   48     1       out  Ljava/io/DataOutput;
            1   48     2      size  I
            2   48     3   poolSet  Ljava/util/Set<Ljava/lang/String;>;
            3    7     4         i  I
            8   48     4  poolSize  I
           11   48     5      pool  [Ljava/lang/String;
           12   48     6        it  Ljava/util/Iterator<Ljava/lang/String;>;
           13   17     7         i  I
           19   23     7         i  I
           25   42     7         i  I
           30   40     8   nameKey  Ljava/lang/String;
           31   40     9         j  I
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      out   

  public boolean isCachable();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=8, args_size=1
        start local 0 // org.joda.time.tz.DateTimeZoneBuilder$PrecalculatedZone this
         0: .line 1722
            aload 0 /* this */
            getfield org.joda.time.tz.DateTimeZoneBuilder$PrecalculatedZone.iTailZone:Lorg/joda/time/tz/DateTimeZoneBuilder$DSTZone;
            ifnull 2
         1: .line 1723
            iconst_1
            ireturn
         2: .line 1725
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.joda.time.tz.DateTimeZoneBuilder$PrecalculatedZone.iTransitions:[J
            astore 1 /* transitions */
        start local 1 // long[] transitions
         3: .line 1726
            aload 1 /* transitions */
            arraylength
            iconst_1
            if_icmpgt 5
         4: .line 1727
            iconst_0
            ireturn
         5: .line 1732
      StackMap locals: long[]
      StackMap stack:
            dconst_0
            dstore 2 /* distances */
        start local 2 // double distances
         6: .line 1733
            iconst_0
            istore 4 /* count */
        start local 4 // int count
         7: .line 1735
            iconst_1
            istore 5 /* i */
        start local 5 // int i
         8: goto 14
         9: .line 1736
      StackMap locals: double int int
      StackMap stack:
            aload 1 /* transitions */
            iload 5 /* i */
            laload
            aload 1 /* transitions */
            iload 5 /* i */
            iconst_1
            isub
            laload
            lsub
            lstore 6 /* diff */
        start local 6 // long diff
        10: .line 1737
            lload 6 /* diff */
            ldc 63158400000
            lcmp
            ifge 13
        11: .line 1738
            dload 2 /* distances */
            lload 6 /* diff */
            l2d
            dadd
            dstore 2 /* distances */
        12: .line 1739
            iinc 4 /* count */ 1
        end local 6 // long diff
        13: .line 1735
      StackMap locals:
      StackMap stack:
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
        14: iload 5 /* i */
            aload 1 /* transitions */
            arraylength
            if_icmplt 9
        end local 5 // int i
        15: .line 1743
            iload 4 /* count */
            ifle 20
        16: .line 1744
            dload 2 /* distances */
            iload 4 /* count */
            i2d
            ddiv
            dstore 5 /* avg */
        start local 5 // double avg
        17: .line 1745
            dload 5 /* avg */
            ldc 8.64E7
            ddiv
            dstore 5 /* avg */
        18: .line 1746
            dload 5 /* avg */
            ldc 25.0
            dcmpl
            iflt 20
        19: .line 1753
            iconst_1
            ireturn
        end local 5 // double avg
        20: .line 1757
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 4 // int count
        end local 2 // double distances
        end local 1 // long[] transitions
        end local 0 // org.joda.time.tz.DateTimeZoneBuilder$PrecalculatedZone this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   21     0         this  Lorg/joda/time/tz/DateTimeZoneBuilder$PrecalculatedZone;
            3   21     1  transitions  [J
            6   21     2    distances  D
            7   21     4        count  I
            8   15     5            i  I
           10   13     6         diff  J
           17   20     5          avg  D
}
SourceFile: "DateTimeZoneBuilder.java"
NestHost: org.joda.time.tz.DateTimeZoneBuilder
InnerClasses:
  private final DSTZone = org.joda.time.tz.DateTimeZoneBuilder$DSTZone of org.joda.time.tz.DateTimeZoneBuilder
  private final PrecalculatedZone = org.joda.time.tz.DateTimeZoneBuilder$PrecalculatedZone of org.joda.time.tz.DateTimeZoneBuilder
  private final Recurrence = org.joda.time.tz.DateTimeZoneBuilder$Recurrence of org.joda.time.tz.DateTimeZoneBuilder
  private final Transition = org.joda.time.tz.DateTimeZoneBuilder$Transition of org.joda.time.tz.DateTimeZoneBuilder