class org.joda.time.format.DateTimeFormatterBuilder$TimeZoneOffset implements org.joda.time.format.InternalPrinter, org.joda.time.format.InternalParser
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: org.joda.time.format.DateTimeFormatterBuilder$TimeZoneOffset
  super_class: java.lang.Object
{
  private final java.lang.String iZeroOffsetPrintText;
    descriptor: Ljava/lang/String;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

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

  private final boolean iShowSeparators;
    descriptor: Z
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final int iMinFields;
    descriptor: I
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final int iMaxFields;
    descriptor: I
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  void <init>(java.lang.String, java.lang.String, boolean, int, int);
    descriptor: (Ljava/lang/String;Ljava/lang/String;ZII)V
    flags: (0x0000) 
    Code:
      stack=2, locals=6, args_size=6
        start local 0 // org.joda.time.format.DateTimeFormatterBuilder$TimeZoneOffset this
        start local 1 // java.lang.String zeroOffsetPrintText
        start local 2 // java.lang.String zeroOffsetParseText
        start local 3 // boolean showSeparators
        start local 4 // int minFields
        start local 5 // int maxFields
         0: .line 1965
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 1966
            aload 0 /* this */
            aload 1 /* zeroOffsetPrintText */
            putfield org.joda.time.format.DateTimeFormatterBuilder$TimeZoneOffset.iZeroOffsetPrintText:Ljava/lang/String;
         2: .line 1967
            aload 0 /* this */
            aload 2 /* zeroOffsetParseText */
            putfield org.joda.time.format.DateTimeFormatterBuilder$TimeZoneOffset.iZeroOffsetParseText:Ljava/lang/String;
         3: .line 1968
            aload 0 /* this */
            iload 3 /* showSeparators */
            putfield org.joda.time.format.DateTimeFormatterBuilder$TimeZoneOffset.iShowSeparators:Z
         4: .line 1969
            iload 4 /* minFields */
            ifle 5
            iload 5 /* maxFields */
            iload 4 /* minFields */
            if_icmpge 6
         5: .line 1970
      StackMap locals: org.joda.time.format.DateTimeFormatterBuilder$TimeZoneOffset java.lang.String java.lang.String int int int
      StackMap stack:
            new java.lang.IllegalArgumentException
            dup
            invokespecial java.lang.IllegalArgumentException.<init>:()V
            athrow
         6: .line 1972
      StackMap locals:
      StackMap stack:
            iload 4 /* minFields */
            iconst_4
            if_icmple 9
         7: .line 1973
            iconst_4
            istore 4 /* minFields */
         8: .line 1974
            iconst_4
            istore 5 /* maxFields */
         9: .line 1976
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 4 /* minFields */
            putfield org.joda.time.format.DateTimeFormatterBuilder$TimeZoneOffset.iMinFields:I
        10: .line 1977
            aload 0 /* this */
            iload 5 /* maxFields */
            putfield org.joda.time.format.DateTimeFormatterBuilder$TimeZoneOffset.iMaxFields:I
        11: .line 1978
            return
        end local 5 // int maxFields
        end local 4 // int minFields
        end local 3 // boolean showSeparators
        end local 2 // java.lang.String zeroOffsetParseText
        end local 1 // java.lang.String zeroOffsetPrintText
        end local 0 // org.joda.time.format.DateTimeFormatterBuilder$TimeZoneOffset this
      LocalVariableTable:
        Start  End  Slot                 Name  Signature
            0   12     0                 this  Lorg/joda/time/format/DateTimeFormatterBuilder$TimeZoneOffset;
            0   12     1  zeroOffsetPrintText  Ljava/lang/String;
            0   12     2  zeroOffsetParseText  Ljava/lang/String;
            0   12     3       showSeparators  Z
            0   12     4            minFields  I
            0   12     5            maxFields  I
    MethodParameters:
                     Name  Flags
      zeroOffsetPrintText  
      zeroOffsetParseText  
      showSeparators       
      minFields            
      maxFields            

  public int estimatePrintedLength();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=1
        start local 0 // org.joda.time.format.DateTimeFormatterBuilder$TimeZoneOffset this
         0: .line 1981
            iconst_1
            aload 0 /* this */
            getfield org.joda.time.format.DateTimeFormatterBuilder$TimeZoneOffset.iMinFields:I
            iadd
            iconst_1
            ishl
            istore 1 /* est */
        start local 1 // int est
         1: .line 1982
            aload 0 /* this */
            getfield org.joda.time.format.DateTimeFormatterBuilder$TimeZoneOffset.iShowSeparators:Z
            ifeq 3
         2: .line 1983
            iload 1 /* est */
            aload 0 /* this */
            getfield org.joda.time.format.DateTimeFormatterBuilder$TimeZoneOffset.iMinFields:I
            iconst_1
            isub
            iadd
            istore 1 /* est */
         3: .line 1985
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield org.joda.time.format.DateTimeFormatterBuilder$TimeZoneOffset.iZeroOffsetPrintText:Ljava/lang/String;
            ifnull 5
            aload 0 /* this */
            getfield org.joda.time.format.DateTimeFormatterBuilder$TimeZoneOffset.iZeroOffsetPrintText:Ljava/lang/String;
            invokevirtual java.lang.String.length:()I
            iload 1 /* est */
            if_icmple 5
         4: .line 1986
            aload 0 /* this */
            getfield org.joda.time.format.DateTimeFormatterBuilder$TimeZoneOffset.iZeroOffsetPrintText:Ljava/lang/String;
            invokevirtual java.lang.String.length:()I
            istore 1 /* est */
         5: .line 1988
      StackMap locals:
      StackMap stack:
            iload 1 /* est */
            ireturn
        end local 1 // int est
        end local 0 // org.joda.time.format.DateTimeFormatterBuilder$TimeZoneOffset this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0  this  Lorg/joda/time/format/DateTimeFormatterBuilder$TimeZoneOffset;
            1    6     1   est  I

  public void printTo(java.lang.Appendable, long, org.joda.time.Chronology, int, org.joda.time.DateTimeZone, java.util.Locale);
    descriptor: (Ljava/lang/Appendable;JLorg/joda/time/Chronology;ILorg/joda/time/DateTimeZone;Ljava/util/Locale;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=11, args_size=7
        start local 0 // org.joda.time.format.DateTimeFormatterBuilder$TimeZoneOffset this
        start local 1 // java.lang.Appendable buf
        start local 2 // long instant
        start local 4 // org.joda.time.Chronology chrono
        start local 5 // int displayOffset
        start local 6 // org.joda.time.DateTimeZone displayZone
        start local 7 // java.util.Locale locale
         0: .line 1994
            aload 6 /* displayZone */
            ifnonnull 2
         1: .line 1995
            return
         2: .line 1997
      StackMap locals:
      StackMap stack:
            iload 5 /* displayOffset */
            ifne 5
            aload 0 /* this */
            getfield org.joda.time.format.DateTimeFormatterBuilder$TimeZoneOffset.iZeroOffsetPrintText:Ljava/lang/String;
            ifnull 5
         3: .line 1998
            aload 1 /* buf */
            aload 0 /* this */
            getfield org.joda.time.format.DateTimeFormatterBuilder$TimeZoneOffset.iZeroOffsetPrintText:Ljava/lang/String;
            invokeinterface java.lang.Appendable.append:(Ljava/lang/CharSequence;)Ljava/lang/Appendable;
            pop
         4: .line 1999
            return
         5: .line 2001
      StackMap locals:
      StackMap stack:
            iload 5 /* displayOffset */
            iflt 8
         6: .line 2002
            aload 1 /* buf */
            bipush 43
            invokeinterface java.lang.Appendable.append:(C)Ljava/lang/Appendable;
            pop
         7: .line 2003
            goto 10
         8: .line 2004
      StackMap locals:
      StackMap stack:
            aload 1 /* buf */
            bipush 45
            invokeinterface java.lang.Appendable.append:(C)Ljava/lang/Appendable;
            pop
         9: .line 2005
            iload 5 /* displayOffset */
            ineg
            istore 5 /* displayOffset */
        10: .line 2008
      StackMap locals:
      StackMap stack:
            iload 5 /* displayOffset */
            ldc 3600000
            idiv
            istore 8 /* hours */
        start local 8 // int hours
        11: .line 2009
            aload 1 /* buf */
            iload 8 /* hours */
            iconst_2
            invokestatic org.joda.time.format.FormatUtils.appendPaddedInteger:(Ljava/lang/Appendable;II)V
        12: .line 2010
            aload 0 /* this */
            getfield org.joda.time.format.DateTimeFormatterBuilder$TimeZoneOffset.iMaxFields:I
            iconst_1
            if_icmpne 14
        13: .line 2011
            return
        14: .line 2013
      StackMap locals: int
      StackMap stack:
            iload 5 /* displayOffset */
            iload 8 /* hours */
            ldc 3600000
            imul
            isub
            istore 5 /* displayOffset */
        15: .line 2014
            iload 5 /* displayOffset */
            ifne 17
            aload 0 /* this */
            getfield org.joda.time.format.DateTimeFormatterBuilder$TimeZoneOffset.iMinFields:I
            iconst_1
            if_icmpgt 17
        16: .line 2015
            return
        17: .line 2018
      StackMap locals:
      StackMap stack:
            iload 5 /* displayOffset */
            ldc 60000
            idiv
            istore 9 /* minutes */
        start local 9 // int minutes
        18: .line 2019
            aload 0 /* this */
            getfield org.joda.time.format.DateTimeFormatterBuilder$TimeZoneOffset.iShowSeparators:Z
            ifeq 20
        19: .line 2020
            aload 1 /* buf */
            bipush 58
            invokeinterface java.lang.Appendable.append:(C)Ljava/lang/Appendable;
            pop
        20: .line 2022
      StackMap locals: int
      StackMap stack:
            aload 1 /* buf */
            iload 9 /* minutes */
            iconst_2
            invokestatic org.joda.time.format.FormatUtils.appendPaddedInteger:(Ljava/lang/Appendable;II)V
        21: .line 2023
            aload 0 /* this */
            getfield org.joda.time.format.DateTimeFormatterBuilder$TimeZoneOffset.iMaxFields:I
            iconst_2
            if_icmpne 23
        22: .line 2024
            return
        23: .line 2026
      StackMap locals:
      StackMap stack:
            iload 5 /* displayOffset */
            iload 9 /* minutes */
            ldc 60000
            imul
            isub
            istore 5 /* displayOffset */
        24: .line 2027
            iload 5 /* displayOffset */
            ifne 26
            aload 0 /* this */
            getfield org.joda.time.format.DateTimeFormatterBuilder$TimeZoneOffset.iMinFields:I
            iconst_2
            if_icmpgt 26
        25: .line 2028
            return
        26: .line 2031
      StackMap locals:
      StackMap stack:
            iload 5 /* displayOffset */
            sipush 1000
            idiv
            istore 10 /* seconds */
        start local 10 // int seconds
        27: .line 2032
            aload 0 /* this */
            getfield org.joda.time.format.DateTimeFormatterBuilder$TimeZoneOffset.iShowSeparators:Z
            ifeq 29
        28: .line 2033
            aload 1 /* buf */
            bipush 58
            invokeinterface java.lang.Appendable.append:(C)Ljava/lang/Appendable;
            pop
        29: .line 2035
      StackMap locals: int
      StackMap stack:
            aload 1 /* buf */
            iload 10 /* seconds */
            iconst_2
            invokestatic org.joda.time.format.FormatUtils.appendPaddedInteger:(Ljava/lang/Appendable;II)V
        30: .line 2036
            aload 0 /* this */
            getfield org.joda.time.format.DateTimeFormatterBuilder$TimeZoneOffset.iMaxFields:I
            iconst_3
            if_icmpne 32
        31: .line 2037
            return
        32: .line 2039
      StackMap locals:
      StackMap stack:
            iload 5 /* displayOffset */
            iload 10 /* seconds */
            sipush 1000
            imul
            isub
            istore 5 /* displayOffset */
        33: .line 2040
            iload 5 /* displayOffset */
            ifne 35
            aload 0 /* this */
            getfield org.joda.time.format.DateTimeFormatterBuilder$TimeZoneOffset.iMinFields:I
            iconst_3
            if_icmpgt 35
        34: .line 2041
            return
        35: .line 2044
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.joda.time.format.DateTimeFormatterBuilder$TimeZoneOffset.iShowSeparators:Z
            ifeq 37
        36: .line 2045
            aload 1 /* buf */
            bipush 46
            invokeinterface java.lang.Appendable.append:(C)Ljava/lang/Appendable;
            pop
        37: .line 2047
      StackMap locals:
      StackMap stack:
            aload 1 /* buf */
            iload 5 /* displayOffset */
            iconst_3
            invokestatic org.joda.time.format.FormatUtils.appendPaddedInteger:(Ljava/lang/Appendable;II)V
        38: .line 2048
            return
        end local 10 // int seconds
        end local 9 // int minutes
        end local 8 // int hours
        end local 7 // java.util.Locale locale
        end local 6 // org.joda.time.DateTimeZone displayZone
        end local 5 // int displayOffset
        end local 4 // org.joda.time.Chronology chrono
        end local 2 // long instant
        end local 1 // java.lang.Appendable buf
        end local 0 // org.joda.time.format.DateTimeFormatterBuilder$TimeZoneOffset this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   39     0           this  Lorg/joda/time/format/DateTimeFormatterBuilder$TimeZoneOffset;
            0   39     1            buf  Ljava/lang/Appendable;
            0   39     2        instant  J
            0   39     4         chrono  Lorg/joda/time/Chronology;
            0   39     5  displayOffset  I
            0   39     6    displayZone  Lorg/joda/time/DateTimeZone;
            0   39     7         locale  Ljava/util/Locale;
           11   39     8          hours  I
           18   39     9        minutes  I
           27   39    10        seconds  I
    Exceptions:
      throws java.io.IOException
    MethodParameters:
               Name  Flags
      buf            
      instant        
      chrono         
      displayOffset  
      displayZone    
      locale         

  public void printTo(java.lang.Appendable, org.joda.time.ReadablePartial, java.util.Locale);
    descriptor: (Ljava/lang/Appendable;Lorg/joda/time/ReadablePartial;Ljava/util/Locale;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=0, locals=4, args_size=4
        start local 0 // org.joda.time.format.DateTimeFormatterBuilder$TimeZoneOffset this
        start local 1 // java.lang.Appendable appendable
        start local 2 // org.joda.time.ReadablePartial partial
        start local 3 // java.util.Locale locale
         0: .line 2052
            return
        end local 3 // java.util.Locale locale
        end local 2 // org.joda.time.ReadablePartial partial
        end local 1 // java.lang.Appendable appendable
        end local 0 // org.joda.time.format.DateTimeFormatterBuilder$TimeZoneOffset this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    1     0        this  Lorg/joda/time/format/DateTimeFormatterBuilder$TimeZoneOffset;
            0    1     1  appendable  Ljava/lang/Appendable;
            0    1     2     partial  Lorg/joda/time/ReadablePartial;
            0    1     3      locale  Ljava/util/Locale;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
            Name  Flags
      appendable  
      partial     
      locale      

  public int estimateParsedLength();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.joda.time.format.DateTimeFormatterBuilder$TimeZoneOffset this
         0: .line 2055
            aload 0 /* this */
            invokevirtual org.joda.time.format.DateTimeFormatterBuilder$TimeZoneOffset.estimatePrintedLength:()I
            ireturn
        end local 0 // org.joda.time.format.DateTimeFormatterBuilder$TimeZoneOffset this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/joda/time/format/DateTimeFormatterBuilder$TimeZoneOffset;

  public int parseInto(org.joda.time.format.DateTimeParserBucket, java.lang.CharSequence, int);
    descriptor: (Lorg/joda/time/format/DateTimeParserBucket;Ljava/lang/CharSequence;I)I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=13, args_size=4
        start local 0 // org.joda.time.format.DateTimeFormatterBuilder$TimeZoneOffset this
        start local 1 // org.joda.time.format.DateTimeParserBucket bucket
        start local 2 // java.lang.CharSequence text
        start local 3 // int position
         0: .line 2059
            aload 2 /* text */
            invokeinterface java.lang.CharSequence.length:()I
            iload 3 /* position */
            isub
            istore 4 /* limit */
        start local 4 // int limit
         1: .line 2062
            aload 0 /* this */
            getfield org.joda.time.format.DateTimeFormatterBuilder$TimeZoneOffset.iZeroOffsetParseText:Ljava/lang/String;
            ifnull 12
         2: .line 2063
            aload 0 /* this */
            getfield org.joda.time.format.DateTimeFormatterBuilder$TimeZoneOffset.iZeroOffsetParseText:Ljava/lang/String;
            invokevirtual java.lang.String.length:()I
            ifne 9
         3: .line 2065
            iload 4 /* limit */
            ifle 7
         4: .line 2066
            aload 2 /* text */
            iload 3 /* position */
            invokeinterface java.lang.CharSequence.charAt:(I)C
            istore 5 /* c */
        start local 5 // char c
         5: .line 2067
            iload 5 /* c */
            bipush 45
            if_icmpeq 12
            iload 5 /* c */
            bipush 43
            if_icmpne 7
         6: .line 2068
            goto 12
        end local 5 // char c
         7: .line 2071
      StackMap locals: int
      StackMap stack:
            aload 1 /* bucket */
            iconst_0
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            invokevirtual org.joda.time.format.DateTimeParserBucket.setOffset:(Ljava/lang/Integer;)V
         8: .line 2072
            iload 3 /* position */
            ireturn
         9: .line 2074
      StackMap locals:
      StackMap stack:
            aload 2 /* text */
            iload 3 /* position */
            aload 0 /* this */
            getfield org.joda.time.format.DateTimeFormatterBuilder$TimeZoneOffset.iZeroOffsetParseText:Ljava/lang/String;
            invokestatic org.joda.time.format.DateTimeFormatterBuilder.csStartsWithIgnoreCase:(Ljava/lang/CharSequence;ILjava/lang/String;)Z
            ifeq 12
        10: .line 2075
            aload 1 /* bucket */
            iconst_0
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            invokevirtual org.joda.time.format.DateTimeParserBucket.setOffset:(Ljava/lang/Integer;)V
        11: .line 2076
            iload 3 /* position */
            aload 0 /* this */
            getfield org.joda.time.format.DateTimeFormatterBuilder$TimeZoneOffset.iZeroOffsetParseText:Ljava/lang/String;
            invokevirtual java.lang.String.length:()I
            iadd
            ireturn
        12: .line 2082
      StackMap locals:
      StackMap stack:
            iload 4 /* limit */
            iconst_1
            if_icmpgt 14
        13: .line 2083
            iload 3 /* position */
            iconst_m1
            ixor
            ireturn
        14: .line 2087
      StackMap locals:
      StackMap stack:
            aload 2 /* text */
            iload 3 /* position */
            invokeinterface java.lang.CharSequence.charAt:(I)C
            istore 6 /* c */
        start local 6 // char c
        15: .line 2088
            iload 6 /* c */
            bipush 45
            if_icmpne 18
        16: .line 2089
            iconst_1
            istore 5 /* negative */
        start local 5 // boolean negative
        17: .line 2090
            goto 22
        end local 5 // boolean negative
      StackMap locals: org.joda.time.format.DateTimeFormatterBuilder$TimeZoneOffset org.joda.time.format.DateTimeParserBucket java.lang.CharSequence int int top int
      StackMap stack:
        18: iload 6 /* c */
            bipush 43
            if_icmpne 21
        19: .line 2091
            iconst_0
            istore 5 /* negative */
        start local 5 // boolean negative
        20: .line 2092
            goto 22
        end local 5 // boolean negative
        21: .line 2093
      StackMap locals:
      StackMap stack:
            iload 3 /* position */
            iconst_m1
            ixor
            ireturn
        start local 5 // boolean negative
        22: .line 2096
      StackMap locals: org.joda.time.format.DateTimeFormatterBuilder$TimeZoneOffset org.joda.time.format.DateTimeParserBucket java.lang.CharSequence int int int int
      StackMap stack:
            iinc 4 /* limit */ -1
        23: .line 2097
            iinc 3 /* position */ 1
        24: .line 2111
            aload 0 /* this */
            aload 2 /* text */
            iload 3 /* position */
            iconst_2
            invokevirtual org.joda.time.format.DateTimeFormatterBuilder$TimeZoneOffset.digitCount:(Ljava/lang/CharSequence;II)I
            iconst_2
            if_icmpge 26
        25: .line 2113
            iload 3 /* position */
            iconst_m1
            ixor
            ireturn
        26: .line 2118
      StackMap locals:
      StackMap stack:
            aload 2 /* text */
            iload 3 /* position */
            invokestatic org.joda.time.format.FormatUtils.parseTwoDigits:(Ljava/lang/CharSequence;I)I
            istore 8 /* hours */
        start local 8 // int hours
        27: .line 2119
            iload 8 /* hours */
            bipush 23
            if_icmple 29
        28: .line 2120
            iload 3 /* position */
            iconst_m1
            ixor
            ireturn
        29: .line 2122
      StackMap locals: org.joda.time.format.DateTimeFormatterBuilder$TimeZoneOffset org.joda.time.format.DateTimeParserBucket java.lang.CharSequence int int int int top int
      StackMap stack:
            iload 8 /* hours */
            ldc 3600000
            imul
            istore 7 /* offset */
        start local 7 // int offset
        30: .line 2123
            iinc 4 /* limit */ -2
        31: .line 2124
            iinc 3 /* position */ 2
        32: .line 2130
            iload 4 /* limit */
            ifgt 34
        33: .line 2131
            goto 88
        34: .line 2135
      StackMap locals: org.joda.time.format.DateTimeFormatterBuilder$TimeZoneOffset org.joda.time.format.DateTimeParserBucket java.lang.CharSequence int int int int int int
      StackMap stack:
            aload 2 /* text */
            iload 3 /* position */
            invokeinterface java.lang.CharSequence.charAt:(I)C
            istore 6 /* c */
        35: .line 2136
            iload 6 /* c */
            bipush 58
            if_icmpne 40
        36: .line 2137
            iconst_1
            istore 9 /* expectSeparators */
        start local 9 // boolean expectSeparators
        37: .line 2138
            iinc 4 /* limit */ -1
        38: .line 2139
            iinc 3 /* position */ 1
        39: .line 2140
            goto 42
        end local 9 // boolean expectSeparators
      StackMap locals:
      StackMap stack:
        40: iload 6 /* c */
            bipush 48
            if_icmplt 88
            iload 6 /* c */
            bipush 57
            if_icmpgt 88
        41: .line 2141
            iconst_0
            istore 9 /* expectSeparators */
        start local 9 // boolean expectSeparators
        42: .line 2148
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            aload 2 /* text */
            iload 3 /* position */
            iconst_2
            invokevirtual org.joda.time.format.DateTimeFormatterBuilder$TimeZoneOffset.digitCount:(Ljava/lang/CharSequence;II)I
            istore 10 /* count */
        start local 10 // int count
        43: .line 2149
            iload 10 /* count */
            ifne 45
            iload 9 /* expectSeparators */
            ifne 45
        44: .line 2150
            goto 88
        45: .line 2151
      StackMap locals: int
      StackMap stack:
            iload 10 /* count */
            iconst_2
            if_icmpge 47
        46: .line 2153
            iload 3 /* position */
            iconst_m1
            ixor
            ireturn
        47: .line 2156
      StackMap locals:
      StackMap stack:
            aload 2 /* text */
            iload 3 /* position */
            invokestatic org.joda.time.format.FormatUtils.parseTwoDigits:(Ljava/lang/CharSequence;I)I
            istore 11 /* minutes */
        start local 11 // int minutes
        48: .line 2157
            iload 11 /* minutes */
            bipush 59
            if_icmple 50
        49: .line 2158
            iload 3 /* position */
            iconst_m1
            ixor
            ireturn
        50: .line 2160
      StackMap locals: int
      StackMap stack:
            iload 7 /* offset */
            iload 11 /* minutes */
            ldc 60000
            imul
            iadd
            istore 7 /* offset */
        51: .line 2161
            iinc 4 /* limit */ -2
        52: .line 2162
            iinc 3 /* position */ 2
        53: .line 2166
            iload 4 /* limit */
            ifgt 55
        54: .line 2167
            goto 88
        55: .line 2170
      StackMap locals:
      StackMap stack:
            iload 9 /* expectSeparators */
            ifeq 60
        56: .line 2171
            aload 2 /* text */
            iload 3 /* position */
            invokeinterface java.lang.CharSequence.charAt:(I)C
            bipush 58
            if_icmpeq 58
        57: .line 2172
            goto 88
        58: .line 2174
      StackMap locals:
      StackMap stack:
            iinc 4 /* limit */ -1
        59: .line 2175
            iinc 3 /* position */ 1
        60: .line 2178
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* text */
            iload 3 /* position */
            iconst_2
            invokevirtual org.joda.time.format.DateTimeFormatterBuilder$TimeZoneOffset.digitCount:(Ljava/lang/CharSequence;II)I
            istore 10 /* count */
        61: .line 2179
            iload 10 /* count */
            ifne 63
            iload 9 /* expectSeparators */
            ifne 63
        62: .line 2180
            goto 88
        63: .line 2181
      StackMap locals:
      StackMap stack:
            iload 10 /* count */
            iconst_2
            if_icmpge 65
        64: .line 2183
            iload 3 /* position */
            iconst_m1
            ixor
            ireturn
        65: .line 2186
      StackMap locals:
      StackMap stack:
            aload 2 /* text */
            iload 3 /* position */
            invokestatic org.joda.time.format.FormatUtils.parseTwoDigits:(Ljava/lang/CharSequence;I)I
            istore 12 /* seconds */
        start local 12 // int seconds
        66: .line 2187
            iload 12 /* seconds */
            bipush 59
            if_icmple 68
        67: .line 2188
            iload 3 /* position */
            iconst_m1
            ixor
            ireturn
        68: .line 2190
      StackMap locals: int
      StackMap stack:
            iload 7 /* offset */
            iload 12 /* seconds */
            sipush 1000
            imul
            iadd
            istore 7 /* offset */
        69: .line 2191
            iinc 4 /* limit */ -2
        70: .line 2192
            iinc 3 /* position */ 2
        71: .line 2196
            iload 4 /* limit */
            ifgt 73
        72: .line 2197
            goto 88
        73: .line 2200
      StackMap locals:
      StackMap stack:
            iload 9 /* expectSeparators */
            ifeq 78
        74: .line 2201
            aload 2 /* text */
            iload 3 /* position */
            invokeinterface java.lang.CharSequence.charAt:(I)C
            bipush 46
            if_icmpeq 76
            aload 2 /* text */
            iload 3 /* position */
            invokeinterface java.lang.CharSequence.charAt:(I)C
            bipush 44
            if_icmpeq 76
        75: .line 2202
            goto 88
        76: .line 2204
      StackMap locals:
      StackMap stack:
            iinc 4 /* limit */ -1
        77: .line 2205
            iinc 3 /* position */ 1
        78: .line 2208
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* text */
            iload 3 /* position */
            iconst_3
            invokevirtual org.joda.time.format.DateTimeFormatterBuilder$TimeZoneOffset.digitCount:(Ljava/lang/CharSequence;II)I
            istore 10 /* count */
        79: .line 2209
            iload 10 /* count */
            ifne 81
            iload 9 /* expectSeparators */
            ifne 81
        80: .line 2210
            goto 88
        81: .line 2211
      StackMap locals:
      StackMap stack:
            iload 10 /* count */
            iconst_1
            if_icmpge 83
        82: .line 2213
            iload 3 /* position */
            iconst_m1
            ixor
            ireturn
        83: .line 2216
      StackMap locals:
      StackMap stack:
            iload 7 /* offset */
            aload 2 /* text */
            iload 3 /* position */
            iinc 3 /* position */ 1
            invokeinterface java.lang.CharSequence.charAt:(I)C
            bipush 48
            isub
            bipush 100
            imul
            iadd
            istore 7 /* offset */
        84: .line 2217
            iload 10 /* count */
            iconst_1
            if_icmple 88
        85: .line 2218
            iload 7 /* offset */
            aload 2 /* text */
            iload 3 /* position */
            iinc 3 /* position */ 1
            invokeinterface java.lang.CharSequence.charAt:(I)C
            bipush 48
            isub
            bipush 10
            imul
            iadd
            istore 7 /* offset */
        86: .line 2219
            iload 10 /* count */
            iconst_2
            if_icmple 88
        87: .line 2220
            iload 7 /* offset */
            aload 2 /* text */
            iload 3 /* position */
            iinc 3 /* position */ 1
            invokeinterface java.lang.CharSequence.charAt:(I)C
            bipush 48
            isub
            iadd
            istore 7 /* offset */
        end local 12 // int seconds
        end local 11 // int minutes
        end local 10 // int count
        end local 9 // boolean expectSeparators
        88: .line 2225
      StackMap locals: org.joda.time.format.DateTimeFormatterBuilder$TimeZoneOffset org.joda.time.format.DateTimeParserBucket java.lang.CharSequence int int int int int int
      StackMap stack:
            aload 1 /* bucket */
            iload 5 /* negative */
            ifeq 89
            iload 7 /* offset */
            ineg
            goto 90
      StackMap locals:
      StackMap stack: org.joda.time.format.DateTimeParserBucket
        89: iload 7 /* offset */
      StackMap locals: org.joda.time.format.DateTimeFormatterBuilder$TimeZoneOffset org.joda.time.format.DateTimeParserBucket java.lang.CharSequence int int int int int int
      StackMap stack: org.joda.time.format.DateTimeParserBucket int
        90: invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            invokevirtual org.joda.time.format.DateTimeParserBucket.setOffset:(Ljava/lang/Integer;)V
        91: .line 2226
            iload 3 /* position */
            ireturn
        end local 8 // int hours
        end local 7 // int offset
        end local 6 // char c
        end local 5 // boolean negative
        end local 4 // int limit
        end local 3 // int position
        end local 2 // java.lang.CharSequence text
        end local 1 // org.joda.time.format.DateTimeParserBucket bucket
        end local 0 // org.joda.time.format.DateTimeFormatterBuilder$TimeZoneOffset this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0   92     0              this  Lorg/joda/time/format/DateTimeFormatterBuilder$TimeZoneOffset;
            0   92     1            bucket  Lorg/joda/time/format/DateTimeParserBucket;
            0   92     2              text  Ljava/lang/CharSequence;
            0   92     3          position  I
            1   92     4             limit  I
            5    7     5                 c  C
           17   18     5          negative  Z
           20   21     5          negative  Z
           22   92     5          negative  Z
           15   92     6                 c  C
           30   92     7            offset  I
           27   92     8             hours  I
           37   40     9  expectSeparators  Z
           42   88     9  expectSeparators  Z
           43   88    10             count  I
           48   88    11           minutes  I
           66   88    12           seconds  I
    MethodParameters:
          Name  Flags
      bucket    
      text      
      position  

  private int digitCount(java.lang.CharSequence, int, int);
    descriptor: (Ljava/lang/CharSequence;II)I
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=6, args_size=4
        start local 0 // org.joda.time.format.DateTimeFormatterBuilder$TimeZoneOffset this
        start local 1 // java.lang.CharSequence text
        start local 2 // int position
        start local 3 // int amount
         0: .line 2234
            aload 1 /* text */
            invokeinterface java.lang.CharSequence.length:()I
            iload 2 /* position */
            isub
            iload 3 /* amount */
            invokestatic java.lang.Math.min:(II)I
            istore 4 /* limit */
        start local 4 // int limit
         1: .line 2235
            iconst_0
            istore 3 /* amount */
         2: .line 2236
            goto 8
         3: .line 2237
      StackMap locals: int
      StackMap stack:
            aload 1 /* text */
            iload 2 /* position */
            iload 3 /* amount */
            iadd
            invokeinterface java.lang.CharSequence.charAt:(I)C
            istore 5 /* c */
        start local 5 // char c
         4: .line 2238
            iload 5 /* c */
            bipush 48
            if_icmplt 9
            iload 5 /* c */
            bipush 57
            if_icmple 6
         5: .line 2239
            goto 9
         6: .line 2241
      StackMap locals: int
      StackMap stack:
            iinc 3 /* amount */ 1
        end local 5 // char c
         7: .line 2236
            iinc 4 /* limit */ -1
      StackMap locals:
      StackMap stack:
         8: iload 4 /* limit */
            ifgt 3
         9: .line 2243
      StackMap locals:
      StackMap stack:
            iload 3 /* amount */
            ireturn
        end local 4 // int limit
        end local 3 // int amount
        end local 2 // int position
        end local 1 // java.lang.CharSequence text
        end local 0 // org.joda.time.format.DateTimeFormatterBuilder$TimeZoneOffset this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   10     0      this  Lorg/joda/time/format/DateTimeFormatterBuilder$TimeZoneOffset;
            0   10     1      text  Ljava/lang/CharSequence;
            0   10     2  position  I
            0   10     3    amount  I
            1   10     4     limit  I
            4    7     5         c  C
    MethodParameters:
          Name  Flags
      text      
      position  
      amount    
}
SourceFile: "DateTimeFormatterBuilder.java"
NestHost: org.joda.time.format.DateTimeFormatterBuilder
InnerClasses:
  TimeZoneOffset = org.joda.time.format.DateTimeFormatterBuilder$TimeZoneOffset of org.joda.time.format.DateTimeFormatterBuilder