public class org.joda.time.PeriodType implements java.io.Serializable
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.joda.time.PeriodType
  super_class: java.lang.Object
{
  private static final long serialVersionUID;
    descriptor: J
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 2274324892792009998

  private static final java.util.Map<org.joda.time.PeriodType, java.lang.Object> cTypes;
    descriptor: Ljava/util/Map;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    Signature: Ljava/util/Map<Lorg/joda/time/PeriodType;Ljava/lang/Object;>;

  static int YEAR_INDEX;
    descriptor: I
    flags: (0x0008) ACC_STATIC

  static int MONTH_INDEX;
    descriptor: I
    flags: (0x0008) ACC_STATIC

  static int WEEK_INDEX;
    descriptor: I
    flags: (0x0008) ACC_STATIC

  static int DAY_INDEX;
    descriptor: I
    flags: (0x0008) ACC_STATIC

  static int HOUR_INDEX;
    descriptor: I
    flags: (0x0008) ACC_STATIC

  static int MINUTE_INDEX;
    descriptor: I
    flags: (0x0008) ACC_STATIC

  static int SECOND_INDEX;
    descriptor: I
    flags: (0x0008) ACC_STATIC

  static int MILLI_INDEX;
    descriptor: I
    flags: (0x0008) ACC_STATIC

  private static org.joda.time.PeriodType cStandard;
    descriptor: Lorg/joda/time/PeriodType;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC

  private static org.joda.time.PeriodType cYMDTime;
    descriptor: Lorg/joda/time/PeriodType;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC

  private static org.joda.time.PeriodType cYMD;
    descriptor: Lorg/joda/time/PeriodType;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC

  private static org.joda.time.PeriodType cYWDTime;
    descriptor: Lorg/joda/time/PeriodType;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC

  private static org.joda.time.PeriodType cYWD;
    descriptor: Lorg/joda/time/PeriodType;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC

  private static org.joda.time.PeriodType cYDTime;
    descriptor: Lorg/joda/time/PeriodType;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC

  private static org.joda.time.PeriodType cYD;
    descriptor: Lorg/joda/time/PeriodType;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC

  private static org.joda.time.PeriodType cDTime;
    descriptor: Lorg/joda/time/PeriodType;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC

  private static org.joda.time.PeriodType cTime;
    descriptor: Lorg/joda/time/PeriodType;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC

  private static org.joda.time.PeriodType cYears;
    descriptor: Lorg/joda/time/PeriodType;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC

  private static org.joda.time.PeriodType cMonths;
    descriptor: Lorg/joda/time/PeriodType;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC

  private static org.joda.time.PeriodType cWeeks;
    descriptor: Lorg/joda/time/PeriodType;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC

  private static org.joda.time.PeriodType cDays;
    descriptor: Lorg/joda/time/PeriodType;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC

  private static org.joda.time.PeriodType cHours;
    descriptor: Lorg/joda/time/PeriodType;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC

  private static org.joda.time.PeriodType cMinutes;
    descriptor: Lorg/joda/time/PeriodType;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC

  private static org.joda.time.PeriodType cSeconds;
    descriptor: Lorg/joda/time/PeriodType;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC

  private static org.joda.time.PeriodType cMillis;
    descriptor: Lorg/joda/time/PeriodType;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC

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

  private final org.joda.time.DurationFieldType[] iTypes;
    descriptor: [Lorg/joda/time/DurationFieldType;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

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

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=3, locals=0, args_size=0
         0: .line 56
            new java.util.HashMap
            dup
            bipush 32
            invokespecial java.util.HashMap.<init>:(I)V
            putstatic org.joda.time.PeriodType.cTypes:Ljava/util/Map;
         1: .line 58
            iconst_0
            putstatic org.joda.time.PeriodType.YEAR_INDEX:I
         2: .line 59
            iconst_1
            putstatic org.joda.time.PeriodType.MONTH_INDEX:I
         3: .line 60
            iconst_2
            putstatic org.joda.time.PeriodType.WEEK_INDEX:I
         4: .line 61
            iconst_3
            putstatic org.joda.time.PeriodType.DAY_INDEX:I
         5: .line 62
            iconst_4
            putstatic org.joda.time.PeriodType.HOUR_INDEX:I
         6: .line 63
            iconst_5
            putstatic org.joda.time.PeriodType.MINUTE_INDEX:I
         7: .line 64
            bipush 6
            putstatic org.joda.time.PeriodType.SECOND_INDEX:I
         8: .line 65
            bipush 7
            putstatic org.joda.time.PeriodType.MILLI_INDEX:I
         9: .line 84
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public static org.joda.time.PeriodType standard();
    descriptor: ()Lorg/joda/time/PeriodType;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=8, locals=1, args_size=0
         0: .line 102
            getstatic org.joda.time.PeriodType.cStandard:Lorg/joda/time/PeriodType;
            astore 0 /* type */
        start local 0 // org.joda.time.PeriodType type
         1: .line 103
            aload 0 /* type */
            ifnonnull 12
         2: .line 104
            new org.joda.time.PeriodType
            dup
         3: .line 105
            ldc "Standard"
         4: .line 106
            bipush 8
            anewarray org.joda.time.DurationFieldType
            dup
            iconst_0
         5: .line 107
            invokestatic org.joda.time.DurationFieldType.years:()Lorg/joda/time/DurationFieldType;
            aastore
            dup
            iconst_1
            invokestatic org.joda.time.DurationFieldType.months:()Lorg/joda/time/DurationFieldType;
            aastore
            dup
            iconst_2
         6: .line 108
            invokestatic org.joda.time.DurationFieldType.weeks:()Lorg/joda/time/DurationFieldType;
            aastore
            dup
            iconst_3
            invokestatic org.joda.time.DurationFieldType.days:()Lorg/joda/time/DurationFieldType;
            aastore
            dup
            iconst_4
         7: .line 109
            invokestatic org.joda.time.DurationFieldType.hours:()Lorg/joda/time/DurationFieldType;
            aastore
            dup
            iconst_5
            invokestatic org.joda.time.DurationFieldType.minutes:()Lorg/joda/time/DurationFieldType;
            aastore
            dup
            bipush 6
         8: .line 110
            invokestatic org.joda.time.DurationFieldType.seconds:()Lorg/joda/time/DurationFieldType;
            aastore
            dup
            bipush 7
            invokestatic org.joda.time.DurationFieldType.millis:()Lorg/joda/time/DurationFieldType;
            aastore
         9: .line 112
            bipush 8
            newarray 10
            dup
            iconst_1
            iconst_1
            iastore
            dup
            iconst_2
            iconst_2
            iastore
            dup
            iconst_3
            iconst_3
            iastore
            dup
            iconst_4
            iconst_4
            iastore
            dup
            iconst_5
            iconst_5
            iastore
            dup
            bipush 6
            bipush 6
            iastore
            dup
            bipush 7
            bipush 7
            iastore
        10: .line 104
            invokespecial org.joda.time.PeriodType.<init>:(Ljava/lang/String;[Lorg/joda/time/DurationFieldType;[I)V
            astore 0 /* type */
        11: .line 114
            aload 0 /* type */
            putstatic org.joda.time.PeriodType.cStandard:Lorg/joda/time/PeriodType;
        12: .line 116
      StackMap locals: org.joda.time.PeriodType
      StackMap stack:
            aload 0 /* type */
            areturn
        end local 0 // org.joda.time.PeriodType type
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            1   13     0  type  Lorg/joda/time/PeriodType;

  public static org.joda.time.PeriodType yearMonthDayTime();
    descriptor: ()Lorg/joda/time/PeriodType;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=8, locals=1, args_size=0
         0: .line 134
            getstatic org.joda.time.PeriodType.cYMDTime:Lorg/joda/time/PeriodType;
            astore 0 /* type */
        start local 0 // org.joda.time.PeriodType type
         1: .line 135
            aload 0 /* type */
            ifnonnull 12
         2: .line 136
            new org.joda.time.PeriodType
            dup
         3: .line 137
            ldc "YearMonthDayTime"
         4: .line 138
            bipush 7
            anewarray org.joda.time.DurationFieldType
            dup
            iconst_0
         5: .line 139
            invokestatic org.joda.time.DurationFieldType.years:()Lorg/joda/time/DurationFieldType;
            aastore
            dup
            iconst_1
            invokestatic org.joda.time.DurationFieldType.months:()Lorg/joda/time/DurationFieldType;
            aastore
            dup
            iconst_2
         6: .line 140
            invokestatic org.joda.time.DurationFieldType.days:()Lorg/joda/time/DurationFieldType;
            aastore
            dup
            iconst_3
         7: .line 141
            invokestatic org.joda.time.DurationFieldType.hours:()Lorg/joda/time/DurationFieldType;
            aastore
            dup
            iconst_4
            invokestatic org.joda.time.DurationFieldType.minutes:()Lorg/joda/time/DurationFieldType;
            aastore
            dup
            iconst_5
         8: .line 142
            invokestatic org.joda.time.DurationFieldType.seconds:()Lorg/joda/time/DurationFieldType;
            aastore
            dup
            bipush 6
            invokestatic org.joda.time.DurationFieldType.millis:()Lorg/joda/time/DurationFieldType;
            aastore
         9: .line 144
            bipush 8
            newarray 10
            dup
            iconst_1
            iconst_1
            iastore
            dup
            iconst_2
            iconst_m1
            iastore
            dup
            iconst_3
            iconst_2
            iastore
            dup
            iconst_4
            iconst_3
            iastore
            dup
            iconst_5
            iconst_4
            iastore
            dup
            bipush 6
            iconst_5
            iastore
            dup
            bipush 7
            bipush 6
            iastore
        10: .line 136
            invokespecial org.joda.time.PeriodType.<init>:(Ljava/lang/String;[Lorg/joda/time/DurationFieldType;[I)V
            astore 0 /* type */
        11: .line 146
            aload 0 /* type */
            putstatic org.joda.time.PeriodType.cYMDTime:Lorg/joda/time/PeriodType;
        12: .line 148
      StackMap locals: org.joda.time.PeriodType
      StackMap stack:
            aload 0 /* type */
            areturn
        end local 0 // org.joda.time.PeriodType type
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            1   13     0  type  Lorg/joda/time/PeriodType;

  public static org.joda.time.PeriodType yearMonthDay();
    descriptor: ()Lorg/joda/time/PeriodType;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=8, locals=1, args_size=0
         0: .line 163
            getstatic org.joda.time.PeriodType.cYMD:Lorg/joda/time/PeriodType;
            astore 0 /* type */
        start local 0 // org.joda.time.PeriodType type
         1: .line 164
            aload 0 /* type */
            ifnonnull 10
         2: .line 165
            new org.joda.time.PeriodType
            dup
         3: .line 166
            ldc "YearMonthDay"
         4: .line 167
            iconst_3
            anewarray org.joda.time.DurationFieldType
            dup
            iconst_0
         5: .line 168
            invokestatic org.joda.time.DurationFieldType.years:()Lorg/joda/time/DurationFieldType;
            aastore
            dup
            iconst_1
            invokestatic org.joda.time.DurationFieldType.months:()Lorg/joda/time/DurationFieldType;
            aastore
            dup
            iconst_2
         6: .line 169
            invokestatic org.joda.time.DurationFieldType.days:()Lorg/joda/time/DurationFieldType;
            aastore
         7: .line 171
            bipush 8
            newarray 10
            dup
            iconst_1
            iconst_1
            iastore
            dup
            iconst_2
            iconst_m1
            iastore
            dup
            iconst_3
            iconst_2
            iastore
            dup
            iconst_4
            iconst_m1
            iastore
            dup
            iconst_5
            iconst_m1
            iastore
            dup
            bipush 6
            iconst_m1
            iastore
            dup
            bipush 7
            iconst_m1
            iastore
         8: .line 165
            invokespecial org.joda.time.PeriodType.<init>:(Ljava/lang/String;[Lorg/joda/time/DurationFieldType;[I)V
            astore 0 /* type */
         9: .line 173
            aload 0 /* type */
            putstatic org.joda.time.PeriodType.cYMD:Lorg/joda/time/PeriodType;
        10: .line 175
      StackMap locals: org.joda.time.PeriodType
      StackMap stack:
            aload 0 /* type */
            areturn
        end local 0 // org.joda.time.PeriodType type
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            1   11     0  type  Lorg/joda/time/PeriodType;

  public static org.joda.time.PeriodType yearWeekDayTime();
    descriptor: ()Lorg/joda/time/PeriodType;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=8, locals=1, args_size=0
         0: .line 193
            getstatic org.joda.time.PeriodType.cYWDTime:Lorg/joda/time/PeriodType;
            astore 0 /* type */
        start local 0 // org.joda.time.PeriodType type
         1: .line 194
            aload 0 /* type */
            ifnonnull 12
         2: .line 195
            new org.joda.time.PeriodType
            dup
         3: .line 196
            ldc "YearWeekDayTime"
         4: .line 197
            bipush 7
            anewarray org.joda.time.DurationFieldType
            dup
            iconst_0
         5: .line 198
            invokestatic org.joda.time.DurationFieldType.years:()Lorg/joda/time/DurationFieldType;
            aastore
            dup
            iconst_1
         6: .line 199
            invokestatic org.joda.time.DurationFieldType.weeks:()Lorg/joda/time/DurationFieldType;
            aastore
            dup
            iconst_2
            invokestatic org.joda.time.DurationFieldType.days:()Lorg/joda/time/DurationFieldType;
            aastore
            dup
            iconst_3
         7: .line 200
            invokestatic org.joda.time.DurationFieldType.hours:()Lorg/joda/time/DurationFieldType;
            aastore
            dup
            iconst_4
            invokestatic org.joda.time.DurationFieldType.minutes:()Lorg/joda/time/DurationFieldType;
            aastore
            dup
            iconst_5
         8: .line 201
            invokestatic org.joda.time.DurationFieldType.seconds:()Lorg/joda/time/DurationFieldType;
            aastore
            dup
            bipush 6
            invokestatic org.joda.time.DurationFieldType.millis:()Lorg/joda/time/DurationFieldType;
            aastore
         9: .line 203
            bipush 8
            newarray 10
            dup
            iconst_1
            iconst_m1
            iastore
            dup
            iconst_2
            iconst_1
            iastore
            dup
            iconst_3
            iconst_2
            iastore
            dup
            iconst_4
            iconst_3
            iastore
            dup
            iconst_5
            iconst_4
            iastore
            dup
            bipush 6
            iconst_5
            iastore
            dup
            bipush 7
            bipush 6
            iastore
        10: .line 195
            invokespecial org.joda.time.PeriodType.<init>:(Ljava/lang/String;[Lorg/joda/time/DurationFieldType;[I)V
            astore 0 /* type */
        11: .line 205
            aload 0 /* type */
            putstatic org.joda.time.PeriodType.cYWDTime:Lorg/joda/time/PeriodType;
        12: .line 207
      StackMap locals: org.joda.time.PeriodType
      StackMap stack:
            aload 0 /* type */
            areturn
        end local 0 // org.joda.time.PeriodType type
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            1   13     0  type  Lorg/joda/time/PeriodType;

  public static org.joda.time.PeriodType yearWeekDay();
    descriptor: ()Lorg/joda/time/PeriodType;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=8, locals=1, args_size=0
         0: .line 222
            getstatic org.joda.time.PeriodType.cYWD:Lorg/joda/time/PeriodType;
            astore 0 /* type */
        start local 0 // org.joda.time.PeriodType type
         1: .line 223
            aload 0 /* type */
            ifnonnull 10
         2: .line 224
            new org.joda.time.PeriodType
            dup
         3: .line 225
            ldc "YearWeekDay"
         4: .line 226
            iconst_3
            anewarray org.joda.time.DurationFieldType
            dup
            iconst_0
         5: .line 227
            invokestatic org.joda.time.DurationFieldType.years:()Lorg/joda/time/DurationFieldType;
            aastore
            dup
            iconst_1
         6: .line 228
            invokestatic org.joda.time.DurationFieldType.weeks:()Lorg/joda/time/DurationFieldType;
            aastore
            dup
            iconst_2
            invokestatic org.joda.time.DurationFieldType.days:()Lorg/joda/time/DurationFieldType;
            aastore
         7: .line 230
            bipush 8
            newarray 10
            dup
            iconst_1
            iconst_m1
            iastore
            dup
            iconst_2
            iconst_1
            iastore
            dup
            iconst_3
            iconst_2
            iastore
            dup
            iconst_4
            iconst_m1
            iastore
            dup
            iconst_5
            iconst_m1
            iastore
            dup
            bipush 6
            iconst_m1
            iastore
            dup
            bipush 7
            iconst_m1
            iastore
         8: .line 224
            invokespecial org.joda.time.PeriodType.<init>:(Ljava/lang/String;[Lorg/joda/time/DurationFieldType;[I)V
            astore 0 /* type */
         9: .line 232
            aload 0 /* type */
            putstatic org.joda.time.PeriodType.cYWD:Lorg/joda/time/PeriodType;
        10: .line 234
      StackMap locals: org.joda.time.PeriodType
      StackMap stack:
            aload 0 /* type */
            areturn
        end local 0 // org.joda.time.PeriodType type
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            1   11     0  type  Lorg/joda/time/PeriodType;

  public static org.joda.time.PeriodType yearDayTime();
    descriptor: ()Lorg/joda/time/PeriodType;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=8, locals=1, args_size=0
         0: .line 251
            getstatic org.joda.time.PeriodType.cYDTime:Lorg/joda/time/PeriodType;
            astore 0 /* type */
        start local 0 // org.joda.time.PeriodType type
         1: .line 252
            aload 0 /* type */
            ifnonnull 11
         2: .line 253
            new org.joda.time.PeriodType
            dup
         3: .line 254
            ldc "YearDayTime"
         4: .line 255
            bipush 6
            anewarray org.joda.time.DurationFieldType
            dup
            iconst_0
         5: .line 256
            invokestatic org.joda.time.DurationFieldType.years:()Lorg/joda/time/DurationFieldType;
            aastore
            dup
            iconst_1
            invokestatic org.joda.time.DurationFieldType.days:()Lorg/joda/time/DurationFieldType;
            aastore
            dup
            iconst_2
         6: .line 257
            invokestatic org.joda.time.DurationFieldType.hours:()Lorg/joda/time/DurationFieldType;
            aastore
            dup
            iconst_3
            invokestatic org.joda.time.DurationFieldType.minutes:()Lorg/joda/time/DurationFieldType;
            aastore
            dup
            iconst_4
         7: .line 258
            invokestatic org.joda.time.DurationFieldType.seconds:()Lorg/joda/time/DurationFieldType;
            aastore
            dup
            iconst_5
            invokestatic org.joda.time.DurationFieldType.millis:()Lorg/joda/time/DurationFieldType;
            aastore
         8: .line 260
            bipush 8
            newarray 10
            dup
            iconst_1
            iconst_m1
            iastore
            dup
            iconst_2
            iconst_m1
            iastore
            dup
            iconst_3
            iconst_1
            iastore
            dup
            iconst_4
            iconst_2
            iastore
            dup
            iconst_5
            iconst_3
            iastore
            dup
            bipush 6
            iconst_4
            iastore
            dup
            bipush 7
            iconst_5
            iastore
         9: .line 253
            invokespecial org.joda.time.PeriodType.<init>:(Ljava/lang/String;[Lorg/joda/time/DurationFieldType;[I)V
            astore 0 /* type */
        10: .line 262
            aload 0 /* type */
            putstatic org.joda.time.PeriodType.cYDTime:Lorg/joda/time/PeriodType;
        11: .line 264
      StackMap locals: org.joda.time.PeriodType
      StackMap stack:
            aload 0 /* type */
            areturn
        end local 0 // org.joda.time.PeriodType type
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            1   12     0  type  Lorg/joda/time/PeriodType;

  public static org.joda.time.PeriodType yearDay();
    descriptor: ()Lorg/joda/time/PeriodType;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=8, locals=1, args_size=0
         0: .line 278
            getstatic org.joda.time.PeriodType.cYD:Lorg/joda/time/PeriodType;
            astore 0 /* type */
        start local 0 // org.joda.time.PeriodType type
         1: .line 279
            aload 0 /* type */
            ifnonnull 9
         2: .line 280
            new org.joda.time.PeriodType
            dup
         3: .line 281
            ldc "YearDay"
         4: .line 282
            iconst_2
            anewarray org.joda.time.DurationFieldType
            dup
            iconst_0
         5: .line 283
            invokestatic org.joda.time.DurationFieldType.years:()Lorg/joda/time/DurationFieldType;
            aastore
            dup
            iconst_1
            invokestatic org.joda.time.DurationFieldType.days:()Lorg/joda/time/DurationFieldType;
            aastore
         6: .line 285
            bipush 8
            newarray 10
            dup
            iconst_1
            iconst_m1
            iastore
            dup
            iconst_2
            iconst_m1
            iastore
            dup
            iconst_3
            iconst_1
            iastore
            dup
            iconst_4
            iconst_m1
            iastore
            dup
            iconst_5
            iconst_m1
            iastore
            dup
            bipush 6
            iconst_m1
            iastore
            dup
            bipush 7
            iconst_m1
            iastore
         7: .line 280
            invokespecial org.joda.time.PeriodType.<init>:(Ljava/lang/String;[Lorg/joda/time/DurationFieldType;[I)V
            astore 0 /* type */
         8: .line 287
            aload 0 /* type */
            putstatic org.joda.time.PeriodType.cYD:Lorg/joda/time/PeriodType;
         9: .line 289
      StackMap locals: org.joda.time.PeriodType
      StackMap stack:
            aload 0 /* type */
            areturn
        end local 0 // org.joda.time.PeriodType type
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            1   10     0  type  Lorg/joda/time/PeriodType;

  public static org.joda.time.PeriodType dayTime();
    descriptor: ()Lorg/joda/time/PeriodType;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=8, locals=1, args_size=0
         0: .line 305
            getstatic org.joda.time.PeriodType.cDTime:Lorg/joda/time/PeriodType;
            astore 0 /* type */
        start local 0 // org.joda.time.PeriodType type
         1: .line 306
            aload 0 /* type */
            ifnonnull 11
         2: .line 307
            new org.joda.time.PeriodType
            dup
         3: .line 308
            ldc "DayTime"
         4: .line 309
            iconst_5
            anewarray org.joda.time.DurationFieldType
            dup
            iconst_0
         5: .line 310
            invokestatic org.joda.time.DurationFieldType.days:()Lorg/joda/time/DurationFieldType;
            aastore
            dup
            iconst_1
         6: .line 311
            invokestatic org.joda.time.DurationFieldType.hours:()Lorg/joda/time/DurationFieldType;
            aastore
            dup
            iconst_2
            invokestatic org.joda.time.DurationFieldType.minutes:()Lorg/joda/time/DurationFieldType;
            aastore
            dup
            iconst_3
         7: .line 312
            invokestatic org.joda.time.DurationFieldType.seconds:()Lorg/joda/time/DurationFieldType;
            aastore
            dup
            iconst_4
            invokestatic org.joda.time.DurationFieldType.millis:()Lorg/joda/time/DurationFieldType;
            aastore
         8: .line 314
            bipush 8
            newarray 10
            dup
            iconst_0
            iconst_m1
            iastore
            dup
            iconst_1
            iconst_m1
            iastore
            dup
            iconst_2
            iconst_m1
            iastore
            dup
            iconst_4
            iconst_1
            iastore
            dup
            iconst_5
            iconst_2
            iastore
            dup
            bipush 6
            iconst_3
            iastore
            dup
            bipush 7
            iconst_4
            iastore
         9: .line 307
            invokespecial org.joda.time.PeriodType.<init>:(Ljava/lang/String;[Lorg/joda/time/DurationFieldType;[I)V
            astore 0 /* type */
        10: .line 316
            aload 0 /* type */
            putstatic org.joda.time.PeriodType.cDTime:Lorg/joda/time/PeriodType;
        11: .line 318
      StackMap locals: org.joda.time.PeriodType
      StackMap stack:
            aload 0 /* type */
            areturn
        end local 0 // org.joda.time.PeriodType type
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            1   12     0  type  Lorg/joda/time/PeriodType;

  public static org.joda.time.PeriodType time();
    descriptor: ()Lorg/joda/time/PeriodType;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=8, locals=1, args_size=0
         0: .line 333
            getstatic org.joda.time.PeriodType.cTime:Lorg/joda/time/PeriodType;
            astore 0 /* type */
        start local 0 // org.joda.time.PeriodType type
         1: .line 334
            aload 0 /* type */
            ifnonnull 10
         2: .line 335
            new org.joda.time.PeriodType
            dup
         3: .line 336
            ldc "Time"
         4: .line 337
            iconst_4
            anewarray org.joda.time.DurationFieldType
            dup
            iconst_0
         5: .line 338
            invokestatic org.joda.time.DurationFieldType.hours:()Lorg/joda/time/DurationFieldType;
            aastore
            dup
            iconst_1
            invokestatic org.joda.time.DurationFieldType.minutes:()Lorg/joda/time/DurationFieldType;
            aastore
            dup
            iconst_2
         6: .line 339
            invokestatic org.joda.time.DurationFieldType.seconds:()Lorg/joda/time/DurationFieldType;
            aastore
            dup
            iconst_3
            invokestatic org.joda.time.DurationFieldType.millis:()Lorg/joda/time/DurationFieldType;
            aastore
         7: .line 341
            bipush 8
            newarray 10
            dup
            iconst_0
            iconst_m1
            iastore
            dup
            iconst_1
            iconst_m1
            iastore
            dup
            iconst_2
            iconst_m1
            iastore
            dup
            iconst_3
            iconst_m1
            iastore
            dup
            iconst_5
            iconst_1
            iastore
            dup
            bipush 6
            iconst_2
            iastore
            dup
            bipush 7
            iconst_3
            iastore
         8: .line 335
            invokespecial org.joda.time.PeriodType.<init>:(Ljava/lang/String;[Lorg/joda/time/DurationFieldType;[I)V
            astore 0 /* type */
         9: .line 343
            aload 0 /* type */
            putstatic org.joda.time.PeriodType.cTime:Lorg/joda/time/PeriodType;
        10: .line 345
      StackMap locals: org.joda.time.PeriodType
      StackMap stack:
            aload 0 /* type */
            areturn
        end local 0 // org.joda.time.PeriodType type
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            1   11     0  type  Lorg/joda/time/PeriodType;

  public static org.joda.time.PeriodType years();
    descriptor: ()Lorg/joda/time/PeriodType;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=8, locals=1, args_size=0
         0: .line 354
            getstatic org.joda.time.PeriodType.cYears:Lorg/joda/time/PeriodType;
            astore 0 /* type */
        start local 0 // org.joda.time.PeriodType type
         1: .line 355
            aload 0 /* type */
            ifnonnull 8
         2: .line 356
            new org.joda.time.PeriodType
            dup
         3: .line 357
            ldc "Years"
         4: .line 358
            iconst_1
            anewarray org.joda.time.DurationFieldType
            dup
            iconst_0
            invokestatic org.joda.time.DurationFieldType.years:()Lorg/joda/time/DurationFieldType;
            aastore
         5: .line 359
            bipush 8
            newarray 10
            dup
            iconst_1
            iconst_m1
            iastore
            dup
            iconst_2
            iconst_m1
            iastore
            dup
            iconst_3
            iconst_m1
            iastore
            dup
            iconst_4
            iconst_m1
            iastore
            dup
            iconst_5
            iconst_m1
            iastore
            dup
            bipush 6
            iconst_m1
            iastore
            dup
            bipush 7
            iconst_m1
            iastore
         6: .line 356
            invokespecial org.joda.time.PeriodType.<init>:(Ljava/lang/String;[Lorg/joda/time/DurationFieldType;[I)V
            astore 0 /* type */
         7: .line 361
            aload 0 /* type */
            putstatic org.joda.time.PeriodType.cYears:Lorg/joda/time/PeriodType;
         8: .line 363
      StackMap locals: org.joda.time.PeriodType
      StackMap stack:
            aload 0 /* type */
            areturn
        end local 0 // org.joda.time.PeriodType type
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            1    9     0  type  Lorg/joda/time/PeriodType;

  public static org.joda.time.PeriodType months();
    descriptor: ()Lorg/joda/time/PeriodType;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=8, locals=1, args_size=0
         0: .line 372
            getstatic org.joda.time.PeriodType.cMonths:Lorg/joda/time/PeriodType;
            astore 0 /* type */
        start local 0 // org.joda.time.PeriodType type
         1: .line 373
            aload 0 /* type */
            ifnonnull 8
         2: .line 374
            new org.joda.time.PeriodType
            dup
         3: .line 375
            ldc "Months"
         4: .line 376
            iconst_1
            anewarray org.joda.time.DurationFieldType
            dup
            iconst_0
            invokestatic org.joda.time.DurationFieldType.months:()Lorg/joda/time/DurationFieldType;
            aastore
         5: .line 377
            bipush 8
            newarray 10
            dup
            iconst_0
            iconst_m1
            iastore
            dup
            iconst_2
            iconst_m1
            iastore
            dup
            iconst_3
            iconst_m1
            iastore
            dup
            iconst_4
            iconst_m1
            iastore
            dup
            iconst_5
            iconst_m1
            iastore
            dup
            bipush 6
            iconst_m1
            iastore
            dup
            bipush 7
            iconst_m1
            iastore
         6: .line 374
            invokespecial org.joda.time.PeriodType.<init>:(Ljava/lang/String;[Lorg/joda/time/DurationFieldType;[I)V
            astore 0 /* type */
         7: .line 379
            aload 0 /* type */
            putstatic org.joda.time.PeriodType.cMonths:Lorg/joda/time/PeriodType;
         8: .line 381
      StackMap locals: org.joda.time.PeriodType
      StackMap stack:
            aload 0 /* type */
            areturn
        end local 0 // org.joda.time.PeriodType type
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            1    9     0  type  Lorg/joda/time/PeriodType;

  public static org.joda.time.PeriodType weeks();
    descriptor: ()Lorg/joda/time/PeriodType;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=8, locals=1, args_size=0
         0: .line 390
            getstatic org.joda.time.PeriodType.cWeeks:Lorg/joda/time/PeriodType;
            astore 0 /* type */
        start local 0 // org.joda.time.PeriodType type
         1: .line 391
            aload 0 /* type */
            ifnonnull 8
         2: .line 392
            new org.joda.time.PeriodType
            dup
         3: .line 393
            ldc "Weeks"
         4: .line 394
            iconst_1
            anewarray org.joda.time.DurationFieldType
            dup
            iconst_0
            invokestatic org.joda.time.DurationFieldType.weeks:()Lorg/joda/time/DurationFieldType;
            aastore
         5: .line 395
            bipush 8
            newarray 10
            dup
            iconst_0
            iconst_m1
            iastore
            dup
            iconst_1
            iconst_m1
            iastore
            dup
            iconst_3
            iconst_m1
            iastore
            dup
            iconst_4
            iconst_m1
            iastore
            dup
            iconst_5
            iconst_m1
            iastore
            dup
            bipush 6
            iconst_m1
            iastore
            dup
            bipush 7
            iconst_m1
            iastore
         6: .line 392
            invokespecial org.joda.time.PeriodType.<init>:(Ljava/lang/String;[Lorg/joda/time/DurationFieldType;[I)V
            astore 0 /* type */
         7: .line 397
            aload 0 /* type */
            putstatic org.joda.time.PeriodType.cWeeks:Lorg/joda/time/PeriodType;
         8: .line 399
      StackMap locals: org.joda.time.PeriodType
      StackMap stack:
            aload 0 /* type */
            areturn
        end local 0 // org.joda.time.PeriodType type
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            1    9     0  type  Lorg/joda/time/PeriodType;

  public static org.joda.time.PeriodType days();
    descriptor: ()Lorg/joda/time/PeriodType;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=8, locals=1, args_size=0
         0: .line 408
            getstatic org.joda.time.PeriodType.cDays:Lorg/joda/time/PeriodType;
            astore 0 /* type */
        start local 0 // org.joda.time.PeriodType type
         1: .line 409
            aload 0 /* type */
            ifnonnull 8
         2: .line 410
            new org.joda.time.PeriodType
            dup
         3: .line 411
            ldc "Days"
         4: .line 412
            iconst_1
            anewarray org.joda.time.DurationFieldType
            dup
            iconst_0
            invokestatic org.joda.time.DurationFieldType.days:()Lorg/joda/time/DurationFieldType;
            aastore
         5: .line 413
            bipush 8
            newarray 10
            dup
            iconst_0
            iconst_m1
            iastore
            dup
            iconst_1
            iconst_m1
            iastore
            dup
            iconst_2
            iconst_m1
            iastore
            dup
            iconst_4
            iconst_m1
            iastore
            dup
            iconst_5
            iconst_m1
            iastore
            dup
            bipush 6
            iconst_m1
            iastore
            dup
            bipush 7
            iconst_m1
            iastore
         6: .line 410
            invokespecial org.joda.time.PeriodType.<init>:(Ljava/lang/String;[Lorg/joda/time/DurationFieldType;[I)V
            astore 0 /* type */
         7: .line 415
            aload 0 /* type */
            putstatic org.joda.time.PeriodType.cDays:Lorg/joda/time/PeriodType;
         8: .line 417
      StackMap locals: org.joda.time.PeriodType
      StackMap stack:
            aload 0 /* type */
            areturn
        end local 0 // org.joda.time.PeriodType type
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            1    9     0  type  Lorg/joda/time/PeriodType;

  public static org.joda.time.PeriodType hours();
    descriptor: ()Lorg/joda/time/PeriodType;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=8, locals=1, args_size=0
         0: .line 426
            getstatic org.joda.time.PeriodType.cHours:Lorg/joda/time/PeriodType;
            astore 0 /* type */
        start local 0 // org.joda.time.PeriodType type
         1: .line 427
            aload 0 /* type */
            ifnonnull 8
         2: .line 428
            new org.joda.time.PeriodType
            dup
         3: .line 429
            ldc "Hours"
         4: .line 430
            iconst_1
            anewarray org.joda.time.DurationFieldType
            dup
            iconst_0
            invokestatic org.joda.time.DurationFieldType.hours:()Lorg/joda/time/DurationFieldType;
            aastore
         5: .line 431
            bipush 8
            newarray 10
            dup
            iconst_0
            iconst_m1
            iastore
            dup
            iconst_1
            iconst_m1
            iastore
            dup
            iconst_2
            iconst_m1
            iastore
            dup
            iconst_3
            iconst_m1
            iastore
            dup
            iconst_5
            iconst_m1
            iastore
            dup
            bipush 6
            iconst_m1
            iastore
            dup
            bipush 7
            iconst_m1
            iastore
         6: .line 428
            invokespecial org.joda.time.PeriodType.<init>:(Ljava/lang/String;[Lorg/joda/time/DurationFieldType;[I)V
            astore 0 /* type */
         7: .line 433
            aload 0 /* type */
            putstatic org.joda.time.PeriodType.cHours:Lorg/joda/time/PeriodType;
         8: .line 435
      StackMap locals: org.joda.time.PeriodType
      StackMap stack:
            aload 0 /* type */
            areturn
        end local 0 // org.joda.time.PeriodType type
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            1    9     0  type  Lorg/joda/time/PeriodType;

  public static org.joda.time.PeriodType minutes();
    descriptor: ()Lorg/joda/time/PeriodType;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=8, locals=1, args_size=0
         0: .line 444
            getstatic org.joda.time.PeriodType.cMinutes:Lorg/joda/time/PeriodType;
            astore 0 /* type */
        start local 0 // org.joda.time.PeriodType type
         1: .line 445
            aload 0 /* type */
            ifnonnull 8
         2: .line 446
            new org.joda.time.PeriodType
            dup
         3: .line 447
            ldc "Minutes"
         4: .line 448
            iconst_1
            anewarray org.joda.time.DurationFieldType
            dup
            iconst_0
            invokestatic org.joda.time.DurationFieldType.minutes:()Lorg/joda/time/DurationFieldType;
            aastore
         5: .line 449
            bipush 8
            newarray 10
            dup
            iconst_0
            iconst_m1
            iastore
            dup
            iconst_1
            iconst_m1
            iastore
            dup
            iconst_2
            iconst_m1
            iastore
            dup
            iconst_3
            iconst_m1
            iastore
            dup
            iconst_4
            iconst_m1
            iastore
            dup
            bipush 6
            iconst_m1
            iastore
            dup
            bipush 7
            iconst_m1
            iastore
         6: .line 446
            invokespecial org.joda.time.PeriodType.<init>:(Ljava/lang/String;[Lorg/joda/time/DurationFieldType;[I)V
            astore 0 /* type */
         7: .line 451
            aload 0 /* type */
            putstatic org.joda.time.PeriodType.cMinutes:Lorg/joda/time/PeriodType;
         8: .line 453
      StackMap locals: org.joda.time.PeriodType
      StackMap stack:
            aload 0 /* type */
            areturn
        end local 0 // org.joda.time.PeriodType type
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            1    9     0  type  Lorg/joda/time/PeriodType;

  public static org.joda.time.PeriodType seconds();
    descriptor: ()Lorg/joda/time/PeriodType;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=8, locals=1, args_size=0
         0: .line 462
            getstatic org.joda.time.PeriodType.cSeconds:Lorg/joda/time/PeriodType;
            astore 0 /* type */
        start local 0 // org.joda.time.PeriodType type
         1: .line 463
            aload 0 /* type */
            ifnonnull 8
         2: .line 464
            new org.joda.time.PeriodType
            dup
         3: .line 465
            ldc "Seconds"
         4: .line 466
            iconst_1
            anewarray org.joda.time.DurationFieldType
            dup
            iconst_0
            invokestatic org.joda.time.DurationFieldType.seconds:()Lorg/joda/time/DurationFieldType;
            aastore
         5: .line 467
            bipush 8
            newarray 10
            dup
            iconst_0
            iconst_m1
            iastore
            dup
            iconst_1
            iconst_m1
            iastore
            dup
            iconst_2
            iconst_m1
            iastore
            dup
            iconst_3
            iconst_m1
            iastore
            dup
            iconst_4
            iconst_m1
            iastore
            dup
            iconst_5
            iconst_m1
            iastore
            dup
            bipush 7
            iconst_m1
            iastore
         6: .line 464
            invokespecial org.joda.time.PeriodType.<init>:(Ljava/lang/String;[Lorg/joda/time/DurationFieldType;[I)V
            astore 0 /* type */
         7: .line 469
            aload 0 /* type */
            putstatic org.joda.time.PeriodType.cSeconds:Lorg/joda/time/PeriodType;
         8: .line 471
      StackMap locals: org.joda.time.PeriodType
      StackMap stack:
            aload 0 /* type */
            areturn
        end local 0 // org.joda.time.PeriodType type
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            1    9     0  type  Lorg/joda/time/PeriodType;

  public static org.joda.time.PeriodType millis();
    descriptor: ()Lorg/joda/time/PeriodType;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=8, locals=1, args_size=0
         0: .line 480
            getstatic org.joda.time.PeriodType.cMillis:Lorg/joda/time/PeriodType;
            astore 0 /* type */
        start local 0 // org.joda.time.PeriodType type
         1: .line 481
            aload 0 /* type */
            ifnonnull 8
         2: .line 482
            new org.joda.time.PeriodType
            dup
         3: .line 483
            ldc "Millis"
         4: .line 484
            iconst_1
            anewarray org.joda.time.DurationFieldType
            dup
            iconst_0
            invokestatic org.joda.time.DurationFieldType.millis:()Lorg/joda/time/DurationFieldType;
            aastore
         5: .line 485
            bipush 8
            newarray 10
            dup
            iconst_0
            iconst_m1
            iastore
            dup
            iconst_1
            iconst_m1
            iastore
            dup
            iconst_2
            iconst_m1
            iastore
            dup
            iconst_3
            iconst_m1
            iastore
            dup
            iconst_4
            iconst_m1
            iastore
            dup
            iconst_5
            iconst_m1
            iastore
            dup
            bipush 6
            iconst_m1
            iastore
         6: .line 482
            invokespecial org.joda.time.PeriodType.<init>:(Ljava/lang/String;[Lorg/joda/time/DurationFieldType;[I)V
            astore 0 /* type */
         7: .line 487
            aload 0 /* type */
            putstatic org.joda.time.PeriodType.cMillis:Lorg/joda/time/PeriodType;
         8: .line 489
      StackMap locals: org.joda.time.PeriodType
      StackMap stack:
            aload 0 /* type */
            areturn
        end local 0 // org.joda.time.PeriodType type
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            1    9     0  type  Lorg/joda/time/PeriodType;

  public static synchronized org.joda.time.PeriodType forFields(org.joda.time.DurationFieldType[]);
    descriptor: ([Lorg/joda/time/DurationFieldType;)Lorg/joda/time/PeriodType;
    flags: (0x0029) ACC_PUBLIC, ACC_STATIC, ACC_SYNCHRONIZED
    Code:
      stack=5, locals=8, args_size=1
        start local 0 // org.joda.time.DurationFieldType[] types
         0: .line 502
            aload 0 /* types */
            ifnull 1
            aload 0 /* types */
            arraylength
            ifne 2
         1: .line 503
      StackMap locals:
      StackMap stack:
            new java.lang.IllegalArgumentException
            dup
            ldc "Types array must not be null or empty"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 505
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 1 /* i */
        start local 1 // int i
         3: goto 7
         4: .line 506
      StackMap locals: int
      StackMap stack:
            aload 0 /* types */
            iload 1 /* i */
            aaload
            ifnonnull 6
         5: .line 507
            new java.lang.IllegalArgumentException
            dup
            ldc "Types array must not contain null"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         6: .line 505
      StackMap locals:
      StackMap stack:
            iinc 1 /* i */ 1
      StackMap locals:
      StackMap stack:
         7: iload 1 /* i */
            aload 0 /* types */
            arraylength
            if_icmplt 4
        end local 1 // int i
         8: .line 510
            getstatic org.joda.time.PeriodType.cTypes:Ljava/util/Map;
            astore 1 /* cache */
        start local 1 // java.util.Map cache
         9: .line 511
            aload 1 /* cache */
            invokeinterface java.util.Map.isEmpty:()Z
            ifeq 27
        10: .line 512
            aload 1 /* cache */
            invokestatic org.joda.time.PeriodType.standard:()Lorg/joda/time/PeriodType;
            invokestatic org.joda.time.PeriodType.standard:()Lorg/joda/time/PeriodType;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        11: .line 513
            aload 1 /* cache */
            invokestatic org.joda.time.PeriodType.yearMonthDayTime:()Lorg/joda/time/PeriodType;
            invokestatic org.joda.time.PeriodType.yearMonthDayTime:()Lorg/joda/time/PeriodType;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        12: .line 514
            aload 1 /* cache */
            invokestatic org.joda.time.PeriodType.yearMonthDay:()Lorg/joda/time/PeriodType;
            invokestatic org.joda.time.PeriodType.yearMonthDay:()Lorg/joda/time/PeriodType;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        13: .line 515
            aload 1 /* cache */
            invokestatic org.joda.time.PeriodType.yearWeekDayTime:()Lorg/joda/time/PeriodType;
            invokestatic org.joda.time.PeriodType.yearWeekDayTime:()Lorg/joda/time/PeriodType;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        14: .line 516
            aload 1 /* cache */
            invokestatic org.joda.time.PeriodType.yearWeekDay:()Lorg/joda/time/PeriodType;
            invokestatic org.joda.time.PeriodType.yearWeekDay:()Lorg/joda/time/PeriodType;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        15: .line 517
            aload 1 /* cache */
            invokestatic org.joda.time.PeriodType.yearDayTime:()Lorg/joda/time/PeriodType;
            invokestatic org.joda.time.PeriodType.yearDayTime:()Lorg/joda/time/PeriodType;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        16: .line 518
            aload 1 /* cache */
            invokestatic org.joda.time.PeriodType.yearDay:()Lorg/joda/time/PeriodType;
            invokestatic org.joda.time.PeriodType.yearDay:()Lorg/joda/time/PeriodType;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        17: .line 519
            aload 1 /* cache */
            invokestatic org.joda.time.PeriodType.dayTime:()Lorg/joda/time/PeriodType;
            invokestatic org.joda.time.PeriodType.dayTime:()Lorg/joda/time/PeriodType;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        18: .line 520
            aload 1 /* cache */
            invokestatic org.joda.time.PeriodType.time:()Lorg/joda/time/PeriodType;
            invokestatic org.joda.time.PeriodType.time:()Lorg/joda/time/PeriodType;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        19: .line 521
            aload 1 /* cache */
            invokestatic org.joda.time.PeriodType.years:()Lorg/joda/time/PeriodType;
            invokestatic org.joda.time.PeriodType.years:()Lorg/joda/time/PeriodType;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        20: .line 522
            aload 1 /* cache */
            invokestatic org.joda.time.PeriodType.months:()Lorg/joda/time/PeriodType;
            invokestatic org.joda.time.PeriodType.months:()Lorg/joda/time/PeriodType;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        21: .line 523
            aload 1 /* cache */
            invokestatic org.joda.time.PeriodType.weeks:()Lorg/joda/time/PeriodType;
            invokestatic org.joda.time.PeriodType.weeks:()Lorg/joda/time/PeriodType;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        22: .line 524
            aload 1 /* cache */
            invokestatic org.joda.time.PeriodType.days:()Lorg/joda/time/PeriodType;
            invokestatic org.joda.time.PeriodType.days:()Lorg/joda/time/PeriodType;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        23: .line 525
            aload 1 /* cache */
            invokestatic org.joda.time.PeriodType.hours:()Lorg/joda/time/PeriodType;
            invokestatic org.joda.time.PeriodType.hours:()Lorg/joda/time/PeriodType;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        24: .line 526
            aload 1 /* cache */
            invokestatic org.joda.time.PeriodType.minutes:()Lorg/joda/time/PeriodType;
            invokestatic org.joda.time.PeriodType.minutes:()Lorg/joda/time/PeriodType;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        25: .line 527
            aload 1 /* cache */
            invokestatic org.joda.time.PeriodType.seconds:()Lorg/joda/time/PeriodType;
            invokestatic org.joda.time.PeriodType.seconds:()Lorg/joda/time/PeriodType;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        26: .line 528
            aload 1 /* cache */
            invokestatic org.joda.time.PeriodType.millis:()Lorg/joda/time/PeriodType;
            invokestatic org.joda.time.PeriodType.millis:()Lorg/joda/time/PeriodType;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        27: .line 530
      StackMap locals: org.joda.time.DurationFieldType[] java.util.Map
      StackMap stack:
            new org.joda.time.PeriodType
            dup
            aconst_null
            aload 0 /* types */
            aconst_null
            invokespecial org.joda.time.PeriodType.<init>:(Ljava/lang/String;[Lorg/joda/time/DurationFieldType;[I)V
            astore 2 /* inPartType */
        start local 2 // org.joda.time.PeriodType inPartType
        28: .line 531
            aload 1 /* cache */
            aload 2 /* inPartType */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            astore 3 /* cached */
        start local 3 // java.lang.Object cached
        29: .line 532
            aload 3 /* cached */
            instanceof org.joda.time.PeriodType
            ifeq 31
        30: .line 533
            aload 3 /* cached */
            checkcast org.joda.time.PeriodType
            areturn
        31: .line 535
      StackMap locals: org.joda.time.PeriodType java.lang.Object
      StackMap stack:
            aload 3 /* cached */
            ifnull 33
        32: .line 536
            new java.lang.IllegalArgumentException
            dup
            new java.lang.StringBuilder
            dup
            ldc "PeriodType does not support fields: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 3 /* cached */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        33: .line 538
      StackMap locals:
      StackMap stack:
            invokestatic org.joda.time.PeriodType.standard:()Lorg/joda/time/PeriodType;
            astore 4 /* type */
        start local 4 // org.joda.time.PeriodType type
        34: .line 539
            new java.util.ArrayList
            dup
            aload 0 /* types */
            invokestatic java.util.Arrays.asList:([Ljava/lang/Object;)Ljava/util/List;
            invokespecial java.util.ArrayList.<init>:(Ljava/util/Collection;)V
            astore 5 /* list */
        start local 5 // java.util.List list
        35: .line 540
            aload 5 /* list */
            invokestatic org.joda.time.DurationFieldType.years:()Lorg/joda/time/DurationFieldType;
            invokeinterface java.util.List.remove:(Ljava/lang/Object;)Z
            ifne 37
        36: .line 541
            aload 4 /* type */
            invokevirtual org.joda.time.PeriodType.withYearsRemoved:()Lorg/joda/time/PeriodType;
            astore 4 /* type */
        37: .line 543
      StackMap locals: org.joda.time.PeriodType java.util.List
      StackMap stack:
            aload 5 /* list */
            invokestatic org.joda.time.DurationFieldType.months:()Lorg/joda/time/DurationFieldType;
            invokeinterface java.util.List.remove:(Ljava/lang/Object;)Z
            ifne 39
        38: .line 544
            aload 4 /* type */
            invokevirtual org.joda.time.PeriodType.withMonthsRemoved:()Lorg/joda/time/PeriodType;
            astore 4 /* type */
        39: .line 546
      StackMap locals:
      StackMap stack:
            aload 5 /* list */
            invokestatic org.joda.time.DurationFieldType.weeks:()Lorg/joda/time/DurationFieldType;
            invokeinterface java.util.List.remove:(Ljava/lang/Object;)Z
            ifne 41
        40: .line 547
            aload 4 /* type */
            invokevirtual org.joda.time.PeriodType.withWeeksRemoved:()Lorg/joda/time/PeriodType;
            astore 4 /* type */
        41: .line 549
      StackMap locals:
      StackMap stack:
            aload 5 /* list */
            invokestatic org.joda.time.DurationFieldType.days:()Lorg/joda/time/DurationFieldType;
            invokeinterface java.util.List.remove:(Ljava/lang/Object;)Z
            ifne 43
        42: .line 550
            aload 4 /* type */
            invokevirtual org.joda.time.PeriodType.withDaysRemoved:()Lorg/joda/time/PeriodType;
            astore 4 /* type */
        43: .line 552
      StackMap locals:
      StackMap stack:
            aload 5 /* list */
            invokestatic org.joda.time.DurationFieldType.hours:()Lorg/joda/time/DurationFieldType;
            invokeinterface java.util.List.remove:(Ljava/lang/Object;)Z
            ifne 45
        44: .line 553
            aload 4 /* type */
            invokevirtual org.joda.time.PeriodType.withHoursRemoved:()Lorg/joda/time/PeriodType;
            astore 4 /* type */
        45: .line 555
      StackMap locals:
      StackMap stack:
            aload 5 /* list */
            invokestatic org.joda.time.DurationFieldType.minutes:()Lorg/joda/time/DurationFieldType;
            invokeinterface java.util.List.remove:(Ljava/lang/Object;)Z
            ifne 47
        46: .line 556
            aload 4 /* type */
            invokevirtual org.joda.time.PeriodType.withMinutesRemoved:()Lorg/joda/time/PeriodType;
            astore 4 /* type */
        47: .line 558
      StackMap locals:
      StackMap stack:
            aload 5 /* list */
            invokestatic org.joda.time.DurationFieldType.seconds:()Lorg/joda/time/DurationFieldType;
            invokeinterface java.util.List.remove:(Ljava/lang/Object;)Z
            ifne 49
        48: .line 559
            aload 4 /* type */
            invokevirtual org.joda.time.PeriodType.withSecondsRemoved:()Lorg/joda/time/PeriodType;
            astore 4 /* type */
        49: .line 561
      StackMap locals:
      StackMap stack:
            aload 5 /* list */
            invokestatic org.joda.time.DurationFieldType.millis:()Lorg/joda/time/DurationFieldType;
            invokeinterface java.util.List.remove:(Ljava/lang/Object;)Z
            ifne 51
        50: .line 562
            aload 4 /* type */
            invokevirtual org.joda.time.PeriodType.withMillisRemoved:()Lorg/joda/time/PeriodType;
            astore 4 /* type */
        51: .line 564
      StackMap locals:
      StackMap stack:
            aload 5 /* list */
            invokeinterface java.util.List.size:()I
            ifle 54
        52: .line 565
            aload 1 /* cache */
            aload 2 /* inPartType */
            aload 5 /* list */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        53: .line 566
            new java.lang.IllegalArgumentException
            dup
            new java.lang.StringBuilder
            dup
            ldc "PeriodType does not support fields: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 5 /* list */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        54: .line 569
      StackMap locals:
      StackMap stack:
            new org.joda.time.PeriodType
            dup
            aconst_null
            aload 4 /* type */
            getfield org.joda.time.PeriodType.iTypes:[Lorg/joda/time/DurationFieldType;
            aconst_null
            invokespecial org.joda.time.PeriodType.<init>:(Ljava/lang/String;[Lorg/joda/time/DurationFieldType;[I)V
            astore 6 /* checkPartType */
        start local 6 // org.joda.time.PeriodType checkPartType
        55: .line 570
            aload 1 /* cache */
            aload 6 /* checkPartType */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast org.joda.time.PeriodType
            astore 7 /* checkedType */
        start local 7 // org.joda.time.PeriodType checkedType
        56: .line 571
            aload 7 /* checkedType */
            ifnull 59
        57: .line 572
            aload 1 /* cache */
            aload 6 /* checkPartType */
            aload 7 /* checkedType */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        58: .line 573
            aload 7 /* checkedType */
            areturn
        59: .line 575
      StackMap locals: org.joda.time.PeriodType org.joda.time.PeriodType
      StackMap stack:
            aload 1 /* cache */
            aload 6 /* checkPartType */
            aload 4 /* type */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        60: .line 576
            aload 4 /* type */
            areturn
        end local 7 // org.joda.time.PeriodType checkedType
        end local 6 // org.joda.time.PeriodType checkPartType
        end local 5 // java.util.List list
        end local 4 // org.joda.time.PeriodType type
        end local 3 // java.lang.Object cached
        end local 2 // org.joda.time.PeriodType inPartType
        end local 1 // java.util.Map cache
        end local 0 // org.joda.time.DurationFieldType[] types
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   61     0          types  [Lorg/joda/time/DurationFieldType;
            3    8     1              i  I
            9   61     1          cache  Ljava/util/Map<Lorg/joda/time/PeriodType;Ljava/lang/Object;>;
           28   61     2     inPartType  Lorg/joda/time/PeriodType;
           29   61     3         cached  Ljava/lang/Object;
           34   61     4           type  Lorg/joda/time/PeriodType;
           35   61     5           list  Ljava/util/List<Lorg/joda/time/DurationFieldType;>;
           55   61     6  checkPartType  Lorg/joda/time/PeriodType;
           56   61     7    checkedType  Lorg/joda/time/PeriodType;
    MethodParameters:
       Name  Flags
      types  

  protected void <init>(java.lang.String, org.joda.time.DurationFieldType[], int[]);
    descriptor: (Ljava/lang/String;[Lorg/joda/time/DurationFieldType;[I)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=4, args_size=4
        start local 0 // org.joda.time.PeriodType this
        start local 1 // java.lang.String name
        start local 2 // org.joda.time.DurationFieldType[] types
        start local 3 // int[] indices
         0: .line 595
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 596
            aload 0 /* this */
            aload 1 /* name */
            putfield org.joda.time.PeriodType.iName:Ljava/lang/String;
         2: .line 597
            aload 0 /* this */
            aload 2 /* types */
            putfield org.joda.time.PeriodType.iTypes:[Lorg/joda/time/DurationFieldType;
         3: .line 598
            aload 0 /* this */
            aload 3 /* indices */
            putfield org.joda.time.PeriodType.iIndices:[I
         4: .line 599
            return
        end local 3 // int[] indices
        end local 2 // org.joda.time.DurationFieldType[] types
        end local 1 // java.lang.String name
        end local 0 // org.joda.time.PeriodType this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    5     0     this  Lorg/joda/time/PeriodType;
            0    5     1     name  Ljava/lang/String;
            0    5     2    types  [Lorg/joda/time/DurationFieldType;
            0    5     3  indices  [I
    MethodParameters:
         Name  Flags
      name     
      types    
      indices  

  public java.lang.String getName();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.joda.time.PeriodType this
         0: .line 608
            aload 0 /* this */
            getfield org.joda.time.PeriodType.iName:Ljava/lang/String;
            areturn
        end local 0 // org.joda.time.PeriodType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/joda/time/PeriodType;

  public int size();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.joda.time.PeriodType this
         0: .line 617
            aload 0 /* this */
            getfield org.joda.time.PeriodType.iTypes:[Lorg/joda/time/DurationFieldType;
            arraylength
            ireturn
        end local 0 // org.joda.time.PeriodType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/joda/time/PeriodType;

  public org.joda.time.DurationFieldType getFieldType(int);
    descriptor: (I)Lorg/joda/time/DurationFieldType;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.joda.time.PeriodType this
        start local 1 // int index
         0: .line 628
            aload 0 /* this */
            getfield org.joda.time.PeriodType.iTypes:[Lorg/joda/time/DurationFieldType;
            iload 1 /* index */
            aaload
            areturn
        end local 1 // int index
        end local 0 // org.joda.time.PeriodType this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0   this  Lorg/joda/time/PeriodType;
            0    1     1  index  I
    MethodParameters:
       Name  Flags
      index  

  public boolean isSupported(org.joda.time.DurationFieldType);
    descriptor: (Lorg/joda/time/DurationFieldType;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.joda.time.PeriodType this
        start local 1 // org.joda.time.DurationFieldType type
         0: .line 638
            aload 0 /* this */
            aload 1 /* type */
            invokevirtual org.joda.time.PeriodType.indexOf:(Lorg/joda/time/DurationFieldType;)I
            iflt 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 1 // org.joda.time.DurationFieldType type
        end local 0 // org.joda.time.PeriodType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/joda/time/PeriodType;
            0    2     1  type  Lorg/joda/time/DurationFieldType;
    MethodParameters:
      Name  Flags
      type  

  public int indexOf(org.joda.time.DurationFieldType);
    descriptor: (Lorg/joda/time/DurationFieldType;)I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=4, args_size=2
        start local 0 // org.joda.time.PeriodType this
        start local 1 // org.joda.time.DurationFieldType type
         0: .line 648
            iconst_0
            istore 2 /* i */
        start local 2 // int i
         1: aload 0 /* this */
            invokevirtual org.joda.time.PeriodType.size:()I
            istore 3 /* isize */
        start local 3 // int isize
         2: goto 6
         3: .line 649
      StackMap locals: int int
      StackMap stack:
            aload 0 /* this */
            getfield org.joda.time.PeriodType.iTypes:[Lorg/joda/time/DurationFieldType;
            iload 2 /* i */
            aaload
            aload 1 /* type */
            if_acmpne 5
         4: .line 650
            iload 2 /* i */
            ireturn
         5: .line 648
      StackMap locals:
      StackMap stack:
            iinc 2 /* i */ 1
      StackMap locals:
      StackMap stack:
         6: iload 2 /* i */
            iload 3 /* isize */
            if_icmplt 3
        end local 3 // int isize
        end local 2 // int i
         7: .line 653
            iconst_m1
            ireturn
        end local 1 // org.joda.time.DurationFieldType type
        end local 0 // org.joda.time.PeriodType this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    8     0   this  Lorg/joda/time/PeriodType;
            0    8     1   type  Lorg/joda/time/DurationFieldType;
            1    7     2      i  I
            2    7     3  isize  I
    MethodParameters:
      Name  Flags
      type  

  public java.lang.String toString();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.joda.time.PeriodType this
         0: .line 662
            new java.lang.StringBuilder
            dup
            ldc "PeriodType["
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            invokevirtual org.joda.time.PeriodType.getName:()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;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 0 // org.joda.time.PeriodType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/joda/time/PeriodType;

  int getIndexedField(org.joda.time.ReadablePeriod, int);
    descriptor: (Lorg/joda/time/ReadablePeriod;I)I
    flags: (0x0000) 
    Code:
      stack=2, locals=4, args_size=3
        start local 0 // org.joda.time.PeriodType this
        start local 1 // org.joda.time.ReadablePeriod period
        start local 2 // int index
         0: .line 674
            aload 0 /* this */
            getfield org.joda.time.PeriodType.iIndices:[I
            iload 2 /* index */
            iaload
            istore 3 /* realIndex */
        start local 3 // int realIndex
         1: .line 675
            iload 3 /* realIndex */
            iconst_m1
            if_icmpne 2
            iconst_0
            goto 3
      StackMap locals: int
      StackMap stack:
         2: aload 1 /* period */
            iload 3 /* realIndex */
            invokeinterface org.joda.time.ReadablePeriod.getValue:(I)I
      StackMap locals:
      StackMap stack: int
         3: ireturn
        end local 3 // int realIndex
        end local 2 // int index
        end local 1 // org.joda.time.ReadablePeriod period
        end local 0 // org.joda.time.PeriodType this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    4     0       this  Lorg/joda/time/PeriodType;
            0    4     1     period  Lorg/joda/time/ReadablePeriod;
            0    4     2      index  I
            1    4     3  realIndex  I
    MethodParameters:
        Name  Flags
      period  
      index   

  boolean setIndexedField(org.joda.time.ReadablePeriod, int, int[], int);
    descriptor: (Lorg/joda/time/ReadablePeriod;I[II)Z
    flags: (0x0000) 
    Code:
      stack=3, locals=6, args_size=5
        start local 0 // org.joda.time.PeriodType this
        start local 1 // org.joda.time.ReadablePeriod period
        start local 2 // int index
        start local 3 // int[] values
        start local 4 // int newValue
         0: .line 688
            aload 0 /* this */
            getfield org.joda.time.PeriodType.iIndices:[I
            iload 2 /* index */
            iaload
            istore 5 /* realIndex */
        start local 5 // int realIndex
         1: .line 689
            iload 5 /* realIndex */
            iconst_m1
            if_icmpne 3
         2: .line 690
            new java.lang.UnsupportedOperationException
            dup
            ldc "Field is not supported"
            invokespecial java.lang.UnsupportedOperationException.<init>:(Ljava/lang/String;)V
            athrow
         3: .line 692
      StackMap locals: int
      StackMap stack:
            aload 3 /* values */
            iload 5 /* realIndex */
            iload 4 /* newValue */
            iastore
         4: .line 693
            iconst_1
            ireturn
        end local 5 // int realIndex
        end local 4 // int newValue
        end local 3 // int[] values
        end local 2 // int index
        end local 1 // org.joda.time.ReadablePeriod period
        end local 0 // org.joda.time.PeriodType this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    5     0       this  Lorg/joda/time/PeriodType;
            0    5     1     period  Lorg/joda/time/ReadablePeriod;
            0    5     2      index  I
            0    5     3     values  [I
            0    5     4   newValue  I
            1    5     5  realIndex  I
    MethodParameters:
          Name  Flags
      period    
      index     
      values    
      newValue  

  boolean addIndexedField(org.joda.time.ReadablePeriod, int, int[], int);
    descriptor: (Lorg/joda/time/ReadablePeriod;I[II)Z
    flags: (0x0000) 
    Code:
      stack=4, locals=6, args_size=5
        start local 0 // org.joda.time.PeriodType this
        start local 1 // org.joda.time.ReadablePeriod period
        start local 2 // int index
        start local 3 // int[] values
        start local 4 // int valueToAdd
         0: .line 707
            iload 4 /* valueToAdd */
            ifne 2
         1: .line 708
            iconst_0
            ireturn
         2: .line 710
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.joda.time.PeriodType.iIndices:[I
            iload 2 /* index */
            iaload
            istore 5 /* realIndex */
        start local 5 // int realIndex
         3: .line 711
            iload 5 /* realIndex */
            iconst_m1
            if_icmpne 5
         4: .line 712
            new java.lang.UnsupportedOperationException
            dup
            ldc "Field is not supported"
            invokespecial java.lang.UnsupportedOperationException.<init>:(Ljava/lang/String;)V
            athrow
         5: .line 714
      StackMap locals: int
      StackMap stack:
            aload 3 /* values */
            iload 5 /* realIndex */
            aload 3 /* values */
            iload 5 /* realIndex */
            iaload
            iload 4 /* valueToAdd */
            invokestatic org.joda.time.field.FieldUtils.safeAdd:(II)I
            iastore
         6: .line 715
            iconst_1
            ireturn
        end local 5 // int realIndex
        end local 4 // int valueToAdd
        end local 3 // int[] values
        end local 2 // int index
        end local 1 // org.joda.time.ReadablePeriod period
        end local 0 // org.joda.time.PeriodType this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    7     0        this  Lorg/joda/time/PeriodType;
            0    7     1      period  Lorg/joda/time/ReadablePeriod;
            0    7     2       index  I
            0    7     3      values  [I
            0    7     4  valueToAdd  I
            3    7     5   realIndex  I
    MethodParameters:
            Name  Flags
      period      
      index       
      values      
      valueToAdd  

  public org.joda.time.PeriodType withYearsRemoved();
    descriptor: ()Lorg/joda/time/PeriodType;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.joda.time.PeriodType this
         0: .line 725
            aload 0 /* this */
            iconst_0
            ldc "NoYears"
            invokevirtual org.joda.time.PeriodType.withFieldRemoved:(ILjava/lang/String;)Lorg/joda/time/PeriodType;
            areturn
        end local 0 // org.joda.time.PeriodType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/joda/time/PeriodType;

  public org.joda.time.PeriodType withMonthsRemoved();
    descriptor: ()Lorg/joda/time/PeriodType;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.joda.time.PeriodType this
         0: .line 734
            aload 0 /* this */
            iconst_1
            ldc "NoMonths"
            invokevirtual org.joda.time.PeriodType.withFieldRemoved:(ILjava/lang/String;)Lorg/joda/time/PeriodType;
            areturn
        end local 0 // org.joda.time.PeriodType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/joda/time/PeriodType;

  public org.joda.time.PeriodType withWeeksRemoved();
    descriptor: ()Lorg/joda/time/PeriodType;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.joda.time.PeriodType this
         0: .line 743
            aload 0 /* this */
            iconst_2
            ldc "NoWeeks"
            invokevirtual org.joda.time.PeriodType.withFieldRemoved:(ILjava/lang/String;)Lorg/joda/time/PeriodType;
            areturn
        end local 0 // org.joda.time.PeriodType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/joda/time/PeriodType;

  public org.joda.time.PeriodType withDaysRemoved();
    descriptor: ()Lorg/joda/time/PeriodType;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.joda.time.PeriodType this
         0: .line 752
            aload 0 /* this */
            iconst_3
            ldc "NoDays"
            invokevirtual org.joda.time.PeriodType.withFieldRemoved:(ILjava/lang/String;)Lorg/joda/time/PeriodType;
            areturn
        end local 0 // org.joda.time.PeriodType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/joda/time/PeriodType;

  public org.joda.time.PeriodType withHoursRemoved();
    descriptor: ()Lorg/joda/time/PeriodType;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.joda.time.PeriodType this
         0: .line 761
            aload 0 /* this */
            iconst_4
            ldc "NoHours"
            invokevirtual org.joda.time.PeriodType.withFieldRemoved:(ILjava/lang/String;)Lorg/joda/time/PeriodType;
            areturn
        end local 0 // org.joda.time.PeriodType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/joda/time/PeriodType;

  public org.joda.time.PeriodType withMinutesRemoved();
    descriptor: ()Lorg/joda/time/PeriodType;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.joda.time.PeriodType this
         0: .line 770
            aload 0 /* this */
            iconst_5
            ldc "NoMinutes"
            invokevirtual org.joda.time.PeriodType.withFieldRemoved:(ILjava/lang/String;)Lorg/joda/time/PeriodType;
            areturn
        end local 0 // org.joda.time.PeriodType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/joda/time/PeriodType;

  public org.joda.time.PeriodType withSecondsRemoved();
    descriptor: ()Lorg/joda/time/PeriodType;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.joda.time.PeriodType this
         0: .line 779
            aload 0 /* this */
            bipush 6
            ldc "NoSeconds"
            invokevirtual org.joda.time.PeriodType.withFieldRemoved:(ILjava/lang/String;)Lorg/joda/time/PeriodType;
            areturn
        end local 0 // org.joda.time.PeriodType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/joda/time/PeriodType;

  public org.joda.time.PeriodType withMillisRemoved();
    descriptor: ()Lorg/joda/time/PeriodType;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.joda.time.PeriodType this
         0: .line 788
            aload 0 /* this */
            bipush 7
            ldc "NoMillis"
            invokevirtual org.joda.time.PeriodType.withFieldRemoved:(ILjava/lang/String;)Lorg/joda/time/PeriodType;
            areturn
        end local 0 // org.joda.time.PeriodType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/joda/time/PeriodType;

  private org.joda.time.PeriodType withFieldRemoved(int, java.lang.String);
    descriptor: (ILjava/lang/String;)Lorg/joda/time/PeriodType;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=7, args_size=3
        start local 0 // org.joda.time.PeriodType this
        start local 1 // int indicesIndex
        start local 2 // java.lang.String name
         0: .line 799
            aload 0 /* this */
            getfield org.joda.time.PeriodType.iIndices:[I
            iload 1 /* indicesIndex */
            iaload
            istore 3 /* fieldIndex */
        start local 3 // int fieldIndex
         1: .line 800
            iload 3 /* fieldIndex */
            iconst_m1
            if_icmpne 3
         2: .line 801
            aload 0 /* this */
            areturn
         3: .line 804
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.joda.time.PeriodType.size:()I
            iconst_1
            isub
            anewarray org.joda.time.DurationFieldType
            astore 4 /* types */
        start local 4 // org.joda.time.DurationFieldType[] types
         4: .line 805
            iconst_0
            istore 5 /* i */
        start local 5 // int i
         5: goto 12
         6: .line 806
      StackMap locals: org.joda.time.DurationFieldType[] int
      StackMap stack:
            iload 5 /* i */
            iload 3 /* fieldIndex */
            if_icmpge 9
         7: .line 807
            aload 4 /* types */
            iload 5 /* i */
            aload 0 /* this */
            getfield org.joda.time.PeriodType.iTypes:[Lorg/joda/time/DurationFieldType;
            iload 5 /* i */
            aaload
            aastore
         8: .line 808
            goto 11
      StackMap locals:
      StackMap stack:
         9: iload 5 /* i */
            iload 3 /* fieldIndex */
            if_icmple 11
        10: .line 809
            aload 4 /* types */
            iload 5 /* i */
            iconst_1
            isub
            aload 0 /* this */
            getfield org.joda.time.PeriodType.iTypes:[Lorg/joda/time/DurationFieldType;
            iload 5 /* i */
            aaload
            aastore
        11: .line 805
      StackMap locals:
      StackMap stack:
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
        12: iload 5 /* i */
            aload 0 /* this */
            getfield org.joda.time.PeriodType.iTypes:[Lorg/joda/time/DurationFieldType;
            arraylength
            if_icmplt 6
        end local 5 // int i
        13: .line 813
            bipush 8
            newarray 10
            astore 5 /* indices */
        start local 5 // int[] indices
        14: .line 814
            iconst_0
            istore 6 /* i */
        start local 6 // int i
        15: goto 26
        16: .line 815
      StackMap locals: org.joda.time.PeriodType int java.lang.String int org.joda.time.DurationFieldType[] int[] int
      StackMap stack:
            iload 6 /* i */
            iload 1 /* indicesIndex */
            if_icmpge 19
        17: .line 816
            aload 5 /* indices */
            iload 6 /* i */
            aload 0 /* this */
            getfield org.joda.time.PeriodType.iIndices:[I
            iload 6 /* i */
            iaload
            iastore
        18: .line 817
            goto 25
      StackMap locals:
      StackMap stack:
        19: iload 6 /* i */
            iload 1 /* indicesIndex */
            if_icmple 24
        20: .line 818
            aload 5 /* indices */
            iload 6 /* i */
            aload 0 /* this */
            getfield org.joda.time.PeriodType.iIndices:[I
            iload 6 /* i */
            iaload
            iconst_m1
            if_icmpne 21
            iconst_m1
            goto 22
      StackMap locals: org.joda.time.PeriodType int java.lang.String int org.joda.time.DurationFieldType[] int[] int
      StackMap stack: int[] int
        21: aload 0 /* this */
            getfield org.joda.time.PeriodType.iIndices:[I
            iload 6 /* i */
            iaload
            iconst_1
            isub
      StackMap locals: org.joda.time.PeriodType int java.lang.String int org.joda.time.DurationFieldType[] int[] int
      StackMap stack: int[] int int
        22: iastore
        23: .line 819
            goto 25
        24: .line 820
      StackMap locals:
      StackMap stack:
            aload 5 /* indices */
            iload 6 /* i */
            iconst_m1
            iastore
        25: .line 814
      StackMap locals:
      StackMap stack:
            iinc 6 /* i */ 1
      StackMap locals:
      StackMap stack:
        26: iload 6 /* i */
            aload 5 /* indices */
            arraylength
            if_icmplt 16
        end local 6 // int i
        27: .line 823
            new org.joda.time.PeriodType
            dup
            new java.lang.StringBuilder
            dup
            aload 0 /* this */
            invokevirtual org.joda.time.PeriodType.getName:()Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 2 /* name */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            aload 4 /* types */
            aload 5 /* indices */
            invokespecial org.joda.time.PeriodType.<init>:(Ljava/lang/String;[Lorg/joda/time/DurationFieldType;[I)V
            areturn
        end local 5 // int[] indices
        end local 4 // org.joda.time.DurationFieldType[] types
        end local 3 // int fieldIndex
        end local 2 // java.lang.String name
        end local 1 // int indicesIndex
        end local 0 // org.joda.time.PeriodType this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   28     0          this  Lorg/joda/time/PeriodType;
            0   28     1  indicesIndex  I
            0   28     2          name  Ljava/lang/String;
            1   28     3    fieldIndex  I
            4   28     4         types  [Lorg/joda/time/DurationFieldType;
            5   13     5             i  I
           14   28     5       indices  [I
           15   27     6             i  I
    MethodParameters:
              Name  Flags
      indicesIndex  
      name          

  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.PeriodType this
        start local 1 // java.lang.Object obj
         0: .line 835
            aload 0 /* this */
            aload 1 /* obj */
            if_acmpne 2
         1: .line 836
            iconst_1
            ireturn
         2: .line 838
      StackMap locals:
      StackMap stack:
            aload 1 /* obj */
            instanceof org.joda.time.PeriodType
            ifne 4
         3: .line 839
            iconst_0
            ireturn
         4: .line 841
      StackMap locals:
      StackMap stack:
            aload 1 /* obj */
            checkcast org.joda.time.PeriodType
            astore 2 /* other */
        start local 2 // org.joda.time.PeriodType other
         5: .line 842
            aload 0 /* this */
            getfield org.joda.time.PeriodType.iTypes:[Lorg/joda/time/DurationFieldType;
            aload 2 /* other */
            getfield org.joda.time.PeriodType.iTypes:[Lorg/joda/time/DurationFieldType;
            invokestatic java.util.Arrays.equals:([Ljava/lang/Object;[Ljava/lang/Object;)Z
            ireturn
        end local 2 // org.joda.time.PeriodType other
        end local 1 // java.lang.Object obj
        end local 0 // org.joda.time.PeriodType this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    6     0   this  Lorg/joda/time/PeriodType;
            0    6     1    obj  Ljava/lang/Object;
            5    6     2  other  Lorg/joda/time/PeriodType;
    MethodParameters:
      Name  Flags
      obj   

  public int hashCode();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=1
        start local 0 // org.joda.time.PeriodType this
         0: .line 851
            iconst_0
            istore 1 /* hash */
        start local 1 // int hash
         1: .line 852
            iconst_0
            istore 2 /* i */
        start local 2 // int i
         2: goto 5
         3: .line 853
      StackMap locals: int int
      StackMap stack:
            iload 1 /* hash */
            aload 0 /* this */
            getfield org.joda.time.PeriodType.iTypes:[Lorg/joda/time/DurationFieldType;
            iload 2 /* i */
            aaload
            invokevirtual java.lang.Object.hashCode:()I
            iadd
            istore 1 /* hash */
         4: .line 852
            iinc 2 /* i */ 1
      StackMap locals:
      StackMap stack:
         5: iload 2 /* i */
            aload 0 /* this */
            getfield org.joda.time.PeriodType.iTypes:[Lorg/joda/time/DurationFieldType;
            arraylength
            if_icmplt 3
        end local 2 // int i
         6: .line 855
            iload 1 /* hash */
            ireturn
        end local 1 // int hash
        end local 0 // org.joda.time.PeriodType this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0  this  Lorg/joda/time/PeriodType;
            1    7     1  hash  I
            2    6     2     i  I
}
SourceFile: "PeriodType.java"