public class org.jruby.util.RubyDateFormatter
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.jruby.util.RubyDateFormatter
  super_class: java.lang.Object
{
  private static final java.lang.String[] FORMAT_MONTHS;
    descriptor: [Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final java.lang.String[] FORMAT_SHORT_MONTHS;
    descriptor: [Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final java.lang.String[] FORMAT_WEEKDAYS;
    descriptor: [Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final java.lang.String[] FORMAT_SHORT_WEEKDAYS;
    descriptor: [Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final org.jruby.util.RubyDateFormatter$Token[] CONVERSION2TOKEN;
    descriptor: [Lorg/jruby/util/RubyDateFormatter$Token;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private final org.jruby.Ruby runtime;
    descriptor: Lorg/jruby/Ruby;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final org.jruby.lexer.StrftimeLexer lexer;
    descriptor: Lorg/jruby/lexer/StrftimeLexer;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private static volatile int[] $SWITCH_TABLE$org$jruby$util$RubyDateFormatter$Format;
    descriptor: [I
    flags: (0x104a) ACC_PRIVATE, ACC_STATIC, ACC_VOLATILE, ACC_SYNTHETIC

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=3, locals=1, args_size=0
         0: .line 70
            new java.text.DateFormatSymbols
            dup
            getstatic java.util.Locale.US:Ljava/util/Locale;
            invokespecial java.text.DateFormatSymbols.<init>:(Ljava/util/Locale;)V
            astore 0 /* FORMAT_SYMBOLS */
        start local 0 // java.text.DateFormatSymbols FORMAT_SYMBOLS
         1: .line 71
            aload 0 /* FORMAT_SYMBOLS */
            invokevirtual java.text.DateFormatSymbols.getMonths:()[Ljava/lang/String;
            putstatic org.jruby.util.RubyDateFormatter.FORMAT_MONTHS:[Ljava/lang/String;
         2: .line 72
            aload 0 /* FORMAT_SYMBOLS */
            invokevirtual java.text.DateFormatSymbols.getShortMonths:()[Ljava/lang/String;
            putstatic org.jruby.util.RubyDateFormatter.FORMAT_SHORT_MONTHS:[Ljava/lang/String;
         3: .line 73
            aload 0 /* FORMAT_SYMBOLS */
            invokevirtual java.text.DateFormatSymbols.getWeekdays:()[Ljava/lang/String;
            putstatic org.jruby.util.RubyDateFormatter.FORMAT_WEEKDAYS:[Ljava/lang/String;
         4: .line 74
            aload 0 /* FORMAT_SYMBOLS */
            invokevirtual java.text.DateFormatSymbols.getShortWeekdays:()[Ljava/lang/String;
            putstatic org.jruby.util.RubyDateFormatter.FORMAT_SHORT_WEEKDAYS:[Ljava/lang/String;
        end local 0 // java.text.DateFormatSymbols FORMAT_SYMBOLS
         5: .line 77
            sipush 256
            anewarray org.jruby.util.RubyDateFormatter$Token
            putstatic org.jruby.util.RubyDateFormatter.CONVERSION2TOKEN:[Lorg/jruby/util/RubyDateFormatter$Token;
            return
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            1    5     0  FORMAT_SYMBOLS  Ljava/text/DateFormatSymbols;

  public void <init>(org.jruby.runtime.ThreadContext);
    descriptor: (Lorg/jruby/runtime/ThreadContext;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // org.jruby.util.RubyDateFormatter this
        start local 1 // org.jruby.runtime.ThreadContext context
         0: .line 242
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 243
            aload 0 /* this */
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            putfield org.jruby.util.RubyDateFormatter.runtime:Lorg/jruby/Ruby;
         2: .line 244
            aload 0 /* this */
            new org.jruby.lexer.StrftimeLexer
            dup
            aconst_null
            invokespecial org.jruby.lexer.StrftimeLexer.<init>:(Ljava/io/Reader;)V
            putfield org.jruby.util.RubyDateFormatter.lexer:Lorg/jruby/lexer/StrftimeLexer;
         3: .line 245
            return
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.util.RubyDateFormatter this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    4     0     this  Lorg/jruby/util/RubyDateFormatter;
            0    4     1  context  Lorg/jruby/runtime/ThreadContext;
    MethodParameters:
         Name  Flags
      context  

  private static void addToPattern(java.util.List<org.jruby.util.RubyDateFormatter$Token>, java.lang.String);
    descriptor: (Ljava/util/List;Ljava/lang/String;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=4, args_size=2
        start local 0 // java.util.List compiledPattern
        start local 1 // java.lang.String str
         0: .line 248
            iconst_0
            istore 2 /* i */
        start local 2 // int i
         1: goto 9
         2: .line 249
      StackMap locals: int
      StackMap stack:
            aload 1 /* str */
            iload 2 /* i */
            invokevirtual java.lang.String.charAt:(I)C
            istore 3 /* c */
        start local 3 // char c
         3: .line 250
            bipush 65
            iload 3 /* c */
            if_icmpgt 4
            iload 3 /* c */
            bipush 90
            if_icmple 5
      StackMap locals: int
      StackMap stack:
         4: bipush 97
            iload 3 /* c */
            if_icmpgt 7
            iload 3 /* c */
            bipush 122
            if_icmpgt 7
         5: .line 251
      StackMap locals:
      StackMap stack:
            aload 0 /* compiledPattern */
            iload 3 /* c */
            invokestatic org.jruby.util.RubyDateFormatter$Token.format:(C)Lorg/jruby/util/RubyDateFormatter$Token;
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
         6: .line 252
            goto 8
         7: .line 253
      StackMap locals:
      StackMap stack:
            aload 0 /* compiledPattern */
            iload 3 /* c */
            invokestatic java.lang.Character.toString:(C)Ljava/lang/String;
            invokestatic org.jruby.util.RubyDateFormatter$Token.str:(Ljava/lang/String;)Lorg/jruby/util/RubyDateFormatter$Token;
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        end local 3 // char c
         8: .line 248
      StackMap locals:
      StackMap stack:
            iinc 2 /* i */ 1
      StackMap locals:
      StackMap stack:
         9: iload 2 /* i */
            aload 1 /* str */
            invokevirtual java.lang.String.length:()I
            if_icmplt 2
        end local 2 // int i
        10: .line 256
            return
        end local 1 // java.lang.String str
        end local 0 // java.util.List compiledPattern
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   11     0  compiledPattern  Ljava/util/List<Lorg/jruby/util/RubyDateFormatter$Token;>;
            0   11     1              str  Ljava/lang/String;
            1   10     2                i  I
            3    8     3                c  C
    Signature: (Ljava/util/List<Lorg/jruby/util/RubyDateFormatter$Token;>;Ljava/lang/String;)V
    MethodParameters:
                 Name  Flags
      compiledPattern  
      str              

  public java.util.List<org.jruby.util.RubyDateFormatter$Token> compilePattern(org.jruby.RubyString, boolean);
    descriptor: (Lorg/jruby/RubyString;Z)Ljava/util/List;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.jruby.util.RubyDateFormatter this
        start local 1 // org.jruby.RubyString format
        start local 2 // boolean dateLibrary
         0: .line 259
            aload 0 /* this */
            aload 1 /* format */
            invokevirtual org.jruby.RubyString.getByteList:()Lorg/jruby/util/ByteList;
            iload 2 /* dateLibrary */
            invokevirtual org.jruby.util.RubyDateFormatter.compilePattern:(Lorg/jruby/util/ByteList;Z)Ljava/util/List;
            areturn
        end local 2 // boolean dateLibrary
        end local 1 // org.jruby.RubyString format
        end local 0 // org.jruby.util.RubyDateFormatter this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    1     0         this  Lorg/jruby/util/RubyDateFormatter;
            0    1     1       format  Lorg/jruby/RubyString;
            0    1     2  dateLibrary  Z
    Signature: (Lorg/jruby/RubyString;Z)Ljava/util/List<Lorg/jruby/util/RubyDateFormatter$Token;>;
    MethodParameters:
             Name  Flags
      format       
      dateLibrary  

  public java.util.List<org.jruby.util.RubyDateFormatter$Token> compilePattern(org.jruby.util.ByteList, boolean);
    descriptor: (Lorg/jruby/util/ByteList;Z)Ljava/util/List;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=9, args_size=3
        start local 0 // org.jruby.util.RubyDateFormatter this
        start local 1 // org.jruby.util.ByteList pattern
        start local 2 // boolean dateLibrary
         0: .line 263
            aload 1 /* pattern */
            invokevirtual org.jruby.util.ByteList.getEncoding:()Lorg/jcodings/Encoding;
            astore 3 /* enc */
        start local 3 // org.jcodings.Encoding enc
         1: .line 264
            aload 3 /* enc */
            invokevirtual org.jcodings.Encoding.isAsciiCompatible:()Z
            ifne 3
         2: .line 265
            aload 0 /* this */
            getfield org.jruby.util.RubyDateFormatter.runtime:Lorg/jruby/Ruby;
            ldc "format should have ASCII compatible encoding"
            invokevirtual org.jruby.Ruby.newArgumentError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
            athrow
         3: .line 268
      StackMap locals: org.jcodings.Encoding
      StackMap stack:
            new java.util.LinkedList
            dup
            invokespecial java.util.LinkedList.<init>:()V
            astore 4 /* compiledPattern */
        start local 4 // java.util.List compiledPattern
         4: .line 269
            aload 3 /* enc */
            getstatic org.jcodings.specific.ASCIIEncoding.INSTANCE:Lorg/jcodings/specific/ASCIIEncoding;
            if_acmpeq 6
         5: .line 270
            aload 4 /* compiledPattern */
            new org.jruby.util.RubyDateFormatter$Token
            dup
            getstatic org.jruby.util.RubyDateFormatter$Format.FORMAT_ENCODING:Lorg/jruby/util/RubyDateFormatter$Format;
            aload 3 /* enc */
            invokespecial org.jruby.util.RubyDateFormatter$Token.<init>:(Lorg/jruby/util/RubyDateFormatter$Format;Ljava/lang/Object;)V
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
         6: .line 273
      StackMap locals: java.util.List
      StackMap stack:
            new java.io.ByteArrayInputStream
            dup
            aload 1 /* pattern */
            invokevirtual org.jruby.util.ByteList.getUnsafeBytes:()[B
            aload 1 /* pattern */
            invokevirtual org.jruby.util.ByteList.getBegin:()I
            aload 1 /* pattern */
            invokevirtual org.jruby.util.ByteList.getRealSize:()I
            invokespecial java.io.ByteArrayInputStream.<init>:([BII)V
            astore 5 /* in */
        start local 5 // java.io.ByteArrayInputStream in
         7: .line 274
            new java.io.InputStreamReader
            dup
            aload 5 /* in */
            aload 0 /* this */
            getfield org.jruby.util.RubyDateFormatter.runtime:Lorg/jruby/Ruby;
            invokevirtual org.jruby.Ruby.getEncodingService:()Lorg/jruby/runtime/encoding/EncodingService;
            aload 1 /* pattern */
            invokevirtual org.jruby.util.ByteList.getEncoding:()Lorg/jcodings/Encoding;
            invokevirtual org.jruby.runtime.encoding.EncodingService.charsetForEncoding:(Lorg/jcodings/Encoding;)Ljava/nio/charset/Charset;
            invokespecial java.io.InputStreamReader.<init>:(Ljava/io/InputStream;Ljava/nio/charset/Charset;)V
            astore 6 /* reader */
        start local 6 // java.io.Reader reader
         8: .line 275
            aload 0 /* this */
            getfield org.jruby.util.RubyDateFormatter.lexer:Lorg/jruby/lexer/StrftimeLexer;
            aload 6 /* reader */
            invokevirtual org.jruby.lexer.StrftimeLexer.yyreset:(Ljava/io/Reader;)V
         9: .line 279
            goto 54
        start local 7 // org.jruby.util.RubyDateFormatter$Token token
        10: .line 280
      StackMap locals: java.io.ByteArrayInputStream java.io.Reader org.jruby.util.RubyDateFormatter$Token
      StackMap stack:
            aload 7 /* token */
            getfield org.jruby.util.RubyDateFormatter$Token.format:Lorg/jruby/util/RubyDateFormatter$Format;
            getstatic org.jruby.util.RubyDateFormatter$Format.FORMAT_SPECIAL:Lorg/jruby/util/RubyDateFormatter$Format;
            if_acmpeq 13
        11: .line 281
            aload 4 /* compiledPattern */
            aload 7 /* token */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        12: .line 282
            goto 54
        13: .line 283
      StackMap locals:
      StackMap stack:
            aload 7 /* token */
            getfield org.jruby.util.RubyDateFormatter$Token.data:Ljava/lang/Object;
            checkcast java.lang.Character
            invokevirtual java.lang.Character.charValue:()C
            istore 8 /* c */
        start local 8 // char c
        14: .line 284
            iload 8 /* c */
            lookupswitch { // 14
                   43: 46
                   68: 17
                   70: 19
                   81: 23
                   82: 28
                   84: 32
                   88: 32
                   90: 41
                   99: 15
                  110: 21
                  114: 30
                  116: 34
                  118: 36
                  120: 17
              default: 53
          }
        15: .line 286
      StackMap locals: int
      StackMap stack:
            aload 4 /* compiledPattern */
            ldc "a b e H:M:S Y"
            invokestatic org.jruby.util.RubyDateFormatter.addToPattern:(Ljava/util/List;Ljava/lang/String;)V
        16: .line 287
            goto 54
        17: .line 290
      StackMap locals:
      StackMap stack:
            aload 4 /* compiledPattern */
            ldc "m/d/y"
            invokestatic org.jruby.util.RubyDateFormatter.addToPattern:(Ljava/util/List;Ljava/lang/String;)V
        18: .line 291
            goto 54
        19: .line 293
      StackMap locals:
      StackMap stack:
            aload 4 /* compiledPattern */
            ldc "Y-m-d"
            invokestatic org.jruby.util.RubyDateFormatter.addToPattern:(Ljava/util/List;Ljava/lang/String;)V
        20: .line 294
            goto 54
        21: .line 296
      StackMap locals:
      StackMap stack:
            aload 4 /* compiledPattern */
            ldc "\n"
            invokestatic org.jruby.util.RubyDateFormatter$Token.str:(Ljava/lang/String;)Lorg/jruby/util/RubyDateFormatter$Token;
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        22: .line 297
            goto 54
        23: .line 299
      StackMap locals:
      StackMap stack:
            iload 2 /* dateLibrary */
            ifeq 26
        24: .line 300
            aload 4 /* compiledPattern */
            new org.jruby.util.RubyDateFormatter$Token
            dup
            getstatic org.jruby.util.RubyDateFormatter$Format.FORMAT_MICROSEC_EPOCH:Lorg/jruby/util/RubyDateFormatter$Format;
            invokespecial org.jruby.util.RubyDateFormatter$Token.<init>:(Lorg/jruby/util/RubyDateFormatter$Format;)V
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        25: .line 301
            goto 54
        26: .line 302
      StackMap locals:
      StackMap stack:
            aload 4 /* compiledPattern */
            ldc "%Q"
            invokestatic org.jruby.util.RubyDateFormatter$Token.str:(Ljava/lang/String;)Lorg/jruby/util/RubyDateFormatter$Token;
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        27: .line 304
            goto 54
        28: .line 306
      StackMap locals:
      StackMap stack:
            aload 4 /* compiledPattern */
            ldc "H:M"
            invokestatic org.jruby.util.RubyDateFormatter.addToPattern:(Ljava/util/List;Ljava/lang/String;)V
        29: .line 307
            goto 54
        30: .line 309
      StackMap locals:
      StackMap stack:
            aload 4 /* compiledPattern */
            ldc "I:M:S p"
            invokestatic org.jruby.util.RubyDateFormatter.addToPattern:(Ljava/util/List;Ljava/lang/String;)V
        31: .line 310
            goto 54
        32: .line 313
      StackMap locals:
      StackMap stack:
            aload 4 /* compiledPattern */
            ldc "H:M:S"
            invokestatic org.jruby.util.RubyDateFormatter.addToPattern:(Ljava/util/List;Ljava/lang/String;)V
        33: .line 314
            goto 54
        34: .line 316
      StackMap locals:
      StackMap stack:
            aload 4 /* compiledPattern */
            ldc "\t"
            invokestatic org.jruby.util.RubyDateFormatter$Token.str:(Ljava/lang/String;)Lorg/jruby/util/RubyDateFormatter$Token;
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        35: .line 317
            goto 54
        36: .line 319
      StackMap locals:
      StackMap stack:
            aload 4 /* compiledPattern */
            ldc "e-"
            invokestatic org.jruby.util.RubyDateFormatter.addToPattern:(Ljava/util/List;Ljava/lang/String;)V
        37: .line 320
            iload 2 /* dateLibrary */
            ifne 39
        38: .line 321
            aload 4 /* compiledPattern */
            new org.jruby.util.RubyTimeOutputFormatter
            dup
            ldc "^"
            iconst_0
            invokespecial org.jruby.util.RubyTimeOutputFormatter.<init>:(Ljava/lang/String;I)V
            invokestatic org.jruby.util.RubyDateFormatter$Token.formatter:(Lorg/jruby/util/RubyTimeOutputFormatter;)Lorg/jruby/util/RubyDateFormatter$Token;
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        39: .line 322
      StackMap locals:
      StackMap stack:
            aload 4 /* compiledPattern */
            ldc "b-Y"
            invokestatic org.jruby.util.RubyDateFormatter.addToPattern:(Ljava/util/List;Ljava/lang/String;)V
        40: .line 323
            goto 54
        41: .line 325
      StackMap locals:
      StackMap stack:
            iload 2 /* dateLibrary */
            ifeq 44
        42: .line 327
            aload 4 /* compiledPattern */
            iconst_1
            invokestatic org.jruby.util.RubyDateFormatter$Token.zoneOffsetColons:(I)Lorg/jruby/util/RubyDateFormatter$Token;
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        43: .line 328
            goto 54
        44: .line 329
      StackMap locals:
      StackMap stack:
            aload 4 /* compiledPattern */
            new org.jruby.util.RubyDateFormatter$Token
            dup
            getstatic org.jruby.util.RubyDateFormatter$Format.FORMAT_ZONE_ID:Lorg/jruby/util/RubyDateFormatter$Format;
            invokespecial org.jruby.util.RubyDateFormatter$Token.<init>:(Lorg/jruby/util/RubyDateFormatter$Format;)V
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        45: .line 331
            goto 54
        46: .line 333
      StackMap locals:
      StackMap stack:
            iload 2 /* dateLibrary */
            ifne 49
        47: .line 334
            aload 4 /* compiledPattern */
            ldc "%+"
            invokestatic org.jruby.util.RubyDateFormatter$Token.str:(Ljava/lang/String;)Lorg/jruby/util/RubyDateFormatter$Token;
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        48: .line 335
            goto 54
        49: .line 337
      StackMap locals:
      StackMap stack:
            aload 4 /* compiledPattern */
            ldc "a b e H:M:S "
            invokestatic org.jruby.util.RubyDateFormatter.addToPattern:(Ljava/util/List;Ljava/lang/String;)V
        50: .line 339
            aload 4 /* compiledPattern */
            iconst_1
            invokestatic org.jruby.util.RubyDateFormatter$Token.zoneOffsetColons:(I)Lorg/jruby/util/RubyDateFormatter$Token;
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        51: .line 340
            aload 4 /* compiledPattern */
            ldc " Y"
            invokestatic org.jruby.util.RubyDateFormatter.addToPattern:(Ljava/util/List;Ljava/lang/String;)V
        52: .line 341
            goto 54
        53: .line 343
      StackMap locals:
      StackMap stack:
            new java.lang.AssertionError
            dup
            new java.lang.StringBuilder
            dup
            ldc "Unknown special char: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 8 /* c */
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
        end local 8 // char c
        end local 7 // org.jruby.util.RubyDateFormatter$Token token
        54: .line 279
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.jruby.util.RubyDateFormatter.lexer:Lorg/jruby/lexer/StrftimeLexer;
            invokevirtual org.jruby.lexer.StrftimeLexer.yylex:()Lorg/jruby/util/RubyDateFormatter$Token;
            dup
            astore 7 /* token */
        start local 7 // org.jruby.util.RubyDateFormatter$Token token
        55: ifnonnull 10
        56: .line 347
            goto 59
        end local 7 // org.jruby.util.RubyDateFormatter$Token token
      StackMap locals:
      StackMap stack: java.io.IOException
        57: astore 8 /* e */
        start local 8 // java.io.IOException e
        58: .line 348
            new java.lang.AssertionError
            dup
            aload 8 /* e */
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
        end local 8 // java.io.IOException e
        start local 7 // org.jruby.util.RubyDateFormatter$Token token
        59: .line 351
      StackMap locals: org.jruby.util.RubyDateFormatter$Token
      StackMap stack:
            aload 4 /* compiledPattern */
            areturn
        end local 7 // org.jruby.util.RubyDateFormatter$Token token
        end local 6 // java.io.Reader reader
        end local 5 // java.io.ByteArrayInputStream in
        end local 4 // java.util.List compiledPattern
        end local 3 // org.jcodings.Encoding enc
        end local 2 // boolean dateLibrary
        end local 1 // org.jruby.util.ByteList pattern
        end local 0 // org.jruby.util.RubyDateFormatter this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   60     0             this  Lorg/jruby/util/RubyDateFormatter;
            0   60     1          pattern  Lorg/jruby/util/ByteList;
            0   60     2      dateLibrary  Z
            1   60     3              enc  Lorg/jcodings/Encoding;
            4   60     4  compiledPattern  Ljava/util/List<Lorg/jruby/util/RubyDateFormatter$Token;>;
            7   60     5               in  Ljava/io/ByteArrayInputStream;
            8   60     6           reader  Ljava/io/Reader;
           10   54     7            token  Lorg/jruby/util/RubyDateFormatter$Token;
           55   57     7            token  Lorg/jruby/util/RubyDateFormatter$Token;
           59   60     7            token  Lorg/jruby/util/RubyDateFormatter$Token;
           14   54     8                c  C
           58   59     8                e  Ljava/io/IOException;
      Exception table:
        from    to  target  type
           9    56      57  Class java.io.IOException
    Signature: (Lorg/jruby/util/ByteList;Z)Ljava/util/List<Lorg/jruby/util/RubyDateFormatter$Token;>;
    MethodParameters:
             Name  Flags
      pattern      
      dateLibrary  

  public org.jruby.RubyString compileAndFormat(org.jruby.RubyString, boolean, org.joda.time.DateTime, long, org.jruby.RubyNumeric);
    descriptor: (Lorg/jruby/RubyString;ZLorg/joda/time/DateTime;JLorg/jruby/RubyNumeric;)Lorg/jruby/RubyString;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=8, args_size=6
        start local 0 // org.jruby.util.RubyDateFormatter this
        start local 1 // org.jruby.RubyString pattern
        start local 2 // boolean dateLibrary
        start local 3 // org.joda.time.DateTime dt
        start local 4 // long nsec
        start local 6 // org.jruby.RubyNumeric sub_millis
         0: .line 373
            aload 0 /* this */
            aload 0 /* this */
            aload 1 /* pattern */
            iload 2 /* dateLibrary */
            invokevirtual org.jruby.util.RubyDateFormatter.compilePattern:(Lorg/jruby/RubyString;Z)Ljava/util/List;
            aload 3 /* dt */
            lload 4 /* nsec */
            aload 6 /* sub_millis */
            invokevirtual org.jruby.util.RubyDateFormatter.format:(Ljava/util/List;Lorg/joda/time/DateTime;JLorg/jruby/RubyNumeric;)Lorg/jruby/RubyString;
            astore 7 /* out */
        start local 7 // org.jruby.RubyString out
         1: .line 374
            aload 7 /* out */
            aload 1 /* pattern */
            invokevirtual org.jruby.RubyString.getEncoding:()Lorg/jcodings/Encoding;
            invokevirtual org.jruby.RubyString.setEncoding:(Lorg/jcodings/Encoding;)V
         2: .line 375
            aload 1 /* pattern */
            invokevirtual org.jruby.RubyString.isTaint:()Z
            ifeq 3
            aload 7 /* out */
            iconst_1
            invokevirtual org.jruby.RubyString.setTaint:(Z)V
         3: .line 376
      StackMap locals: org.jruby.RubyString
      StackMap stack:
            aload 7 /* out */
            areturn
        end local 7 // org.jruby.RubyString out
        end local 6 // org.jruby.RubyNumeric sub_millis
        end local 4 // long nsec
        end local 3 // org.joda.time.DateTime dt
        end local 2 // boolean dateLibrary
        end local 1 // org.jruby.RubyString pattern
        end local 0 // org.jruby.util.RubyDateFormatter this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    4     0         this  Lorg/jruby/util/RubyDateFormatter;
            0    4     1      pattern  Lorg/jruby/RubyString;
            0    4     2  dateLibrary  Z
            0    4     3           dt  Lorg/joda/time/DateTime;
            0    4     4         nsec  J
            0    4     6   sub_millis  Lorg/jruby/RubyNumeric;
            1    4     7          out  Lorg/jruby/RubyString;
    MethodParameters:
             Name  Flags
      pattern      
      dateLibrary  
      dt           
      nsec         
      sub_millis   

  public org.jruby.RubyString format(java.util.List<org.jruby.util.RubyDateFormatter$Token>, org.joda.time.DateTime, long, org.jruby.RubyNumeric);
    descriptor: (Ljava/util/List;Lorg/joda/time/DateTime;JLorg/jruby/RubyNumeric;)Lorg/jruby/RubyString;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=6, args_size=5
        start local 0 // org.jruby.util.RubyDateFormatter this
        start local 1 // java.util.List compiledPattern
        start local 2 // org.joda.time.DateTime dt
        start local 3 // long nsec
        start local 5 // org.jruby.RubyNumeric sub_millis
         0: .line 380
            aload 0 /* this */
            getfield org.jruby.util.RubyDateFormatter.runtime:Lorg/jruby/Ruby;
            aload 0 /* this */
            aload 1 /* compiledPattern */
            aload 2 /* dt */
            lload 3 /* nsec */
            aload 5 /* sub_millis */
            invokevirtual org.jruby.util.RubyDateFormatter.formatToByteList:(Ljava/util/List;Lorg/joda/time/DateTime;JLorg/jruby/RubyNumeric;)Lorg/jruby/util/ByteList;
            invokevirtual org.jruby.Ruby.newString:(Lorg/jruby/util/ByteList;)Lorg/jruby/RubyString;
            areturn
        end local 5 // org.jruby.RubyNumeric sub_millis
        end local 3 // long nsec
        end local 2 // org.joda.time.DateTime dt
        end local 1 // java.util.List compiledPattern
        end local 0 // org.jruby.util.RubyDateFormatter this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0    1     0             this  Lorg/jruby/util/RubyDateFormatter;
            0    1     1  compiledPattern  Ljava/util/List<Lorg/jruby/util/RubyDateFormatter$Token;>;
            0    1     2               dt  Lorg/joda/time/DateTime;
            0    1     3             nsec  J
            0    1     5       sub_millis  Lorg/jruby/RubyNumeric;
    Signature: (Ljava/util/List<Lorg/jruby/util/RubyDateFormatter$Token;>;Lorg/joda/time/DateTime;JLorg/jruby/RubyNumeric;)Lorg/jruby/RubyString;
    MethodParameters:
                 Name  Flags
      compiledPattern  
      dt               
      nsec             
      sub_millis       

  private org.jruby.util.ByteList formatToByteList(java.util.List<org.jruby.util.RubyDateFormatter$Token>, org.joda.time.DateTime, long, org.jruby.RubyNumeric);
    descriptor: (Ljava/util/List;Lorg/joda/time/DateTime;JLorg/jruby/RubyNumeric;)Lorg/jruby/util/ByteList;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=20, args_size=5
        start local 0 // org.jruby.util.RubyDateFormatter this
        start local 1 // java.util.List compiledPattern
        start local 2 // org.joda.time.DateTime dt
        start local 3 // long nsec
        start local 5 // org.jruby.RubyNumeric sub_millis
         0: .line 384
            getstatic org.jruby.util.RubyTimeOutputFormatter.DEFAULT_FORMATTER:Lorg/jruby/util/RubyTimeOutputFormatter;
            astore 6 /* formatter */
        start local 6 // org.jruby.util.RubyTimeOutputFormatter formatter
         1: .line 385
            new org.jruby.util.ByteList
            dup
            bipush 24
            invokespecial org.jruby.util.ByteList.<init>:(I)V
            astore 7 /* toAppendTo */
        start local 7 // org.jruby.util.ByteList toAppendTo
         2: .line 387
            aload 1 /* compiledPattern */
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 9
            goto 146
      StackMap locals: org.jruby.util.RubyDateFormatter java.util.List org.joda.time.DateTime long org.jruby.RubyNumeric org.jruby.util.RubyTimeOutputFormatter org.jruby.util.ByteList top java.util.Iterator
      StackMap stack:
         3: aload 9
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.jruby.util.RubyDateFormatter$Token
            astore 8 /* token */
        start local 8 // org.jruby.util.RubyDateFormatter$Token token
         4: .line 388
            aconst_null
            astore 10 /* output */
        start local 10 // java.lang.CharSequence output
         5: .line 389
            lconst_0
            lstore 11 /* value */
        start local 11 // long value
         6: .line 390
            getstatic org.jruby.util.RubyDateFormatter$FieldType.TEXT:Lorg/jruby/util/RubyDateFormatter$FieldType;
            astore 13 /* type */
        start local 13 // org.jruby.util.RubyDateFormatter$FieldType type
         7: .line 391
            aload 8 /* token */
            invokevirtual org.jruby.util.RubyDateFormatter$Token.getFormat:()Lorg/jruby/util/RubyDateFormatter$Format;
            astore 14 /* format */
        start local 14 // org.jruby.util.RubyDateFormatter$Format format
         8: .line 393
            invokestatic org.jruby.util.RubyDateFormatter.$SWITCH_TABLE$org$jruby$util$RubyDateFormatter$Format:()[I
            aload 14 /* format */
            invokevirtual org.jruby.util.RubyDateFormatter$Format.ordinal:()I
            iaload
            tableswitch { // 1 - 36
                    1: 9
                    2: 13
                    3: 11
                    4: 139
                    5: 15
                    6: 20
                    7: 25
                    8: 27
                    9: 97
                   10: 29
                   11: 32
                   12: 128
                   13: 133
                   14: 35
                   15: 41
                   16: 51
                   17: 38
                   18: 106
                   19: 41
                   20: 54
                   21: 57
                   22: 106
                   23: 64
                   24: 60
                   25: 68
                   26: 100
                   27: 74
                   28: 80
                   29: 103
                   30: 71
                   31: 77
                   32: 83
                   33: 88
                   34: 91
                   35: 95
                   36: 136
              default: 140
          }
         9: .line 395
      StackMap locals: org.jruby.util.RubyDateFormatter java.util.List org.joda.time.DateTime long org.jruby.RubyNumeric org.jruby.util.RubyTimeOutputFormatter org.jruby.util.ByteList org.jruby.util.RubyDateFormatter$Token java.util.Iterator java.lang.CharSequence long org.jruby.util.RubyDateFormatter$FieldType org.jruby.util.RubyDateFormatter$Format
      StackMap stack:
            aload 7 /* toAppendTo */
            aload 8 /* token */
            invokevirtual org.jruby.util.RubyDateFormatter$Token.getData:()Ljava/lang/Object;
            checkcast org.jcodings.Encoding
            invokevirtual org.jruby.util.ByteList.setEncoding:(Lorg/jcodings/Encoding;)V
        10: .line 396
            goto 146
        11: .line 398
      StackMap locals:
      StackMap stack:
            aload 8 /* token */
            invokevirtual org.jruby.util.RubyDateFormatter$Token.getData:()Ljava/lang/Object;
            checkcast org.jruby.util.RubyTimeOutputFormatter
            astore 6 /* formatter */
        12: .line 399
            goto 146
        13: .line 401
      StackMap locals:
      StackMap stack:
            aload 8 /* token */
            invokevirtual org.jruby.util.RubyDateFormatter$Token.getData:()Ljava/lang/Object;
            invokevirtual java.lang.Object.toString:()Ljava/lang/String;
            astore 10 /* output */
        14: .line 402
            goto 140
        15: .line 405
      StackMap locals:
      StackMap stack:
            aload 2 /* dt */
            invokevirtual org.joda.time.DateTime.getDayOfWeek:()I
            iconst_1
            iadd
            bipush 8
            irem
            istore 15 /* v */
        start local 15 // int v
        16: .line 406
            getstatic org.jruby.util.RubyDateFormatter.FORMAT_WEEKDAYS:[Ljava/lang/String;
            iload 15 /* v */
            ifne 17
            iconst_1
            goto 18
      StackMap locals: org.jruby.util.RubyDateFormatter java.util.List org.joda.time.DateTime long org.jruby.RubyNumeric org.jruby.util.RubyTimeOutputFormatter org.jruby.util.ByteList org.jruby.util.RubyDateFormatter$Token java.util.Iterator java.lang.CharSequence long org.jruby.util.RubyDateFormatter$FieldType org.jruby.util.RubyDateFormatter$Format int
      StackMap stack: java.lang.String[]
        17: iload 15 /* v */
      StackMap locals: org.jruby.util.RubyDateFormatter java.util.List org.joda.time.DateTime long org.jruby.RubyNumeric org.jruby.util.RubyTimeOutputFormatter org.jruby.util.ByteList org.jruby.util.RubyDateFormatter$Token java.util.Iterator java.lang.CharSequence long org.jruby.util.RubyDateFormatter$FieldType org.jruby.util.RubyDateFormatter$Format int
      StackMap stack: java.lang.String[] int
        18: aaload
            astore 10 /* output */
        19: .line 407
            goto 140
        end local 15 // int v
        20: .line 410
      StackMap locals:
      StackMap stack:
            aload 2 /* dt */
            invokevirtual org.joda.time.DateTime.getDayOfWeek:()I
            iconst_1
            iadd
            bipush 8
            irem
            istore 15 /* v */
        start local 15 // int v
        21: .line 411
            getstatic org.jruby.util.RubyDateFormatter.FORMAT_SHORT_WEEKDAYS:[Ljava/lang/String;
            iload 15 /* v */
            ifne 22
            iconst_1
            goto 23
      StackMap locals: org.jruby.util.RubyDateFormatter java.util.List org.joda.time.DateTime long org.jruby.RubyNumeric org.jruby.util.RubyTimeOutputFormatter org.jruby.util.ByteList org.jruby.util.RubyDateFormatter$Token java.util.Iterator java.lang.CharSequence long org.jruby.util.RubyDateFormatter$FieldType org.jruby.util.RubyDateFormatter$Format int
      StackMap stack: java.lang.String[]
        22: iload 15 /* v */
      StackMap locals: org.jruby.util.RubyDateFormatter java.util.List org.joda.time.DateTime long org.jruby.RubyNumeric org.jruby.util.RubyTimeOutputFormatter org.jruby.util.ByteList org.jruby.util.RubyDateFormatter$Token java.util.Iterator java.lang.CharSequence long org.jruby.util.RubyDateFormatter$FieldType org.jruby.util.RubyDateFormatter$Format int
      StackMap stack: java.lang.String[] int
        23: aaload
            astore 10 /* output */
        24: .line 412
            goto 140
        end local 15 // int v
        25: .line 414
      StackMap locals:
      StackMap stack:
            getstatic org.jruby.util.RubyDateFormatter.FORMAT_MONTHS:[Ljava/lang/String;
            aload 2 /* dt */
            invokevirtual org.joda.time.DateTime.getMonthOfYear:()I
            iconst_1
            isub
            aaload
            astore 10 /* output */
        26: .line 415
            goto 140
        27: .line 417
      StackMap locals:
      StackMap stack:
            getstatic org.jruby.util.RubyDateFormatter.FORMAT_SHORT_MONTHS:[Ljava/lang/String;
            aload 2 /* dt */
            invokevirtual org.joda.time.DateTime.getMonthOfYear:()I
            iconst_1
            isub
            aaload
            astore 10 /* output */
        28: .line 418
            goto 140
        29: .line 420
      StackMap locals:
      StackMap stack:
            getstatic org.jruby.util.RubyDateFormatter$FieldType.NUMERIC2:Lorg/jruby/util/RubyDateFormatter$FieldType;
            astore 13 /* type */
        30: .line 421
            aload 2 /* dt */
            invokevirtual org.joda.time.DateTime.getDayOfMonth:()I
            i2l
            lstore 11 /* value */
        31: .line 422
            goto 140
        32: .line 424
      StackMap locals:
      StackMap stack:
            getstatic org.jruby.util.RubyDateFormatter$FieldType.NUMERIC2BLANK:Lorg/jruby/util/RubyDateFormatter$FieldType;
            astore 13 /* type */
        33: .line 425
            aload 2 /* dt */
            invokevirtual org.joda.time.DateTime.getDayOfMonth:()I
            i2l
            lstore 11 /* value */
        34: .line 426
            goto 140
        35: .line 428
      StackMap locals:
      StackMap stack:
            getstatic org.jruby.util.RubyDateFormatter$FieldType.NUMERIC2:Lorg/jruby/util/RubyDateFormatter$FieldType;
            astore 13 /* type */
        36: .line 429
            aload 2 /* dt */
            invokevirtual org.joda.time.DateTime.getHourOfDay:()I
            i2l
            lstore 11 /* value */
        37: .line 430
            goto 140
        38: .line 432
      StackMap locals:
      StackMap stack:
            getstatic org.jruby.util.RubyDateFormatter$FieldType.NUMERIC2BLANK:Lorg/jruby/util/RubyDateFormatter$FieldType;
            astore 13 /* type */
        39: .line 433
            aload 2 /* dt */
            invokevirtual org.joda.time.DateTime.getHourOfDay:()I
            i2l
            lstore 11 /* value */
        40: .line 434
            goto 140
        41: .line 437
      StackMap locals:
      StackMap stack:
            aload 2 /* dt */
            invokevirtual org.joda.time.DateTime.getHourOfDay:()I
            i2l
            lstore 11 /* value */
        42: .line 438
            lload 11 /* value */
            lconst_0
            lcmp
            ifne 45
        43: .line 439
            ldc 12
            lstore 11 /* value */
        44: .line 440
            goto 47
      StackMap locals:
      StackMap stack:
        45: lload 11 /* value */
            ldc 12
            lcmp
            ifle 47
        46: .line 441
            lload 11 /* value */
            ldc 12
            lsub
            lstore 11 /* value */
        47: .line 444
      StackMap locals:
      StackMap stack:
            aload 14 /* format */
            getstatic org.jruby.util.RubyDateFormatter$Format.FORMAT_HOUR_M:Lorg/jruby/util/RubyDateFormatter$Format;
            if_acmpne 48
            getstatic org.jruby.util.RubyDateFormatter$FieldType.NUMERIC2:Lorg/jruby/util/RubyDateFormatter$FieldType;
            goto 49
      StackMap locals:
      StackMap stack:
        48: getstatic org.jruby.util.RubyDateFormatter$FieldType.NUMERIC2BLANK:Lorg/jruby/util/RubyDateFormatter$FieldType;
      StackMap locals:
      StackMap stack: org.jruby.util.RubyDateFormatter$FieldType
        49: astore 13 /* type */
        50: .line 445
            goto 140
        51: .line 447
      StackMap locals:
      StackMap stack:
            getstatic org.jruby.util.RubyDateFormatter$FieldType.NUMERIC3:Lorg/jruby/util/RubyDateFormatter$FieldType;
            astore 13 /* type */
        52: .line 448
            aload 2 /* dt */
            invokevirtual org.joda.time.DateTime.getDayOfYear:()I
            i2l
            lstore 11 /* value */
        53: .line 449
            goto 140
        54: .line 451
      StackMap locals:
      StackMap stack:
            getstatic org.jruby.util.RubyDateFormatter$FieldType.NUMERIC2:Lorg/jruby/util/RubyDateFormatter$FieldType;
            astore 13 /* type */
        55: .line 452
            aload 2 /* dt */
            invokevirtual org.joda.time.DateTime.getMinuteOfHour:()I
            i2l
            lstore 11 /* value */
        56: .line 453
            goto 140
        57: .line 455
      StackMap locals:
      StackMap stack:
            getstatic org.jruby.util.RubyDateFormatter$FieldType.NUMERIC2:Lorg/jruby/util/RubyDateFormatter$FieldType;
            astore 13 /* type */
        58: .line 456
            aload 2 /* dt */
            invokevirtual org.joda.time.DateTime.getMonthOfYear:()I
            i2l
            lstore 11 /* value */
        59: .line 457
            goto 140
        60: .line 459
      StackMap locals:
      StackMap stack:
            aload 2 /* dt */
            invokevirtual org.joda.time.DateTime.getHourOfDay:()I
            bipush 12
            if_icmpge 61
            ldc "AM"
            goto 62
      StackMap locals:
      StackMap stack:
        61: ldc "PM"
      StackMap locals:
      StackMap stack: java.lang.String
        62: astore 10 /* output */
        63: .line 460
            goto 140
        64: .line 462
      StackMap locals:
      StackMap stack:
            aload 2 /* dt */
            invokevirtual org.joda.time.DateTime.getHourOfDay:()I
            bipush 12
            if_icmpge 65
            ldc "am"
            goto 66
      StackMap locals:
      StackMap stack:
        65: ldc "pm"
      StackMap locals:
      StackMap stack: java.lang.String
        66: astore 10 /* output */
        67: .line 463
            goto 140
        68: .line 465
      StackMap locals:
      StackMap stack:
            getstatic org.jruby.util.RubyDateFormatter$FieldType.NUMERIC2:Lorg/jruby/util/RubyDateFormatter$FieldType;
            astore 13 /* type */
        69: .line 466
            aload 2 /* dt */
            invokevirtual org.joda.time.DateTime.getSecondOfMinute:()I
            i2l
            lstore 11 /* value */
        70: .line 467
            goto 140
        71: .line 469
      StackMap locals:
      StackMap stack:
            getstatic org.jruby.util.RubyDateFormatter$FieldType.NUMERIC2:Lorg/jruby/util/RubyDateFormatter$FieldType;
            astore 13 /* type */
        72: .line 470
            aload 2 /* dt */
            iconst_2
            invokestatic org.jruby.util.RubyDateFormatter.formatWeekYear:(Lorg/joda/time/DateTime;I)I
            i2l
            lstore 11 /* value */
        73: .line 471
            goto 140
        74: .line 473
      StackMap locals:
      StackMap stack:
            getstatic org.jruby.util.RubyDateFormatter$FieldType.NUMERIC2:Lorg/jruby/util/RubyDateFormatter$FieldType;
            astore 13 /* type */
        75: .line 474
            aload 2 /* dt */
            iconst_1
            invokestatic org.jruby.util.RubyDateFormatter.formatWeekYear:(Lorg/joda/time/DateTime;I)I
            i2l
            lstore 11 /* value */
        76: .line 475
            goto 140
        77: .line 477
      StackMap locals:
      StackMap stack:
            getstatic org.jruby.util.RubyDateFormatter$FieldType.NUMERIC:Lorg/jruby/util/RubyDateFormatter$FieldType;
            astore 13 /* type */
        78: .line 478
            aload 2 /* dt */
            invokevirtual org.joda.time.DateTime.getDayOfWeek:()I
            bipush 7
            irem
            i2l
            lstore 11 /* value */
        79: .line 479
            goto 140
        80: .line 481
      StackMap locals:
      StackMap stack:
            getstatic org.jruby.util.RubyDateFormatter$FieldType.NUMERIC:Lorg/jruby/util/RubyDateFormatter$FieldType;
            astore 13 /* type */
        81: .line 482
            aload 2 /* dt */
            invokevirtual org.joda.time.DateTime.getDayOfWeek:()I
            i2l
            lstore 11 /* value */
        82: .line 483
            goto 140
        83: .line 485
      StackMap locals:
      StackMap stack:
            aload 2 /* dt */
            aload 2 /* dt */
            invokevirtual org.joda.time.DateTime.getYear:()I
            invokestatic org.jruby.util.RubyDateFormatter.year:(Lorg/joda/time/DateTime;I)I
            i2l
            lstore 11 /* value */
        84: .line 486
            lload 11 /* value */
            lconst_0
            lcmp
            iflt 85
            getstatic org.jruby.util.RubyDateFormatter$FieldType.NUMERIC4:Lorg/jruby/util/RubyDateFormatter$FieldType;
            goto 86
      StackMap locals:
      StackMap stack:
        85: getstatic org.jruby.util.RubyDateFormatter$FieldType.NUMERIC5:Lorg/jruby/util/RubyDateFormatter$FieldType;
      StackMap locals:
      StackMap stack: org.jruby.util.RubyDateFormatter$FieldType
        86: astore 13 /* type */
        87: .line 487
            goto 140
        88: .line 489
      StackMap locals:
      StackMap stack:
            getstatic org.jruby.util.RubyDateFormatter$FieldType.NUMERIC2:Lorg/jruby/util/RubyDateFormatter$FieldType;
            astore 13 /* type */
        89: .line 490
            aload 2 /* dt */
            aload 2 /* dt */
            invokevirtual org.joda.time.DateTime.getYear:()I
            invokestatic org.jruby.util.RubyDateFormatter.year:(Lorg/joda/time/DateTime;I)I
            bipush 100
            irem
            i2l
            lstore 11 /* value */
        90: .line 491
            goto 140
        91: .line 494
      StackMap locals:
      StackMap stack:
            aload 2 /* dt */
            invokevirtual org.joda.time.DateTime.getZone:()Lorg/joda/time/DateTimeZone;
            aload 2 /* dt */
            invokevirtual org.joda.time.DateTime.getMillis:()J
            invokevirtual org.joda.time.DateTimeZone.getOffset:(J)I
            sipush 1000
            idiv
            i2l
            lstore 11 /* value */
        92: .line 495
            aload 8 /* token */
            invokevirtual org.jruby.util.RubyDateFormatter$Token.getData:()Ljava/lang/Object;
            checkcast java.lang.Integer
            invokevirtual java.lang.Integer.intValue:()I
            istore 16 /* colons */
        start local 16 // int colons
        93: .line 496
            iload 16 /* colons */
            lload 11 /* value */
            l2i
            aload 6 /* formatter */
            invokestatic org.jruby.util.RubyDateFormatter.formatZone:(IILorg/jruby/util/RubyTimeOutputFormatter;)Ljava/lang/StringBuilder;
            astore 10 /* output */
        94: .line 497
            goto 140
        end local 16 // int colons
        95: .line 499
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.jruby.util.RubyDateFormatter.runtime:Lorg/jruby/Ruby;
            aload 2 /* dt */
            invokestatic org.jruby.RubyTime.getRubyTimeZoneName:(Lorg/jruby/Ruby;Lorg/joda/time/DateTime;)Ljava/lang/String;
            astore 10 /* output */
        96: .line 500
            goto 140
        97: .line 502
      StackMap locals:
      StackMap stack:
            getstatic org.jruby.util.RubyDateFormatter$FieldType.NUMERIC:Lorg/jruby/util/RubyDateFormatter$FieldType;
            astore 13 /* type */
        98: .line 503
            aload 2 /* dt */
            aload 2 /* dt */
            invokevirtual org.joda.time.DateTime.getYear:()I
            invokestatic org.jruby.util.RubyDateFormatter.year:(Lorg/joda/time/DateTime;I)I
            bipush 100
            idiv
            i2l
            lstore 11 /* value */
        99: .line 504
            goto 140
       100: .line 506
      StackMap locals:
      StackMap stack:
            getstatic org.jruby.util.RubyDateFormatter$FieldType.NUMERIC:Lorg/jruby/util/RubyDateFormatter$FieldType;
            astore 13 /* type */
       101: .line 507
            aload 2 /* dt */
            invokevirtual org.joda.time.DateTime.getMillis:()J
            ldc 1000
            ldiv
            lstore 11 /* value */
       102: .line 508
            goto 140
       103: .line 510
      StackMap locals:
      StackMap stack:
            getstatic org.jruby.util.RubyDateFormatter$FieldType.NUMERIC2:Lorg/jruby/util/RubyDateFormatter$FieldType;
            astore 13 /* type */
       104: .line 511
            aload 2 /* dt */
            invokevirtual org.joda.time.DateTime.getWeekOfWeekyear:()I
            i2l
            lstore 11 /* value */
       105: .line 512
            goto 140
       106: .line 515
      StackMap locals:
      StackMap stack:
            aload 14 /* format */
            getstatic org.jruby.util.RubyDateFormatter$Format.FORMAT_NANOSEC:Lorg/jruby/util/RubyDateFormatter$Format;
            if_acmpne 107
            bipush 9
            goto 108
      StackMap locals:
      StackMap stack:
       107: iconst_3
      StackMap locals:
      StackMap stack: int
       108: istore 17 /* defaultWidth */
        start local 17 // int defaultWidth
       109: .line 516
            aload 6 /* formatter */
            iload 17 /* defaultWidth */
            invokevirtual org.jruby.util.RubyTimeOutputFormatter.getWidth:(I)I
            istore 18 /* width */
        start local 18 // int width
       110: .line 518
            aload 2 /* dt */
            invokevirtual org.joda.time.DateTime.getMillisOfSecond:()I
            i2l
            iconst_3
            bipush 48
            invokestatic org.jruby.util.RubyTimeOutputFormatter.formatNumber:(JIC)Ljava/lang/CharSequence;
            astore 10 /* output */
       111: .line 519
            iload 18 /* width */
            iconst_3
            if_icmple 118
       112: .line 520
            new java.lang.StringBuilder
            dup
            aload 10 /* output */
            invokeinterface java.lang.CharSequence.length:()I
            bipush 6
            iadd
            invokespecial java.lang.StringBuilder.<init>:(I)V
            aload 10 /* output */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/CharSequence;)Ljava/lang/StringBuilder;
            astore 19 /* buff */
        start local 19 // java.lang.StringBuilder buff
       113: .line 521
            aload 5 /* sub_millis */
            ifnonnull 116
       114: .line 522
            aload 19 /* buff */
            lload 3 /* nsec */
            bipush 6
            bipush 48
            invokestatic org.jruby.util.RubyTimeOutputFormatter.formatNumber:(JIC)Ljava/lang/CharSequence;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/CharSequence;)Ljava/lang/StringBuilder;
            pop
       115: .line 523
            goto 117
       116: .line 524
      StackMap locals: org.jruby.util.RubyDateFormatter java.util.List org.joda.time.DateTime long org.jruby.RubyNumeric org.jruby.util.RubyTimeOutputFormatter org.jruby.util.ByteList org.jruby.util.RubyDateFormatter$Token java.util.Iterator java.lang.CharSequence long org.jruby.util.RubyDateFormatter$FieldType org.jruby.util.RubyDateFormatter$Format top top int int java.lang.StringBuilder
      StackMap stack:
            aload 0 /* this */
            getfield org.jruby.util.RubyDateFormatter.runtime:Lorg/jruby/Ruby;
            aload 19 /* buff */
            iload 18 /* width */
            aload 5 /* sub_millis */
            invokestatic org.jruby.util.RubyDateFormatter.formatSubMillisGt3:(Lorg/jruby/Ruby;Ljava/lang/StringBuilder;ILorg/jruby/RubyNumeric;)V
       117: .line 526
      StackMap locals:
      StackMap stack:
            aload 19 /* buff */
            astore 10 /* output */
        end local 19 // java.lang.StringBuilder buff
       118: .line 529
      StackMap locals:
      StackMap stack:
            iload 18 /* width */
            aload 10 /* output */
            invokeinterface java.lang.CharSequence.length:()I
            if_icmpge 121
       119: .line 530
            aload 10 /* output */
            iconst_0
            iload 18 /* width */
            invokeinterface java.lang.CharSequence.subSequence:(II)Ljava/lang/CharSequence;
            astore 10 /* output */
       120: .line 531
            goto 126
       121: .line 532
      StackMap locals:
      StackMap stack:
            new java.lang.StringBuilder
            dup
            iload 18 /* width */
            invokespecial java.lang.StringBuilder.<init>:(I)V
            aload 10 /* output */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/CharSequence;)Ljava/lang/StringBuilder;
            astore 19 /* buff */
        start local 19 // java.lang.StringBuilder buff
       122: .line 534
            goto 124
      StackMap locals: java.lang.StringBuilder
      StackMap stack:
       123: aload 19 /* buff */
            bipush 48
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
      StackMap locals:
      StackMap stack:
       124: aload 19 /* buff */
            invokevirtual java.lang.StringBuilder.length:()I
            iload 18 /* width */
            if_icmplt 123
       125: .line 535
            aload 19 /* buff */
            astore 10 /* output */
        end local 19 // java.lang.StringBuilder buff
       126: .line 537
      StackMap locals:
      StackMap stack:
            getstatic org.jruby.util.RubyTimeOutputFormatter.DEFAULT_FORMATTER:Lorg/jruby/util/RubyTimeOutputFormatter;
            astore 6 /* formatter */
       127: .line 538
            goto 140
        end local 18 // int width
        end local 17 // int defaultWidth
       128: .line 540
      StackMap locals: org.jruby.util.RubyDateFormatter java.util.List org.joda.time.DateTime long org.jruby.RubyNumeric org.jruby.util.RubyTimeOutputFormatter org.jruby.util.ByteList org.jruby.util.RubyDateFormatter$Token java.util.Iterator java.lang.CharSequence long org.jruby.util.RubyDateFormatter$FieldType org.jruby.util.RubyDateFormatter$Format
      StackMap stack:
            aload 2 /* dt */
            aload 2 /* dt */
            invokevirtual org.joda.time.DateTime.getWeekyear:()I
            invokestatic org.jruby.util.RubyDateFormatter.year:(Lorg/joda/time/DateTime;I)I
            i2l
            lstore 11 /* value */
       129: .line 541
            lload 11 /* value */
            lconst_0
            lcmp
            iflt 130
            getstatic org.jruby.util.RubyDateFormatter$FieldType.NUMERIC4:Lorg/jruby/util/RubyDateFormatter$FieldType;
            goto 131
      StackMap locals:
      StackMap stack:
       130: getstatic org.jruby.util.RubyDateFormatter$FieldType.NUMERIC5:Lorg/jruby/util/RubyDateFormatter$FieldType;
      StackMap locals:
      StackMap stack: org.jruby.util.RubyDateFormatter$FieldType
       131: astore 13 /* type */
       132: .line 542
            goto 140
       133: .line 544
      StackMap locals:
      StackMap stack:
            getstatic org.jruby.util.RubyDateFormatter$FieldType.NUMERIC2:Lorg/jruby/util/RubyDateFormatter$FieldType;
            astore 13 /* type */
       134: .line 545
            aload 2 /* dt */
            aload 2 /* dt */
            invokevirtual org.joda.time.DateTime.getWeekyear:()I
            invokestatic org.jruby.util.RubyDateFormatter.year:(Lorg/joda/time/DateTime;I)I
            bipush 100
            irem
            i2l
            lstore 11 /* value */
       135: .line 546
            goto 140
       136: .line 549
      StackMap locals:
      StackMap stack:
            getstatic org.jruby.util.RubyDateFormatter$FieldType.NUMERIC:Lorg/jruby/util/RubyDateFormatter$FieldType;
            astore 13 /* type */
       137: .line 550
            aload 2 /* dt */
            invokevirtual org.joda.time.DateTime.getMillis:()J
            lstore 11 /* value */
       138: .line 551
            goto 140
       139: .line 553
      StackMap locals:
      StackMap stack:
            new java.lang.Error
            dup
            ldc "FORMAT_SPECIAL is a special token only for the lexer."
            invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
            athrow
       140: .line 558
      StackMap locals:
      StackMap stack:
            aload 6 /* formatter */
            aload 10 /* output */
            lload 11 /* value */
            aload 13 /* type */
            invokevirtual org.jruby.util.RubyTimeOutputFormatter.format:(Ljava/lang/CharSequence;JLorg/jruby/util/RubyDateFormatter$FieldType;)Ljava/lang/String;
            astore 15 /* formatted */
        start local 15 // java.lang.String formatted
       141: .line 559
            goto 144
        end local 15 // java.lang.String formatted
      StackMap locals:
      StackMap stack: java.lang.IndexOutOfBoundsException
       142: pop
       143: .line 560
            aload 0 /* this */
            getfield org.jruby.util.RubyDateFormatter.runtime:Lorg/jruby/Ruby;
            getstatic jnr.constants.platform.Errno.ERANGE:Ljnr/constants/platform/Errno;
            ldc "strftime"
            invokevirtual org.jruby.Ruby.newErrnoFromErrno:(Ljnr/constants/platform/Errno;Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
            athrow
        start local 15 // java.lang.String formatted
       144: .line 564
      StackMap locals: java.lang.String
      StackMap stack:
            getstatic org.jruby.util.RubyTimeOutputFormatter.DEFAULT_FORMATTER:Lorg/jruby/util/RubyTimeOutputFormatter;
            astore 6 /* formatter */
       145: .line 566
            aload 7 /* toAppendTo */
            aload 15 /* formatted */
            aload 0 /* this */
            getfield org.jruby.util.RubyDateFormatter.runtime:Lorg/jruby/Ruby;
            invokevirtual org.jruby.Ruby.getEncodingService:()Lorg/jruby/runtime/encoding/EncodingService;
            aload 7 /* toAppendTo */
            invokevirtual org.jruby.util.ByteList.getEncoding:()Lorg/jcodings/Encoding;
            invokevirtual org.jruby.runtime.encoding.EncodingService.charsetForEncoding:(Lorg/jcodings/Encoding;)Ljava/nio/charset/Charset;
            invokevirtual java.lang.String.getBytes:(Ljava/nio/charset/Charset;)[B
            invokevirtual org.jruby.util.ByteList.append:([B)V
        end local 15 // java.lang.String formatted
        end local 14 // org.jruby.util.RubyDateFormatter$Format format
        end local 13 // org.jruby.util.RubyDateFormatter$FieldType type
        end local 11 // long value
        end local 10 // java.lang.CharSequence output
        end local 8 // org.jruby.util.RubyDateFormatter$Token token
       146: .line 387
      StackMap locals: org.jruby.util.RubyDateFormatter java.util.List org.joda.time.DateTime long org.jruby.RubyNumeric org.jruby.util.RubyTimeOutputFormatter org.jruby.util.ByteList top java.util.Iterator
      StackMap stack:
            aload 9
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 3
       147: .line 569
            aload 7 /* toAppendTo */
            areturn
        end local 7 // org.jruby.util.ByteList toAppendTo
        end local 6 // org.jruby.util.RubyTimeOutputFormatter formatter
        end local 5 // org.jruby.RubyNumeric sub_millis
        end local 3 // long nsec
        end local 2 // org.joda.time.DateTime dt
        end local 1 // java.util.List compiledPattern
        end local 0 // org.jruby.util.RubyDateFormatter this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0  148     0             this  Lorg/jruby/util/RubyDateFormatter;
            0  148     1  compiledPattern  Ljava/util/List<Lorg/jruby/util/RubyDateFormatter$Token;>;
            0  148     2               dt  Lorg/joda/time/DateTime;
            0  148     3             nsec  J
            0  148     5       sub_millis  Lorg/jruby/RubyNumeric;
            1  148     6        formatter  Lorg/jruby/util/RubyTimeOutputFormatter;
            2  148     7       toAppendTo  Lorg/jruby/util/ByteList;
            4  146     8            token  Lorg/jruby/util/RubyDateFormatter$Token;
            5  146    10           output  Ljava/lang/CharSequence;
            6  146    11            value  J
            7  146    13             type  Lorg/jruby/util/RubyDateFormatter$FieldType;
            8  146    14           format  Lorg/jruby/util/RubyDateFormatter$Format;
           16   20    15                v  I
           21   25    15                v  I
           93   95    16           colons  I
          109  128    17     defaultWidth  I
          110  128    18            width  I
          113  118    19             buff  Ljava/lang/StringBuilder;
          122  126    19             buff  Ljava/lang/StringBuilder;
          141  142    15        formatted  Ljava/lang/String;
          144  146    15        formatted  Ljava/lang/String;
      Exception table:
        from    to  target  type
         140   141     142  Class java.lang.IndexOutOfBoundsException
    Signature: (Ljava/util/List<Lorg/jruby/util/RubyDateFormatter$Token;>;Lorg/joda/time/DateTime;JLorg/jruby/RubyNumeric;)Lorg/jruby/util/ByteList;
    MethodParameters:
                 Name  Flags
      compiledPattern  
      dt               
      nsec             
      sub_millis       

  private static void formatSubMillisGt3(org.jruby.Ruby, java.lang.StringBuilder, int, org.jruby.RubyNumeric);
    descriptor: (Lorg/jruby/Ruby;Ljava/lang/StringBuilder;ILorg/jruby/RubyNumeric;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=5, locals=10, args_size=4
        start local 0 // org.jruby.Ruby runtime
        start local 1 // java.lang.StringBuilder buff
        start local 2 // int width
        start local 3 // org.jruby.RubyNumeric sub_millis
         0: .line 574
            iload 2 /* width */
            iconst_3
            isub
            istore 4 /* prec */
        start local 4 // int prec
         1: .line 575
            aload 0 /* runtime */
            invokevirtual org.jruby.Ruby.getCurrentContext:()Lorg/jruby/runtime/ThreadContext;
            astore 5 /* context */
        start local 5 // org.jruby.runtime.ThreadContext context
         2: .line 576
            aload 0 /* runtime */
            bipush 10
            invokevirtual org.jruby.Ruby.newFixnum:(I)Lorg/jruby/RubyFixnum;
            aload 5 /* context */
            iload 4 /* prec */
            i2l
            invokevirtual org.jruby.RubyFixnum.op_pow:(Lorg/jruby/runtime/ThreadContext;J)Lorg/jruby/runtime/builtin/IRubyObject;
            checkcast org.jruby.RubyNumeric
            astore 6 /* power */
        start local 6 // org.jruby.RubyNumeric power
         3: .line 577
            aload 3 /* sub_millis */
            aload 5 /* context */
            invokevirtual org.jruby.RubyNumeric.numerator:(Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
         4: .line 578
            invokeinterface org.jruby.runtime.builtin.IRubyObject.convertToInteger:()Lorg/jruby/RubyInteger;
            aload 5 /* context */
            aload 6 /* power */
            invokevirtual org.jruby.RubyInteger.op_mul:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
         5: .line 577
            checkcast org.jruby.RubyNumeric
            astore 7 /* truncated */
        start local 7 // org.jruby.RubyNumeric truncated
         6: .line 579
            aload 7 /* truncated */
            aload 5 /* context */
            aload 3 /* sub_millis */
            aload 5 /* context */
            invokevirtual org.jruby.RubyNumeric.denominator:(Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
            invokevirtual org.jruby.RubyNumeric.idiv:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            checkcast org.jruby.RubyNumeric
            astore 7 /* truncated */
         7: .line 580
            aload 7 /* truncated */
            invokevirtual org.jruby.RubyNumeric.convertToInteger:()Lorg/jruby/RubyInteger;
            invokevirtual org.jruby.RubyInteger.getLongValue:()J
            lstore 8 /* decimals */
        start local 8 // long decimals
         8: .line 581
            aload 1 /* buff */
            lload 8 /* decimals */
            iload 4 /* prec */
            bipush 48
            invokestatic org.jruby.util.RubyTimeOutputFormatter.formatNumber:(JIC)Ljava/lang/CharSequence;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/CharSequence;)Ljava/lang/StringBuilder;
            pop
         9: .line 582
            return
        end local 8 // long decimals
        end local 7 // org.jruby.RubyNumeric truncated
        end local 6 // org.jruby.RubyNumeric power
        end local 5 // org.jruby.runtime.ThreadContext context
        end local 4 // int prec
        end local 3 // org.jruby.RubyNumeric sub_millis
        end local 2 // int width
        end local 1 // java.lang.StringBuilder buff
        end local 0 // org.jruby.Ruby runtime
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   10     0     runtime  Lorg/jruby/Ruby;
            0   10     1        buff  Ljava/lang/StringBuilder;
            0   10     2       width  I
            0   10     3  sub_millis  Lorg/jruby/RubyNumeric;
            1   10     4        prec  I
            2   10     5     context  Lorg/jruby/runtime/ThreadContext;
            3   10     6       power  Lorg/jruby/RubyNumeric;
            6   10     7   truncated  Lorg/jruby/RubyNumeric;
            8   10     8    decimals  J
    MethodParameters:
            Name  Flags
      runtime     final
      buff        final
      width       final
      sub_millis  

  private static int year(org.joda.time.DateTime, int);
    descriptor: (Lorg/joda/time/DateTime;I)I
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // org.joda.time.DateTime dt
        start local 1 // int year
         0: .line 590
            iload 1 /* year */
            ifge 5
         1: .line 591
            aload 0 /* dt */
            invokevirtual org.joda.time.DateTime.getChronology:()Lorg/joda/time/Chronology;
            dup
            astore 2 /* c */
        start local 2 // org.joda.time.Chronology c
         2: instanceof org.joda.time.chrono.JulianChronology
            ifne 4
         3: .line 592
            aload 2 /* c */
            instanceof org.joda.time.chrono.GJChronology
            ifeq 5
            aload 2 /* c */
            checkcast org.joda.time.chrono.GJChronology
            invokevirtual org.joda.time.chrono.GJChronology.getGregorianCutover:()Lorg/joda/time/Instant;
            aload 0 /* dt */
            invokevirtual org.joda.time.Instant.isAfter:(Lorg/joda/time/ReadableInstant;)Z
            ifeq 5
         4: .line 593
      StackMap locals: org.joda.time.Chronology
      StackMap stack:
            iload 1 /* year */
            iconst_1
            iadd
            ireturn
        end local 2 // org.joda.time.Chronology c
         5: .line 594
      StackMap locals:
      StackMap stack:
            iload 1 /* year */
            ireturn
        end local 1 // int year
        end local 0 // org.joda.time.DateTime dt
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0    dt  Lorg/joda/time/DateTime;
            0    6     1  year  I
            2    5     2     c  Lorg/joda/time/Chronology;
    MethodParameters:
      Name  Flags
      dt    
      year  

  private static int formatWeekYear(org.joda.time.DateTime, int);
    descriptor: (Lorg/joda/time/DateTime;I)I
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=4, args_size=2
        start local 0 // org.joda.time.DateTime dt
        start local 1 // int firstDayOfWeek
         0: .line 598
            aload 0 /* dt */
            invokevirtual org.joda.time.DateTime.toGregorianCalendar:()Ljava/util/GregorianCalendar;
            astore 2 /* dtCalendar */
        start local 2 // java.util.Calendar dtCalendar
         1: .line 599
            aload 2 /* dtCalendar */
            iload 1 /* firstDayOfWeek */
            invokevirtual java.util.Calendar.setFirstDayOfWeek:(I)V
         2: .line 600
            aload 2 /* dtCalendar */
            bipush 7
            invokevirtual java.util.Calendar.setMinimalDaysInFirstWeek:(I)V
         3: .line 601
            aload 2 /* dtCalendar */
            iconst_3
            invokevirtual java.util.Calendar.get:(I)I
            istore 3 /* value */
        start local 3 // int value
         4: .line 602
            iload 3 /* value */
            bipush 52
            if_icmpeq 5
            iload 3 /* value */
            bipush 53
            if_icmpne 7
      StackMap locals: java.util.Calendar int
      StackMap stack:
         5: aload 2 /* dtCalendar */
            iconst_2
            invokevirtual java.util.Calendar.get:(I)I
            ifne 7
         6: .line 606
            iconst_0
            istore 3 /* value */
         7: .line 608
      StackMap locals:
      StackMap stack:
            iload 3 /* value */
            ireturn
        end local 3 // int value
        end local 2 // java.util.Calendar dtCalendar
        end local 1 // int firstDayOfWeek
        end local 0 // org.joda.time.DateTime dt
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    8     0              dt  Lorg/joda/time/DateTime;
            0    8     1  firstDayOfWeek  I
            1    8     2      dtCalendar  Ljava/util/Calendar;
            4    8     3           value  I
    MethodParameters:
                Name  Flags
      dt              
      firstDayOfWeek  

  private static java.lang.StringBuilder formatZone(int, int, org.jruby.util.RubyTimeOutputFormatter);
    descriptor: (IILorg/jruby/util/RubyTimeOutputFormatter;)Ljava/lang/StringBuilder;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=4, locals=15, args_size=3
        start local 0 // int colons
        start local 1 // int value
        start local 2 // org.jruby.util.RubyTimeOutputFormatter formatter
         0: .line 612
            iload 1 /* value */
            invokestatic java.lang.Math.abs:(I)I
            istore 3 /* seconds */
        start local 3 // int seconds
         1: .line 613
            iload 3 /* seconds */
            sipush 3600
            idiv
            istore 4 /* hours */
        start local 4 // int hours
         2: .line 614
            iload 3 /* seconds */
            sipush 3600
            irem
            istore 3 /* seconds */
         3: .line 615
            iload 3 /* seconds */
            bipush 60
            idiv
            istore 5 /* minutes */
        start local 5 // int minutes
         4: .line 616
            iload 3 /* seconds */
            bipush 60
            irem
            istore 3 /* seconds */
         5: .line 618
            iload 1 /* value */
            ifge 7
            iload 4 /* hours */
            ifeq 7
         6: .line 619
            iload 4 /* hours */
            ineg
            istore 4 /* hours */
         7: .line 622
      StackMap locals: int int int
      StackMap stack:
            iload 5 /* minutes */
            i2l
            iconst_2
            bipush 48
            invokestatic org.jruby.util.RubyTimeOutputFormatter.formatNumber:(JIC)Ljava/lang/CharSequence;
            astore 6 /* mm */
        start local 6 // java.lang.CharSequence mm
         8: .line 623
            iload 3 /* seconds */
            i2l
            iconst_2
            bipush 48
            invokestatic org.jruby.util.RubyTimeOutputFormatter.formatNumber:(JIC)Ljava/lang/CharSequence;
            astore 7 /* ss */
        start local 7 // java.lang.CharSequence ss
         9: .line 625
            aload 2 /* formatter */
            bipush 48
            invokevirtual org.jruby.util.RubyTimeOutputFormatter.getPadder:(C)C
            istore 8 /* padder */
        start local 8 // char padder
        10: .line 626
            iconst_m1
            istore 9 /* defaultWidth */
        start local 9 // int defaultWidth
        11: .line 627
            aconst_null
            astore 10 /* after */
        start local 10 // java.lang.CharSequence after
        12: .line 629
            iload 0 /* colons */
            tableswitch { // 0 - 3
                    0: 13
                    1: 16
                    2: 19
                    3: 22
              default: 28
          }
        13: .line 631
      StackMap locals: int int org.jruby.util.RubyTimeOutputFormatter int int int java.lang.CharSequence java.lang.CharSequence int int java.lang.CharSequence
      StackMap stack:
            iconst_5
            istore 9 /* defaultWidth */
        14: .line 632
            aload 6 /* mm */
            astore 10 /* after */
        15: .line 633
            goto 28
        16: .line 635
      StackMap locals:
      StackMap stack:
            bipush 6
            istore 9 /* defaultWidth */
        17: .line 636
            new java.lang.StringBuilder
            dup
            aload 6 /* mm */
            invokeinterface java.lang.CharSequence.length:()I
            iconst_1
            iadd
            invokespecial java.lang.StringBuilder.<init>:(I)V
            bipush 58
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            aload 6 /* mm */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/CharSequence;)Ljava/lang/StringBuilder;
            astore 10 /* after */
        18: .line 637
            goto 28
        19: .line 639
      StackMap locals:
      StackMap stack:
            bipush 9
            istore 9 /* defaultWidth */
        20: .line 640
            new java.lang.StringBuilder
            dup
            aload 6 /* mm */
            invokeinterface java.lang.CharSequence.length:()I
            aload 7 /* ss */
            invokeinterface java.lang.CharSequence.length:()I
            iadd
            iconst_2
            iadd
            invokespecial java.lang.StringBuilder.<init>:(I)V
            bipush 58
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            aload 6 /* mm */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/CharSequence;)Ljava/lang/StringBuilder;
            bipush 58
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            aload 7 /* ss */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/CharSequence;)Ljava/lang/StringBuilder;
            astore 10 /* after */
        21: .line 641
            goto 28
        22: .line 643
      StackMap locals:
      StackMap stack:
            new java.lang.StringBuilder
            dup
            aload 6 /* mm */
            invokeinterface java.lang.CharSequence.length:()I
            aload 7 /* ss */
            invokeinterface java.lang.CharSequence.length:()I
            iadd
            iconst_2
            iadd
            invokespecial java.lang.StringBuilder.<init>:(I)V
            astore 11 /* sb */
        start local 11 // java.lang.StringBuilder sb
        23: .line 644
            iload 5 /* minutes */
            ifne 24
            iload 3 /* seconds */
            ifeq 25
      StackMap locals: java.lang.StringBuilder
      StackMap stack:
        24: aload 11 /* sb */
            bipush 58
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            aload 6 /* mm */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/CharSequence;)Ljava/lang/StringBuilder;
            pop
        25: .line 645
      StackMap locals:
      StackMap stack:
            iload 3 /* seconds */
            ifeq 26
            aload 11 /* sb */
            bipush 58
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            aload 7 /* ss */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/CharSequence;)Ljava/lang/StringBuilder;
            pop
        26: .line 646
      StackMap locals:
      StackMap stack:
            aload 11 /* sb */
            astore 10 /* after */
        27: .line 647
            aload 10 /* after */
            invokeinterface java.lang.CharSequence.length:()I
            iconst_3
            iadd
            istore 9 /* defaultWidth */
        end local 11 // java.lang.StringBuilder sb
        28: .line 651
      StackMap locals:
      StackMap stack:
            iload 9 /* defaultWidth */
            iconst_1
            isub
            istore 11 /* minWidth */
        start local 11 // int minWidth
        29: .line 652
            aload 2 /* formatter */
            iload 9 /* defaultWidth */
            invokevirtual org.jruby.util.RubyTimeOutputFormatter.getWidth:(I)I
            istore 12 /* width */
        start local 12 // int width
        30: .line 653
            iload 12 /* width */
            iload 11 /* minWidth */
            if_icmpge 32
        31: .line 654
            iload 11 /* minWidth */
            istore 12 /* width */
        32: .line 656
      StackMap locals: int int
      StackMap stack:
            iload 12 /* width */
            aload 10 /* after */
            invokeinterface java.lang.CharSequence.length:()I
            isub
            istore 12 /* width */
        33: .line 657
            iload 4 /* hours */
            i2l
            iload 12 /* width */
            iload 8 /* padder */
            invokestatic org.jruby.util.RubyTimeOutputFormatter.formatSignedNumber:(JIC)Ljava/lang/StringBuilder;
            astore 13 /* before */
        start local 13 // java.lang.StringBuilder before
        34: .line 659
            iload 1 /* value */
            ifge 40
            iload 4 /* hours */
            ifne 40
        35: .line 660
            iconst_0
            istore 14 /* i */
        start local 14 // int i
        36: goto 39
        37: .line 661
      StackMap locals: java.lang.StringBuilder int
      StackMap stack:
            aload 13 /* before */
            iload 14 /* i */
            invokevirtual java.lang.StringBuilder.charAt:(I)C
            bipush 43
            if_icmpne 38
            aload 13 /* before */
            iload 14 /* i */
            bipush 45
            invokevirtual java.lang.StringBuilder.setCharAt:(IC)V
        38: .line 660
      StackMap locals:
      StackMap stack:
            iinc 14 /* i */ 1
      StackMap locals:
      StackMap stack:
        39: iload 14 /* i */
            aload 13 /* before */
            invokevirtual java.lang.StringBuilder.length:()I
            if_icmplt 37
        end local 14 // int i
        40: .line 664
      StackMap locals:
      StackMap stack:
            new java.lang.StringBuilder
            dup
            aload 13 /* before */
            invokevirtual java.lang.StringBuilder.length:()I
            aload 10 /* after */
            invokeinterface java.lang.CharSequence.length:()I
            iadd
            invokespecial java.lang.StringBuilder.<init>:(I)V
            aload 13 /* before */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/CharSequence;)Ljava/lang/StringBuilder;
            aload 10 /* after */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/CharSequence;)Ljava/lang/StringBuilder;
            areturn
        end local 13 // java.lang.StringBuilder before
        end local 12 // int width
        end local 11 // int minWidth
        end local 10 // java.lang.CharSequence after
        end local 9 // int defaultWidth
        end local 8 // char padder
        end local 7 // java.lang.CharSequence ss
        end local 6 // java.lang.CharSequence mm
        end local 5 // int minutes
        end local 4 // int hours
        end local 3 // int seconds
        end local 2 // org.jruby.util.RubyTimeOutputFormatter formatter
        end local 1 // int value
        end local 0 // int colons
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   41     0        colons  I
            0   41     1         value  I
            0   41     2     formatter  Lorg/jruby/util/RubyTimeOutputFormatter;
            1   41     3       seconds  I
            2   41     4         hours  I
            4   41     5       minutes  I
            8   41     6            mm  Ljava/lang/CharSequence;
            9   41     7            ss  Ljava/lang/CharSequence;
           10   41     8        padder  C
           11   41     9  defaultWidth  I
           12   41    10         after  Ljava/lang/CharSequence;
           23   28    11            sb  Ljava/lang/StringBuilder;
           29   41    11      minWidth  I
           30   41    12         width  I
           34   41    13        before  Ljava/lang/StringBuilder;
           36   40    14             i  I
    MethodParameters:
           Name  Flags
      colons     
      value      
      formatter  

  public java.util.Date parse(java.lang.String, java.text.ParsePosition);
    descriptor: (Ljava/lang/String;Ljava/text/ParsePosition;)Ljava/util/Date;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // org.jruby.util.RubyDateFormatter this
        start local 1 // java.lang.String source
        start local 2 // java.text.ParsePosition pos
         0: .line 671
            new java.lang.UnsupportedOperationException
            dup
            invokespecial java.lang.UnsupportedOperationException.<init>:()V
            athrow
        end local 2 // java.text.ParsePosition pos
        end local 1 // java.lang.String source
        end local 0 // org.jruby.util.RubyDateFormatter this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0    this  Lorg/jruby/util/RubyDateFormatter;
            0    1     1  source  Ljava/lang/String;
            0    1     2     pos  Ljava/text/ParsePosition;
    MethodParameters:
        Name  Flags
      source  
      pos     

  static int[] $SWITCH_TABLE$org$jruby$util$RubyDateFormatter$Format();
    descriptor: ()[I
    flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=3, locals=1, args_size=0
         0: .line 63
            getstatic org.jruby.util.RubyDateFormatter.$SWITCH_TABLE$org$jruby$util$RubyDateFormatter$Format:[I
            dup
            ifnull 1
            areturn
      StackMap locals:
      StackMap stack: int[]
         1: pop
            invokestatic org.jruby.util.RubyDateFormatter$Format.values:()[Lorg/jruby/util/RubyDateFormatter$Format;
            arraylength
            newarray 10
            astore 0
         2: aload 0
            getstatic org.jruby.util.RubyDateFormatter$Format.FORMAT_CENTURY:Lorg/jruby/util/RubyDateFormatter$Format;
            invokevirtual org.jruby.util.RubyDateFormatter$Format.ordinal:()I
            bipush 9
            iastore
         3: goto 5
      StackMap locals: int[]
      StackMap stack: java.lang.NoSuchFieldError
         4: pop
      StackMap locals:
      StackMap stack:
         5: aload 0
            getstatic org.jruby.util.RubyDateFormatter$Format.FORMAT_COLON_ZONE_OFF:Lorg/jruby/util/RubyDateFormatter$Format;
            invokevirtual org.jruby.util.RubyDateFormatter$Format.ordinal:()I
            bipush 34
            iastore
         6: goto 8
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
         7: pop
      StackMap locals:
      StackMap stack:
         8: aload 0
            getstatic org.jruby.util.RubyDateFormatter$Format.FORMAT_DAY:Lorg/jruby/util/RubyDateFormatter$Format;
            invokevirtual org.jruby.util.RubyDateFormatter$Format.ordinal:()I
            bipush 10
            iastore
         9: goto 11
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        10: pop
      StackMap locals:
      StackMap stack:
        11: aload 0
            getstatic org.jruby.util.RubyDateFormatter$Format.FORMAT_DAY_S:Lorg/jruby/util/RubyDateFormatter$Format;
            invokevirtual org.jruby.util.RubyDateFormatter$Format.ordinal:()I
            bipush 11
            iastore
        12: goto 14
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        13: pop
      StackMap locals:
      StackMap stack:
        14: aload 0
            getstatic org.jruby.util.RubyDateFormatter$Format.FORMAT_DAY_WEEK:Lorg/jruby/util/RubyDateFormatter$Format;
            invokevirtual org.jruby.util.RubyDateFormatter$Format.ordinal:()I
            bipush 31
            iastore
        15: goto 17
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        16: pop
      StackMap locals:
      StackMap stack:
        17: aload 0
            getstatic org.jruby.util.RubyDateFormatter$Format.FORMAT_DAY_WEEK2:Lorg/jruby/util/RubyDateFormatter$Format;
            invokevirtual org.jruby.util.RubyDateFormatter$Format.ordinal:()I
            bipush 28
            iastore
        18: goto 20
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        19: pop
      StackMap locals:
      StackMap stack:
        20: aload 0
            getstatic org.jruby.util.RubyDateFormatter$Format.FORMAT_DAY_YEAR:Lorg/jruby/util/RubyDateFormatter$Format;
            invokevirtual org.jruby.util.RubyDateFormatter$Format.ordinal:()I
            bipush 16
            iastore
        21: goto 23
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        22: pop
      StackMap locals:
      StackMap stack:
        23: aload 0
            getstatic org.jruby.util.RubyDateFormatter$Format.FORMAT_ENCODING:Lorg/jruby/util/RubyDateFormatter$Format;
            invokevirtual org.jruby.util.RubyDateFormatter$Format.ordinal:()I
            iconst_1
            iastore
        24: goto 26
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        25: pop
      StackMap locals:
      StackMap stack:
        26: aload 0
            getstatic org.jruby.util.RubyDateFormatter$Format.FORMAT_EPOCH:Lorg/jruby/util/RubyDateFormatter$Format;
            invokevirtual org.jruby.util.RubyDateFormatter$Format.ordinal:()I
            bipush 26
            iastore
        27: goto 29
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        28: pop
      StackMap locals:
      StackMap stack:
        29: aload 0
            getstatic org.jruby.util.RubyDateFormatter$Format.FORMAT_HOUR:Lorg/jruby/util/RubyDateFormatter$Format;
            invokevirtual org.jruby.util.RubyDateFormatter$Format.ordinal:()I
            bipush 14
            iastore
        30: goto 32
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        31: pop
      StackMap locals:
      StackMap stack:
        32: aload 0
            getstatic org.jruby.util.RubyDateFormatter$Format.FORMAT_HOUR_BLANK:Lorg/jruby/util/RubyDateFormatter$Format;
            invokevirtual org.jruby.util.RubyDateFormatter$Format.ordinal:()I
            bipush 17
            iastore
        33: goto 35
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        34: pop
      StackMap locals:
      StackMap stack:
        35: aload 0
            getstatic org.jruby.util.RubyDateFormatter$Format.FORMAT_HOUR_M:Lorg/jruby/util/RubyDateFormatter$Format;
            invokevirtual org.jruby.util.RubyDateFormatter$Format.ordinal:()I
            bipush 15
            iastore
        36: goto 38
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        37: pop
      StackMap locals:
      StackMap stack:
        38: aload 0
            getstatic org.jruby.util.RubyDateFormatter$Format.FORMAT_HOUR_S:Lorg/jruby/util/RubyDateFormatter$Format;
            invokevirtual org.jruby.util.RubyDateFormatter$Format.ordinal:()I
            bipush 19
            iastore
        39: goto 41
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        40: pop
      StackMap locals:
      StackMap stack:
        41: aload 0
            getstatic org.jruby.util.RubyDateFormatter$Format.FORMAT_MERIDIAN:Lorg/jruby/util/RubyDateFormatter$Format;
            invokevirtual org.jruby.util.RubyDateFormatter$Format.ordinal:()I
            bipush 24
            iastore
        42: goto 44
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        43: pop
      StackMap locals:
      StackMap stack:
        44: aload 0
            getstatic org.jruby.util.RubyDateFormatter$Format.FORMAT_MERIDIAN_LOWER_CASE:Lorg/jruby/util/RubyDateFormatter$Format;
            invokevirtual org.jruby.util.RubyDateFormatter$Format.ordinal:()I
            bipush 23
            iastore
        45: goto 47
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        46: pop
      StackMap locals:
      StackMap stack:
        47: aload 0
            getstatic org.jruby.util.RubyDateFormatter$Format.FORMAT_MICROSEC_EPOCH:Lorg/jruby/util/RubyDateFormatter$Format;
            invokevirtual org.jruby.util.RubyDateFormatter$Format.ordinal:()I
            bipush 36
            iastore
        48: goto 50
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        49: pop
      StackMap locals:
      StackMap stack:
        50: aload 0
            getstatic org.jruby.util.RubyDateFormatter$Format.FORMAT_MILLISEC:Lorg/jruby/util/RubyDateFormatter$Format;
            invokevirtual org.jruby.util.RubyDateFormatter$Format.ordinal:()I
            bipush 18
            iastore
        51: goto 53
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        52: pop
      StackMap locals:
      StackMap stack:
        53: aload 0
            getstatic org.jruby.util.RubyDateFormatter$Format.FORMAT_MINUTES:Lorg/jruby/util/RubyDateFormatter$Format;
            invokevirtual org.jruby.util.RubyDateFormatter$Format.ordinal:()I
            bipush 20
            iastore
        54: goto 56
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        55: pop
      StackMap locals:
      StackMap stack:
        56: aload 0
            getstatic org.jruby.util.RubyDateFormatter$Format.FORMAT_MONTH:Lorg/jruby/util/RubyDateFormatter$Format;
            invokevirtual org.jruby.util.RubyDateFormatter$Format.ordinal:()I
            bipush 21
            iastore
        57: goto 59
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        58: pop
      StackMap locals:
      StackMap stack:
        59: aload 0
            getstatic org.jruby.util.RubyDateFormatter$Format.FORMAT_MONTH_LONG:Lorg/jruby/util/RubyDateFormatter$Format;
            invokevirtual org.jruby.util.RubyDateFormatter$Format.ordinal:()I
            bipush 7
            iastore
        60: goto 62
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        61: pop
      StackMap locals:
      StackMap stack:
        62: aload 0
            getstatic org.jruby.util.RubyDateFormatter$Format.FORMAT_MONTH_SHORT:Lorg/jruby/util/RubyDateFormatter$Format;
            invokevirtual org.jruby.util.RubyDateFormatter$Format.ordinal:()I
            bipush 8
            iastore
        63: goto 65
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        64: pop
      StackMap locals:
      StackMap stack:
        65: aload 0
            getstatic org.jruby.util.RubyDateFormatter$Format.FORMAT_NANOSEC:Lorg/jruby/util/RubyDateFormatter$Format;
            invokevirtual org.jruby.util.RubyDateFormatter$Format.ordinal:()I
            bipush 22
            iastore
        66: goto 68
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        67: pop
      StackMap locals:
      StackMap stack:
        68: aload 0
            getstatic org.jruby.util.RubyDateFormatter$Format.FORMAT_OUTPUT:Lorg/jruby/util/RubyDateFormatter$Format;
            invokevirtual org.jruby.util.RubyDateFormatter$Format.ordinal:()I
            iconst_3
            iastore
        69: goto 71
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        70: pop
      StackMap locals:
      StackMap stack:
        71: aload 0
            getstatic org.jruby.util.RubyDateFormatter$Format.FORMAT_SECONDS:Lorg/jruby/util/RubyDateFormatter$Format;
            invokevirtual org.jruby.util.RubyDateFormatter$Format.ordinal:()I
            bipush 25
            iastore
        72: goto 74
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        73: pop
      StackMap locals:
      StackMap stack:
        74: aload 0
            getstatic org.jruby.util.RubyDateFormatter$Format.FORMAT_SPECIAL:Lorg/jruby/util/RubyDateFormatter$Format;
            invokevirtual org.jruby.util.RubyDateFormatter$Format.ordinal:()I
            iconst_4
            iastore
        75: goto 77
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        76: pop
      StackMap locals:
      StackMap stack:
        77: aload 0
            getstatic org.jruby.util.RubyDateFormatter$Format.FORMAT_STRING:Lorg/jruby/util/RubyDateFormatter$Format;
            invokevirtual org.jruby.util.RubyDateFormatter$Format.ordinal:()I
            iconst_2
            iastore
        78: goto 80
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        79: pop
      StackMap locals:
      StackMap stack:
        80: aload 0
            getstatic org.jruby.util.RubyDateFormatter$Format.FORMAT_WEEKYEAR:Lorg/jruby/util/RubyDateFormatter$Format;
            invokevirtual org.jruby.util.RubyDateFormatter$Format.ordinal:()I
            bipush 12
            iastore
        81: goto 83
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        82: pop
      StackMap locals:
      StackMap stack:
        83: aload 0
            getstatic org.jruby.util.RubyDateFormatter$Format.FORMAT_WEEKYEAR_SHORT:Lorg/jruby/util/RubyDateFormatter$Format;
            invokevirtual org.jruby.util.RubyDateFormatter$Format.ordinal:()I
            bipush 13
            iastore
        84: goto 86
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        85: pop
      StackMap locals:
      StackMap stack:
        86: aload 0
            getstatic org.jruby.util.RubyDateFormatter$Format.FORMAT_WEEK_LONG:Lorg/jruby/util/RubyDateFormatter$Format;
            invokevirtual org.jruby.util.RubyDateFormatter$Format.ordinal:()I
            iconst_5
            iastore
        87: goto 89
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        88: pop
      StackMap locals:
      StackMap stack:
        89: aload 0
            getstatic org.jruby.util.RubyDateFormatter$Format.FORMAT_WEEK_SHORT:Lorg/jruby/util/RubyDateFormatter$Format;
            invokevirtual org.jruby.util.RubyDateFormatter$Format.ordinal:()I
            bipush 6
            iastore
        90: goto 92
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        91: pop
      StackMap locals:
      StackMap stack:
        92: aload 0
            getstatic org.jruby.util.RubyDateFormatter$Format.FORMAT_WEEK_WEEKYEAR:Lorg/jruby/util/RubyDateFormatter$Format;
            invokevirtual org.jruby.util.RubyDateFormatter$Format.ordinal:()I
            bipush 29
            iastore
        93: goto 95
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        94: pop
      StackMap locals:
      StackMap stack:
        95: aload 0
            getstatic org.jruby.util.RubyDateFormatter$Format.FORMAT_WEEK_YEAR_M:Lorg/jruby/util/RubyDateFormatter$Format;
            invokevirtual org.jruby.util.RubyDateFormatter$Format.ordinal:()I
            bipush 30
            iastore
        96: goto 98
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        97: pop
      StackMap locals:
      StackMap stack:
        98: aload 0
            getstatic org.jruby.util.RubyDateFormatter$Format.FORMAT_WEEK_YEAR_S:Lorg/jruby/util/RubyDateFormatter$Format;
            invokevirtual org.jruby.util.RubyDateFormatter$Format.ordinal:()I
            bipush 27
            iastore
        99: goto 101
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       100: pop
      StackMap locals:
      StackMap stack:
       101: aload 0
            getstatic org.jruby.util.RubyDateFormatter$Format.FORMAT_YEAR_LONG:Lorg/jruby/util/RubyDateFormatter$Format;
            invokevirtual org.jruby.util.RubyDateFormatter$Format.ordinal:()I
            bipush 32
            iastore
       102: goto 104
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       103: pop
      StackMap locals:
      StackMap stack:
       104: aload 0
            getstatic org.jruby.util.RubyDateFormatter$Format.FORMAT_YEAR_SHORT:Lorg/jruby/util/RubyDateFormatter$Format;
            invokevirtual org.jruby.util.RubyDateFormatter$Format.ordinal:()I
            bipush 33
            iastore
       105: goto 107
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       106: pop
      StackMap locals:
      StackMap stack:
       107: aload 0
            getstatic org.jruby.util.RubyDateFormatter$Format.FORMAT_ZONE_ID:Lorg/jruby/util/RubyDateFormatter$Format;
            invokevirtual org.jruby.util.RubyDateFormatter$Format.ordinal:()I
            bipush 35
            iastore
       108: goto 110
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       109: pop
      StackMap locals:
      StackMap stack:
       110: aload 0
            dup
            putstatic org.jruby.util.RubyDateFormatter.$SWITCH_TABLE$org$jruby$util$RubyDateFormatter$Format:[I
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
      Exception table:
        from    to  target  type
           2     3       4  Class java.lang.NoSuchFieldError
           5     6       7  Class java.lang.NoSuchFieldError
           8     9      10  Class java.lang.NoSuchFieldError
          11    12      13  Class java.lang.NoSuchFieldError
          14    15      16  Class java.lang.NoSuchFieldError
          17    18      19  Class java.lang.NoSuchFieldError
          20    21      22  Class java.lang.NoSuchFieldError
          23    24      25  Class java.lang.NoSuchFieldError
          26    27      28  Class java.lang.NoSuchFieldError
          29    30      31  Class java.lang.NoSuchFieldError
          32    33      34  Class java.lang.NoSuchFieldError
          35    36      37  Class java.lang.NoSuchFieldError
          38    39      40  Class java.lang.NoSuchFieldError
          41    42      43  Class java.lang.NoSuchFieldError
          44    45      46  Class java.lang.NoSuchFieldError
          47    48      49  Class java.lang.NoSuchFieldError
          50    51      52  Class java.lang.NoSuchFieldError
          53    54      55  Class java.lang.NoSuchFieldError
          56    57      58  Class java.lang.NoSuchFieldError
          59    60      61  Class java.lang.NoSuchFieldError
          62    63      64  Class java.lang.NoSuchFieldError
          65    66      67  Class java.lang.NoSuchFieldError
          68    69      70  Class java.lang.NoSuchFieldError
          71    72      73  Class java.lang.NoSuchFieldError
          74    75      76  Class java.lang.NoSuchFieldError
          77    78      79  Class java.lang.NoSuchFieldError
          80    81      82  Class java.lang.NoSuchFieldError
          83    84      85  Class java.lang.NoSuchFieldError
          86    87      88  Class java.lang.NoSuchFieldError
          89    90      91  Class java.lang.NoSuchFieldError
          92    93      94  Class java.lang.NoSuchFieldError
          95    96      97  Class java.lang.NoSuchFieldError
          98    99     100  Class java.lang.NoSuchFieldError
         101   102     103  Class java.lang.NoSuchFieldError
         104   105     106  Class java.lang.NoSuchFieldError
         107   108     109  Class java.lang.NoSuchFieldError
}
SourceFile: "RubyDateFormatter.java"
NestMembers:
  org.jruby.util.RubyDateFormatter$FieldType  org.jruby.util.RubyDateFormatter$Format  org.jruby.util.RubyDateFormatter$Token
InnerClasses:
  final FieldType = org.jruby.util.RubyDateFormatter$FieldType of org.jruby.util.RubyDateFormatter
  final Format = org.jruby.util.RubyDateFormatter$Format of org.jruby.util.RubyDateFormatter
  public Token = org.jruby.util.RubyDateFormatter$Token of org.jruby.util.RubyDateFormatter