public class org.joda.time.format.PeriodFormatterBuilder
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.joda.time.format.PeriodFormatterBuilder
  super_class: java.lang.Object
{
  private static final int PRINT_ZERO_RARELY_FIRST;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 1

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

  private static final java.util.concurrent.ConcurrentMap<java.lang.String, java.util.regex.Pattern> PATTERNS;
    descriptor: Ljava/util/concurrent/ConcurrentMap;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    Signature: Ljava/util/concurrent/ConcurrentMap<Ljava/lang/String;Ljava/util/regex/Pattern;>;

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

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

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

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

  private org.joda.time.format.PeriodFormatterBuilder$PeriodFieldAffix iPrefix;
    descriptor: Lorg/joda/time/format/PeriodFormatterBuilder$PeriodFieldAffix;
    flags: (0x0002) ACC_PRIVATE

  private java.util.List<java.lang.Object> iElementPairs;
    descriptor: Ljava/util/List;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/util/List<Ljava/lang/Object;>;

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

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

  private org.joda.time.format.PeriodFormatterBuilder$FieldFormatter[] iFieldFormatters;
    descriptor: [Lorg/joda/time/format/PeriodFormatterBuilder$FieldFormatter;
    flags: (0x0002) ACC_PRIVATE

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=0, args_size=0
         0: .line 91
            new java.util.concurrent.ConcurrentHashMap
            dup
            invokespecial java.util.concurrent.ConcurrentHashMap.<init>:()V
            putstatic org.joda.time.format.PeriodFormatterBuilder.PATTERNS:Ljava/util/concurrent/ConcurrentMap;
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.joda.time.format.PeriodFormatterBuilder this
         0: .line 110
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 111
            aload 0 /* this */
            invokevirtual org.joda.time.format.PeriodFormatterBuilder.clear:()V
         2: .line 112
            return
        end local 0 // org.joda.time.format.PeriodFormatterBuilder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/joda/time/format/PeriodFormatterBuilder;

  public org.joda.time.format.PeriodFormatter toFormatter();
    descriptor: ()Lorg/joda/time/format/PeriodFormatter;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=6, args_size=1
        start local 0 // org.joda.time.format.PeriodFormatterBuilder this
         0: .line 132
            aload 0 /* this */
            getfield org.joda.time.format.PeriodFormatterBuilder.iElementPairs:Ljava/util/List;
            aload 0 /* this */
            getfield org.joda.time.format.PeriodFormatterBuilder.iNotPrinter:Z
            aload 0 /* this */
            getfield org.joda.time.format.PeriodFormatterBuilder.iNotParser:Z
            invokestatic org.joda.time.format.PeriodFormatterBuilder.toFormatter:(Ljava/util/List;ZZ)Lorg/joda/time/format/PeriodFormatter;
            astore 1 /* formatter */
        start local 1 // org.joda.time.format.PeriodFormatter formatter
         1: .line 133
            aload 0 /* this */
            getfield org.joda.time.format.PeriodFormatterBuilder.iFieldFormatters:[Lorg/joda/time/format/PeriodFormatterBuilder$FieldFormatter;
            dup
            astore 5
            arraylength
            istore 4
            iconst_0
            istore 3
            goto 6
      StackMap locals: org.joda.time.format.PeriodFormatterBuilder org.joda.time.format.PeriodFormatter top int int org.joda.time.format.PeriodFormatterBuilder$FieldFormatter[]
      StackMap stack:
         2: aload 5
            iload 3
            aaload
            astore 2 /* fieldFormatter */
        start local 2 // org.joda.time.format.PeriodFormatterBuilder$FieldFormatter fieldFormatter
         3: .line 134
            aload 2 /* fieldFormatter */
            ifnull 5
         4: .line 135
            aload 2 /* fieldFormatter */
            aload 0 /* this */
            getfield org.joda.time.format.PeriodFormatterBuilder.iFieldFormatters:[Lorg/joda/time/format/PeriodFormatterBuilder$FieldFormatter;
            invokevirtual org.joda.time.format.PeriodFormatterBuilder$FieldFormatter.finish:([Lorg/joda/time/format/PeriodFormatterBuilder$FieldFormatter;)V
        end local 2 // org.joda.time.format.PeriodFormatterBuilder$FieldFormatter fieldFormatter
         5: .line 133
      StackMap locals:
      StackMap stack:
            iinc 3 1
      StackMap locals:
      StackMap stack:
         6: iload 3
            iload 4
            if_icmplt 2
         7: .line 138
            aload 0 /* this */
            aload 0 /* this */
            getfield org.joda.time.format.PeriodFormatterBuilder.iFieldFormatters:[Lorg/joda/time/format/PeriodFormatterBuilder$FieldFormatter;
            invokevirtual org.joda.time.format.PeriodFormatterBuilder$FieldFormatter[].clone:()Ljava/lang/Object;
            checkcast org.joda.time.format.PeriodFormatterBuilder$FieldFormatter[]
            putfield org.joda.time.format.PeriodFormatterBuilder.iFieldFormatters:[Lorg/joda/time/format/PeriodFormatterBuilder$FieldFormatter;
         8: .line 139
            aload 1 /* formatter */
            areturn
        end local 1 // org.joda.time.format.PeriodFormatter formatter
        end local 0 // org.joda.time.format.PeriodFormatterBuilder this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    9     0            this  Lorg/joda/time/format/PeriodFormatterBuilder;
            1    9     1       formatter  Lorg/joda/time/format/PeriodFormatter;
            3    5     2  fieldFormatter  Lorg/joda/time/format/PeriodFormatterBuilder$FieldFormatter;

  public org.joda.time.format.PeriodPrinter toPrinter();
    descriptor: ()Lorg/joda/time/format/PeriodPrinter;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.joda.time.format.PeriodFormatterBuilder this
         0: .line 155
            aload 0 /* this */
            getfield org.joda.time.format.PeriodFormatterBuilder.iNotPrinter:Z
            ifeq 2
         1: .line 156
            aconst_null
            areturn
         2: .line 158
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.joda.time.format.PeriodFormatterBuilder.toFormatter:()Lorg/joda/time/format/PeriodFormatter;
            invokevirtual org.joda.time.format.PeriodFormatter.getPrinter:()Lorg/joda/time/format/PeriodPrinter;
            areturn
        end local 0 // org.joda.time.format.PeriodFormatterBuilder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/joda/time/format/PeriodFormatterBuilder;

  public org.joda.time.format.PeriodParser toParser();
    descriptor: ()Lorg/joda/time/format/PeriodParser;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.joda.time.format.PeriodFormatterBuilder this
         0: .line 174
            aload 0 /* this */
            getfield org.joda.time.format.PeriodFormatterBuilder.iNotParser:Z
            ifeq 2
         1: .line 175
            aconst_null
            areturn
         2: .line 177
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.joda.time.format.PeriodFormatterBuilder.toFormatter:()Lorg/joda/time/format/PeriodFormatter;
            invokevirtual org.joda.time.format.PeriodFormatter.getParser:()Lorg/joda/time/format/PeriodParser;
            areturn
        end local 0 // org.joda.time.format.PeriodFormatterBuilder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/joda/time/format/PeriodFormatterBuilder;

  public void clear();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.joda.time.format.PeriodFormatterBuilder this
         0: .line 185
            aload 0 /* this */
            iconst_1
            putfield org.joda.time.format.PeriodFormatterBuilder.iMinPrintedDigits:I
         1: .line 186
            aload 0 /* this */
            iconst_2
            putfield org.joda.time.format.PeriodFormatterBuilder.iPrintZeroSetting:I
         2: .line 187
            aload 0 /* this */
            bipush 10
            putfield org.joda.time.format.PeriodFormatterBuilder.iMaxParsedDigits:I
         3: .line 188
            aload 0 /* this */
            iconst_0
            putfield org.joda.time.format.PeriodFormatterBuilder.iRejectSignedValues:Z
         4: .line 189
            aload 0 /* this */
            aconst_null
            putfield org.joda.time.format.PeriodFormatterBuilder.iPrefix:Lorg/joda/time/format/PeriodFormatterBuilder$PeriodFieldAffix;
         5: .line 190
            aload 0 /* this */
            getfield org.joda.time.format.PeriodFormatterBuilder.iElementPairs:Ljava/util/List;
            ifnonnull 8
         6: .line 191
            aload 0 /* this */
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            putfield org.joda.time.format.PeriodFormatterBuilder.iElementPairs:Ljava/util/List;
         7: .line 192
            goto 9
         8: .line 193
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.joda.time.format.PeriodFormatterBuilder.iElementPairs:Ljava/util/List;
            invokeinterface java.util.List.clear:()V
         9: .line 195
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_0
            putfield org.joda.time.format.PeriodFormatterBuilder.iNotPrinter:Z
        10: .line 196
            aload 0 /* this */
            iconst_0
            putfield org.joda.time.format.PeriodFormatterBuilder.iNotParser:Z
        11: .line 197
            aload 0 /* this */
            bipush 10
            anewarray org.joda.time.format.PeriodFormatterBuilder$FieldFormatter
            putfield org.joda.time.format.PeriodFormatterBuilder.iFieldFormatters:[Lorg/joda/time/format/PeriodFormatterBuilder$FieldFormatter;
        12: .line 198
            return
        end local 0 // org.joda.time.format.PeriodFormatterBuilder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   13     0  this  Lorg/joda/time/format/PeriodFormatterBuilder;

  public org.joda.time.format.PeriodFormatterBuilder append(org.joda.time.format.PeriodFormatter);
    descriptor: (Lorg/joda/time/format/PeriodFormatter;)Lorg/joda/time/format/PeriodFormatterBuilder;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.joda.time.format.PeriodFormatterBuilder this
        start local 1 // org.joda.time.format.PeriodFormatter formatter
         0: .line 206
            aload 1 /* formatter */
            ifnonnull 2
         1: .line 207
            new java.lang.IllegalArgumentException
            dup
            ldc "No formatter supplied"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 209
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.joda.time.format.PeriodFormatterBuilder.clearPrefix:()V
         3: .line 210
            aload 0 /* this */
            aload 1 /* formatter */
            invokevirtual org.joda.time.format.PeriodFormatter.getPrinter:()Lorg/joda/time/format/PeriodPrinter;
            aload 1 /* formatter */
            invokevirtual org.joda.time.format.PeriodFormatter.getParser:()Lorg/joda/time/format/PeriodParser;
            invokevirtual org.joda.time.format.PeriodFormatterBuilder.append0:(Lorg/joda/time/format/PeriodPrinter;Lorg/joda/time/format/PeriodParser;)Lorg/joda/time/format/PeriodFormatterBuilder;
            pop
         4: .line 211
            aload 0 /* this */
            areturn
        end local 1 // org.joda.time.format.PeriodFormatter formatter
        end local 0 // org.joda.time.format.PeriodFormatterBuilder this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    5     0       this  Lorg/joda/time/format/PeriodFormatterBuilder;
            0    5     1  formatter  Lorg/joda/time/format/PeriodFormatter;
    MethodParameters:
           Name  Flags
      formatter  

  public org.joda.time.format.PeriodFormatterBuilder append(org.joda.time.format.PeriodPrinter, org.joda.time.format.PeriodParser);
    descriptor: (Lorg/joda/time/format/PeriodPrinter;Lorg/joda/time/format/PeriodParser;)Lorg/joda/time/format/PeriodFormatterBuilder;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.joda.time.format.PeriodFormatterBuilder this
        start local 1 // org.joda.time.format.PeriodPrinter printer
        start local 2 // org.joda.time.format.PeriodParser parser
         0: .line 226
            aload 1 /* printer */
            ifnonnull 2
            aload 2 /* parser */
            ifnonnull 2
         1: .line 227
            new java.lang.IllegalArgumentException
            dup
            ldc "No printer or parser supplied"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 229
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.joda.time.format.PeriodFormatterBuilder.clearPrefix:()V
         3: .line 230
            aload 0 /* this */
            aload 1 /* printer */
            aload 2 /* parser */
            invokevirtual org.joda.time.format.PeriodFormatterBuilder.append0:(Lorg/joda/time/format/PeriodPrinter;Lorg/joda/time/format/PeriodParser;)Lorg/joda/time/format/PeriodFormatterBuilder;
            pop
         4: .line 231
            aload 0 /* this */
            areturn
        end local 2 // org.joda.time.format.PeriodParser parser
        end local 1 // org.joda.time.format.PeriodPrinter printer
        end local 0 // org.joda.time.format.PeriodFormatterBuilder this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    5     0     this  Lorg/joda/time/format/PeriodFormatterBuilder;
            0    5     1  printer  Lorg/joda/time/format/PeriodPrinter;
            0    5     2   parser  Lorg/joda/time/format/PeriodParser;
    MethodParameters:
         Name  Flags
      printer  
      parser   

  public org.joda.time.format.PeriodFormatterBuilder appendLiteral(java.lang.String);
    descriptor: (Ljava/lang/String;)Lorg/joda/time/format/PeriodFormatterBuilder;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // org.joda.time.format.PeriodFormatterBuilder this
        start local 1 // java.lang.String text
         0: .line 242
            aload 1 /* text */
            ifnonnull 2
         1: .line 243
            new java.lang.IllegalArgumentException
            dup
            ldc "Literal must not be null"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 245
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.joda.time.format.PeriodFormatterBuilder.clearPrefix:()V
         3: .line 246
            new org.joda.time.format.PeriodFormatterBuilder$Literal
            dup
            aload 1 /* text */
            invokespecial org.joda.time.format.PeriodFormatterBuilder$Literal.<init>:(Ljava/lang/String;)V
            astore 2 /* literal */
        start local 2 // org.joda.time.format.PeriodFormatterBuilder$Literal literal
         4: .line 247
            aload 0 /* this */
            aload 2 /* literal */
            aload 2 /* literal */
            invokevirtual org.joda.time.format.PeriodFormatterBuilder.append0:(Lorg/joda/time/format/PeriodPrinter;Lorg/joda/time/format/PeriodParser;)Lorg/joda/time/format/PeriodFormatterBuilder;
            pop
         5: .line 248
            aload 0 /* this */
            areturn
        end local 2 // org.joda.time.format.PeriodFormatterBuilder$Literal literal
        end local 1 // java.lang.String text
        end local 0 // org.joda.time.format.PeriodFormatterBuilder this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    6     0     this  Lorg/joda/time/format/PeriodFormatterBuilder;
            0    6     1     text  Ljava/lang/String;
            4    6     2  literal  Lorg/joda/time/format/PeriodFormatterBuilder$Literal;
    MethodParameters:
      Name  Flags
      text  

  public org.joda.time.format.PeriodFormatterBuilder minimumPrintedDigits(int);
    descriptor: (I)Lorg/joda/time/format/PeriodFormatterBuilder;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.joda.time.format.PeriodFormatterBuilder this
        start local 1 // int minDigits
         0: .line 259
            aload 0 /* this */
            iload 1 /* minDigits */
            putfield org.joda.time.format.PeriodFormatterBuilder.iMinPrintedDigits:I
         1: .line 260
            aload 0 /* this */
            areturn
        end local 1 // int minDigits
        end local 0 // org.joda.time.format.PeriodFormatterBuilder this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    2     0       this  Lorg/joda/time/format/PeriodFormatterBuilder;
            0    2     1  minDigits  I
    MethodParameters:
           Name  Flags
      minDigits  

  public org.joda.time.format.PeriodFormatterBuilder maximumParsedDigits(int);
    descriptor: (I)Lorg/joda/time/format/PeriodFormatterBuilder;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.joda.time.format.PeriodFormatterBuilder this
        start local 1 // int maxDigits
         0: .line 270
            aload 0 /* this */
            iload 1 /* maxDigits */
            putfield org.joda.time.format.PeriodFormatterBuilder.iMaxParsedDigits:I
         1: .line 271
            aload 0 /* this */
            areturn
        end local 1 // int maxDigits
        end local 0 // org.joda.time.format.PeriodFormatterBuilder this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    2     0       this  Lorg/joda/time/format/PeriodFormatterBuilder;
            0    2     1  maxDigits  I
    MethodParameters:
           Name  Flags
      maxDigits  

  public org.joda.time.format.PeriodFormatterBuilder rejectSignedValues(boolean);
    descriptor: (Z)Lorg/joda/time/format/PeriodFormatterBuilder;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.joda.time.format.PeriodFormatterBuilder this
        start local 1 // boolean v
         0: .line 280
            aload 0 /* this */
            iload 1 /* v */
            putfield org.joda.time.format.PeriodFormatterBuilder.iRejectSignedValues:Z
         1: .line 281
            aload 0 /* this */
            areturn
        end local 1 // boolean v
        end local 0 // org.joda.time.format.PeriodFormatterBuilder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/joda/time/format/PeriodFormatterBuilder;
            0    2     1     v  Z
    MethodParameters:
      Name  Flags
      v     

  public org.joda.time.format.PeriodFormatterBuilder printZeroRarelyLast();
    descriptor: ()Lorg/joda/time/format/PeriodFormatterBuilder;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.joda.time.format.PeriodFormatterBuilder this
         0: .line 294
            aload 0 /* this */
            iconst_2
            putfield org.joda.time.format.PeriodFormatterBuilder.iPrintZeroSetting:I
         1: .line 295
            aload 0 /* this */
            areturn
        end local 0 // org.joda.time.format.PeriodFormatterBuilder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/joda/time/format/PeriodFormatterBuilder;

  public org.joda.time.format.PeriodFormatterBuilder printZeroRarelyFirst();
    descriptor: ()Lorg/joda/time/format/PeriodFormatterBuilder;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.joda.time.format.PeriodFormatterBuilder this
         0: .line 306
            aload 0 /* this */
            iconst_1
            putfield org.joda.time.format.PeriodFormatterBuilder.iPrintZeroSetting:I
         1: .line 307
            aload 0 /* this */
            areturn
        end local 0 // org.joda.time.format.PeriodFormatterBuilder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/joda/time/format/PeriodFormatterBuilder;

  public org.joda.time.format.PeriodFormatterBuilder printZeroIfSupported();
    descriptor: ()Lorg/joda/time/format/PeriodFormatterBuilder;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.joda.time.format.PeriodFormatterBuilder this
         0: .line 317
            aload 0 /* this */
            iconst_3
            putfield org.joda.time.format.PeriodFormatterBuilder.iPrintZeroSetting:I
         1: .line 318
            aload 0 /* this */
            areturn
        end local 0 // org.joda.time.format.PeriodFormatterBuilder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/joda/time/format/PeriodFormatterBuilder;

  public org.joda.time.format.PeriodFormatterBuilder printZeroAlways();
    descriptor: ()Lorg/joda/time/format/PeriodFormatterBuilder;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.joda.time.format.PeriodFormatterBuilder this
         0: .line 329
            aload 0 /* this */
            iconst_4
            putfield org.joda.time.format.PeriodFormatterBuilder.iPrintZeroSetting:I
         1: .line 330
            aload 0 /* this */
            areturn
        end local 0 // org.joda.time.format.PeriodFormatterBuilder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/joda/time/format/PeriodFormatterBuilder;

  public org.joda.time.format.PeriodFormatterBuilder printZeroNever();
    descriptor: ()Lorg/joda/time/format/PeriodFormatterBuilder;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.joda.time.format.PeriodFormatterBuilder this
         0: .line 343
            aload 0 /* this */
            iconst_5
            putfield org.joda.time.format.PeriodFormatterBuilder.iPrintZeroSetting:I
         1: .line 344
            aload 0 /* this */
            areturn
        end local 0 // org.joda.time.format.PeriodFormatterBuilder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/joda/time/format/PeriodFormatterBuilder;

  public org.joda.time.format.PeriodFormatterBuilder appendPrefix(java.lang.String);
    descriptor: (Ljava/lang/String;)Lorg/joda/time/format/PeriodFormatterBuilder;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // org.joda.time.format.PeriodFormatterBuilder this
        start local 1 // java.lang.String text
         0: .line 357
            aload 1 /* text */
            ifnonnull 2
         1: .line 358
            new java.lang.IllegalArgumentException
            dup
            invokespecial java.lang.IllegalArgumentException.<init>:()V
            athrow
         2: .line 360
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            new org.joda.time.format.PeriodFormatterBuilder$SimpleAffix
            dup
            aload 1 /* text */
            invokespecial org.joda.time.format.PeriodFormatterBuilder$SimpleAffix.<init>:(Ljava/lang/String;)V
            invokevirtual org.joda.time.format.PeriodFormatterBuilder.appendPrefix:(Lorg/joda/time/format/PeriodFormatterBuilder$PeriodFieldAffix;)Lorg/joda/time/format/PeriodFormatterBuilder;
            areturn
        end local 1 // java.lang.String text
        end local 0 // org.joda.time.format.PeriodFormatterBuilder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/joda/time/format/PeriodFormatterBuilder;
            0    3     1  text  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      text  

  public org.joda.time.format.PeriodFormatterBuilder appendPrefix(java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;)Lorg/joda/time/format/PeriodFormatterBuilder;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // org.joda.time.format.PeriodFormatterBuilder this
        start local 1 // java.lang.String singularText
        start local 2 // java.lang.String pluralText
         0: .line 377
            aload 1 /* singularText */
            ifnull 1
            aload 2 /* pluralText */
            ifnonnull 2
         1: .line 378
      StackMap locals:
      StackMap stack:
            new java.lang.IllegalArgumentException
            dup
            invokespecial java.lang.IllegalArgumentException.<init>:()V
            athrow
         2: .line 380
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            new org.joda.time.format.PeriodFormatterBuilder$PluralAffix
            dup
            aload 1 /* singularText */
            aload 2 /* pluralText */
            invokespecial org.joda.time.format.PeriodFormatterBuilder$PluralAffix.<init>:(Ljava/lang/String;Ljava/lang/String;)V
            invokevirtual org.joda.time.format.PeriodFormatterBuilder.appendPrefix:(Lorg/joda/time/format/PeriodFormatterBuilder$PeriodFieldAffix;)Lorg/joda/time/format/PeriodFormatterBuilder;
            areturn
        end local 2 // java.lang.String pluralText
        end local 1 // java.lang.String singularText
        end local 0 // org.joda.time.format.PeriodFormatterBuilder this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    3     0          this  Lorg/joda/time/format/PeriodFormatterBuilder;
            0    3     1  singularText  Ljava/lang/String;
            0    3     2    pluralText  Ljava/lang/String;
    MethodParameters:
              Name  Flags
      singularText  
      pluralText    

  public org.joda.time.format.PeriodFormatterBuilder appendPrefix(java.lang.String[], java.lang.String[]);
    descriptor: ([Ljava/lang/String;[Ljava/lang/String;)Lorg/joda/time/format/PeriodFormatterBuilder;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // org.joda.time.format.PeriodFormatterBuilder this
        start local 1 // java.lang.String[] regularExpressions
        start local 2 // java.lang.String[] prefixes
         0: .line 417
            aload 1 /* regularExpressions */
            ifnull 2
            aload 2 /* prefixes */
            ifnull 2
         1: .line 418
            aload 1 /* regularExpressions */
            arraylength
            iconst_1
            if_icmplt 2
            aload 1 /* regularExpressions */
            arraylength
            aload 2 /* prefixes */
            arraylength
            if_icmpeq 3
         2: .line 419
      StackMap locals:
      StackMap stack:
            new java.lang.IllegalArgumentException
            dup
            invokespecial java.lang.IllegalArgumentException.<init>:()V
            athrow
         3: .line 421
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            new org.joda.time.format.PeriodFormatterBuilder$RegExAffix
            dup
            aload 1 /* regularExpressions */
            aload 2 /* prefixes */
            invokespecial org.joda.time.format.PeriodFormatterBuilder$RegExAffix.<init>:([Ljava/lang/String;[Ljava/lang/String;)V
            invokevirtual org.joda.time.format.PeriodFormatterBuilder.appendPrefix:(Lorg/joda/time/format/PeriodFormatterBuilder$PeriodFieldAffix;)Lorg/joda/time/format/PeriodFormatterBuilder;
            areturn
        end local 2 // java.lang.String[] prefixes
        end local 1 // java.lang.String[] regularExpressions
        end local 0 // org.joda.time.format.PeriodFormatterBuilder this
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0    4     0                this  Lorg/joda/time/format/PeriodFormatterBuilder;
            0    4     1  regularExpressions  [Ljava/lang/String;
            0    4     2            prefixes  [Ljava/lang/String;
    MethodParameters:
                    Name  Flags
      regularExpressions  
      prefixes            

  private org.joda.time.format.PeriodFormatterBuilder appendPrefix(org.joda.time.format.PeriodFormatterBuilder$PeriodFieldAffix);
    descriptor: (Lorg/joda/time/format/PeriodFormatterBuilder$PeriodFieldAffix;)Lorg/joda/time/format/PeriodFormatterBuilder;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // org.joda.time.format.PeriodFormatterBuilder this
        start local 1 // org.joda.time.format.PeriodFormatterBuilder$PeriodFieldAffix prefix
         0: .line 433
            aload 1 /* prefix */
            ifnonnull 2
         1: .line 434
            new java.lang.IllegalArgumentException
            dup
            invokespecial java.lang.IllegalArgumentException.<init>:()V
            athrow
         2: .line 436
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.joda.time.format.PeriodFormatterBuilder.iPrefix:Lorg/joda/time/format/PeriodFormatterBuilder$PeriodFieldAffix;
            ifnull 4
         3: .line 437
            new org.joda.time.format.PeriodFormatterBuilder$CompositeAffix
            dup
            aload 0 /* this */
            getfield org.joda.time.format.PeriodFormatterBuilder.iPrefix:Lorg/joda/time/format/PeriodFormatterBuilder$PeriodFieldAffix;
            aload 1 /* prefix */
            invokespecial org.joda.time.format.PeriodFormatterBuilder$CompositeAffix.<init>:(Lorg/joda/time/format/PeriodFormatterBuilder$PeriodFieldAffix;Lorg/joda/time/format/PeriodFormatterBuilder$PeriodFieldAffix;)V
            astore 1 /* prefix */
         4: .line 439
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* prefix */
            putfield org.joda.time.format.PeriodFormatterBuilder.iPrefix:Lorg/joda/time/format/PeriodFormatterBuilder$PeriodFieldAffix;
         5: .line 440
            aload 0 /* this */
            areturn
        end local 1 // org.joda.time.format.PeriodFormatterBuilder$PeriodFieldAffix prefix
        end local 0 // org.joda.time.format.PeriodFormatterBuilder this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    6     0    this  Lorg/joda/time/format/PeriodFormatterBuilder;
            0    6     1  prefix  Lorg/joda/time/format/PeriodFormatterBuilder$PeriodFieldAffix;
    MethodParameters:
        Name  Flags
      prefix  

  public org.joda.time.format.PeriodFormatterBuilder appendYears();
    descriptor: ()Lorg/joda/time/format/PeriodFormatterBuilder;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.joda.time.format.PeriodFormatterBuilder this
         0: .line 453
            aload 0 /* this */
            iconst_0
            invokevirtual org.joda.time.format.PeriodFormatterBuilder.appendField:(I)V
         1: .line 454
            aload 0 /* this */
            areturn
        end local 0 // org.joda.time.format.PeriodFormatterBuilder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/joda/time/format/PeriodFormatterBuilder;

  public org.joda.time.format.PeriodFormatterBuilder appendMonths();
    descriptor: ()Lorg/joda/time/format/PeriodFormatterBuilder;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.joda.time.format.PeriodFormatterBuilder this
         0: .line 466
            aload 0 /* this */
            iconst_1
            invokevirtual org.joda.time.format.PeriodFormatterBuilder.appendField:(I)V
         1: .line 467
            aload 0 /* this */
            areturn
        end local 0 // org.joda.time.format.PeriodFormatterBuilder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/joda/time/format/PeriodFormatterBuilder;

  public org.joda.time.format.PeriodFormatterBuilder appendWeeks();
    descriptor: ()Lorg/joda/time/format/PeriodFormatterBuilder;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.joda.time.format.PeriodFormatterBuilder this
         0: .line 479
            aload 0 /* this */
            iconst_2
            invokevirtual org.joda.time.format.PeriodFormatterBuilder.appendField:(I)V
         1: .line 480
            aload 0 /* this */
            areturn
        end local 0 // org.joda.time.format.PeriodFormatterBuilder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/joda/time/format/PeriodFormatterBuilder;

  public org.joda.time.format.PeriodFormatterBuilder appendDays();
    descriptor: ()Lorg/joda/time/format/PeriodFormatterBuilder;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.joda.time.format.PeriodFormatterBuilder this
         0: .line 492
            aload 0 /* this */
            iconst_3
            invokevirtual org.joda.time.format.PeriodFormatterBuilder.appendField:(I)V
         1: .line 493
            aload 0 /* this */
            areturn
        end local 0 // org.joda.time.format.PeriodFormatterBuilder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/joda/time/format/PeriodFormatterBuilder;

  public org.joda.time.format.PeriodFormatterBuilder appendHours();
    descriptor: ()Lorg/joda/time/format/PeriodFormatterBuilder;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.joda.time.format.PeriodFormatterBuilder this
         0: .line 505
            aload 0 /* this */
            iconst_4
            invokevirtual org.joda.time.format.PeriodFormatterBuilder.appendField:(I)V
         1: .line 506
            aload 0 /* this */
            areturn
        end local 0 // org.joda.time.format.PeriodFormatterBuilder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/joda/time/format/PeriodFormatterBuilder;

  public org.joda.time.format.PeriodFormatterBuilder appendMinutes();
    descriptor: ()Lorg/joda/time/format/PeriodFormatterBuilder;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.joda.time.format.PeriodFormatterBuilder this
         0: .line 518
            aload 0 /* this */
            iconst_5
            invokevirtual org.joda.time.format.PeriodFormatterBuilder.appendField:(I)V
         1: .line 519
            aload 0 /* this */
            areturn
        end local 0 // org.joda.time.format.PeriodFormatterBuilder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/joda/time/format/PeriodFormatterBuilder;

  public org.joda.time.format.PeriodFormatterBuilder appendSeconds();
    descriptor: ()Lorg/joda/time/format/PeriodFormatterBuilder;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.joda.time.format.PeriodFormatterBuilder this
         0: .line 531
            aload 0 /* this */
            bipush 6
            invokevirtual org.joda.time.format.PeriodFormatterBuilder.appendField:(I)V
         1: .line 532
            aload 0 /* this */
            areturn
        end local 0 // org.joda.time.format.PeriodFormatterBuilder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/joda/time/format/PeriodFormatterBuilder;

  public org.joda.time.format.PeriodFormatterBuilder appendSecondsWithMillis();
    descriptor: ()Lorg/joda/time/format/PeriodFormatterBuilder;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.joda.time.format.PeriodFormatterBuilder this
         0: .line 543
            aload 0 /* this */
            bipush 8
            invokevirtual org.joda.time.format.PeriodFormatterBuilder.appendField:(I)V
         1: .line 544
            aload 0 /* this */
            areturn
        end local 0 // org.joda.time.format.PeriodFormatterBuilder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/joda/time/format/PeriodFormatterBuilder;

  public org.joda.time.format.PeriodFormatterBuilder appendSecondsWithOptionalMillis();
    descriptor: ()Lorg/joda/time/format/PeriodFormatterBuilder;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.joda.time.format.PeriodFormatterBuilder this
         0: .line 555
            aload 0 /* this */
            bipush 9
            invokevirtual org.joda.time.format.PeriodFormatterBuilder.appendField:(I)V
         1: .line 556
            aload 0 /* this */
            areturn
        end local 0 // org.joda.time.format.PeriodFormatterBuilder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/joda/time/format/PeriodFormatterBuilder;

  public org.joda.time.format.PeriodFormatterBuilder appendMillis();
    descriptor: ()Lorg/joda/time/format/PeriodFormatterBuilder;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.joda.time.format.PeriodFormatterBuilder this
         0: .line 568
            aload 0 /* this */
            bipush 7
            invokevirtual org.joda.time.format.PeriodFormatterBuilder.appendField:(I)V
         1: .line 569
            aload 0 /* this */
            areturn
        end local 0 // org.joda.time.format.PeriodFormatterBuilder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/joda/time/format/PeriodFormatterBuilder;

  public org.joda.time.format.PeriodFormatterBuilder appendMillis3Digit();
    descriptor: ()Lorg/joda/time/format/PeriodFormatterBuilder;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.joda.time.format.PeriodFormatterBuilder this
         0: .line 580
            aload 0 /* this */
            bipush 7
            iconst_3
            invokevirtual org.joda.time.format.PeriodFormatterBuilder.appendField:(II)V
         1: .line 581
            aload 0 /* this */
            areturn
        end local 0 // org.joda.time.format.PeriodFormatterBuilder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/joda/time/format/PeriodFormatterBuilder;

  private void appendField(int);
    descriptor: (I)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.joda.time.format.PeriodFormatterBuilder this
        start local 1 // int type
         0: .line 585
            aload 0 /* this */
            iload 1 /* type */
            aload 0 /* this */
            getfield org.joda.time.format.PeriodFormatterBuilder.iMinPrintedDigits:I
            invokevirtual org.joda.time.format.PeriodFormatterBuilder.appendField:(II)V
         1: .line 586
            return
        end local 1 // int type
        end local 0 // org.joda.time.format.PeriodFormatterBuilder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/joda/time/format/PeriodFormatterBuilder;
            0    2     1  type  I
    MethodParameters:
      Name  Flags
      type  

  private void appendField(int, int);
    descriptor: (II)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=10, locals=4, args_size=3
        start local 0 // org.joda.time.format.PeriodFormatterBuilder this
        start local 1 // int type
        start local 2 // int minPrinted
         0: .line 589
            new org.joda.time.format.PeriodFormatterBuilder$FieldFormatter
            dup
            iload 2 /* minPrinted */
            aload 0 /* this */
            getfield org.joda.time.format.PeriodFormatterBuilder.iPrintZeroSetting:I
         1: .line 590
            aload 0 /* this */
            getfield org.joda.time.format.PeriodFormatterBuilder.iMaxParsedDigits:I
            aload 0 /* this */
            getfield org.joda.time.format.PeriodFormatterBuilder.iRejectSignedValues:Z
            iload 1 /* type */
            aload 0 /* this */
            getfield org.joda.time.format.PeriodFormatterBuilder.iFieldFormatters:[Lorg/joda/time/format/PeriodFormatterBuilder$FieldFormatter;
            aload 0 /* this */
            getfield org.joda.time.format.PeriodFormatterBuilder.iPrefix:Lorg/joda/time/format/PeriodFormatterBuilder$PeriodFieldAffix;
            aconst_null
         2: .line 589
            invokespecial org.joda.time.format.PeriodFormatterBuilder$FieldFormatter.<init>:(IIIZI[Lorg/joda/time/format/PeriodFormatterBuilder$FieldFormatter;Lorg/joda/time/format/PeriodFormatterBuilder$PeriodFieldAffix;Lorg/joda/time/format/PeriodFormatterBuilder$PeriodFieldAffix;)V
            astore 3 /* field */
        start local 3 // org.joda.time.format.PeriodFormatterBuilder$FieldFormatter field
         3: .line 591
            aload 0 /* this */
            aload 3 /* field */
            aload 3 /* field */
            invokevirtual org.joda.time.format.PeriodFormatterBuilder.append0:(Lorg/joda/time/format/PeriodPrinter;Lorg/joda/time/format/PeriodParser;)Lorg/joda/time/format/PeriodFormatterBuilder;
            pop
         4: .line 592
            aload 0 /* this */
            getfield org.joda.time.format.PeriodFormatterBuilder.iFieldFormatters:[Lorg/joda/time/format/PeriodFormatterBuilder$FieldFormatter;
            iload 1 /* type */
            aload 3 /* field */
            aastore
         5: .line 593
            aload 0 /* this */
            aconst_null
            putfield org.joda.time.format.PeriodFormatterBuilder.iPrefix:Lorg/joda/time/format/PeriodFormatterBuilder$PeriodFieldAffix;
         6: .line 594
            return
        end local 3 // org.joda.time.format.PeriodFormatterBuilder$FieldFormatter field
        end local 2 // int minPrinted
        end local 1 // int type
        end local 0 // org.joda.time.format.PeriodFormatterBuilder this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    7     0        this  Lorg/joda/time/format/PeriodFormatterBuilder;
            0    7     1        type  I
            0    7     2  minPrinted  I
            3    7     3       field  Lorg/joda/time/format/PeriodFormatterBuilder$FieldFormatter;
    MethodParameters:
            Name  Flags
      type        
      minPrinted  

  public org.joda.time.format.PeriodFormatterBuilder appendSuffix(java.lang.String);
    descriptor: (Ljava/lang/String;)Lorg/joda/time/format/PeriodFormatterBuilder;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // org.joda.time.format.PeriodFormatterBuilder this
        start local 1 // java.lang.String text
         0: .line 607
            aload 1 /* text */
            ifnonnull 2
         1: .line 608
            new java.lang.IllegalArgumentException
            dup
            invokespecial java.lang.IllegalArgumentException.<init>:()V
            athrow
         2: .line 610
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            new org.joda.time.format.PeriodFormatterBuilder$SimpleAffix
            dup
            aload 1 /* text */
            invokespecial org.joda.time.format.PeriodFormatterBuilder$SimpleAffix.<init>:(Ljava/lang/String;)V
            invokevirtual org.joda.time.format.PeriodFormatterBuilder.appendSuffix:(Lorg/joda/time/format/PeriodFormatterBuilder$PeriodFieldAffix;)Lorg/joda/time/format/PeriodFormatterBuilder;
            areturn
        end local 1 // java.lang.String text
        end local 0 // org.joda.time.format.PeriodFormatterBuilder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/joda/time/format/PeriodFormatterBuilder;
            0    3     1  text  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      text  

  public org.joda.time.format.PeriodFormatterBuilder appendSuffix(java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;)Lorg/joda/time/format/PeriodFormatterBuilder;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // org.joda.time.format.PeriodFormatterBuilder this
        start local 1 // java.lang.String singularText
        start local 2 // java.lang.String pluralText
         0: .line 628
            aload 1 /* singularText */
            ifnull 1
            aload 2 /* pluralText */
            ifnonnull 2
         1: .line 629
      StackMap locals:
      StackMap stack:
            new java.lang.IllegalArgumentException
            dup
            invokespecial java.lang.IllegalArgumentException.<init>:()V
            athrow
         2: .line 631
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            new org.joda.time.format.PeriodFormatterBuilder$PluralAffix
            dup
            aload 1 /* singularText */
            aload 2 /* pluralText */
            invokespecial org.joda.time.format.PeriodFormatterBuilder$PluralAffix.<init>:(Ljava/lang/String;Ljava/lang/String;)V
            invokevirtual org.joda.time.format.PeriodFormatterBuilder.appendSuffix:(Lorg/joda/time/format/PeriodFormatterBuilder$PeriodFieldAffix;)Lorg/joda/time/format/PeriodFormatterBuilder;
            areturn
        end local 2 // java.lang.String pluralText
        end local 1 // java.lang.String singularText
        end local 0 // org.joda.time.format.PeriodFormatterBuilder this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    3     0          this  Lorg/joda/time/format/PeriodFormatterBuilder;
            0    3     1  singularText  Ljava/lang/String;
            0    3     2    pluralText  Ljava/lang/String;
    MethodParameters:
              Name  Flags
      singularText  
      pluralText    

  public org.joda.time.format.PeriodFormatterBuilder appendSuffix(java.lang.String[], java.lang.String[]);
    descriptor: ([Ljava/lang/String;[Ljava/lang/String;)Lorg/joda/time/format/PeriodFormatterBuilder;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // org.joda.time.format.PeriodFormatterBuilder this
        start local 1 // java.lang.String[] regularExpressions
        start local 2 // java.lang.String[] suffixes
         0: .line 668
            aload 1 /* regularExpressions */
            ifnull 2
            aload 2 /* suffixes */
            ifnull 2
         1: .line 669
            aload 1 /* regularExpressions */
            arraylength
            iconst_1
            if_icmplt 2
            aload 1 /* regularExpressions */
            arraylength
            aload 2 /* suffixes */
            arraylength
            if_icmpeq 3
         2: .line 670
      StackMap locals:
      StackMap stack:
            new java.lang.IllegalArgumentException
            dup
            invokespecial java.lang.IllegalArgumentException.<init>:()V
            athrow
         3: .line 672
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            new org.joda.time.format.PeriodFormatterBuilder$RegExAffix
            dup
            aload 1 /* regularExpressions */
            aload 2 /* suffixes */
            invokespecial org.joda.time.format.PeriodFormatterBuilder$RegExAffix.<init>:([Ljava/lang/String;[Ljava/lang/String;)V
            invokevirtual org.joda.time.format.PeriodFormatterBuilder.appendSuffix:(Lorg/joda/time/format/PeriodFormatterBuilder$PeriodFieldAffix;)Lorg/joda/time/format/PeriodFormatterBuilder;
            areturn
        end local 2 // java.lang.String[] suffixes
        end local 1 // java.lang.String[] regularExpressions
        end local 0 // org.joda.time.format.PeriodFormatterBuilder this
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0    4     0                this  Lorg/joda/time/format/PeriodFormatterBuilder;
            0    4     1  regularExpressions  [Ljava/lang/String;
            0    4     2            suffixes  [Ljava/lang/String;
    MethodParameters:
                    Name  Flags
      regularExpressions  
      suffixes            

  private org.joda.time.format.PeriodFormatterBuilder appendSuffix(org.joda.time.format.PeriodFormatterBuilder$PeriodFieldAffix);
    descriptor: (Lorg/joda/time/format/PeriodFormatterBuilder$PeriodFieldAffix;)Lorg/joda/time/format/PeriodFormatterBuilder;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=5, args_size=2
        start local 0 // org.joda.time.format.PeriodFormatterBuilder this
        start local 1 // org.joda.time.format.PeriodFormatterBuilder$PeriodFieldAffix suffix
         0: .line 687
            aload 0 /* this */
            getfield org.joda.time.format.PeriodFormatterBuilder.iElementPairs:Ljava/util/List;
            invokeinterface java.util.List.size:()I
            ifle 4
         1: .line 688
            aload 0 /* this */
            getfield org.joda.time.format.PeriodFormatterBuilder.iElementPairs:Ljava/util/List;
            aload 0 /* this */
            getfield org.joda.time.format.PeriodFormatterBuilder.iElementPairs:Ljava/util/List;
            invokeinterface java.util.List.size:()I
            iconst_2
            isub
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            astore 2 /* originalPrinter */
        start local 2 // java.lang.Object originalPrinter
         2: .line 689
            aload 0 /* this */
            getfield org.joda.time.format.PeriodFormatterBuilder.iElementPairs:Ljava/util/List;
            aload 0 /* this */
            getfield org.joda.time.format.PeriodFormatterBuilder.iElementPairs:Ljava/util/List;
            invokeinterface java.util.List.size:()I
            iconst_1
            isub
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            astore 3 /* originalParser */
        start local 3 // java.lang.Object originalParser
         3: .line 690
            goto 6
        end local 3 // java.lang.Object originalParser
        end local 2 // java.lang.Object originalPrinter
         4: .line 691
      StackMap locals:
      StackMap stack:
            aconst_null
            astore 2 /* originalPrinter */
        start local 2 // java.lang.Object originalPrinter
         5: .line 692
            aconst_null
            astore 3 /* originalParser */
        start local 3 // java.lang.Object originalParser
         6: .line 695
      StackMap locals: java.lang.Object java.lang.Object
      StackMap stack:
            aload 2 /* originalPrinter */
            ifnull 9
            aload 3 /* originalParser */
            ifnull 9
         7: .line 696
            aload 2 /* originalPrinter */
            aload 3 /* originalParser */
            if_acmpne 9
         8: .line 697
            aload 2 /* originalPrinter */
            instanceof org.joda.time.format.PeriodFormatterBuilder$FieldFormatter
            ifne 10
         9: .line 698
      StackMap locals:
      StackMap stack:
            new java.lang.IllegalStateException
            dup
            ldc "No field to apply suffix to"
            invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
            athrow
        10: .line 701
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.joda.time.format.PeriodFormatterBuilder.clearPrefix:()V
        11: .line 702
            new org.joda.time.format.PeriodFormatterBuilder$FieldFormatter
            dup
            aload 2 /* originalPrinter */
            checkcast org.joda.time.format.PeriodFormatterBuilder$FieldFormatter
            aload 1 /* suffix */
            invokespecial org.joda.time.format.PeriodFormatterBuilder$FieldFormatter.<init>:(Lorg/joda/time/format/PeriodFormatterBuilder$FieldFormatter;Lorg/joda/time/format/PeriodFormatterBuilder$PeriodFieldAffix;)V
            astore 4 /* newField */
        start local 4 // org.joda.time.format.PeriodFormatterBuilder$FieldFormatter newField
        12: .line 703
            aload 0 /* this */
            getfield org.joda.time.format.PeriodFormatterBuilder.iElementPairs:Ljava/util/List;
            aload 0 /* this */
            getfield org.joda.time.format.PeriodFormatterBuilder.iElementPairs:Ljava/util/List;
            invokeinterface java.util.List.size:()I
            iconst_2
            isub
            aload 4 /* newField */
            invokeinterface java.util.List.set:(ILjava/lang/Object;)Ljava/lang/Object;
            pop
        13: .line 704
            aload 0 /* this */
            getfield org.joda.time.format.PeriodFormatterBuilder.iElementPairs:Ljava/util/List;
            aload 0 /* this */
            getfield org.joda.time.format.PeriodFormatterBuilder.iElementPairs:Ljava/util/List;
            invokeinterface java.util.List.size:()I
            iconst_1
            isub
            aload 4 /* newField */
            invokeinterface java.util.List.set:(ILjava/lang/Object;)Ljava/lang/Object;
            pop
        14: .line 705
            aload 0 /* this */
            getfield org.joda.time.format.PeriodFormatterBuilder.iFieldFormatters:[Lorg/joda/time/format/PeriodFormatterBuilder$FieldFormatter;
            aload 4 /* newField */
            invokevirtual org.joda.time.format.PeriodFormatterBuilder$FieldFormatter.getFieldType:()I
            aload 4 /* newField */
            aastore
        15: .line 707
            aload 0 /* this */
            areturn
        end local 4 // org.joda.time.format.PeriodFormatterBuilder$FieldFormatter newField
        end local 3 // java.lang.Object originalParser
        end local 2 // java.lang.Object originalPrinter
        end local 1 // org.joda.time.format.PeriodFormatterBuilder$PeriodFieldAffix suffix
        end local 0 // org.joda.time.format.PeriodFormatterBuilder this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   16     0             this  Lorg/joda/time/format/PeriodFormatterBuilder;
            0   16     1           suffix  Lorg/joda/time/format/PeriodFormatterBuilder$PeriodFieldAffix;
            2    4     2  originalPrinter  Ljava/lang/Object;
            5   16     2  originalPrinter  Ljava/lang/Object;
            3    4     3   originalParser  Ljava/lang/Object;
            6   16     3   originalParser  Ljava/lang/Object;
           12   16     4         newField  Lorg/joda/time/format/PeriodFormatterBuilder$FieldFormatter;
    MethodParameters:
        Name  Flags
      suffix  

  public org.joda.time.format.PeriodFormatterBuilder appendSeparator(java.lang.String);
    descriptor: (Ljava/lang/String;)Lorg/joda/time/format/PeriodFormatterBuilder;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=2, args_size=2
        start local 0 // org.joda.time.format.PeriodFormatterBuilder this
        start local 1 // java.lang.String text
         0: .line 728
            aload 0 /* this */
            aload 1 /* text */
            aload 1 /* text */
            aconst_null
            iconst_1
            iconst_1
            invokevirtual org.joda.time.format.PeriodFormatterBuilder.appendSeparator:(Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;ZZ)Lorg/joda/time/format/PeriodFormatterBuilder;
            areturn
        end local 1 // java.lang.String text
        end local 0 // org.joda.time.format.PeriodFormatterBuilder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/joda/time/format/PeriodFormatterBuilder;
            0    1     1  text  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      text  

  public org.joda.time.format.PeriodFormatterBuilder appendSeparatorIfFieldsAfter(java.lang.String);
    descriptor: (Ljava/lang/String;)Lorg/joda/time/format/PeriodFormatterBuilder;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=2, args_size=2
        start local 0 // org.joda.time.format.PeriodFormatterBuilder this
        start local 1 // java.lang.String text
         0: .line 748
            aload 0 /* this */
            aload 1 /* text */
            aload 1 /* text */
            aconst_null
            iconst_0
            iconst_1
            invokevirtual org.joda.time.format.PeriodFormatterBuilder.appendSeparator:(Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;ZZ)Lorg/joda/time/format/PeriodFormatterBuilder;
            areturn
        end local 1 // java.lang.String text
        end local 0 // org.joda.time.format.PeriodFormatterBuilder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/joda/time/format/PeriodFormatterBuilder;
            0    1     1  text  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      text  

  public org.joda.time.format.PeriodFormatterBuilder appendSeparatorIfFieldsBefore(java.lang.String);
    descriptor: (Ljava/lang/String;)Lorg/joda/time/format/PeriodFormatterBuilder;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=2, args_size=2
        start local 0 // org.joda.time.format.PeriodFormatterBuilder this
        start local 1 // java.lang.String text
         0: .line 768
            aload 0 /* this */
            aload 1 /* text */
            aload 1 /* text */
            aconst_null
            iconst_1
            iconst_0
            invokevirtual org.joda.time.format.PeriodFormatterBuilder.appendSeparator:(Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;ZZ)Lorg/joda/time/format/PeriodFormatterBuilder;
            areturn
        end local 1 // java.lang.String text
        end local 0 // org.joda.time.format.PeriodFormatterBuilder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/joda/time/format/PeriodFormatterBuilder;
            0    1     1  text  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      text  

  public org.joda.time.format.PeriodFormatterBuilder appendSeparator(java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;)Lorg/joda/time/format/PeriodFormatterBuilder;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=3, args_size=3
        start local 0 // org.joda.time.format.PeriodFormatterBuilder this
        start local 1 // java.lang.String text
        start local 2 // java.lang.String finalText
         0: .line 793
            aload 0 /* this */
            aload 1 /* text */
            aload 2 /* finalText */
            aconst_null
            iconst_1
            iconst_1
            invokevirtual org.joda.time.format.PeriodFormatterBuilder.appendSeparator:(Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;ZZ)Lorg/joda/time/format/PeriodFormatterBuilder;
            areturn
        end local 2 // java.lang.String finalText
        end local 1 // java.lang.String text
        end local 0 // org.joda.time.format.PeriodFormatterBuilder this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    1     0       this  Lorg/joda/time/format/PeriodFormatterBuilder;
            0    1     1       text  Ljava/lang/String;
            0    1     2  finalText  Ljava/lang/String;
    MethodParameters:
           Name  Flags
      text       
      finalText  

  public org.joda.time.format.PeriodFormatterBuilder appendSeparator(java.lang.String, java.lang.String, java.lang.String[]);
    descriptor: (Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;)Lorg/joda/time/format/PeriodFormatterBuilder;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=4, args_size=4
        start local 0 // org.joda.time.format.PeriodFormatterBuilder this
        start local 1 // java.lang.String text
        start local 2 // java.lang.String finalText
        start local 3 // java.lang.String[] variants
         0: .line 820
            aload 0 /* this */
            aload 1 /* text */
            aload 2 /* finalText */
            aload 3 /* variants */
            iconst_1
            iconst_1
            invokevirtual org.joda.time.format.PeriodFormatterBuilder.appendSeparator:(Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;ZZ)Lorg/joda/time/format/PeriodFormatterBuilder;
            areturn
        end local 3 // java.lang.String[] variants
        end local 2 // java.lang.String finalText
        end local 1 // java.lang.String text
        end local 0 // org.joda.time.format.PeriodFormatterBuilder this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    1     0       this  Lorg/joda/time/format/PeriodFormatterBuilder;
            0    1     1       text  Ljava/lang/String;
            0    1     2  finalText  Ljava/lang/String;
            0    1     3   variants  [Ljava/lang/String;
    MethodParameters:
           Name  Flags
      text       
      finalText  
      variants   

  private org.joda.time.format.PeriodFormatterBuilder appendSeparator(java.lang.String, java.lang.String, java.lang.String[], boolean, boolean);
    descriptor: (Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;ZZ)Lorg/joda/time/format/PeriodFormatterBuilder;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=9, locals=11, args_size=6
        start local 0 // org.joda.time.format.PeriodFormatterBuilder this
        start local 1 // java.lang.String text
        start local 2 // java.lang.String finalText
        start local 3 // java.lang.String[] variants
        start local 4 // boolean useBefore
        start local 5 // boolean useAfter
         0: .line 826
            aload 1 /* text */
            ifnull 1
            aload 2 /* finalText */
            ifnonnull 2
         1: .line 827
      StackMap locals:
      StackMap stack:
            new java.lang.IllegalArgumentException
            dup
            invokespecial java.lang.IllegalArgumentException.<init>:()V
            athrow
         2: .line 830
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.joda.time.format.PeriodFormatterBuilder.clearPrefix:()V
         3: .line 833
            aload 0 /* this */
            getfield org.joda.time.format.PeriodFormatterBuilder.iElementPairs:Ljava/util/List;
            astore 6 /* pairs */
        start local 6 // java.util.List pairs
         4: .line 834
            aload 6 /* pairs */
            invokeinterface java.util.List.size:()I
            ifne 12
         5: .line 835
            iload 5 /* useAfter */
            ifeq 11
            iload 4 /* useBefore */
            ifne 11
         6: .line 836
            new org.joda.time.format.PeriodFormatterBuilder$Separator
            dup
         7: .line 837
            aload 1 /* text */
            aload 2 /* finalText */
            aload 3 /* variants */
         8: .line 838
            getstatic org.joda.time.format.PeriodFormatterBuilder$Literal.EMPTY:Lorg/joda/time/format/PeriodFormatterBuilder$Literal;
            getstatic org.joda.time.format.PeriodFormatterBuilder$Literal.EMPTY:Lorg/joda/time/format/PeriodFormatterBuilder$Literal;
            iload 4 /* useBefore */
            iload 5 /* useAfter */
         9: .line 836
            invokespecial org.joda.time.format.PeriodFormatterBuilder$Separator.<init>:(Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;Lorg/joda/time/format/PeriodPrinter;Lorg/joda/time/format/PeriodParser;ZZ)V
            astore 7 /* separator */
        start local 7 // org.joda.time.format.PeriodFormatterBuilder$Separator separator
        10: .line 839
            aload 0 /* this */
            aload 7 /* separator */
            aload 7 /* separator */
            invokevirtual org.joda.time.format.PeriodFormatterBuilder.append0:(Lorg/joda/time/format/PeriodPrinter;Lorg/joda/time/format/PeriodParser;)Lorg/joda/time/format/PeriodFormatterBuilder;
            pop
        end local 7 // org.joda.time.format.PeriodFormatterBuilder$Separator separator
        11: .line 841
      StackMap locals: java.util.List
      StackMap stack:
            aload 0 /* this */
            areturn
        12: .line 846
      StackMap locals:
      StackMap stack:
            aconst_null
            astore 8 /* lastSeparator */
        start local 8 // org.joda.time.format.PeriodFormatterBuilder$Separator lastSeparator
        13: .line 847
            aload 6 /* pairs */
            invokeinterface java.util.List.size:()I
            istore 7 /* i */
        start local 7 // int i
        14: goto 20
        15: .line 848
      StackMap locals: int org.joda.time.format.PeriodFormatterBuilder$Separator
      StackMap stack:
            aload 6 /* pairs */
            iload 7 /* i */
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            instanceof org.joda.time.format.PeriodFormatterBuilder$Separator
            ifeq 19
        16: .line 849
            aload 6 /* pairs */
            iload 7 /* i */
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast org.joda.time.format.PeriodFormatterBuilder$Separator
            astore 8 /* lastSeparator */
        17: .line 850
            aload 6 /* pairs */
            iload 7 /* i */
            iconst_1
            iadd
            aload 6 /* pairs */
            invokeinterface java.util.List.size:()I
            invokeinterface java.util.List.subList:(II)Ljava/util/List;
            astore 6 /* pairs */
        18: .line 851
            goto 21
        19: .line 853
      StackMap locals:
      StackMap stack:
            iinc 7 /* i */ -1
        20: .line 847
      StackMap locals:
      StackMap stack:
            iinc 7 /* i */ -1
            iload 7 /* i */
            ifge 15
        21: .line 857
      StackMap locals:
      StackMap stack:
            aload 8 /* lastSeparator */
            ifnull 23
            aload 6 /* pairs */
            invokeinterface java.util.List.size:()I
            ifne 23
        22: .line 858
            new java.lang.IllegalStateException
            dup
            ldc "Cannot have two adjacent separators"
            invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
            athrow
        23: .line 860
      StackMap locals:
      StackMap stack:
            aload 6 /* pairs */
            invokestatic org.joda.time.format.PeriodFormatterBuilder.createComposite:(Ljava/util/List;)[Ljava/lang/Object;
            astore 9 /* comp */
        start local 9 // java.lang.Object[] comp
        24: .line 861
            aload 6 /* pairs */
            invokeinterface java.util.List.clear:()V
        25: .line 862
            new org.joda.time.format.PeriodFormatterBuilder$Separator
            dup
        26: .line 863
            aload 1 /* text */
            aload 2 /* finalText */
            aload 3 /* variants */
        27: .line 864
            aload 9 /* comp */
            iconst_0
            aaload
            checkcast org.joda.time.format.PeriodPrinter
            aload 9 /* comp */
            iconst_1
            aaload
            checkcast org.joda.time.format.PeriodParser
        28: .line 865
            iload 4 /* useBefore */
            iload 5 /* useAfter */
        29: .line 862
            invokespecial org.joda.time.format.PeriodFormatterBuilder$Separator.<init>:(Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;Lorg/joda/time/format/PeriodPrinter;Lorg/joda/time/format/PeriodParser;ZZ)V
            astore 10 /* separator */
        start local 10 // org.joda.time.format.PeriodFormatterBuilder$Separator separator
        30: .line 866
            aload 6 /* pairs */
            aload 10 /* separator */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        31: .line 867
            aload 6 /* pairs */
            aload 10 /* separator */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        end local 10 // org.joda.time.format.PeriodFormatterBuilder$Separator separator
        end local 9 // java.lang.Object[] comp
        32: .line 870
            aload 0 /* this */
            areturn
        end local 8 // org.joda.time.format.PeriodFormatterBuilder$Separator lastSeparator
        end local 7 // int i
        end local 6 // java.util.List pairs
        end local 5 // boolean useAfter
        end local 4 // boolean useBefore
        end local 3 // java.lang.String[] variants
        end local 2 // java.lang.String finalText
        end local 1 // java.lang.String text
        end local 0 // org.joda.time.format.PeriodFormatterBuilder this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   33     0           this  Lorg/joda/time/format/PeriodFormatterBuilder;
            0   33     1           text  Ljava/lang/String;
            0   33     2      finalText  Ljava/lang/String;
            0   33     3       variants  [Ljava/lang/String;
            0   33     4      useBefore  Z
            0   33     5       useAfter  Z
            4   33     6          pairs  Ljava/util/List<Ljava/lang/Object;>;
           10   11     7      separator  Lorg/joda/time/format/PeriodFormatterBuilder$Separator;
           14   33     7              i  I
           13   33     8  lastSeparator  Lorg/joda/time/format/PeriodFormatterBuilder$Separator;
           24   32     9           comp  [Ljava/lang/Object;
           30   32    10      separator  Lorg/joda/time/format/PeriodFormatterBuilder$Separator;
    MethodParameters:
           Name  Flags
      text       
      finalText  
      variants   
      useBefore  
      useAfter   

  private void clearPrefix();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.joda.time.format.PeriodFormatterBuilder this
         0: .line 875
            aload 0 /* this */
            getfield org.joda.time.format.PeriodFormatterBuilder.iPrefix:Lorg/joda/time/format/PeriodFormatterBuilder$PeriodFieldAffix;
            ifnull 2
         1: .line 876
            new java.lang.IllegalStateException
            dup
            ldc "Prefix not followed by field"
            invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 878
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aconst_null
            putfield org.joda.time.format.PeriodFormatterBuilder.iPrefix:Lorg/joda/time/format/PeriodFormatterBuilder$PeriodFieldAffix;
         3: .line 879
            return
        end local 0 // org.joda.time.format.PeriodFormatterBuilder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lorg/joda/time/format/PeriodFormatterBuilder;
    Exceptions:
      throws java.lang.IllegalStateException

  private org.joda.time.format.PeriodFormatterBuilder append0(org.joda.time.format.PeriodPrinter, org.joda.time.format.PeriodParser);
    descriptor: (Lorg/joda/time/format/PeriodPrinter;Lorg/joda/time/format/PeriodParser;)Lorg/joda/time/format/PeriodFormatterBuilder;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.joda.time.format.PeriodFormatterBuilder this
        start local 1 // org.joda.time.format.PeriodPrinter printer
        start local 2 // org.joda.time.format.PeriodParser parser
         0: .line 882
            aload 0 /* this */
            getfield org.joda.time.format.PeriodFormatterBuilder.iElementPairs:Ljava/util/List;
            aload 1 /* printer */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
         1: .line 883
            aload 0 /* this */
            getfield org.joda.time.format.PeriodFormatterBuilder.iElementPairs:Ljava/util/List;
            aload 2 /* parser */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
         2: .line 884
            aload 0 /* this */
            dup
            getfield org.joda.time.format.PeriodFormatterBuilder.iNotPrinter:Z
            aload 1 /* printer */
            ifnonnull 3
            iconst_1
            goto 4
      StackMap locals: org.joda.time.format.PeriodFormatterBuilder org.joda.time.format.PeriodPrinter org.joda.time.format.PeriodParser
      StackMap stack: org.joda.time.format.PeriodFormatterBuilder int
         3: iconst_0
      StackMap locals: org.joda.time.format.PeriodFormatterBuilder org.joda.time.format.PeriodPrinter org.joda.time.format.PeriodParser
      StackMap stack: org.joda.time.format.PeriodFormatterBuilder int int
         4: ior
            putfield org.joda.time.format.PeriodFormatterBuilder.iNotPrinter:Z
         5: .line 885
            aload 0 /* this */
            dup
            getfield org.joda.time.format.PeriodFormatterBuilder.iNotParser:Z
            aload 2 /* parser */
            ifnonnull 6
            iconst_1
            goto 7
      StackMap locals: org.joda.time.format.PeriodFormatterBuilder org.joda.time.format.PeriodPrinter org.joda.time.format.PeriodParser
      StackMap stack: org.joda.time.format.PeriodFormatterBuilder int
         6: iconst_0
      StackMap locals: org.joda.time.format.PeriodFormatterBuilder org.joda.time.format.PeriodPrinter org.joda.time.format.PeriodParser
      StackMap stack: org.joda.time.format.PeriodFormatterBuilder int int
         7: ior
            putfield org.joda.time.format.PeriodFormatterBuilder.iNotParser:Z
         8: .line 886
            aload 0 /* this */
            areturn
        end local 2 // org.joda.time.format.PeriodParser parser
        end local 1 // org.joda.time.format.PeriodPrinter printer
        end local 0 // org.joda.time.format.PeriodFormatterBuilder this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    9     0     this  Lorg/joda/time/format/PeriodFormatterBuilder;
            0    9     1  printer  Lorg/joda/time/format/PeriodPrinter;
            0    9     2   parser  Lorg/joda/time/format/PeriodParser;
    MethodParameters:
         Name  Flags
      printer  
      parser   

  private static org.joda.time.format.PeriodFormatter toFormatter(java.util.List<java.lang.Object>, boolean, boolean);
    descriptor: (Ljava/util/List;ZZ)Lorg/joda/time/format/PeriodFormatter;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=5, locals=6, args_size=3
        start local 0 // java.util.List elementPairs
        start local 1 // boolean notPrinter
        start local 2 // boolean notParser
         0: .line 891
            iload 1 /* notPrinter */
            ifeq 2
            iload 2 /* notParser */
            ifeq 2
         1: .line 892
            new java.lang.IllegalStateException
            dup
            ldc "Builder has created neither a printer nor a parser"
            invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 894
      StackMap locals:
      StackMap stack:
            aload 0 /* elementPairs */
            invokeinterface java.util.List.size:()I
            istore 3 /* size */
        start local 3 // int size
         3: .line 895
            iload 3 /* size */
            iconst_2
            if_icmplt 9
            aload 0 /* elementPairs */
            iconst_0
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            instanceof org.joda.time.format.PeriodFormatterBuilder$Separator
            ifeq 9
         4: .line 896
            aload 0 /* elementPairs */
            iconst_0
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast org.joda.time.format.PeriodFormatterBuilder$Separator
            astore 4 /* sep */
        start local 4 // org.joda.time.format.PeriodFormatterBuilder$Separator sep
         5: .line 897
            aload 4 /* sep */
            getfield org.joda.time.format.PeriodFormatterBuilder$Separator.iAfterParser:Lorg/joda/time/format/PeriodParser;
            ifnonnull 9
            aload 4 /* sep */
            getfield org.joda.time.format.PeriodFormatterBuilder$Separator.iAfterPrinter:Lorg/joda/time/format/PeriodPrinter;
            ifnonnull 9
         6: .line 898
            aload 0 /* elementPairs */
            iconst_2
            iload 3 /* size */
            invokeinterface java.util.List.subList:(II)Ljava/util/List;
            iload 1 /* notPrinter */
            iload 2 /* notParser */
            invokestatic org.joda.time.format.PeriodFormatterBuilder.toFormatter:(Ljava/util/List;ZZ)Lorg/joda/time/format/PeriodFormatter;
            astore 5 /* f */
        start local 5 // org.joda.time.format.PeriodFormatter f
         7: .line 899
            aload 4 /* sep */
            aload 5 /* f */
            invokevirtual org.joda.time.format.PeriodFormatter.getPrinter:()Lorg/joda/time/format/PeriodPrinter;
            aload 5 /* f */
            invokevirtual org.joda.time.format.PeriodFormatter.getParser:()Lorg/joda/time/format/PeriodParser;
            invokevirtual org.joda.time.format.PeriodFormatterBuilder$Separator.finish:(Lorg/joda/time/format/PeriodPrinter;Lorg/joda/time/format/PeriodParser;)Lorg/joda/time/format/PeriodFormatterBuilder$Separator;
            astore 4 /* sep */
         8: .line 900
            new org.joda.time.format.PeriodFormatter
            dup
            aload 4 /* sep */
            aload 4 /* sep */
            invokespecial org.joda.time.format.PeriodFormatter.<init>:(Lorg/joda/time/format/PeriodPrinter;Lorg/joda/time/format/PeriodParser;)V
            areturn
        end local 5 // org.joda.time.format.PeriodFormatter f
        end local 4 // org.joda.time.format.PeriodFormatterBuilder$Separator sep
         9: .line 903
      StackMap locals: int
      StackMap stack:
            aload 0 /* elementPairs */
            invokestatic org.joda.time.format.PeriodFormatterBuilder.createComposite:(Ljava/util/List;)[Ljava/lang/Object;
            astore 4 /* comp */
        start local 4 // java.lang.Object[] comp
        10: .line 904
            iload 1 /* notPrinter */
            ifeq 12
        11: .line 905
            new org.joda.time.format.PeriodFormatter
            dup
            aconst_null
            aload 4 /* comp */
            iconst_1
            aaload
            checkcast org.joda.time.format.PeriodParser
            invokespecial org.joda.time.format.PeriodFormatter.<init>:(Lorg/joda/time/format/PeriodPrinter;Lorg/joda/time/format/PeriodParser;)V
            areturn
        12: .line 906
      StackMap locals: java.lang.Object[]
      StackMap stack:
            iload 2 /* notParser */
            ifeq 14
        13: .line 907
            new org.joda.time.format.PeriodFormatter
            dup
            aload 4 /* comp */
            iconst_0
            aaload
            checkcast org.joda.time.format.PeriodPrinter
            aconst_null
            invokespecial org.joda.time.format.PeriodFormatter.<init>:(Lorg/joda/time/format/PeriodPrinter;Lorg/joda/time/format/PeriodParser;)V
            areturn
        14: .line 909
      StackMap locals:
      StackMap stack:
            new org.joda.time.format.PeriodFormatter
            dup
            aload 4 /* comp */
            iconst_0
            aaload
            checkcast org.joda.time.format.PeriodPrinter
            aload 4 /* comp */
            iconst_1
            aaload
            checkcast org.joda.time.format.PeriodParser
            invokespecial org.joda.time.format.PeriodFormatter.<init>:(Lorg/joda/time/format/PeriodPrinter;Lorg/joda/time/format/PeriodParser;)V
            areturn
        end local 4 // java.lang.Object[] comp
        end local 3 // int size
        end local 2 // boolean notParser
        end local 1 // boolean notPrinter
        end local 0 // java.util.List elementPairs
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   15     0  elementPairs  Ljava/util/List<Ljava/lang/Object;>;
            0   15     1    notPrinter  Z
            0   15     2     notParser  Z
            3   15     3          size  I
            5    9     4           sep  Lorg/joda/time/format/PeriodFormatterBuilder$Separator;
            7    9     5             f  Lorg/joda/time/format/PeriodFormatter;
           10   15     4          comp  [Ljava/lang/Object;
    Signature: (Ljava/util/List<Ljava/lang/Object;>;ZZ)Lorg/joda/time/format/PeriodFormatter;
    MethodParameters:
              Name  Flags
      elementPairs  
      notPrinter    
      notParser     

  private static [] createComposite(java.util.List<java.lang.Object>);
    descriptor: (Ljava/util/List;)[Ljava/lang/Object;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=5, locals=2, args_size=1
        start local 0 // java.util.List elementPairs
         0: .line 914
            aload 0 /* elementPairs */
            invokeinterface java.util.List.size:()I
            tableswitch { // 0 - 1
                    0: 1
                    1: 2
              default: 3
          }
         1: .line 916
      StackMap locals:
      StackMap stack:
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
            getstatic org.joda.time.format.PeriodFormatterBuilder$Literal.EMPTY:Lorg/joda/time/format/PeriodFormatterBuilder$Literal;
            aastore
            dup
            iconst_1
            getstatic org.joda.time.format.PeriodFormatterBuilder$Literal.EMPTY:Lorg/joda/time/format/PeriodFormatterBuilder$Literal;
            aastore
            areturn
         2: .line 918
      StackMap locals:
      StackMap stack:
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
            aload 0 /* elementPairs */
            iconst_0
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            aastore
            dup
            iconst_1
            aload 0 /* elementPairs */
            iconst_1
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            aastore
            areturn
         3: .line 920
      StackMap locals:
      StackMap stack:
            new org.joda.time.format.PeriodFormatterBuilder$Composite
            dup
            aload 0 /* elementPairs */
            invokespecial org.joda.time.format.PeriodFormatterBuilder$Composite.<init>:(Ljava/util/List;)V
            astore 1 /* comp */
        start local 1 // org.joda.time.format.PeriodFormatterBuilder$Composite comp
         4: .line 921
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
            aload 1 /* comp */
            aastore
            dup
            iconst_1
            aload 1 /* comp */
            aastore
            areturn
        end local 1 // org.joda.time.format.PeriodFormatterBuilder$Composite comp
        end local 0 // java.util.List elementPairs
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    5     0  elementPairs  Ljava/util/List<Ljava/lang/Object;>;
            4    5     1          comp  Lorg/joda/time/format/PeriodFormatterBuilder$Composite;
    Signature: (Ljava/util/List<Ljava/lang/Object;>;)[Ljava/lang/Object;
    MethodParameters:
              Name  Flags
      elementPairs  
}
SourceFile: "PeriodFormatterBuilder.java"
NestMembers:
  org.joda.time.format.PeriodFormatterBuilder$Composite  org.joda.time.format.PeriodFormatterBuilder$CompositeAffix  org.joda.time.format.PeriodFormatterBuilder$FieldFormatter  org.joda.time.format.PeriodFormatterBuilder$IgnorableAffix  org.joda.time.format.PeriodFormatterBuilder$Literal  org.joda.time.format.PeriodFormatterBuilder$PeriodFieldAffix  org.joda.time.format.PeriodFormatterBuilder$PluralAffix  org.joda.time.format.PeriodFormatterBuilder$RegExAffix  org.joda.time.format.PeriodFormatterBuilder$RegExAffix$1  org.joda.time.format.PeriodFormatterBuilder$Separator  org.joda.time.format.PeriodFormatterBuilder$SimpleAffix
InnerClasses:
  Composite = org.joda.time.format.PeriodFormatterBuilder$Composite of org.joda.time.format.PeriodFormatterBuilder
  CompositeAffix = org.joda.time.format.PeriodFormatterBuilder$CompositeAffix of org.joda.time.format.PeriodFormatterBuilder
  FieldFormatter = org.joda.time.format.PeriodFormatterBuilder$FieldFormatter of org.joda.time.format.PeriodFormatterBuilder
  abstract IgnorableAffix = org.joda.time.format.PeriodFormatterBuilder$IgnorableAffix of org.joda.time.format.PeriodFormatterBuilder
  Literal = org.joda.time.format.PeriodFormatterBuilder$Literal of org.joda.time.format.PeriodFormatterBuilder
  abstract PeriodFieldAffix = org.joda.time.format.PeriodFormatterBuilder$PeriodFieldAffix of org.joda.time.format.PeriodFormatterBuilder
  PluralAffix = org.joda.time.format.PeriodFormatterBuilder$PluralAffix of org.joda.time.format.PeriodFormatterBuilder
  RegExAffix = org.joda.time.format.PeriodFormatterBuilder$RegExAffix of org.joda.time.format.PeriodFormatterBuilder
  Separator = org.joda.time.format.PeriodFormatterBuilder$Separator of org.joda.time.format.PeriodFormatterBuilder
  SimpleAffix = org.joda.time.format.PeriodFormatterBuilder$SimpleAffix of org.joda.time.format.PeriodFormatterBuilder