public class org.jruby.ext.ripper.RipperLexer extends org.jruby.lexer.LexingCommon
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.jruby.ext.ripper.RipperLexer
  super_class: org.jruby.lexer.LexingCommon
{
  private static final java.util.HashMap<java.lang.String, org.jruby.ext.ripper.RipperLexer$Keyword> map;
    descriptor: Ljava/util/HashMap;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    Signature: Ljava/util/HashMap<Ljava/lang/String;Lorg/jruby/ext/ripper/RipperLexer$Keyword;>;

  java.lang.String identValue;
    descriptor: Ljava/lang/String;
    flags: (0x0000) 

  private org.jruby.ext.ripper.RipperParserBase parser;
    descriptor: Lorg/jruby/ext/ripper/RipperParserBase;
    flags: (0x0002) ACC_PRIVATE

  private org.jruby.ext.ripper.StrTerm lex_strterm;
    descriptor: Lorg/jruby/ext/ripper/StrTerm;
    flags: (0x0002) ACC_PRIVATE

  static final int STR_FUNC_INDENT;
    descriptor: I
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: 32

  protected org.jruby.util.ByteList delayed;
    descriptor: Lorg/jruby/util/ByteList;
    flags: (0x0004) ACC_PROTECTED

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

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

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

  private org.jruby.util.ByteList numberBuffer;
    descriptor: Lorg/jruby/util/ByteList;
    flags: (0x0002) ACC_PRIVATE

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=3, locals=0, args_size=0
         0: .line 56
            new java.util.HashMap
            dup
            invokespecial java.util.HashMap.<init>:()V
            putstatic org.jruby.ext.ripper.RipperLexer.map:Ljava/util/HashMap;
         1: .line 57
            getstatic org.jruby.ext.ripper.RipperLexer.map:Ljava/util/HashMap;
            ldc "end"
            getstatic org.jruby.ext.ripper.RipperLexer$Keyword.END:Lorg/jruby/ext/ripper/RipperLexer$Keyword;
            invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         2: .line 58
            getstatic org.jruby.ext.ripper.RipperLexer.map:Ljava/util/HashMap;
            ldc "else"
            getstatic org.jruby.ext.ripper.RipperLexer$Keyword.ELSE:Lorg/jruby/ext/ripper/RipperLexer$Keyword;
            invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         3: .line 59
            getstatic org.jruby.ext.ripper.RipperLexer.map:Ljava/util/HashMap;
            ldc "case"
            getstatic org.jruby.ext.ripper.RipperLexer$Keyword.CASE:Lorg/jruby/ext/ripper/RipperLexer$Keyword;
            invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         4: .line 60
            getstatic org.jruby.ext.ripper.RipperLexer.map:Ljava/util/HashMap;
            ldc "ensure"
            getstatic org.jruby.ext.ripper.RipperLexer$Keyword.ENSURE:Lorg/jruby/ext/ripper/RipperLexer$Keyword;
            invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         5: .line 61
            getstatic org.jruby.ext.ripper.RipperLexer.map:Ljava/util/HashMap;
            ldc "module"
            getstatic org.jruby.ext.ripper.RipperLexer$Keyword.MODULE:Lorg/jruby/ext/ripper/RipperLexer$Keyword;
            invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         6: .line 62
            getstatic org.jruby.ext.ripper.RipperLexer.map:Ljava/util/HashMap;
            ldc "elsif"
            getstatic org.jruby.ext.ripper.RipperLexer$Keyword.ELSIF:Lorg/jruby/ext/ripper/RipperLexer$Keyword;
            invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         7: .line 63
            getstatic org.jruby.ext.ripper.RipperLexer.map:Ljava/util/HashMap;
            ldc "def"
            getstatic org.jruby.ext.ripper.RipperLexer$Keyword.DEF:Lorg/jruby/ext/ripper/RipperLexer$Keyword;
            invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         8: .line 64
            getstatic org.jruby.ext.ripper.RipperLexer.map:Ljava/util/HashMap;
            ldc "rescue"
            getstatic org.jruby.ext.ripper.RipperLexer$Keyword.RESCUE:Lorg/jruby/ext/ripper/RipperLexer$Keyword;
            invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         9: .line 65
            getstatic org.jruby.ext.ripper.RipperLexer.map:Ljava/util/HashMap;
            ldc "not"
            getstatic org.jruby.ext.ripper.RipperLexer$Keyword.NOT:Lorg/jruby/ext/ripper/RipperLexer$Keyword;
            invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        10: .line 66
            getstatic org.jruby.ext.ripper.RipperLexer.map:Ljava/util/HashMap;
            ldc "then"
            getstatic org.jruby.ext.ripper.RipperLexer$Keyword.THEN:Lorg/jruby/ext/ripper/RipperLexer$Keyword;
            invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        11: .line 67
            getstatic org.jruby.ext.ripper.RipperLexer.map:Ljava/util/HashMap;
            ldc "yield"
            getstatic org.jruby.ext.ripper.RipperLexer$Keyword.YIELD:Lorg/jruby/ext/ripper/RipperLexer$Keyword;
            invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        12: .line 68
            getstatic org.jruby.ext.ripper.RipperLexer.map:Ljava/util/HashMap;
            ldc "for"
            getstatic org.jruby.ext.ripper.RipperLexer$Keyword.FOR:Lorg/jruby/ext/ripper/RipperLexer$Keyword;
            invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        13: .line 69
            getstatic org.jruby.ext.ripper.RipperLexer.map:Ljava/util/HashMap;
            ldc "self"
            getstatic org.jruby.ext.ripper.RipperLexer$Keyword.SELF:Lorg/jruby/ext/ripper/RipperLexer$Keyword;
            invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        14: .line 70
            getstatic org.jruby.ext.ripper.RipperLexer.map:Ljava/util/HashMap;
            ldc "false"
            getstatic org.jruby.ext.ripper.RipperLexer$Keyword.FALSE:Lorg/jruby/ext/ripper/RipperLexer$Keyword;
            invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        15: .line 71
            getstatic org.jruby.ext.ripper.RipperLexer.map:Ljava/util/HashMap;
            ldc "retry"
            getstatic org.jruby.ext.ripper.RipperLexer$Keyword.RETRY:Lorg/jruby/ext/ripper/RipperLexer$Keyword;
            invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        16: .line 72
            getstatic org.jruby.ext.ripper.RipperLexer.map:Ljava/util/HashMap;
            ldc "return"
            getstatic org.jruby.ext.ripper.RipperLexer$Keyword.RETURN:Lorg/jruby/ext/ripper/RipperLexer$Keyword;
            invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        17: .line 73
            getstatic org.jruby.ext.ripper.RipperLexer.map:Ljava/util/HashMap;
            ldc "true"
            getstatic org.jruby.ext.ripper.RipperLexer$Keyword.TRUE:Lorg/jruby/ext/ripper/RipperLexer$Keyword;
            invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        18: .line 74
            getstatic org.jruby.ext.ripper.RipperLexer.map:Ljava/util/HashMap;
            ldc "if"
            getstatic org.jruby.ext.ripper.RipperLexer$Keyword.IF:Lorg/jruby/ext/ripper/RipperLexer$Keyword;
            invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        19: .line 75
            getstatic org.jruby.ext.ripper.RipperLexer.map:Ljava/util/HashMap;
            ldc "defined?"
            getstatic org.jruby.ext.ripper.RipperLexer$Keyword.DEFINED_P:Lorg/jruby/ext/ripper/RipperLexer$Keyword;
            invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        20: .line 76
            getstatic org.jruby.ext.ripper.RipperLexer.map:Ljava/util/HashMap;
            ldc "super"
            getstatic org.jruby.ext.ripper.RipperLexer$Keyword.SUPER:Lorg/jruby/ext/ripper/RipperLexer$Keyword;
            invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        21: .line 77
            getstatic org.jruby.ext.ripper.RipperLexer.map:Ljava/util/HashMap;
            ldc "undef"
            getstatic org.jruby.ext.ripper.RipperLexer$Keyword.UNDEF:Lorg/jruby/ext/ripper/RipperLexer$Keyword;
            invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        22: .line 78
            getstatic org.jruby.ext.ripper.RipperLexer.map:Ljava/util/HashMap;
            ldc "break"
            getstatic org.jruby.ext.ripper.RipperLexer$Keyword.BREAK:Lorg/jruby/ext/ripper/RipperLexer$Keyword;
            invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        23: .line 79
            getstatic org.jruby.ext.ripper.RipperLexer.map:Ljava/util/HashMap;
            ldc "in"
            getstatic org.jruby.ext.ripper.RipperLexer$Keyword.IN:Lorg/jruby/ext/ripper/RipperLexer$Keyword;
            invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        24: .line 80
            getstatic org.jruby.ext.ripper.RipperLexer.map:Ljava/util/HashMap;
            ldc "do"
            getstatic org.jruby.ext.ripper.RipperLexer$Keyword.DO:Lorg/jruby/ext/ripper/RipperLexer$Keyword;
            invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        25: .line 81
            getstatic org.jruby.ext.ripper.RipperLexer.map:Ljava/util/HashMap;
            ldc "nil"
            getstatic org.jruby.ext.ripper.RipperLexer$Keyword.NIL:Lorg/jruby/ext/ripper/RipperLexer$Keyword;
            invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        26: .line 82
            getstatic org.jruby.ext.ripper.RipperLexer.map:Ljava/util/HashMap;
            ldc "until"
            getstatic org.jruby.ext.ripper.RipperLexer$Keyword.UNTIL:Lorg/jruby/ext/ripper/RipperLexer$Keyword;
            invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        27: .line 83
            getstatic org.jruby.ext.ripper.RipperLexer.map:Ljava/util/HashMap;
            ldc "unless"
            getstatic org.jruby.ext.ripper.RipperLexer$Keyword.UNLESS:Lorg/jruby/ext/ripper/RipperLexer$Keyword;
            invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        28: .line 84
            getstatic org.jruby.ext.ripper.RipperLexer.map:Ljava/util/HashMap;
            ldc "or"
            getstatic org.jruby.ext.ripper.RipperLexer$Keyword.OR:Lorg/jruby/ext/ripper/RipperLexer$Keyword;
            invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        29: .line 85
            getstatic org.jruby.ext.ripper.RipperLexer.map:Ljava/util/HashMap;
            ldc "next"
            getstatic org.jruby.ext.ripper.RipperLexer$Keyword.NEXT:Lorg/jruby/ext/ripper/RipperLexer$Keyword;
            invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        30: .line 86
            getstatic org.jruby.ext.ripper.RipperLexer.map:Ljava/util/HashMap;
            ldc "when"
            getstatic org.jruby.ext.ripper.RipperLexer$Keyword.WHEN:Lorg/jruby/ext/ripper/RipperLexer$Keyword;
            invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        31: .line 87
            getstatic org.jruby.ext.ripper.RipperLexer.map:Ljava/util/HashMap;
            ldc "redo"
            getstatic org.jruby.ext.ripper.RipperLexer$Keyword.REDO:Lorg/jruby/ext/ripper/RipperLexer$Keyword;
            invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        32: .line 88
            getstatic org.jruby.ext.ripper.RipperLexer.map:Ljava/util/HashMap;
            ldc "and"
            getstatic org.jruby.ext.ripper.RipperLexer$Keyword.AND:Lorg/jruby/ext/ripper/RipperLexer$Keyword;
            invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        33: .line 89
            getstatic org.jruby.ext.ripper.RipperLexer.map:Ljava/util/HashMap;
            ldc "begin"
            getstatic org.jruby.ext.ripper.RipperLexer$Keyword.BEGIN:Lorg/jruby/ext/ripper/RipperLexer$Keyword;
            invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        34: .line 90
            getstatic org.jruby.ext.ripper.RipperLexer.map:Ljava/util/HashMap;
            ldc "__LINE__"
            getstatic org.jruby.ext.ripper.RipperLexer$Keyword.__LINE__:Lorg/jruby/ext/ripper/RipperLexer$Keyword;
            invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        35: .line 91
            getstatic org.jruby.ext.ripper.RipperLexer.map:Ljava/util/HashMap;
            ldc "class"
            getstatic org.jruby.ext.ripper.RipperLexer$Keyword.CLASS:Lorg/jruby/ext/ripper/RipperLexer$Keyword;
            invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        36: .line 92
            getstatic org.jruby.ext.ripper.RipperLexer.map:Ljava/util/HashMap;
            ldc "__FILE__"
            getstatic org.jruby.ext.ripper.RipperLexer$Keyword.__FILE__:Lorg/jruby/ext/ripper/RipperLexer$Keyword;
            invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        37: .line 93
            getstatic org.jruby.ext.ripper.RipperLexer.map:Ljava/util/HashMap;
            ldc "END"
            getstatic org.jruby.ext.ripper.RipperLexer$Keyword.LEND:Lorg/jruby/ext/ripper/RipperLexer$Keyword;
            invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        38: .line 94
            getstatic org.jruby.ext.ripper.RipperLexer.map:Ljava/util/HashMap;
            ldc "BEGIN"
            getstatic org.jruby.ext.ripper.RipperLexer$Keyword.LBEGIN:Lorg/jruby/ext/ripper/RipperLexer$Keyword;
            invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        39: .line 95
            getstatic org.jruby.ext.ripper.RipperLexer.map:Ljava/util/HashMap;
            ldc "while"
            getstatic org.jruby.ext.ripper.RipperLexer$Keyword.WHILE:Lorg/jruby/ext/ripper/RipperLexer$Keyword;
            invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        40: .line 96
            getstatic org.jruby.ext.ripper.RipperLexer.map:Ljava/util/HashMap;
            ldc "alias"
            getstatic org.jruby.ext.ripper.RipperLexer$Keyword.ALIAS:Lorg/jruby/ext/ripper/RipperLexer$Keyword;
            invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        41: .line 97
            getstatic org.jruby.ext.ripper.RipperLexer.map:Ljava/util/HashMap;
            ldc "__ENCODING__"
            getstatic org.jruby.ext.ripper.RipperLexer$Keyword.__ENCODING__:Lorg/jruby/ext/ripper/RipperLexer$Keyword;
            invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        42: .line 235
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  protected void ambiguousOperator(java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // org.jruby.ext.ripper.RipperLexer this
        start local 1 // java.lang.String op
        start local 2 // java.lang.String syn
         0: .line 101
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.parser:Lorg/jruby/ext/ripper/RipperParserBase;
            ldc "on_operator_ambiguous"
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.getRuntime:()Lorg/jruby/Ruby;
            aload 1 /* op */
            invokevirtual org.jruby.Ruby.newSymbol:(Ljava/lang/String;)Lorg/jruby/RubySymbol;
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.getRuntime:()Lorg/jruby/Ruby;
            aload 2 /* syn */
            invokevirtual org.jruby.Ruby.newString:(Ljava/lang/String;)Lorg/jruby/RubyString;
            invokevirtual org.jruby.ext.ripper.RipperParserBase.dispatch:(Ljava/lang/String;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            pop
         1: .line 102
            return
        end local 2 // java.lang.String syn
        end local 1 // java.lang.String op
        end local 0 // org.jruby.ext.ripper.RipperLexer this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/jruby/ext/ripper/RipperLexer;
            0    2     1    op  Ljava/lang/String;
            0    2     2   syn  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      op    
      syn   

  protected boolean onMagicComment(java.lang.String, org.jruby.util.ByteList);
    descriptor: (Ljava/lang/String;Lorg/jruby/util/ByteList;)Z
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=5, locals=4, args_size=3
        start local 0 // org.jruby.ext.ripper.RipperLexer this
        start local 1 // java.lang.String name
        start local 2 // org.jruby.util.ByteList value
         0: .line 105
            aload 0 /* this */
            aload 1 /* name */
            aload 2 /* value */
            invokespecial org.jruby.lexer.LexingCommon.onMagicComment:(Ljava/lang/String;Lorg/jruby/util/ByteList;)Z
            istore 3 /* found */
        start local 3 // boolean found
         1: .line 107
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.parser:Lorg/jruby/ext/ripper/RipperParserBase;
            ldc "on_magic_comment"
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.getRuntime:()Lorg/jruby/Ruby;
            aload 1 /* name */
            invokevirtual org.jruby.Ruby.newString:(Ljava/lang/String;)Lorg/jruby/RubyString;
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.getRuntime:()Lorg/jruby/Ruby;
            aload 2 /* value */
            invokevirtual org.jruby.Ruby.newString:(Lorg/jruby/util/ByteList;)Lorg/jruby/RubyString;
            invokevirtual org.jruby.ext.ripper.RipperParserBase.dispatch:(Ljava/lang/String;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            pop
         2: .line 109
            iload 3 /* found */
            ireturn
        end local 3 // boolean found
        end local 2 // org.jruby.util.ByteList value
        end local 1 // java.lang.String name
        end local 0 // org.jruby.ext.ripper.RipperLexer this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    3     0   this  Lorg/jruby/ext/ripper/RipperLexer;
            0    3     1   name  Ljava/lang/String;
            0    3     2  value  Lorg/jruby/util/ByteList;
            1    3     3  found  Z
    MethodParameters:
       Name  Flags
      name   
      value  

  private int getFloatToken(java.lang.String, int);
    descriptor: (Ljava/lang/String;I)I
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=6, args_size=3
        start local 0 // org.jruby.ext.ripper.RipperLexer this
        start local 1 // java.lang.String number
        start local 2 // int suffix
         0: .line 113
            iload 2 /* suffix */
            iconst_1
            iand
            ifeq 10
         1: .line 114
            new java.math.BigDecimal
            dup
            aload 1 /* number */
            invokespecial java.math.BigDecimal.<init>:(Ljava/lang/String;)V
            astore 3 /* bd */
        start local 3 // java.math.BigDecimal bd
         2: .line 115
            getstatic java.math.BigDecimal.ONE:Ljava/math/BigDecimal;
            aload 3 /* bd */
            invokevirtual java.math.BigDecimal.scale:()I
            invokevirtual java.math.BigDecimal.scaleByPowerOfTen:(I)Ljava/math/BigDecimal;
            astore 4 /* denominator */
        start local 4 // java.math.BigDecimal denominator
         3: .line 116
            aload 3 /* bd */
            aload 4 /* denominator */
            invokevirtual java.math.BigDecimal.multiply:(Ljava/math/BigDecimal;)Ljava/math/BigDecimal;
            astore 5 /* numerator */
        start local 5 // java.math.BigDecimal numerator
         4: .line 119
            aload 5 /* numerator */
            invokevirtual java.math.BigDecimal.longValueExact:()J
            pop2
         5: .line 120
            aload 4 /* denominator */
            invokevirtual java.math.BigDecimal.longValueExact:()J
            pop2
         6: .line 121
            goto 9
      StackMap locals: org.jruby.ext.ripper.RipperLexer java.lang.String int java.math.BigDecimal java.math.BigDecimal java.math.BigDecimal
      StackMap stack: java.lang.ArithmeticException
         7: pop
         8: .line 122
            aload 0 /* this */
            new java.lang.StringBuilder
            dup
            ldc "Rational ("
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 5 /* numerator */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc "/"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 4 /* denominator */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc ") out of range."
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual org.jruby.ext.ripper.RipperLexer.compile_error:(Ljava/lang/String;)V
         9: .line 124
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            sipush 382
            iload 2 /* suffix */
            invokevirtual org.jruby.ext.ripper.RipperLexer.considerComplex:(II)I
            ireturn
        end local 5 // java.math.BigDecimal numerator
        end local 4 // java.math.BigDecimal denominator
        end local 3 // java.math.BigDecimal bd
        10: .line 129
      StackMap locals:
      StackMap stack:
            aload 1 /* number */
            invokestatic org.jruby.util.SafeDoubleParser.parseDouble:(Ljava/lang/String;)Ljava/lang/Double;
            invokevirtual java.lang.Double.doubleValue:()D
            pop2
        11: .line 130
            goto 17
      StackMap locals:
      StackMap stack: java.lang.NumberFormatException
        12: pop
        13: .line 131
            aload 0 /* this */
            new java.lang.StringBuilder
            dup
            ldc "Float "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* number */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc " out of range."
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual org.jruby.ext.ripper.RipperLexer.warn:(Ljava/lang/String;)V
        14: .line 133
            aload 1 /* number */
            ldc "-"
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifeq 15
            ldc -Infinity
            goto 16
      StackMap locals:
      StackMap stack:
        15: ldc Infinity
      StackMap locals:
      StackMap stack: double
        16: pop2
        17: .line 136
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            sipush 381
            iload 2 /* suffix */
            invokevirtual org.jruby.ext.ripper.RipperLexer.considerComplex:(II)I
            ireturn
        end local 2 // int suffix
        end local 1 // java.lang.String number
        end local 0 // org.jruby.ext.ripper.RipperLexer this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   18     0         this  Lorg/jruby/ext/ripper/RipperLexer;
            0   18     1       number  Ljava/lang/String;
            0   18     2       suffix  I
            2   10     3           bd  Ljava/math/BigDecimal;
            3   10     4  denominator  Ljava/math/BigDecimal;
            4   10     5    numerator  Ljava/math/BigDecimal;
      Exception table:
        from    to  target  type
           4     6       7  Class java.lang.ArithmeticException
          10    11      12  Class java.lang.NumberFormatException
    MethodParameters:
        Name  Flags
      number  
      suffix  

  private int considerComplex(int, int);
    descriptor: (II)I
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // org.jruby.ext.ripper.RipperLexer this
        start local 1 // int token
        start local 2 // int suffix
         0: .line 140
            iload 2 /* suffix */
            iconst_2
            iand
            ifne 2
         1: .line 141
            iload 1 /* token */
            ireturn
         2: .line 143
      StackMap locals:
      StackMap stack:
            sipush 380
            ireturn
        end local 2 // int suffix
        end local 1 // int token
        end local 0 // org.jruby.ext.ripper.RipperLexer this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    3     0    this  Lorg/jruby/ext/ripper/RipperLexer;
            0    3     1   token  I
            0    3     2  suffix  I
    MethodParameters:
        Name  Flags
      token   
      suffix  

  public boolean isVerbose();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.jruby.ext.ripper.RipperLexer this
         0: .line 149
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.parser:Lorg/jruby/ext/ripper/RipperParserBase;
            invokevirtual org.jruby.ext.ripper.RipperParserBase.getRuntime:()Lorg/jruby/Ruby;
            invokevirtual org.jruby.Ruby.isVerbose:()Z
            ireturn
        end local 0 // org.jruby.ext.ripper.RipperLexer this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/ext/ripper/RipperLexer;

  public void warn(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // org.jruby.ext.ripper.RipperLexer this
        start local 1 // java.lang.String message
         0: .line 153
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.parser:Lorg/jruby/ext/ripper/RipperParserBase;
            ldc "warn"
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.getRuntime:()Lorg/jruby/Ruby;
            aload 1 /* message */
            invokevirtual org.jruby.Ruby.newString:(Ljava/lang/String;)Lorg/jruby/RubyString;
            invokevirtual org.jruby.ext.ripper.RipperParserBase.dispatch:(Ljava/lang/String;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            pop
         1: .line 154
            return
        end local 1 // java.lang.String message
        end local 0 // org.jruby.ext.ripper.RipperLexer this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lorg/jruby/ext/ripper/RipperLexer;
            0    2     1  message  Ljava/lang/String;
    MethodParameters:
         Name  Flags
      message  

  public void warning(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // org.jruby.ext.ripper.RipperLexer this
        start local 1 // java.lang.String fmt
         0: .line 157
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.parser:Lorg/jruby/ext/ripper/RipperParserBase;
            ldc "warning"
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.getRuntime:()Lorg/jruby/Ruby;
            aload 1 /* fmt */
            invokevirtual org.jruby.Ruby.newString:(Ljava/lang/String;)Lorg/jruby/RubyString;
            invokevirtual org.jruby.ext.ripper.RipperParserBase.dispatch:(Ljava/lang/String;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            pop
         1: .line 158
            return
        end local 1 // java.lang.String fmt
        end local 0 // org.jruby.ext.ripper.RipperLexer this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/jruby/ext/ripper/RipperLexer;
            0    2     1   fmt  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      fmt   

  public void warning(java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // org.jruby.ext.ripper.RipperLexer this
        start local 1 // java.lang.String fmt
        start local 2 // java.lang.String arg
         0: .line 160
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.parser:Lorg/jruby/ext/ripper/RipperParserBase;
            ldc "warning"
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.getRuntime:()Lorg/jruby/Ruby;
            aload 1 /* fmt */
            invokevirtual org.jruby.Ruby.newString:(Ljava/lang/String;)Lorg/jruby/RubyString;
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.getRuntime:()Lorg/jruby/Ruby;
            aload 2 /* arg */
            invokevirtual org.jruby.Ruby.newString:(Ljava/lang/String;)Lorg/jruby/RubyString;
            invokevirtual org.jruby.ext.ripper.RipperParserBase.dispatch:(Ljava/lang/String;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            pop
         1: .line 161
            return
        end local 2 // java.lang.String arg
        end local 1 // java.lang.String fmt
        end local 0 // org.jruby.ext.ripper.RipperLexer this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/jruby/ext/ripper/RipperLexer;
            0    2     1   fmt  Ljava/lang/String;
            0    2     2   arg  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      fmt   
      arg   

  public static org.jruby.ext.ripper.RipperLexer$Keyword getKeyword(java.lang.String);
    descriptor: (Ljava/lang/String;)Lorg/jruby/ext/ripper/RipperLexer$Keyword;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // java.lang.String str
         0: .line 220
            getstatic org.jruby.ext.ripper.RipperLexer.map:Ljava/util/HashMap;
            aload 0 /* str */
            invokevirtual java.util.HashMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast org.jruby.ext.ripper.RipperLexer$Keyword
            areturn
        end local 0 // java.lang.String str
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0   str  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      str   

  public void <init>(org.jruby.ext.ripper.RipperParserBase, org.jruby.lexer.LexerSource);
    descriptor: (Lorg/jruby/ext/ripper/RipperParserBase;Lorg/jruby/lexer/LexerSource;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // org.jruby.ext.ripper.RipperLexer this
        start local 1 // org.jruby.ext.ripper.RipperParserBase parser
        start local 2 // org.jruby.lexer.LexerSource src
         0: .line 238
            aload 0 /* this */
            aload 2 /* src */
            invokespecial org.jruby.lexer.LexingCommon.<init>:(Lorg/jruby/lexer/LexerSource;)V
         1: .line 230
            aload 0 /* this */
            aconst_null
            putfield org.jruby.ext.ripper.RipperLexer.parser:Lorg/jruby/ext/ripper/RipperParserBase;
         2: .line 247
            aload 0 /* this */
            aconst_null
            putfield org.jruby.ext.ripper.RipperLexer.delayed:Lorg/jruby/util/ByteList;
         3: .line 248
            aload 0 /* this */
            iconst_0
            putfield org.jruby.ext.ripper.RipperLexer.delayed_line:I
         4: .line 249
            aload 0 /* this */
            iconst_0
            putfield org.jruby.ext.ripper.RipperLexer.delayed_col:I
         5: .line 250
            aload 0 /* this */
            iconst_0
            putfield org.jruby.ext.ripper.RipperLexer.cr_seen:Z
         6: .line 2089
            aload 0 /* this */
            new org.jruby.util.ByteList
            dup
            bipush 10
            invokespecial org.jruby.util.ByteList.<init>:(I)V
            putfield org.jruby.ext.ripper.RipperLexer.numberBuffer:Lorg/jruby/util/ByteList;
         7: .line 239
            aload 0 /* this */
            aload 1 /* parser */
            putfield org.jruby.ext.ripper.RipperLexer.parser:Lorg/jruby/ext/ripper/RipperParserBase;
         8: .line 240
            aload 0 /* this */
            iconst_0
            invokevirtual org.jruby.ext.ripper.RipperLexer.setState:(I)V
         9: .line 241
            aload 0 /* this */
            aconst_null
            putfield org.jruby.ext.ripper.RipperLexer.lex_strterm:Lorg/jruby/ext/ripper/StrTerm;
        10: .line 243
            aload 0 /* this */
            aload 2 /* src */
            invokevirtual org.jruby.lexer.LexerSource.getEncoding:()Lorg/jcodings/Encoding;
            invokevirtual org.jruby.ext.ripper.RipperLexer.setCurrentEncoding:(Lorg/jcodings/Encoding;)V
        11: .line 244
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.reset:()V
        12: .line 245
            return
        end local 2 // org.jruby.lexer.LexerSource src
        end local 1 // org.jruby.ext.ripper.RipperParserBase parser
        end local 0 // org.jruby.ext.ripper.RipperLexer this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   13     0    this  Lorg/jruby/ext/ripper/RipperLexer;
            0   13     1  parser  Lorg/jruby/ext/ripper/RipperParserBase;
            0   13     2     src  Lorg/jruby/lexer/LexerSource;
    MethodParameters:
        Name  Flags
      parser  
      src     

  public boolean hasStarted();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.jruby.ext.ripper.RipperLexer this
         0: .line 256
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.src:Lorg/jruby/lexer/LexerSource;
            ifnull 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // org.jruby.ext.ripper.RipperLexer this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/jruby/ext/ripper/RipperLexer;

  protected void flush_string_content(org.jcodings.Encoding);
    descriptor: (Lorg/jcodings/Encoding;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=4, locals=3, args_size=2
        start local 0 // org.jruby.ext.ripper.RipperLexer this
        start local 1 // org.jcodings.Encoding encoding
         0: .line 260
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.delayed:Lorg/jruby/util/ByteList;
            ifnull 7
         1: .line 261
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.lex_p:I
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.tokp:I
            isub
            istore 2 /* len */
        start local 2 // int len
         2: .line 262
            iload 2 /* len */
            ifle 5
         3: .line 263
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.delayed:Lorg/jruby/util/ByteList;
            aload 1 /* encoding */
            invokevirtual org.jruby.util.ByteList.setEncoding:(Lorg/jcodings/Encoding;)V
         4: .line 264
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.delayed:Lorg/jruby/util/ByteList;
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.lexb:Lorg/jruby/util/ByteList;
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.tokp:I
            iload 2 /* len */
            invokevirtual org.jruby.util.ByteList.makeShared:(II)Lorg/jruby/util/ByteList;
            invokevirtual org.jruby.util.ByteList.append:(Lorg/jruby/util/ByteList;)V
         5: .line 266
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            sipush 378
            invokevirtual org.jruby.ext.ripper.RipperLexer.dispatchDelayedToken:(I)V
         6: .line 267
            aload 0 /* this */
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.lex_p:I
            putfield org.jruby.ext.ripper.RipperLexer.tokp:I
        end local 2 // int len
         7: .line 269
      StackMap locals:
      StackMap stack:
            return
        end local 1 // org.jcodings.Encoding encoding
        end local 0 // org.jruby.ext.ripper.RipperLexer this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    8     0      this  Lorg/jruby/ext/ripper/RipperLexer;
            0    8     1  encoding  Lorg/jcodings/Encoding;
            2    7     2       len  I
    MethodParameters:
          Name  Flags
      encoding  

  public void addDelayedToken(int, int);
    descriptor: (II)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // org.jruby.ext.ripper.RipperLexer this
        start local 1 // int tok
        start local 2 // int end
         0: .line 273
            iload 1 /* tok */
            iload 2 /* end */
            if_icmpge 8
         1: .line 274
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.delayed:Lorg/jruby/util/ByteList;
            ifnonnull 6
         2: .line 275
            aload 0 /* this */
            new org.jruby.util.ByteList
            dup
            invokespecial org.jruby.util.ByteList.<init>:()V
            putfield org.jruby.ext.ripper.RipperLexer.delayed:Lorg/jruby/util/ByteList;
         3: .line 276
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.delayed:Lorg/jruby/util/ByteList;
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.getEncoding:()Lorg/jcodings/Encoding;
            invokevirtual org.jruby.util.ByteList.setEncoding:(Lorg/jcodings/Encoding;)V
         4: .line 277
            aload 0 /* this */
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.ruby_sourceline:I
            putfield org.jruby.ext.ripper.RipperLexer.delayed_line:I
         5: .line 278
            aload 0 /* this */
            iload 1 /* tok */
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.lex_pbeg:I
            isub
            putfield org.jruby.ext.ripper.RipperLexer.delayed_col:I
         6: .line 280
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.delayed:Lorg/jruby/util/ByteList;
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.lexb:Lorg/jruby/util/ByteList;
            iload 1 /* tok */
            iload 2 /* end */
            iload 1 /* tok */
            isub
            invokevirtual org.jruby.util.ByteList.append:(Lorg/jruby/util/ByteList;II)V
         7: .line 281
            aload 0 /* this */
            iload 2 /* end */
            putfield org.jruby.ext.ripper.RipperLexer.tokp:I
         8: .line 283
      StackMap locals:
      StackMap stack:
            return
        end local 2 // int end
        end local 1 // int tok
        end local 0 // org.jruby.ext.ripper.RipperLexer this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    9     0  this  Lorg/jruby/ext/ripper/RipperLexer;
            0    9     1   tok  I
            0    9     2   end  I
    MethodParameters:
      Name  Flags
      tok   
      end   

  private boolean nextLine();
    descriptor: ()Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=2, args_size=1
        start local 0 // org.jruby.ext.ripper.RipperLexer this
         0: .line 286
            aload 0 /* this */
            dup
            getfield org.jruby.ext.ripper.RipperLexer.line_offset:I
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.lex_pend:I
            iadd
            putfield org.jruby.ext.ripper.RipperLexer.line_offset:I
         1: .line 288
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.lex_nextline:Lorg/jruby/util/ByteList;
            astore 1 /* v */
        start local 1 // org.jruby.util.ByteList v
         2: .line 289
            aload 0 /* this */
            aconst_null
            putfield org.jruby.ext.ripper.RipperLexer.lex_nextline:Lorg/jruby/util/ByteList;
         3: .line 291
            aload 1 /* v */
            ifnonnull 10
         4: .line 292
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.eofp:Z
            ifeq 5
            iconst_1
            ireturn
         5: .line 294
      StackMap locals: org.jruby.util.ByteList
      StackMap stack:
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.src:Lorg/jruby/lexer/LexerSource;
            ifnull 6
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.src:Lorg/jruby/lexer/LexerSource;
            invokevirtual org.jruby.lexer.LexerSource.gets:()Lorg/jruby/util/ByteList;
            dup
            astore 1 /* v */
            ifnonnull 9
         6: .line 295
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_1
            putfield org.jruby.ext.ripper.RipperLexer.eofp:Z
         7: .line 296
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.lex_goto_eol:()V
         8: .line 297
            iconst_1
            ireturn
         9: .line 299
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_0
            putfield org.jruby.ext.ripper.RipperLexer.cr_seen:Z
        10: .line 302
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.tokp:I
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.lex_pend:I
            invokevirtual org.jruby.ext.ripper.RipperLexer.addDelayedToken:(II)V
        11: .line 304
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.heredoc_end:I
            ifle 14
        12: .line 305
            aload 0 /* this */
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.heredoc_end:I
            putfield org.jruby.ext.ripper.RipperLexer.ruby_sourceline:I
        13: .line 306
            aload 0 /* this */
            iconst_0
            putfield org.jruby.ext.ripper.RipperLexer.heredoc_end:I
        14: .line 308
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            dup
            getfield org.jruby.ext.ripper.RipperLexer.ruby_sourceline:I
            iconst_1
            iadd
            putfield org.jruby.ext.ripper.RipperLexer.ruby_sourceline:I
        15: .line 309
            aload 0 /* this */
            dup
            getfield org.jruby.ext.ripper.RipperLexer.line_count:I
            iconst_1
            iadd
            putfield org.jruby.ext.ripper.RipperLexer.line_count:I
        16: .line 310
            aload 0 /* this */
            aload 0 /* this */
            iconst_0
            dup_x1
            putfield org.jruby.ext.ripper.RipperLexer.lex_p:I
            putfield org.jruby.ext.ripper.RipperLexer.lex_pbeg:I
        17: .line 311
            aload 0 /* this */
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.lex_p:I
            aload 1 /* v */
            invokevirtual org.jruby.util.ByteList.length:()I
            iadd
            putfield org.jruby.ext.ripper.RipperLexer.lex_pend:I
        18: .line 312
            aload 0 /* this */
            aload 1 /* v */
            putfield org.jruby.ext.ripper.RipperLexer.lexb:Lorg/jruby/util/ByteList;
        19: .line 313
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.flush:()V
        20: .line 314
            aload 0 /* this */
            aload 1 /* v */
            putfield org.jruby.ext.ripper.RipperLexer.lex_lastline:Lorg/jruby/util/ByteList;
        21: .line 316
            iconst_0
            ireturn
        end local 1 // org.jruby.util.ByteList v
        end local 0 // org.jruby.ext.ripper.RipperLexer this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   22     0  this  Lorg/jruby/ext/ripper/RipperLexer;
            2   22     1     v  Lorg/jruby/util/ByteList;

  private int cr(int);
    descriptor: (I)I
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.jruby.ext.ripper.RipperLexer this
        start local 1 // int c
         0: .line 320
            aload 0 /* this */
            bipush 10
            invokevirtual org.jruby.ext.ripper.RipperLexer.peek:(I)Z
            ifeq 4
         1: .line 321
            aload 0 /* this */
            dup
            getfield org.jruby.ext.ripper.RipperLexer.lex_p:I
            iconst_1
            iadd
            putfield org.jruby.ext.ripper.RipperLexer.lex_p:I
         2: .line 322
            bipush 10
            istore 1 /* c */
         3: .line 323
            goto 7
      StackMap locals:
      StackMap stack:
         4: aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.cr_seen:Z
            ifne 7
         5: .line 324
            aload 0 /* this */
            iconst_1
            putfield org.jruby.ext.ripper.RipperLexer.cr_seen:Z
         6: .line 325
            aload 0 /* this */
            ldc "encountered \\\\r in middle of line, treated as a mere space"
            invokevirtual org.jruby.ext.ripper.RipperLexer.warn:(Ljava/lang/String;)V
         7: .line 327
      StackMap locals:
      StackMap stack:
            iload 1 /* c */
            ireturn
        end local 1 // int c
        end local 0 // org.jruby.ext.ripper.RipperLexer this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    8     0  this  Lorg/jruby/ext/ripper/RipperLexer;
            0    8     1     c  I
    MethodParameters:
      Name  Flags
      c     

  public int nextc();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=1
        start local 0 // org.jruby.ext.ripper.RipperLexer this
         0: .line 331
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.lex_p:I
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.lex_pend:I
            if_icmpeq 1
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.eofp:Z
            ifne 1
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.lex_nextline:Lorg/jruby/util/ByteList;
            ifnull 2
         1: .line 332
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.nextLine:()Z
            ifeq 2
            iconst_m1
            ireturn
         2: .line 335
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.lex_p:I
            invokevirtual org.jruby.ext.ripper.RipperLexer.p:(I)I
            istore 1 /* c */
        start local 1 // int c
         3: .line 336
            aload 0 /* this */
            dup
            getfield org.jruby.ext.ripper.RipperLexer.lex_p:I
            iconst_1
            iadd
            putfield org.jruby.ext.ripper.RipperLexer.lex_p:I
         4: .line 338
            iload 1 /* c */
            bipush 13
            if_icmpne 5
            aload 0 /* this */
            iload 1 /* c */
            invokevirtual org.jruby.ext.ripper.RipperLexer.cr:(I)I
            istore 1 /* c */
         5: .line 340
      StackMap locals: int
      StackMap stack:
            iload 1 /* c */
            ireturn
        end local 1 // int c
        end local 0 // org.jruby.ext.ripper.RipperLexer this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0  this  Lorg/jruby/ext/ripper/RipperLexer;
            3    6     1     c  I

  public void dispatchHeredocEnd();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.jruby.ext.ripper.RipperLexer this
         0: .line 344
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.delayed:Lorg/jruby/util/ByteList;
            ifnull 2
         1: .line 345
            aload 0 /* this */
            sipush 378
            invokevirtual org.jruby.ext.ripper.RipperLexer.dispatchDelayedToken:(I)V
         2: .line 347
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.lex_goto_eol:()V
         3: .line 348
            aload 0 /* this */
            sipush 391
            invokevirtual org.jruby.ext.ripper.RipperLexer.dispatchIgnoredScanEvent:(I)V
         4: .line 349
            return
        end local 0 // org.jruby.ext.ripper.RipperLexer this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lorg/jruby/ext/ripper/RipperLexer;

  public void compile_error(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // org.jruby.ext.ripper.RipperLexer this
        start local 1 // java.lang.String message
         0: .line 352
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.parser:Lorg/jruby/ext/ripper/RipperParserBase;
            invokevirtual org.jruby.ext.ripper.RipperParserBase.error:()V
         1: .line 353
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.parser:Lorg/jruby/ext/ripper/RipperParserBase;
            ldc "compile_error"
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.getRuntime:()Lorg/jruby/Ruby;
            aload 1 /* message */
            invokevirtual org.jruby.Ruby.newString:(Ljava/lang/String;)Lorg/jruby/RubyString;
            invokevirtual org.jruby.ext.ripper.RipperParserBase.dispatch:(Ljava/lang/String;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            pop
         2: .line 355
            return
        end local 1 // java.lang.String message
        end local 0 // org.jruby.ext.ripper.RipperLexer this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0     this  Lorg/jruby/ext/ripper/RipperLexer;
            0    3     1  message  Ljava/lang/String;
    MethodParameters:
         Name  Flags
      message  

  public int tokenize_ident(int);
    descriptor: (I)I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // org.jruby.ext.ripper.RipperLexer this
        start local 1 // int result
         0: .line 358
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.createTokenString:()Ljava/lang/String;
            astore 2 /* value */
        start local 2 // java.lang.String value
         1: .line 360
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.last_state:I
            sipush 384
            invokestatic org.jruby.ext.ripper.RipperLexer.isLexState:(II)Z
            ifne 3
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.parser:Lorg/jruby/ext/ripper/RipperParserBase;
            invokevirtual org.jruby.ext.ripper.RipperParserBase.getCurrentScope:()Lorg/jruby/parser/StaticScope;
            aload 2 /* value */
            invokevirtual org.jruby.parser.StaticScope.isDefined:(Ljava/lang/String;)I
            iflt 3
         2: .line 361
            aload 0 /* this */
            iconst_2
            invokevirtual org.jruby.ext.ripper.RipperLexer.setState:(I)V
         3: .line 364
      StackMap locals: java.lang.String
      StackMap stack:
            aload 0 /* this */
            aload 2 /* value */
            invokevirtual java.lang.String.intern:()Ljava/lang/String;
            putfield org.jruby.ext.ripper.RipperLexer.identValue:Ljava/lang/String;
         4: .line 365
            iload 1 /* result */
            ireturn
        end local 2 // java.lang.String value
        end local 1 // int result
        end local 0 // org.jruby.ext.ripper.RipperLexer this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    5     0    this  Lorg/jruby/ext/ripper/RipperLexer;
            0    5     1  result  I
            1    5     2   value  Ljava/lang/String;
    MethodParameters:
        Name  Flags
      result  

  public void heredoc_restore(org.jruby.ext.ripper.HeredocTerm);
    descriptor: (Lorg/jruby/ext/ripper/HeredocTerm;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // org.jruby.ext.ripper.RipperLexer this
        start local 1 // org.jruby.ext.ripper.HeredocTerm here
         0: .line 369
            aload 1 /* here */
            getfield org.jruby.ext.ripper.HeredocTerm.lastLine:Lorg/jruby/util/ByteList;
            astore 2 /* line */
        start local 2 // org.jruby.util.ByteList line
         1: .line 370
            aload 0 /* this */
            aload 2 /* line */
            putfield org.jruby.ext.ripper.RipperLexer.lex_lastline:Lorg/jruby/util/ByteList;
         2: .line 371
            aload 0 /* this */
            iconst_0
            putfield org.jruby.ext.ripper.RipperLexer.lex_pbeg:I
         3: .line 372
            aload 0 /* this */
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.lex_pbeg:I
            aload 2 /* line */
            invokevirtual org.jruby.util.ByteList.length:()I
            iadd
            putfield org.jruby.ext.ripper.RipperLexer.lex_pend:I
         4: .line 373
            aload 0 /* this */
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.lex_pbeg:I
            aload 1 /* here */
            getfield org.jruby.ext.ripper.HeredocTerm.nth:I
            iadd
            putfield org.jruby.ext.ripper.RipperLexer.lex_p:I
         5: .line 374
            aload 0 /* this */
            aload 2 /* line */
            putfield org.jruby.ext.ripper.RipperLexer.lexb:Lorg/jruby/util/ByteList;
         6: .line 375
            aload 0 /* this */
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.ruby_sourceline:I
            putfield org.jruby.ext.ripper.RipperLexer.heredoc_end:I
         7: .line 376
            aload 0 /* this */
            aload 1 /* here */
            getfield org.jruby.ext.ripper.HeredocTerm.line:I
            putfield org.jruby.ext.ripper.RipperLexer.ruby_sourceline:I
         8: .line 377
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.flush:()V
         9: .line 378
            return
        end local 2 // org.jruby.util.ByteList line
        end local 1 // org.jruby.ext.ripper.HeredocTerm here
        end local 0 // org.jruby.ext.ripper.RipperLexer this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   10     0  this  Lorg/jruby/ext/ripper/RipperLexer;
            0   10     1  here  Lorg/jruby/ext/ripper/HeredocTerm;
            1   10     2  line  Lorg/jruby/util/ByteList;
    MethodParameters:
      Name  Flags
      here  

  public int nextToken();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.jruby.ext.ripper.RipperLexer this
         0: .line 382
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.yylex:()I
            putfield org.jruby.ext.ripper.RipperLexer.token:I
         1: .line 384
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.delayed:Lorg/jruby/util/ByteList;
            ifnull 6
         2: .line 385
            aload 0 /* this */
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.token:I
            invokevirtual org.jruby.ext.ripper.RipperLexer.dispatchDelayedToken:(I)V
         3: .line 386
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.token:I
            iconst_m1
            if_icmpne 4
            iconst_0
            goto 5
      StackMap locals:
      StackMap stack:
         4: aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.token:I
      StackMap locals:
      StackMap stack: int
         5: ireturn
         6: .line 389
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.token:I
            iconst_m1
            if_icmpeq 7
            aload 0 /* this */
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.token:I
            invokevirtual org.jruby.ext.ripper.RipperLexer.dispatchScanEvent:(I)V
         7: .line 391
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.token:I
            iconst_m1
            if_icmpne 8
            iconst_0
            goto 9
      StackMap locals:
      StackMap stack:
         8: aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.token:I
      StackMap locals:
      StackMap stack: int
         9: ireturn
        end local 0 // org.jruby.ext.ripper.RipperLexer this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   10     0  this  Lorg/jruby/ext/ripper/RipperLexer;
    Exceptions:
      throws java.io.IOException

  public java.lang.String getIdent();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.jruby.ext.ripper.RipperLexer this
         0: .line 395
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.identValue:Ljava/lang/String;
            areturn
        end local 0 // org.jruby.ext.ripper.RipperLexer this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/ext/ripper/RipperLexer;

  public org.jruby.Ruby getRuntime();
    descriptor: ()Lorg/jruby/Ruby;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.jruby.ext.ripper.RipperLexer this
         0: .line 399
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.parser:Lorg/jruby/ext/ripper/RipperParserBase;
            getfield org.jruby.ext.ripper.RipperParserBase.context:Lorg/jruby/runtime/ThreadContext;
            invokevirtual org.jruby.runtime.ThreadContext.getRuntime:()Lorg/jruby/Ruby;
            areturn
        end local 0 // org.jruby.ext.ripper.RipperLexer this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/ext/ripper/RipperLexer;

  public void setParser(org.jruby.ext.ripper.RipperParserBase);
    descriptor: (Lorg/jruby/ext/ripper/RipperParserBase;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.jruby.ext.ripper.RipperLexer this
        start local 1 // org.jruby.ext.ripper.RipperParserBase parserSupport
         0: .line 410
            aload 0 /* this */
            aload 1 /* parserSupport */
            putfield org.jruby.ext.ripper.RipperLexer.parser:Lorg/jruby/ext/ripper/RipperParserBase;
         1: .line 411
            return
        end local 1 // org.jruby.ext.ripper.RipperParserBase parserSupport
        end local 0 // org.jruby.ext.ripper.RipperLexer this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    2     0           this  Lorg/jruby/ext/ripper/RipperLexer;
            0    2     1  parserSupport  Lorg/jruby/ext/ripper/RipperParserBase;
    MethodParameters:
               Name  Flags
      parserSupport  

  protected void setCompileOptionFlag(java.lang.String, org.jruby.util.ByteList);
    descriptor: (Ljava/lang/String;Lorg/jruby/util/ByteList;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.jruby.ext.ripper.RipperLexer this
        start local 1 // java.lang.String name
        start local 2 // org.jruby.util.ByteList value
         0: .line 415
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.tokenSeen:Z
            ifeq 3
         1: .line 416
            aload 0 /* this */
            ldc "`%s' is ignored after any tokens"
            aload 1 /* name */
            invokevirtual org.jruby.ext.ripper.RipperLexer.warning:(Ljava/lang/String;Ljava/lang/String;)V
         2: .line 417
            return
         3: .line 419
      StackMap locals:
      StackMap stack:
            return
        end local 2 // org.jruby.util.ByteList value
        end local 1 // java.lang.String name
        end local 0 // org.jruby.ext.ripper.RipperLexer this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    4     0   this  Lorg/jruby/ext/ripper/RipperLexer;
            0    4     1   name  Ljava/lang/String;
            0    4     2  value  Lorg/jruby/util/ByteList;
    MethodParameters:
       Name  Flags
      name   
      value  

  protected org.jruby.util.RegexpOptions parseRegexpFlags();
    descriptor: ()Lorg/jruby/util/RegexpOptions;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=4, locals=3, args_size=1
        start local 0 // org.jruby.ext.ripper.RipperLexer this
         0: .line 423
            new java.lang.StringBuilder
            dup
            bipush 10
            invokespecial java.lang.StringBuilder.<init>:(I)V
            astore 1 /* unknownFlags */
        start local 1 // java.lang.StringBuilder unknownFlags
         1: .line 424
            aload 0 /* this */
            aload 1 /* unknownFlags */
            invokevirtual org.jruby.ext.ripper.RipperLexer.parseRegexpFlags:(Ljava/lang/StringBuilder;)Lorg/jruby/util/RegexpOptions;
            astore 2 /* options */
        start local 2 // org.jruby.util.RegexpOptions options
         2: .line 425
            aload 1 /* unknownFlags */
            invokevirtual java.lang.StringBuilder.length:()I
            ifeq 8
         3: .line 426
            aload 0 /* this */
            new java.lang.StringBuilder
            dup
            ldc "unknown regexp option"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
         4: .line 427
            aload 1 /* unknownFlags */
            invokevirtual java.lang.StringBuilder.length:()I
            iconst_1
            if_icmple 5
            ldc "s"
            goto 6
      StackMap locals: org.jruby.ext.ripper.RipperLexer java.lang.StringBuilder org.jruby.util.RegexpOptions
      StackMap stack: org.jruby.ext.ripper.RipperLexer java.lang.StringBuilder
         5: ldc ""
      StackMap locals: org.jruby.ext.ripper.RipperLexer java.lang.StringBuilder org.jruby.util.RegexpOptions
      StackMap stack: org.jruby.ext.ripper.RipperLexer java.lang.StringBuilder java.lang.String
         6: invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc " - "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 1 /* unknownFlags */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         7: .line 426
            invokevirtual org.jruby.ext.ripper.RipperLexer.compile_error:(Ljava/lang/String;)V
         8: .line 429
      StackMap locals:
      StackMap stack:
            aload 2 /* options */
            areturn
        end local 2 // org.jruby.util.RegexpOptions options
        end local 1 // java.lang.StringBuilder unknownFlags
        end local 0 // org.jruby.ext.ripper.RipperLexer this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    9     0          this  Lorg/jruby/ext/ripper/RipperLexer;
            1    9     1  unknownFlags  Ljava/lang/StringBuilder;
            2    9     2       options  Lorg/jruby/util/RegexpOptions;
    Exceptions:
      throws java.io.IOException

  protected void mismatchedRegexpEncodingError(org.jcodings.Encoding, org.jcodings.Encoding);
    descriptor: (Lorg/jcodings/Encoding;Lorg/jcodings/Encoding;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // org.jruby.ext.ripper.RipperLexer this
        start local 1 // org.jcodings.Encoding optionEncoding
        start local 2 // org.jcodings.Encoding encoding
         0: .line 434
            aload 0 /* this */
            new java.lang.StringBuilder
            dup
            ldc "regexp encoding option '"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            aload 1 /* optionEncoding */
            invokevirtual org.jruby.ext.ripper.RipperLexer.optionsEncodingChar:(Lorg/jcodings/Encoding;)C
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
         1: .line 435
            ldc "' differs from source encoding '"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 2 /* encoding */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc "'"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         2: .line 434
            invokevirtual org.jruby.ext.ripper.RipperLexer.compile_error:(Ljava/lang/String;)V
         3: .line 436
            return
        end local 2 // org.jcodings.Encoding encoding
        end local 1 // org.jcodings.Encoding optionEncoding
        end local 0 // org.jruby.ext.ripper.RipperLexer this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    4     0            this  Lorg/jruby/ext/ripper/RipperLexer;
            0    4     1  optionEncoding  Lorg/jcodings/Encoding;
            0    4     2        encoding  Lorg/jcodings/Encoding;
    MethodParameters:
                Name  Flags
      optionEncoding  
      encoding        

  protected void setTokenInfo(java.lang.String, org.jruby.util.ByteList);
    descriptor: (Ljava/lang/String;Lorg/jruby/util/ByteList;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=0, locals=3, args_size=3
        start local 0 // org.jruby.ext.ripper.RipperLexer this
        start local 1 // java.lang.String name
        start local 2 // org.jruby.util.ByteList value
         0: .line 441
            return
        end local 2 // org.jruby.util.ByteList value
        end local 1 // java.lang.String name
        end local 0 // org.jruby.ext.ripper.RipperLexer this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0   this  Lorg/jruby/ext/ripper/RipperLexer;
            0    1     1   name  Ljava/lang/String;
            0    1     2  value  Lorg/jruby/util/ByteList;
    MethodParameters:
       Name  Flags
      name   
      value  

  protected void setEncoding(org.jruby.util.ByteList);
    descriptor: (Lorg/jruby/util/ByteList;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=4, locals=3, args_size=2
        start local 0 // org.jruby.ext.ripper.RipperLexer this
        start local 1 // org.jruby.util.ByteList name
         0: .line 444
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.parser:Lorg/jruby/ext/ripper/RipperParserBase;
            invokevirtual org.jruby.ext.ripper.RipperParserBase.getRuntime:()Lorg/jruby/Ruby;
            invokevirtual org.jruby.Ruby.getEncodingService:()Lorg/jruby/runtime/encoding/EncodingService;
            aload 1 /* name */
            invokevirtual org.jruby.runtime.encoding.EncodingService.loadEncoding:(Lorg/jruby/util/ByteList;)Lorg/jcodings/Encoding;
            astore 2 /* newEncoding */
        start local 2 // org.jcodings.Encoding newEncoding
         1: .line 446
            aload 2 /* newEncoding */
            ifnonnull 4
         2: .line 447
            aload 0 /* this */
            new java.lang.StringBuilder
            dup
            ldc "unknown encoding name: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* name */
            invokevirtual org.jruby.util.ByteList.toString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual org.jruby.ext.ripper.RipperLexer.compile_error:(Ljava/lang/String;)V
         3: .line 448
            return
         4: .line 451
      StackMap locals: org.jcodings.Encoding
      StackMap stack:
            aload 2 /* newEncoding */
            invokevirtual org.jcodings.Encoding.isAsciiCompatible:()Z
            ifne 7
         5: .line 452
            aload 0 /* this */
            new java.lang.StringBuilder
            dup
            aload 1 /* name */
            invokevirtual org.jruby.util.ByteList.toString:()Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc " is not ASCII compatible"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual org.jruby.ext.ripper.RipperLexer.compile_error:(Ljava/lang/String;)V
         6: .line 453
            return
         7: .line 456
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* newEncoding */
            invokevirtual org.jruby.ext.ripper.RipperLexer.setEncoding:(Lorg/jcodings/Encoding;)V
         8: .line 457
            return
        end local 2 // org.jcodings.Encoding newEncoding
        end local 1 // org.jruby.util.ByteList name
        end local 0 // org.jruby.ext.ripper.RipperLexer this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    9     0         this  Lorg/jruby/ext/ripper/RipperLexer;
            0    9     1         name  Lorg/jruby/util/ByteList;
            1    9     2  newEncoding  Lorg/jcodings/Encoding;
    MethodParameters:
      Name  Flags
      name  

  public org.jruby.ext.ripper.StrTerm getStrTerm();
    descriptor: ()Lorg/jruby/ext/ripper/StrTerm;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.jruby.ext.ripper.RipperLexer this
         0: .line 460
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.lex_strterm:Lorg/jruby/ext/ripper/StrTerm;
            areturn
        end local 0 // org.jruby.ext.ripper.RipperLexer this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/ext/ripper/RipperLexer;

  public void setStrTerm(org.jruby.ext.ripper.StrTerm);
    descriptor: (Lorg/jruby/ext/ripper/StrTerm;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.jruby.ext.ripper.RipperLexer this
        start local 1 // org.jruby.ext.ripper.StrTerm strterm
         0: .line 464
            aload 0 /* this */
            aload 1 /* strterm */
            putfield org.jruby.ext.ripper.RipperLexer.lex_strterm:Lorg/jruby/ext/ripper/StrTerm;
         1: .line 465
            return
        end local 1 // org.jruby.ext.ripper.StrTerm strterm
        end local 0 // org.jruby.ext.ripper.RipperLexer this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lorg/jruby/ext/ripper/RipperLexer;
            0    2     1  strterm  Lorg/jruby/ext/ripper/StrTerm;
    MethodParameters:
         Name  Flags
      strterm  

  public org.jruby.runtime.builtin.IRubyObject createStr(org.jruby.util.ByteList, int);
    descriptor: (Lorg/jruby/util/ByteList;I)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=5, args_size=3
        start local 0 // org.jruby.ext.ripper.RipperLexer this
        start local 1 // org.jruby.util.ByteList buffer
        start local 2 // int flags
         0: .line 469
            aload 1 /* buffer */
            invokevirtual org.jruby.util.ByteList.getEncoding:()Lorg/jcodings/Encoding;
            astore 3 /* bufferEncoding */
        start local 3 // org.jcodings.Encoding bufferEncoding
         1: .line 470
            aload 3 /* bufferEncoding */
            aload 1 /* buffer */
            invokestatic org.jruby.util.StringSupport.codeRangeScan:(Lorg/jcodings/Encoding;Lorg/jruby/util/ByteList;)I
            istore 4 /* codeRange */
        start local 4 // int codeRange
         2: .line 472
            iload 2 /* flags */
            iconst_4
            iand
            ifne 7
            aload 3 /* bufferEncoding */
            invokevirtual org.jcodings.Encoding.isAsciiCompatible:()Z
            ifeq 7
         3: .line 474
            iload 4 /* codeRange */
            bipush 16
            if_icmpeq 7
         4: .line 476
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.getEncoding:()Lorg/jcodings/Encoding;
            getstatic org.jruby.ext.ripper.RipperLexer.USASCII_ENCODING:Lorg/jcodings/Encoding;
            if_acmpne 7
         5: .line 477
            aload 3 /* bufferEncoding */
            getstatic org.jruby.ext.ripper.RipperLexer.UTF8_ENCODING:Lorg/jcodings/Encoding;
            if_acmpeq 7
         6: .line 478
            aload 1 /* buffer */
            getstatic org.jruby.ext.ripper.RipperLexer.ASCII8BIT_ENCODING:Lorg/jcodings/Encoding;
            iload 4 /* codeRange */
            invokestatic org.jruby.ext.ripper.RipperParserBase.associateEncoding:(Lorg/jruby/util/ByteList;Lorg/jcodings/Encoding;I)I
            istore 4 /* codeRange */
         7: .line 482
      StackMap locals: org.jcodings.Encoding int
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.getRuntime:()Lorg/jruby/Ruby;
            aload 1 /* buffer */
            invokevirtual org.jruby.Ruby.newString:(Lorg/jruby/util/ByteList;)Lorg/jruby/RubyString;
            areturn
        end local 4 // int codeRange
        end local 3 // org.jcodings.Encoding bufferEncoding
        end local 2 // int flags
        end local 1 // org.jruby.util.ByteList buffer
        end local 0 // org.jruby.ext.ripper.RipperLexer this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    8     0            this  Lorg/jruby/ext/ripper/RipperLexer;
            0    8     1          buffer  Lorg/jruby/util/ByteList;
            0    8     2           flags  I
            1    8     3  bufferEncoding  Lorg/jcodings/Encoding;
            2    8     4       codeRange  I
    MethodParameters:
        Name  Flags
      buffer  
      flags   

  private int parseQuote(int);
    descriptor: (I)I
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=5, args_size=2
        start local 0 // org.jruby.ext.ripper.RipperLexer this
        start local 1 // int c
         0: .line 494
            new java.lang.StringBuilder
            dup
            ldc "%"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 1 /* c */
            i2c
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 4 /* value */
        start local 4 // java.lang.String value
         1: .line 497
            iload 1 /* c */
            invokestatic java.lang.Character.isLetterOrDigit:(I)Z
            ifne 5
         2: .line 498
            iload 1 /* c */
            istore 2 /* begin */
        start local 2 // int begin
         3: .line 499
            bipush 81
            istore 1 /* c */
         4: .line 502
            goto 10
        end local 2 // int begin
         5: .line 504
      StackMap locals: org.jruby.ext.ripper.RipperLexer int top top java.lang.String
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.nextc:()I
            istore 2 /* begin */
        start local 2 // int begin
         6: .line 505
            new java.lang.StringBuilder
            dup
            aload 4 /* value */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 2 /* begin */
            i2c
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 4 /* value */
         7: .line 506
            iload 2 /* begin */
            invokestatic java.lang.Character.isLetterOrDigit:(I)Z
            ifne 8
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.isASCII:()Z
            ifne 10
         8: .line 507
      StackMap locals: org.jruby.ext.ripper.RipperLexer int int top java.lang.String
      StackMap stack:
            aload 0 /* this */
            ldc "unknown type of %string"
            invokevirtual org.jruby.ext.ripper.RipperLexer.compile_error:(Ljava/lang/String;)V
         9: .line 508
            iconst_m1
            ireturn
        10: .line 511
      StackMap locals:
      StackMap stack:
            iload 1 /* c */
            iconst_m1
            if_icmpeq 11
            iload 2 /* begin */
            iconst_m1
            if_icmpne 13
        11: .line 512
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            ldc "unterminated quoted string meets end of file"
            invokevirtual org.jruby.ext.ripper.RipperLexer.compile_error:(Ljava/lang/String;)V
        12: .line 513
            iconst_m1
            ireturn
        13: .line 517
      StackMap locals:
      StackMap stack:
            iload 2 /* begin */
            lookupswitch { // 4
                   40: 14
                   60: 20
                   91: 16
                  123: 18
              default: 22
          }
        14: .line 518
      StackMap locals:
      StackMap stack:
            bipush 41
            istore 3 /* end */
        start local 3 // int end
        15: goto 24
        end local 3 // int end
        16: .line 519
      StackMap locals:
      StackMap stack:
            bipush 93
            istore 3 /* end */
        start local 3 // int end
        17: goto 24
        end local 3 // int end
        18: .line 520
      StackMap locals:
      StackMap stack:
            bipush 125
            istore 3 /* end */
        start local 3 // int end
        19: goto 24
        end local 3 // int end
        20: .line 521
      StackMap locals:
      StackMap stack:
            bipush 62
            istore 3 /* end */
        start local 3 // int end
        21: goto 24
        end local 3 // int end
        22: .line 523
      StackMap locals:
      StackMap stack:
            iload 2 /* begin */
            istore 3 /* end */
        start local 3 // int end
        23: .line 524
            iconst_0
            istore 2 /* begin */
        24: .line 527
      StackMap locals: org.jruby.ext.ripper.RipperLexer int int int java.lang.String
      StackMap stack:
            iload 1 /* c */
            lookupswitch { // 9
                   73: 40
                   81: 25
                   87: 29
                  105: 42
                  113: 27
                  114: 35
                  115: 37
                  119: 31
                  120: 33
              default: 44
          }
        25: .line 529
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            new org.jruby.ext.ripper.StringTerm
            dup
            iconst_2
            iload 2 /* begin */
            iload 3 /* end */
            invokespecial org.jruby.ext.ripper.StringTerm.<init>:(III)V
            putfield org.jruby.ext.ripper.RipperLexer.lex_strterm:Lorg/jruby/ext/ripper/StrTerm;
        26: .line 530
            sipush 366
            ireturn
        27: .line 533
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            new org.jruby.ext.ripper.StringTerm
            dup
            iconst_0
            iload 2 /* begin */
            iload 3 /* end */
            invokespecial org.jruby.ext.ripper.StringTerm.<init>:(III)V
            putfield org.jruby.ext.ripper.RipperLexer.lex_strterm:Lorg/jruby/ext/ripper/StrTerm;
        28: .line 534
            sipush 366
            ireturn
        29: .line 537
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            new org.jruby.ext.ripper.StringTerm
            dup
            sipush 16394
            iload 2 /* begin */
            iload 3 /* end */
            invokespecial org.jruby.ext.ripper.StringTerm.<init>:(III)V
            putfield org.jruby.ext.ripper.RipperLexer.lex_strterm:Lorg/jruby/ext/ripper/StrTerm;
        30: .line 538
            sipush 369
            ireturn
        31: .line 541
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            new org.jruby.ext.ripper.StringTerm
            dup
            sipush 16392
            iload 2 /* begin */
            iload 3 /* end */
            invokespecial org.jruby.ext.ripper.StringTerm.<init>:(III)V
            putfield org.jruby.ext.ripper.RipperLexer.lex_strterm:Lorg/jruby/ext/ripper/StrTerm;
        32: .line 542
            sipush 370
            ireturn
        33: .line 545
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            new org.jruby.ext.ripper.StringTerm
            dup
            iconst_2
            iload 2 /* begin */
            iload 3 /* end */
            invokespecial org.jruby.ext.ripper.StringTerm.<init>:(III)V
            putfield org.jruby.ext.ripper.RipperLexer.lex_strterm:Lorg/jruby/ext/ripper/StrTerm;
        34: .line 546
            sipush 367
            ireturn
        35: .line 549
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            new org.jruby.ext.ripper.StringTerm
            dup
            bipush 7
            iload 2 /* begin */
            iload 3 /* end */
            invokespecial org.jruby.ext.ripper.StringTerm.<init>:(III)V
            putfield org.jruby.ext.ripper.RipperLexer.lex_strterm:Lorg/jruby/ext/ripper/StrTerm;
        36: .line 550
            sipush 368
            ireturn
        37: .line 553
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            new org.jruby.ext.ripper.StringTerm
            dup
            bipush 16
            iload 2 /* begin */
            iload 3 /* end */
            invokespecial org.jruby.ext.ripper.StringTerm.<init>:(III)V
            putfield org.jruby.ext.ripper.RipperLexer.lex_strterm:Lorg/jruby/ext/ripper/StrTerm;
        38: .line 554
            aload 0 /* this */
            sipush 4224
            invokevirtual org.jruby.ext.ripper.RipperLexer.setState:(I)V
        39: .line 555
            sipush 365
            ireturn
        40: .line 558
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            new org.jruby.ext.ripper.StringTerm
            dup
            sipush 16394
            iload 2 /* begin */
            iload 3 /* end */
            invokespecial org.jruby.ext.ripper.StringTerm.<init>:(III)V
            putfield org.jruby.ext.ripper.RipperLexer.lex_strterm:Lorg/jruby/ext/ripper/StrTerm;
        41: .line 559
            sipush 392
            ireturn
        42: .line 562
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            new org.jruby.ext.ripper.StringTerm
            dup
            sipush 16392
            iload 2 /* begin */
            iload 3 /* end */
            invokespecial org.jruby.ext.ripper.StringTerm.<init>:(III)V
            putfield org.jruby.ext.ripper.RipperLexer.lex_strterm:Lorg/jruby/ext/ripper/StrTerm;
        43: .line 563
            sipush 393
            ireturn
        44: .line 565
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            new java.lang.StringBuilder
            dup
            ldc "Unknown type of %string. Expected 'Q', 'q', 'w', 'x', 'r' or any non letter character, but found '"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 1 /* c */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            ldc "'."
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual org.jruby.ext.ripper.RipperLexer.compile_error:(Ljava/lang/String;)V
        45: .line 566
            iconst_m1
            ireturn
        end local 4 // java.lang.String value
        end local 3 // int end
        end local 2 // int begin
        end local 1 // int c
        end local 0 // org.jruby.ext.ripper.RipperLexer this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   46     0   this  Lorg/jruby/ext/ripper/RipperLexer;
            0   46     1      c  I
            3    5     2  begin  I
            6   46     2  begin  I
           15   16     3    end  I
           17   18     3    end  I
           19   20     3    end  I
           21   22     3    end  I
           23   46     3    end  I
            1   46     4  value  Ljava/lang/String;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      c     

  private int hereDocumentIdentifier();
    descriptor: ()I
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=8, locals=6, args_size=1
        start local 0 // org.jruby.ext.ripper.RipperLexer this
         0: .line 571
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.nextc:()I
            istore 1 /* c */
        start local 1 // int c
         1: .line 574
            iconst_0
            istore 3 /* func */
        start local 3 // int func
         2: .line 575
            iload 1 /* c */
            bipush 45
            if_icmpne 6
         3: .line 576
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.nextc:()I
            istore 1 /* c */
         4: .line 577
            bipush 32
            istore 3 /* func */
         5: .line 578
            goto 11
      StackMap locals: org.jruby.ext.ripper.RipperLexer int top int
      StackMap stack:
         6: iload 1 /* c */
            bipush 126
            if_icmpne 11
         7: .line 579
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.nextc:()I
            istore 1 /* c */
         8: .line 580
            bipush 32
            istore 3 /* func */
         9: .line 581
            aload 0 /* this */
            ldc 2147483647
            putfield org.jruby.ext.ripper.RipperLexer.heredoc_indent:I
        10: .line 582
            aload 0 /* this */
            iconst_0
            putfield org.jruby.ext.ripper.RipperLexer.heredoc_line_indent:I
        11: .line 586
      StackMap locals:
      StackMap stack:
            iload 1 /* c */
            bipush 39
            if_icmpeq 12
            iload 1 /* c */
            bipush 34
            if_icmpeq 12
            iload 1 /* c */
            bipush 96
            if_icmpne 27
        12: .line 587
      StackMap locals:
      StackMap stack:
            iload 1 /* c */
            bipush 39
            if_icmpne 15
        13: .line 588
            iload 3 /* func */
            iconst_0
            ior
            istore 3 /* func */
        14: .line 589
            goto 19
      StackMap locals:
      StackMap stack:
        15: iload 1 /* c */
            bipush 34
            if_icmpne 18
        16: .line 590
            iload 3 /* func */
            iconst_2
            ior
            istore 3 /* func */
        17: .line 591
            goto 19
        18: .line 592
      StackMap locals:
      StackMap stack:
            iload 3 /* func */
            iconst_2
            ior
            istore 3 /* func */
        19: .line 595
      StackMap locals:
      StackMap stack:
            new org.jruby.util.ByteList
            dup
            invokespecial org.jruby.util.ByteList.<init>:()V
            astore 4 /* markerValue */
        start local 4 // org.jruby.util.ByteList markerValue
        20: .line 596
            aload 4 /* markerValue */
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.getEncoding:()Lorg/jcodings/Encoding;
            invokevirtual org.jruby.util.ByteList.setEncoding:(Lorg/jcodings/Encoding;)V
        21: .line 597
            iload 1 /* c */
            istore 2 /* term */
        start local 2 // int term
        22: .line 598
            goto 24
        23: .line 599
      StackMap locals: org.jruby.ext.ripper.RipperLexer int int int org.jruby.util.ByteList
      StackMap stack:
            aload 0 /* this */
            iload 1 /* c */
            aload 4 /* markerValue */
            invokevirtual org.jruby.ext.ripper.RipperLexer.tokenAddMBC:(ILorg/jruby/util/ByteList;)Z
            ifne 24
            iconst_m1
            ireturn
        24: .line 598
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.nextc:()I
            dup
            istore 1 /* c */
            iconst_m1
            if_icmpeq 25
            iload 1 /* c */
            iload 2 /* term */
            if_icmpne 23
        25: .line 601
      StackMap locals:
      StackMap stack:
            iload 1 /* c */
            iconst_m1
            if_icmpne 41
            aload 0 /* this */
            ldc "unterminated here document identifier"
            invokevirtual org.jruby.ext.ripper.RipperLexer.compile_error:(Ljava/lang/String;)V
        26: .line 602
            goto 41
        end local 4 // org.jruby.util.ByteList markerValue
        end local 2 // int term
        27: .line 603
      StackMap locals: org.jruby.ext.ripper.RipperLexer int top int
      StackMap stack:
            aload 0 /* this */
            iload 1 /* c */
            invokevirtual org.jruby.ext.ripper.RipperLexer.isIdentifierChar:(I)Z
            ifne 34
        28: .line 604
            aload 0 /* this */
            iload 1 /* c */
            invokevirtual org.jruby.ext.ripper.RipperLexer.pushback:(I)V
        29: .line 605
            iload 3 /* func */
            bipush 32
            iand
            ifeq 33
        30: .line 606
            aload 0 /* this */
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.heredoc_indent:I
            ifle 31
            bipush 126
            goto 32
      StackMap locals:
      StackMap stack: org.jruby.ext.ripper.RipperLexer
        31: bipush 45
      StackMap locals: org.jruby.ext.ripper.RipperLexer int top int
      StackMap stack: org.jruby.ext.ripper.RipperLexer int
        32: invokevirtual org.jruby.ext.ripper.RipperLexer.pushback:(I)V
        33: .line 608
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        34: .line 610
      StackMap locals:
      StackMap stack:
            new org.jruby.util.ByteList
            dup
            invokespecial org.jruby.util.ByteList.<init>:()V
            astore 4 /* markerValue */
        start local 4 // org.jruby.util.ByteList markerValue
        35: .line 611
            aload 4 /* markerValue */
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.getEncoding:()Lorg/jcodings/Encoding;
            invokevirtual org.jruby.util.ByteList.setEncoding:(Lorg/jcodings/Encoding;)V
        36: .line 612
            bipush 34
            istore 2 /* term */
        start local 2 // int term
        37: .line 613
            iload 3 /* func */
            iconst_2
            ior
            istore 3 /* func */
        38: .line 615
      StackMap locals: org.jruby.ext.ripper.RipperLexer int int int org.jruby.util.ByteList
      StackMap stack:
            aload 0 /* this */
            iload 1 /* c */
            aload 4 /* markerValue */
            invokevirtual org.jruby.ext.ripper.RipperLexer.tokenAddMBC:(ILorg/jruby/util/ByteList;)Z
            ifne 39
            iconst_m1
            ireturn
        39: .line 616
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.nextc:()I
            dup
            istore 1 /* c */
            iconst_m1
            if_icmpeq 40
            aload 0 /* this */
            iload 1 /* c */
            invokevirtual org.jruby.ext.ripper.RipperLexer.isIdentifierChar:(I)Z
            ifne 38
        40: .line 618
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 1 /* c */
            invokevirtual org.jruby.ext.ripper.RipperLexer.pushback:(I)V
        41: .line 621
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            sipush 390
            invokevirtual org.jruby.ext.ripper.RipperLexer.dispatchScanEvent:(I)V
        42: .line 622
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.lex_p:I
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.lex_pbeg:I
            isub
            istore 5 /* len */
        start local 5 // int len
        43: .line 623
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.lex_goto_eol:()V
        44: .line 624
            aload 0 /* this */
            new org.jruby.ext.ripper.HeredocTerm
            dup
            aload 4 /* markerValue */
            iload 3 /* func */
            iload 5 /* len */
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.ruby_sourceline:I
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.lex_lastline:Lorg/jruby/util/ByteList;
            invokespecial org.jruby.ext.ripper.HeredocTerm.<init>:(Lorg/jruby/util/ByteList;IIILorg/jruby/util/ByteList;)V
            putfield org.jruby.ext.ripper.RipperLexer.lex_strterm:Lorg/jruby/ext/ripper/StrTerm;
        45: .line 626
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.flush:()V
        46: .line 627
            iload 2 /* term */
            bipush 96
            if_icmpne 47
            sipush 367
            goto 48
      StackMap locals: int
      StackMap stack:
        47: sipush 366
      StackMap locals:
      StackMap stack: int
        48: ireturn
        end local 5 // int len
        end local 4 // org.jruby.util.ByteList markerValue
        end local 3 // int func
        end local 2 // int term
        end local 1 // int c
        end local 0 // org.jruby.ext.ripper.RipperLexer this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   49     0         this  Lorg/jruby/ext/ripper/RipperLexer;
            1   49     1            c  I
           22   27     2         term  I
           37   49     2         term  I
            2   49     3         func  I
           20   27     4  markerValue  Lorg/jruby/util/ByteList;
           35   49     4  markerValue  Lorg/jruby/util/ByteList;
           43   49     5          len  I
    Exceptions:
      throws java.io.IOException

  private boolean arg_ambiguous();
    descriptor: ()Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.jruby.ext.ripper.RipperLexer this
         0: .line 631
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.parser:Lorg/jruby/ext/ripper/RipperParserBase;
            ldc "on_arg_ambiguous"
            invokevirtual org.jruby.ext.ripper.RipperParserBase.dispatch:(Ljava/lang/String;)Lorg/jruby/runtime/builtin/IRubyObject;
            pop
         1: .line 632
            iconst_1
            ireturn
        end local 0 // org.jruby.ext.ripper.RipperLexer this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/jruby/ext/ripper/RipperLexer;

  private void printToken(int);
    descriptor: (I)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // org.jruby.ext.ripper.RipperLexer this
        start local 1 // int token
         0: .line 643
            iload 1 /* token */
            lookupswitch { // 79
                   -1: 77
                   10: 76
                  256: 1
                  306: 2
                  307: 3
                  308: 4
                  309: 5
                  310: 6
                  311: 7
                  312: 74
                  314: 23
                  315: 24
                  317: 25
                  318: 26
                  319: 27
                  320: 28
                  321: 29
                  322: 30
                  323: 31
                  324: 32
                  325: 33
                  326: 34
                  327: 35
                  328: 36
                  329: 37
                  330: 38
                  331: 39
                  332: 40
                  333: 41
                  334: 42
                  336: 43
                  337: 44
                  338: 45
                  339: 46
                  340: 47
                  341: 48
                  342: 73
                  343: 49
                  344: 50
                  345: 51
                  346: 52
                  347: 53
                  348: 54
                  349: 55
                  350: 56
                  351: 57
                  352: 59
                  353: 60
                  354: 61
                  355: 62
                  356: 63
                  357: 64
                  358: 65
                  359: 70
                  360: 67
                  361: 66
                  362: 68
                  363: 69
                  364: 21
                  365: 58
                  366: 11
                  367: 15
                  368: 16
                  369: 18
                  370: 19
                  371: 13
                  372: 14
                  373: 12
                  374: 71
                  375: 72
                  376: 22
                  377: 20
                  378: 10
                  379: 8
                  381: 9
                  383: 17
                  394: 78
                  395: 79
                  396: 75
              default: 80
          }
         1: .line 644
      StackMap locals:
      StackMap stack:
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            ldc "yyErrorCode,"
            invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
            goto 81
         2: .line 646
      StackMap locals:
      StackMap stack:
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            new java.lang.StringBuilder
            dup
            ldc "tIDENTIFIER["
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.value:()Ljava/lang/Object;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc "],"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
            goto 81
         3: .line 647
      StackMap locals:
      StackMap stack:
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            new java.lang.StringBuilder
            dup
            ldc "tFID["
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.value:()Ljava/lang/Object;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc "],"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
            goto 81
         4: .line 648
      StackMap locals:
      StackMap stack:
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            new java.lang.StringBuilder
            dup
            ldc "tGVAR["
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.value:()Ljava/lang/Object;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc "],"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
            goto 81
         5: .line 649
      StackMap locals:
      StackMap stack:
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            new java.lang.StringBuilder
            dup
            ldc "tIVAR["
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.value:()Ljava/lang/Object;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc "],"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
            goto 81
         6: .line 650
      StackMap locals:
      StackMap stack:
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            new java.lang.StringBuilder
            dup
            ldc "tCONSTANT["
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.value:()Ljava/lang/Object;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc "],"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
            goto 81
         7: .line 651
      StackMap locals:
      StackMap stack:
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            ldc "tCVAR,"
            invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
            goto 81
         8: .line 652
      StackMap locals:
      StackMap stack:
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            ldc "tINTEGER,"
            invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
            goto 81
         9: .line 653
      StackMap locals:
      StackMap stack:
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            ldc "tFLOAT,"
            invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
            goto 81
        10: .line 654
      StackMap locals:
      StackMap stack:
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            new java.lang.StringBuilder
            dup
            ldc "tSTRING_CONTENT["
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.value:()Ljava/lang/Object;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc "],"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
            goto 81
        11: .line 655
      StackMap locals:
      StackMap stack:
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            ldc "tSTRING_BEG,"
            invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
            goto 81
        12: .line 656
      StackMap locals:
      StackMap stack:
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            ldc "tSTRING_END,"
            invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
            goto 81
        13: .line 657
      StackMap locals:
      StackMap stack:
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            ldc "tSTRING_DBEG,"
            invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
            goto 81
        14: .line 658
      StackMap locals:
      StackMap stack:
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            ldc "tSTRING_DVAR,"
            invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
            goto 81
        15: .line 659
      StackMap locals:
      StackMap stack:
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            ldc "tXSTRING_BEG,"
            invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
            goto 81
        16: .line 660
      StackMap locals:
      StackMap stack:
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            ldc "tREGEXP_BEG,"
            invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
            goto 81
        17: .line 661
      StackMap locals:
      StackMap stack:
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            ldc "tREGEXP_END,"
            invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
            goto 81
        18: .line 662
      StackMap locals:
      StackMap stack:
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            ldc "tWORDS_BEG,"
            invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
            goto 81
        19: .line 663
      StackMap locals:
      StackMap stack:
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            ldc "tQWORDS_BEG,"
            invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
            goto 81
        20: .line 664
      StackMap locals:
      StackMap stack:
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            ldc "tBACK_REF,"
            invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
            goto 81
        21: .line 665
      StackMap locals:
      StackMap stack:
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            ldc "tBACK_REF2,"
            invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
            goto 81
        22: .line 666
      StackMap locals:
      StackMap stack:
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            ldc "tNTH_REF,"
            invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
            goto 81
        23: .line 667
      StackMap locals:
      StackMap stack:
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            ldc "tUPLUS"
            invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
            goto 81
        24: .line 668
      StackMap locals:
      StackMap stack:
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            ldc "tUMINUS,"
            invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
            goto 81
        25: .line 669
      StackMap locals:
      StackMap stack:
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            ldc "tPOW,"
            invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
            goto 81
        26: .line 670
      StackMap locals:
      StackMap stack:
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            ldc "tCMP,"
            invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
            goto 81
        27: .line 671
      StackMap locals:
      StackMap stack:
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            ldc "tEQ,"
            invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
            goto 81
        28: .line 672
      StackMap locals:
      StackMap stack:
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            ldc "tEQQ,"
            invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
            goto 81
        29: .line 673
      StackMap locals:
      StackMap stack:
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            ldc "tNEQ,"
            invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
            goto 81
        30: .line 674
      StackMap locals:
      StackMap stack:
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            ldc "tGEQ,"
            invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
            goto 81
        31: .line 675
      StackMap locals:
      StackMap stack:
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            ldc "tLEQ,"
            invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
            goto 81
        32: .line 676
      StackMap locals:
      StackMap stack:
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            ldc "tANDOP,"
            invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
            goto 81
        33: .line 677
      StackMap locals:
      StackMap stack:
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            ldc "tOROP,"
            invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
            goto 81
        34: .line 678
      StackMap locals:
      StackMap stack:
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            ldc "tMATCH,"
            invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
            goto 81
        35: .line 679
      StackMap locals:
      StackMap stack:
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            ldc "tNMATCH,"
            invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
            goto 81
        36: .line 680
      StackMap locals:
      StackMap stack:
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            ldc "tDOT,"
            invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
            goto 81
        37: .line 681
      StackMap locals:
      StackMap stack:
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            ldc "tDOT2,"
            invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
            goto 81
        38: .line 682
      StackMap locals:
      StackMap stack:
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            ldc "tDOT3,"
            invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
            goto 81
        39: .line 683
      StackMap locals:
      StackMap stack:
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            ldc "tAREF,"
            invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
            goto 81
        40: .line 684
      StackMap locals:
      StackMap stack:
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            ldc "tASET,"
            invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
            goto 81
        41: .line 685
      StackMap locals:
      StackMap stack:
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            ldc "tLSHFT,"
            invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
            goto 81
        42: .line 686
      StackMap locals:
      StackMap stack:
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            ldc "tRSHFT,"
            invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
            goto 81
        43: .line 687
      StackMap locals:
      StackMap stack:
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            ldc "tCOLON2,"
            invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
            goto 81
        44: .line 688
      StackMap locals:
      StackMap stack:
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            ldc "tCOLON3,"
            invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
            goto 81
        45: .line 689
      StackMap locals:
      StackMap stack:
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            ldc "tOP_ASGN,"
            invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
            goto 81
        46: .line 690
      StackMap locals:
      StackMap stack:
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            ldc "tASSOC,"
            invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
            goto 81
        47: .line 691
      StackMap locals:
      StackMap stack:
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            ldc "tLPAREN,"
            invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
            goto 81
        48: .line 692
      StackMap locals:
      StackMap stack:
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            ldc "tLPAREN2,"
            invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
            goto 81
        49: .line 693
      StackMap locals:
      StackMap stack:
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            ldc "tLPAREN_ARG,"
            invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
            goto 81
        50: .line 694
      StackMap locals:
      StackMap stack:
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            ldc "tLBRACK,"
            invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
            goto 81
        51: .line 695
      StackMap locals:
      StackMap stack:
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            ldc "tRBRACK,"
            invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
            goto 81
        52: .line 696
      StackMap locals:
      StackMap stack:
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            ldc "tLBRACE,"
            invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
            goto 81
        53: .line 697
      StackMap locals:
      StackMap stack:
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            ldc "tLBRACE_ARG,"
            invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
            goto 81
        54: .line 698
      StackMap locals:
      StackMap stack:
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            ldc "tSTAR,"
            invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
            goto 81
        55: .line 699
      StackMap locals:
      StackMap stack:
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            ldc "tSTAR2,"
            invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
            goto 81
        56: .line 700
      StackMap locals:
      StackMap stack:
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            ldc "tAMPER,"
            invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
            goto 81
        57: .line 701
      StackMap locals:
      StackMap stack:
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            ldc "tAMPER2,"
            invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
            goto 81
        58: .line 702
      StackMap locals:
      StackMap stack:
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            ldc "tSYMBEG,"
            invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
            goto 81
        59: .line 703
      StackMap locals:
      StackMap stack:
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            ldc "tTILDE,"
            invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
            goto 81
        60: .line 704
      StackMap locals:
      StackMap stack:
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            ldc "tPERCENT,"
            invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
            goto 81
        61: .line 705
      StackMap locals:
      StackMap stack:
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            ldc "tDIVIDE,"
            invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
            goto 81
        62: .line 706
      StackMap locals:
      StackMap stack:
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            ldc "tPLUS,"
            invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
            goto 81
        63: .line 707
      StackMap locals:
      StackMap stack:
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            ldc "tMINUS,"
            invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
            goto 81
        64: .line 708
      StackMap locals:
      StackMap stack:
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            ldc "tLT,"
            invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
            goto 81
        65: .line 709
      StackMap locals:
      StackMap stack:
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            ldc "tGT,"
            invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
            goto 81
        66: .line 710
      StackMap locals:
      StackMap stack:
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            ldc "tCARET,"
            invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
            goto 81
        67: .line 711
      StackMap locals:
      StackMap stack:
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            ldc "tBANG,"
            invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
            goto 81
        68: .line 712
      StackMap locals:
      StackMap stack:
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            ldc "tTLCURLY,"
            invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
            goto 81
        69: .line 713
      StackMap locals:
      StackMap stack:
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            ldc "tRCURLY,"
            invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
            goto 81
        70: .line 714
      StackMap locals:
      StackMap stack:
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            ldc "tTPIPE,"
            invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
            goto 81
        71: .line 715
      StackMap locals:
      StackMap stack:
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            ldc "tLAMBDA,"
            invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
            goto 81
        72: .line 716
      StackMap locals:
      StackMap stack:
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            ldc "tLAMBEG,"
            invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
            goto 81
        73: .line 717
      StackMap locals:
      StackMap stack:
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            ldc "tRPAREN,"
            invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
            goto 81
        74: .line 718
      StackMap locals:
      StackMap stack:
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            new java.lang.StringBuilder
            dup
            ldc "tLABEL("
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.value:()Ljava/lang/Object;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc ":),"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
            goto 81
        75: .line 719
      StackMap locals:
      StackMap stack:
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            ldc "tLABEL_END"
            invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
            goto 81
        76: .line 720
      StackMap locals:
      StackMap stack:
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            ldc "NL"
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
            goto 81
        77: .line 721
      StackMap locals:
      StackMap stack:
            getstatic java.lang.System.out:Ljava/io/PrintStream;
            ldc "EOF"
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
            goto 81
        78: .line 722
      StackMap locals:
      StackMap stack:
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            ldc "tDSTAR"
            invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
            goto 81
        79: .line 723
      StackMap locals:
      StackMap stack:
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            ldc "tDSTRING_DEND,"
            invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
            goto 81
        80: .line 724
      StackMap locals:
      StackMap stack:
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            new java.lang.StringBuilder
            dup
            ldc "'"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 1 /* token */
            i2c
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            ldc "'["
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            iload 1 /* token */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            ldc "]"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
        81: .line 726
      StackMap locals:
      StackMap stack:
            return
        end local 1 // int token
        end local 0 // org.jruby.ext.ripper.RipperLexer this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   82     0   this  Lorg/jruby/ext/ripper/RipperLexer;
            0   82     1  token  I
    MethodParameters:
       Name  Flags
      token  

  public boolean hasScanEvent();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.jruby.ext.ripper.RipperLexer this
         0: .line 729
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.lex_p:I
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.tokp:I
            if_icmpge 2
         1: .line 730
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.parser:Lorg/jruby/ext/ripper/RipperParserBase;
            invokevirtual org.jruby.ext.ripper.RipperParserBase.getRuntime:()Lorg/jruby/Ruby;
            ldc "lex_p < tokp"
            invokevirtual org.jruby.Ruby.newRuntimeError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
            athrow
         2: .line 733
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.lex_p:I
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.tokp:I
            if_icmple 3
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         3: iconst_0
            ireturn
        end local 0 // org.jruby.ext.ripper.RipperLexer this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lorg/jruby/ext/ripper/RipperLexer;

  public void dispatchDelayedToken(int);
    descriptor: (I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=6, args_size=2
        start local 0 // org.jruby.ext.ripper.RipperLexer this
        start local 1 // int token
         0: .line 737
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.ruby_sourceline:I
            istore 2 /* saved_line */
        start local 2 // int saved_line
         1: .line 738
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.tokp:I
            istore 3 /* saved_tokp */
        start local 3 // int saved_tokp
         2: .line 740
            aload 0 /* this */
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.delayed_line:I
            putfield org.jruby.ext.ripper.RipperLexer.ruby_sourceline:I
         3: .line 741
            aload 0 /* this */
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.lex_pbeg:I
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.delayed_col:I
            iadd
            putfield org.jruby.ext.ripper.RipperLexer.tokp:I
         4: .line 743
            aload 0 /* this */
            iload 1 /* token */
            invokevirtual org.jruby.ext.ripper.RipperLexer.tokenToEventId:(I)Ljava/lang/String;
            astore 4 /* event */
        start local 4 // java.lang.String event
         5: .line 744
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.delayed:Lorg/jruby/util/ByteList;
            ifnonnull 6
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.parser:Lorg/jruby/ext/ripper/RipperParserBase;
            getfield org.jruby.ext.ripper.RipperParserBase.context:Lorg/jruby/runtime/ThreadContext;
            getfield org.jruby.runtime.ThreadContext.nil:Lorg/jruby/runtime/builtin/IRubyObject;
            goto 7
      StackMap locals: int int java.lang.String
      StackMap stack:
         6: aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.parser:Lorg/jruby/ext/ripper/RipperParserBase;
            invokevirtual org.jruby.ext.ripper.RipperParserBase.getRuntime:()Lorg/jruby/Ruby;
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.delayed:Lorg/jruby/util/ByteList;
            invokevirtual org.jruby.util.ByteList.dup:()Lorg/jruby/util/ByteList;
            invokevirtual org.jruby.Ruby.newString:(Lorg/jruby/util/ByteList;)Lorg/jruby/RubyString;
      StackMap locals:
      StackMap stack: org.jruby.runtime.builtin.IRubyObject
         7: astore 5 /* value */
        start local 5 // org.jruby.runtime.builtin.IRubyObject value
         8: .line 746
            aload 0 /* this */
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.parser:Lorg/jruby/ext/ripper/RipperParserBase;
            aload 4 /* event */
            aload 5 /* value */
            invokevirtual org.jruby.ext.ripper.RipperParserBase.dispatch:(Ljava/lang/String;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            putfield org.jruby.ext.ripper.RipperLexer.yaccValue:Ljava/lang/Object;
         9: .line 747
            aload 0 /* this */
            aconst_null
            putfield org.jruby.ext.ripper.RipperLexer.delayed:Lorg/jruby/util/ByteList;
        10: .line 748
            aload 0 /* this */
            iload 2 /* saved_line */
            putfield org.jruby.ext.ripper.RipperLexer.ruby_sourceline:I
        11: .line 749
            aload 0 /* this */
            iload 3 /* saved_tokp */
            putfield org.jruby.ext.ripper.RipperLexer.tokp:I
        12: .line 750
            return
        end local 5 // org.jruby.runtime.builtin.IRubyObject value
        end local 4 // java.lang.String event
        end local 3 // int saved_tokp
        end local 2 // int saved_line
        end local 1 // int token
        end local 0 // org.jruby.ext.ripper.RipperLexer this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   13     0        this  Lorg/jruby/ext/ripper/RipperLexer;
            0   13     1       token  I
            1   13     2  saved_line  I
            2   13     3  saved_tokp  I
            5   13     4       event  Ljava/lang/String;
            8   13     5       value  Lorg/jruby/runtime/builtin/IRubyObject;
    MethodParameters:
       Name  Flags
      token  

  public void dispatchIgnoredScanEvent(int);
    descriptor: (I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.jruby.ext.ripper.RipperLexer this
        start local 1 // int token
         0: .line 753
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.hasScanEvent:()Z
            ifne 1
            return
         1: .line 755
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 1 /* token */
            invokevirtual org.jruby.ext.ripper.RipperLexer.scanEventValue:(I)Lorg/jruby/runtime/builtin/IRubyObject;
            pop
         2: .line 756
            return
        end local 1 // int token
        end local 0 // org.jruby.ext.ripper.RipperLexer this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    3     0   this  Lorg/jruby/ext/ripper/RipperLexer;
            0    3     1  token  I
    MethodParameters:
       Name  Flags
      token  

  public void dispatchScanEvent(int);
    descriptor: (I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.jruby.ext.ripper.RipperLexer this
        start local 1 // int token
         0: .line 759
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.hasScanEvent:()Z
            ifne 1
            return
         1: .line 761
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            iload 1 /* token */
            invokevirtual org.jruby.ext.ripper.RipperLexer.scanEventValue:(I)Lorg/jruby/runtime/builtin/IRubyObject;
            putfield org.jruby.ext.ripper.RipperLexer.yaccValue:Ljava/lang/Object;
         2: .line 762
            return
        end local 1 // int token
        end local 0 // org.jruby.ext.ripper.RipperLexer this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    3     0   this  Lorg/jruby/ext/ripper/RipperLexer;
            0    3     1  token  I
    MethodParameters:
       Name  Flags
      token  

  private org.jruby.runtime.builtin.IRubyObject scanEventValue(int);
    descriptor: (I)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=5, args_size=2
        start local 0 // org.jruby.ext.ripper.RipperLexer this
        start local 1 // int token
         0: .line 766
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.parser:Lorg/jruby/ext/ripper/RipperParserBase;
            invokevirtual org.jruby.ext.ripper.RipperParserBase.getRuntime:()Lorg/jruby/Ruby;
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.lexb:Lorg/jruby/util/ByteList;
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.tokp:I
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.lex_p:I
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.tokp:I
            isub
            invokevirtual org.jruby.util.ByteList.makeShared:(II)Lorg/jruby/util/ByteList;
            invokevirtual org.jruby.Ruby.newString:(Lorg/jruby/util/ByteList;)Lorg/jruby/RubyString;
            astore 2 /* value */
        start local 2 // org.jruby.runtime.builtin.IRubyObject value
         1: .line 767
            aload 0 /* this */
            iload 1 /* token */
            invokevirtual org.jruby.ext.ripper.RipperLexer.tokenToEventId:(I)Ljava/lang/String;
            astore 3 /* event */
        start local 3 // java.lang.String event
         2: .line 769
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.parser:Lorg/jruby/ext/ripper/RipperParserBase;
            aload 3 /* event */
            aload 2 /* value */
            invokevirtual org.jruby.ext.ripper.RipperParserBase.dispatch:(Ljava/lang/String;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            astore 4 /* returnValue */
        start local 4 // org.jruby.runtime.builtin.IRubyObject returnValue
         3: .line 770
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.flush:()V
         4: .line 771
            aload 4 /* returnValue */
            areturn
        end local 4 // org.jruby.runtime.builtin.IRubyObject returnValue
        end local 3 // java.lang.String event
        end local 2 // org.jruby.runtime.builtin.IRubyObject value
        end local 1 // int token
        end local 0 // org.jruby.ext.ripper.RipperLexer this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    5     0         this  Lorg/jruby/ext/ripper/RipperLexer;
            0    5     1        token  I
            1    5     2        value  Lorg/jruby/runtime/builtin/IRubyObject;
            2    5     3        event  Ljava/lang/String;
            3    5     4  returnValue  Lorg/jruby/runtime/builtin/IRubyObject;
    MethodParameters:
       Name  Flags
      token  

  private java.lang.String tokenToEventId(int);
    descriptor: (I)Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // org.jruby.ext.ripper.RipperLexer this
        start local 1 // int token
         0: .line 775
            iload 1 /* token */
            lookupswitch { // 151
                   10: 23
                   32: 1
                   41: 108
                   44: 18
                   46: 19
                   58: 17
                   59: 21
                   61: 11
                   63: 13
                   91: 102
                  257: 29
                  258: 44
                  259: 30
                  260: 58
                  261: 26
                  262: 50
                  263: 38
                  264: 37
                  265: 41
                  266: 59
                  267: 56
                  268: 36
                  269: 35
                  270: 28
                  271: 63
                  272: 64
                  273: 61
                  274: 40
                  275: 27
                  276: 45
                  277: 49
                  278: 52
                  279: 43
                  280: 32
                  281: 34
                  282: 33
                  283: 53
                  284: 66
                  285: 55
                  286: 54
                  287: 46
                  288: 57
                  289: 39
                  290: 25
                  291: 48
                  292: 47
                  293: 42
                  294: 60
                  295: 65
                  296: 62
                  297: 51
                  298: 24
                  299: 31
                  300: 70
                  301: 71
                  302: 68
                  303: 67
                  304: 69
                  305: 72
                  306: 93
                  307: 89
                  308: 92
                  309: 96
                  310: 83
                  311: 84
                  312: 139
                  313: 79
                  314: 136
                  315: 134
                  316: 135
                  317: 116
                  318: 80
                  319: 87
                  320: 88
                  321: 111
                  322: 91
                  323: 104
                  324: 74
                  325: 115
                  326: 110
                  327: 112
                  328: 20
                  329: 85
                  330: 86
                  331: 75
                  332: 76
                  333: 109
                  334: 124
                  335: 4
                  336: 81
                  337: 82
                  338: 114
                  339: 77
                  340: 105
                  341: 107
                  342: 123
                  343: 106
                  344: 101
                  345: 103
                  346: 97
                  347: 98
                  348: 125
                  349: 6
                  350: 73
                  351: 5
                  352: 16
                  353: 3
                  354: 9
                  355: 7
                  356: 8
                  357: 10
                  358: 12
                  359: 15
                  360: 2
                  361: 14
                  362: 99
                  363: 100
                  364: 22
                  365: 133
                  366: 127
                  367: 138
                  368: 121
                  369: 137
                  370: 120
                  371: 129
                  372: 131
                  373: 132
                  374: 141
                  375: 142
                  376: 113
                  377: 78
                  378: 128
                  379: 95
                  380: 94
                  381: 90
                  382: 118
                  383: 122
                  384: 143
                  385: 144
                  386: 145
                  387: 146
                  388: 147
                  389: 148
                  390: 149
                  391: 150
                  392: 119
                  393: 117
                  394: 126
                  395: 130
                  396: 140
                  398: 151
              default: 152
          }
         1: .line 776
      StackMap locals:
      StackMap stack:
            ldc "on_words_sep"
            areturn
         2: .line 777
      StackMap locals:
      StackMap stack:
            ldc "on_op"
            areturn
         3: .line 778
      StackMap locals:
      StackMap stack:
            ldc "on_op"
            areturn
         4: .line 779
      StackMap locals:
      StackMap stack:
            ldc "on_op"
            areturn
         5: .line 780
      StackMap locals:
      StackMap stack:
            ldc "on_op"
            areturn
         6: .line 781
      StackMap locals:
      StackMap stack:
            ldc "on_op"
            areturn
         7: .line 782
      StackMap locals:
      StackMap stack:
            ldc "on_op"
            areturn
         8: .line 783
      StackMap locals:
      StackMap stack:
            ldc "on_op"
            areturn
         9: .line 784
      StackMap locals:
      StackMap stack:
            ldc "on_op"
            areturn
        10: .line 785
      StackMap locals:
      StackMap stack:
            ldc "on_op"
            areturn
        11: .line 786
      StackMap locals:
      StackMap stack:
            ldc "on_op"
            areturn
        12: .line 787
      StackMap locals:
      StackMap stack:
            ldc "on_op"
            areturn
        13: .line 788
      StackMap locals:
      StackMap stack:
            ldc "on_op"
            areturn
        14: .line 789
      StackMap locals:
      StackMap stack:
            ldc "on_op"
            areturn
        15: .line 790
      StackMap locals:
      StackMap stack:
            ldc "on_op"
            areturn
        16: .line 791
      StackMap locals:
      StackMap stack:
            ldc "on_op"
            areturn
        17: .line 792
      StackMap locals:
      StackMap stack:
            ldc "on_op"
            areturn
        18: .line 793
      StackMap locals:
      StackMap stack:
            ldc "on_comma"
            areturn
        19: .line 794
      StackMap locals:
      StackMap stack:
            ldc "on_period"
            areturn
        20: .line 795
      StackMap locals:
      StackMap stack:
            ldc "on_period"
            areturn
        21: .line 796
      StackMap locals:
      StackMap stack:
            ldc "on_semicolon"
            areturn
        22: .line 797
      StackMap locals:
      StackMap stack:
            ldc "on_backtick"
            areturn
        23: .line 798
      StackMap locals:
      StackMap stack:
            ldc "on_nl"
            areturn
        24: .line 799
      StackMap locals:
      StackMap stack:
            ldc "on_kw"
            areturn
        25: .line 800
      StackMap locals:
      StackMap stack:
            ldc "on_kw"
            areturn
        26: .line 801
      StackMap locals:
      StackMap stack:
            ldc "on_kw"
            areturn
        27: .line 802
      StackMap locals:
      StackMap stack:
            ldc "on_kw"
            areturn
        28: .line 803
      StackMap locals:
      StackMap stack:
            ldc "on_kw"
            areturn
        29: .line 804
      StackMap locals:
      StackMap stack:
            ldc "on_kw"
            areturn
        30: .line 805
      StackMap locals:
      StackMap stack:
            ldc "on_kw"
            areturn
        31: .line 806
      StackMap locals:
      StackMap stack:
            ldc "on_kw"
            areturn
        32: .line 807
      StackMap locals:
      StackMap stack:
            ldc "on_kw"
            areturn
        33: .line 808
      StackMap locals:
      StackMap stack:
            ldc "on_kw"
            areturn
        34: .line 809
      StackMap locals:
      StackMap stack:
            ldc "on_kw"
            areturn
        35: .line 810
      StackMap locals:
      StackMap stack:
            ldc "on_kw"
            areturn
        36: .line 811
      StackMap locals:
      StackMap stack:
            ldc "on_kw"
            areturn
        37: .line 812
      StackMap locals:
      StackMap stack:
            ldc "on_kw"
            areturn
        38: .line 813
      StackMap locals:
      StackMap stack:
            ldc "on_kw"
            areturn
        39: .line 814
      StackMap locals:
      StackMap stack:
            ldc "on_kw"
            areturn
        40: .line 815
      StackMap locals:
      StackMap stack:
            ldc "on_kw"
            areturn
        41: .line 816
      StackMap locals:
      StackMap stack:
            ldc "on_kw"
            areturn
        42: .line 817
      StackMap locals:
      StackMap stack:
            ldc "on_kw"
            areturn
        43: .line 818
      StackMap locals:
      StackMap stack:
            ldc "on_kw"
            areturn
        44: .line 819
      StackMap locals:
      StackMap stack:
            ldc "on_kw"
            areturn
        45: .line 820
      StackMap locals:
      StackMap stack:
            ldc "on_kw"
            areturn
        46: .line 821
      StackMap locals:
      StackMap stack:
            ldc "on_kw"
            areturn
        47: .line 822
      StackMap locals:
      StackMap stack:
            ldc "on_kw"
            areturn
        48: .line 823
      StackMap locals:
      StackMap stack:
            ldc "on_kw"
            areturn
        49: .line 824
      StackMap locals:
      StackMap stack:
            ldc "on_kw"
            areturn
        50: .line 825
      StackMap locals:
      StackMap stack:
            ldc "on_kw"
            areturn
        51: .line 826
      StackMap locals:
      StackMap stack:
            ldc "on_kw"
            areturn
        52: .line 827
      StackMap locals:
      StackMap stack:
            ldc "on_kw"
            areturn
        53: .line 828
      StackMap locals:
      StackMap stack:
            ldc "on_kw"
            areturn
        54: .line 829
      StackMap locals:
      StackMap stack:
            ldc "on_kw"
            areturn
        55: .line 830
      StackMap locals:
      StackMap stack:
            ldc "on_kw"
            areturn
        56: .line 831
      StackMap locals:
      StackMap stack:
            ldc "on_kw"
            areturn
        57: .line 832
      StackMap locals:
      StackMap stack:
            ldc "on_kw"
            areturn
        58: .line 833
      StackMap locals:
      StackMap stack:
            ldc "on_kw"
            areturn
        59: .line 834
      StackMap locals:
      StackMap stack:
            ldc "on_kw"
            areturn
        60: .line 835
      StackMap locals:
      StackMap stack:
            ldc "on_kw"
            areturn
        61: .line 836
      StackMap locals:
      StackMap stack:
            ldc "on_kw"
            areturn
        62: .line 837
      StackMap locals:
      StackMap stack:
            ldc "on_kw"
            areturn
        63: .line 838
      StackMap locals:
      StackMap stack:
            ldc "on_kw"
            areturn
        64: .line 839
      StackMap locals:
      StackMap stack:
            ldc "on_kw"
            areturn
        65: .line 840
      StackMap locals:
      StackMap stack:
            ldc "on_kw"
            areturn
        66: .line 841
      StackMap locals:
      StackMap stack:
            ldc "on_kw"
            areturn
        67: .line 842
      StackMap locals:
      StackMap stack:
            ldc "on_kw"
            areturn
        68: .line 843
      StackMap locals:
      StackMap stack:
            ldc "on_kw"
            areturn
        69: .line 844
      StackMap locals:
      StackMap stack:
            ldc "on_kw"
            areturn
        70: .line 845
      StackMap locals:
      StackMap stack:
            ldc "on_kw"
            areturn
        71: .line 846
      StackMap locals:
      StackMap stack:
            ldc "on_kw"
            areturn
        72: .line 847
      StackMap locals:
      StackMap stack:
            ldc "on_kw"
            areturn
        73: .line 848
      StackMap locals:
      StackMap stack:
            ldc "on_op"
            areturn
        74: .line 849
      StackMap locals:
      StackMap stack:
            ldc "on_op"
            areturn
        75: .line 850
      StackMap locals:
      StackMap stack:
            ldc "on_op"
            areturn
        76: .line 851
      StackMap locals:
      StackMap stack:
            ldc "on_op"
            areturn
        77: .line 852
      StackMap locals:
      StackMap stack:
            ldc "on_op"
            areturn
        78: .line 853
      StackMap locals:
      StackMap stack:
            ldc "on_backref"
            areturn
        79: .line 854
      StackMap locals:
      StackMap stack:
            ldc "on_CHAR"
            areturn
        80: .line 855
      StackMap locals:
      StackMap stack:
            ldc "on_op"
            areturn
        81: .line 856
      StackMap locals:
      StackMap stack:
            ldc "on_op"
            areturn
        82: .line 857
      StackMap locals:
      StackMap stack:
            ldc "on_op"
            areturn
        83: .line 858
      StackMap locals:
      StackMap stack:
            ldc "on_const"
            areturn
        84: .line 859
      StackMap locals:
      StackMap stack:
            ldc "on_cvar"
            areturn
        85: .line 860
      StackMap locals:
      StackMap stack:
            ldc "on_op"
            areturn
        86: .line 861
      StackMap locals:
      StackMap stack:
            ldc "on_op"
            areturn
        87: .line 862
      StackMap locals:
      StackMap stack:
            ldc "on_op"
            areturn
        88: .line 863
      StackMap locals:
      StackMap stack:
            ldc "on_op"
            areturn
        89: .line 864
      StackMap locals:
      StackMap stack:
            ldc "on_ident"
            areturn
        90: .line 865
      StackMap locals:
      StackMap stack:
            ldc "on_float"
            areturn
        91: .line 866
      StackMap locals:
      StackMap stack:
            ldc "on_op"
            areturn
        92: .line 867
      StackMap locals:
      StackMap stack:
            ldc "on_gvar"
            areturn
        93: .line 868
      StackMap locals:
      StackMap stack:
            ldc "on_ident"
            areturn
        94: .line 869
      StackMap locals:
      StackMap stack:
            ldc "on_imaginary"
            areturn
        95: .line 870
      StackMap locals:
      StackMap stack:
            ldc "on_int"
            areturn
        96: .line 871
      StackMap locals:
      StackMap stack:
            ldc "on_ivar"
            areturn
        97: .line 872
      StackMap locals:
      StackMap stack:
            ldc "on_lbrace"
            areturn
        98: .line 873
      StackMap locals:
      StackMap stack:
            ldc "on_lbrace"
            areturn
        99: .line 874
      StackMap locals:
      StackMap stack:
            ldc "on_lbrace"
            areturn
       100: .line 875
      StackMap locals:
      StackMap stack:
            ldc "on_rbrace"
            areturn
       101: .line 876
      StackMap locals:
      StackMap stack:
            ldc "on_lbracket"
            areturn
       102: .line 877
      StackMap locals:
      StackMap stack:
            ldc "on_lbracket"
            areturn
       103: .line 878
      StackMap locals:
      StackMap stack:
            ldc "on_rbracket"
            areturn
       104: .line 879
      StackMap locals:
      StackMap stack:
            ldc "on_op"
            areturn
       105: .line 880
      StackMap locals:
      StackMap stack:
            ldc "on_lparen"
            areturn
       106: .line 881
      StackMap locals:
      StackMap stack:
            ldc "on_lparen"
            areturn
       107: .line 882
      StackMap locals:
      StackMap stack:
            ldc "on_lparen"
            areturn
       108: .line 883
      StackMap locals:
      StackMap stack:
            ldc "on_rparen"
            areturn
       109: .line 884
      StackMap locals:
      StackMap stack:
            ldc "on_op"
            areturn
       110: .line 885
      StackMap locals:
      StackMap stack:
            ldc "on_op"
            areturn
       111: .line 886
      StackMap locals:
      StackMap stack:
            ldc "on_op"
            areturn
       112: .line 887
      StackMap locals:
      StackMap stack:
            ldc "on_op"
            areturn
       113: .line 888
      StackMap locals:
      StackMap stack:
            ldc "on_backref"
            areturn
       114: .line 889
      StackMap locals:
      StackMap stack:
            ldc "on_op"
            areturn
       115: .line 890
      StackMap locals:
      StackMap stack:
            ldc "on_op"
            areturn
       116: .line 891
      StackMap locals:
      StackMap stack:
            ldc "on_op"
            areturn
       117: .line 892
      StackMap locals:
      StackMap stack:
            ldc "on_qsymbols_beg"
            areturn
       118: .line 893
      StackMap locals:
      StackMap stack:
            ldc "on_rational"
            areturn
       119: .line 894
      StackMap locals:
      StackMap stack:
            ldc "on_symbols_beg"
            areturn
       120: .line 895
      StackMap locals:
      StackMap stack:
            ldc "on_qwords_beg"
            areturn
       121: .line 896
      StackMap locals:
      StackMap stack:
            ldc "on_regexp_beg"
            areturn
       122: .line 897
      StackMap locals:
      StackMap stack:
            ldc "on_regexp_end"
            areturn
       123: .line 898
      StackMap locals:
      StackMap stack:
            ldc "on_rparen"
            areturn
       124: .line 899
      StackMap locals:
      StackMap stack:
            ldc "on_op"
            areturn
       125: .line 900
      StackMap locals:
      StackMap stack:
            ldc "on_op"
            areturn
       126: .line 901
      StackMap locals:
      StackMap stack:
            ldc "on_op"
            areturn
       127: .line 902
      StackMap locals:
      StackMap stack:
            ldc "on_tstring_beg"
            areturn
       128: .line 903
      StackMap locals:
      StackMap stack:
            ldc "on_tstring_content"
            areturn
       129: .line 904
      StackMap locals:
      StackMap stack:
            ldc "on_embexpr_beg"
            areturn
       130: .line 905
      StackMap locals:
      StackMap stack:
            ldc "on_embexpr_end"
            areturn
       131: .line 906
      StackMap locals:
      StackMap stack:
            ldc "on_embvar"
            areturn
       132: .line 907
      StackMap locals:
      StackMap stack:
            ldc "on_tstring_end"
            areturn
       133: .line 908
      StackMap locals:
      StackMap stack:
            ldc "on_symbeg"
            areturn
       134: .line 909
      StackMap locals:
      StackMap stack:
            ldc "on_op"
            areturn
       135: .line 910
      StackMap locals:
      StackMap stack:
            ldc "on_op"
            areturn
       136: .line 911
      StackMap locals:
      StackMap stack:
            ldc "on_op"
            areturn
       137: .line 912
      StackMap locals:
      StackMap stack:
            ldc "on_words_beg"
            areturn
       138: .line 913
      StackMap locals:
      StackMap stack:
            ldc "on_backtick"
            areturn
       139: .line 914
      StackMap locals:
      StackMap stack:
            ldc "on_label"
            areturn
       140: .line 915
      StackMap locals:
      StackMap stack:
            ldc "on_label_end"
            areturn
       141: .line 916
      StackMap locals:
      StackMap stack:
            ldc "on_tlambda"
            areturn
       142: .line 917
      StackMap locals:
      StackMap stack:
            ldc "on_tlambeg"
            areturn
       143: .line 920
      StackMap locals:
      StackMap stack:
            ldc "on_ignored_nl"
            areturn
       144: .line 921
      StackMap locals:
      StackMap stack:
            ldc "on_comment"
            areturn
       145: .line 922
      StackMap locals:
      StackMap stack:
            ldc "on_embdoc_beg"
            areturn
       146: .line 923
      StackMap locals:
      StackMap stack:
            ldc "on_embdoc"
            areturn
       147: .line 924
      StackMap locals:
      StackMap stack:
            ldc "on_embdoc_end"
            areturn
       148: .line 925
      StackMap locals:
      StackMap stack:
            ldc "on_sp"
            areturn
       149: .line 926
      StackMap locals:
      StackMap stack:
            ldc "on_heredoc_beg"
            areturn
       150: .line 927
      StackMap locals:
      StackMap stack:
            ldc "on_heredoc_end"
            areturn
       151: .line 928
      StackMap locals:
      StackMap stack:
            ldc "on___end__"
            areturn
       152: .line 930
      StackMap locals:
      StackMap stack:
            ldc "on_CHAR"
            areturn
        end local 1 // int token
        end local 0 // org.jruby.ext.ripper.RipperLexer this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0  153     0   this  Lorg/jruby/ext/ripper/RipperLexer;
            0  153     1  token  I
    MethodParameters:
       Name  Flags
      token  

  private int yylex2();
    descriptor: ()I
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=2, args_size=1
        start local 0 // org.jruby.ext.ripper.RipperLexer this
         0: .line 937
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.yylex2:()I
            istore 1 /* currentToken */
        start local 1 // int currentToken
         1: .line 939
            aload 0 /* this */
            iload 1 /* currentToken */
            invokevirtual org.jruby.ext.ripper.RipperLexer.printToken:(I)V
         2: .line 941
            iload 1 /* currentToken */
         3: ireturn
        end local 1 // int currentToken
         4: .line 942
      StackMap locals:
      StackMap stack: java.lang.Exception
            astore 1 /* e */
        start local 1 // java.lang.Exception e
         5: .line 943
            getstatic java.lang.System.out:Ljava/io/PrintStream;
            new java.lang.StringBuilder
            dup
            ldc "FFUFUFUFUFUFUFUF: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* e */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
         6: .line 944
            iconst_m1
            ireturn
        end local 1 // java.lang.Exception e
        end local 0 // org.jruby.ext.ripper.RipperLexer this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    7     0          this  Lorg/jruby/ext/ripper/RipperLexer;
            1    4     1  currentToken  I
            5    7     1             e  Ljava/lang/Exception;
      Exception table:
        from    to  target  type
           0     3       4  Class java.lang.Exception
    Exceptions:
      throws java.io.IOException

  private int yylex();
    descriptor: ()I
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=8, args_size=1
        start local 0 // org.jruby.ext.ripper.RipperLexer this
         0: .line 955
            iconst_0
            istore 2 /* spaceSeen */
        start local 2 // boolean spaceSeen
         1: .line 957
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.tokenSeen:Z
            istore 4 /* tokenSeen */
        start local 4 // boolean tokenSeen
         2: .line 959
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.lex_strterm:Lorg/jruby/ext/ripper/StrTerm;
            ifnull 3
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.lex_strterm:Lorg/jruby/ext/ripper/StrTerm;
            aload 0 /* this */
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.src:Lorg/jruby/lexer/LexerSource;
            invokevirtual org.jruby.ext.ripper.StrTerm.parseString:(Lorg/jruby/ext/ripper/RipperLexer;Lorg/jruby/lexer/LexerSource;)I
            ireturn
         3: .line 961
      StackMap locals: org.jruby.ext.ripper.RipperLexer top int top int
      StackMap stack:
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.commandStart:Z
            istore 3 /* commandState */
        start local 3 // boolean commandState
         4: .line 962
            aload 0 /* this */
            iconst_0
            putfield org.jruby.ext.ripper.RipperLexer.commandStart:Z
         5: .line 963
            aload 0 /* this */
            iconst_1
            putfield org.jruby.ext.ripper.RipperLexer.tokenSeen:Z
         6: .line 964
            iconst_0
            istore 5 /* fallthru */
        start local 5 // boolean fallthru
         7: .line 967
      StackMap locals: org.jruby.ext.ripper.RipperLexer top int int int int
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.lex_state:I
            putfield org.jruby.ext.ripper.RipperLexer.last_state:I
         8: .line 968
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.nextc:()I
            istore 1 /* c */
        start local 1 // int c
         9: .line 969
            iload 1 /* c */
            tableswitch { // -1 - 126
                   -1: 10
                    0: 10
                    1: 145
                    2: 145
                    3: 145
                    4: 10
                    5: 145
                    6: 145
                    7: 145
                    8: 145
                    9: 11
                   10: 30
                   11: 11
                   12: 11
                   13: 11
                   14: 145
                   15: 145
                   16: 145
                   17: 145
                   18: 145
                   19: 145
                   20: 145
                   21: 145
                   22: 145
                   23: 145
                   24: 145
                   25: 145
                   26: 10
                   27: 145
                   28: 145
                   29: 145
                   30: 145
                   31: 145
                   32: 11
                   33: 66
                   34: 104
                   35: 24
                   36: 136
                   37: 135
                   38: 108
                   39: 106
                   40: 125
                   41: 114
                   42: 65
                   43: 110
                   44: 123
                   45: 111
                   46: 112
                   47: 118
                   48: 113
                   49: 113
                   50: 113
                   51: 113
                   52: 113
                   53: 113
                   54: 113
                   55: 113
                   56: 113
                   57: 113
                   58: 117
                   59: 120
                   60: 102
                   61: 67
                   62: 103
                   63: 107
                   64: 137
                   65: 145
                   66: 145
                   67: 145
                   68: 145
                   69: 145
                   70: 145
                   71: 145
                   72: 145
                   73: 145
                   74: 145
                   75: 145
                   76: 145
                   77: 145
                   78: 145
                   79: 145
                   80: 145
                   81: 145
                   82: 145
                   83: 145
                   84: 145
                   85: 145
                   86: 145
                   87: 145
                   88: 145
                   89: 145
                   90: 145
                   91: 126
                   92: 128
                   93: 115
                   94: 119
                   95: 138
                   96: 105
                   97: 145
                   98: 145
                   99: 145
                  100: 145
                  101: 145
                  102: 145
                  103: 145
                  104: 145
                  105: 145
                  106: 145
                  107: 145
                  108: 145
                  109: 145
                  110: 145
                  111: 145
                  112: 145
                  113: 145
                  114: 145
                  115: 145
                  116: 145
                  117: 145
                  118: 145
                  119: 145
                  120: 145
                  121: 145
                  122: 145
                  123: 127
                  124: 109
                  125: 116
                  126: 124
              default: 145
          }
        10: .line 974
      StackMap locals: org.jruby.ext.ripper.RipperLexer int int int int int
      StackMap stack:
            iconst_m1
            ireturn
        11: .line 979
      StackMap locals:
      StackMap stack:
            new org.jruby.util.ByteList
            dup
            invokespecial org.jruby.util.ByteList.<init>:()V
            astore 6 /* whitespaceBuf */
        start local 6 // org.jruby.util.ByteList whitespaceBuf
        12: .line 980
            aload 6 /* whitespaceBuf */
            iload 1 /* c */
            invokevirtual org.jruby.util.ByteList.append:(I)Lorg/jruby/util/ByteList;
            pop
        13: .line 981
            iconst_1
            istore 7 /* looping */
        start local 7 // boolean looping
        14: .line 982
            iconst_1
            istore 2 /* spaceSeen */
        15: .line 983
            goto 20
        16: .line 984
      StackMap locals: org.jruby.util.ByteList int
      StackMap stack:
            iload 1 /* c */
            lookupswitch { // 5
                    9: 17
                   11: 17
                   12: 17
                   13: 17
                   32: 17
              default: 19
          }
        17: .line 987
      StackMap locals:
      StackMap stack:
            aload 6 /* whitespaceBuf */
            iload 1 /* c */
            invokevirtual org.jruby.util.ByteList.append:(I)Lorg/jruby/util/ByteList;
            pop
        18: .line 988
            goto 20
        19: .line 990
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 7 /* looping */
        20: .line 983
      StackMap locals:
      StackMap stack:
            iload 7 /* looping */
            ifeq 21
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.nextc:()I
            dup
            istore 1 /* c */
            iconst_m1
            if_icmpne 16
        21: .line 994
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 1 /* c */
            invokevirtual org.jruby.ext.ripper.RipperLexer.pushback:(I)V
        22: .line 995
            aload 0 /* this */
            sipush 389
            invokevirtual org.jruby.ext.ripper.RipperLexer.dispatchScanEvent:(I)V
        23: .line 996
            goto 7
        end local 7 // boolean looping
        end local 6 // org.jruby.util.ByteList whitespaceBuf
        24: .line 999
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 4 /* tokenSeen */
            putfield org.jruby.ext.ripper.RipperLexer.tokenSeen:Z
        25: .line 1000
            aload 0 /* this */
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.lexb:Lorg/jruby/util/ByteList;
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.lex_p:I
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.lex_pend:I
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.lex_p:I
            isub
            invokevirtual org.jruby.util.ByteList.makeShared:(II)Lorg/jruby/util/ByteList;
            invokevirtual org.jruby.ext.ripper.RipperLexer.parser_magic_comment:(Lorg/jruby/util/ByteList;)Z
            ifne 27
        26: .line 1001
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.comment_at_top:()Z
            ifeq 27
            aload 0 /* this */
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.lex_p:I
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.lex_pend:I
            invokevirtual org.jruby.ext.ripper.RipperLexer.set_file_encoding:(II)V
        27: .line 1003
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.lex_pend:I
            putfield org.jruby.ext.ripper.RipperLexer.lex_p:I
        28: .line 1004
            aload 0 /* this */
            sipush 385
            invokevirtual org.jruby.ext.ripper.RipperLexer.dispatchScanEvent:(I)V
        29: .line 1006
            iconst_1
            istore 5 /* fallthru */
        30: .line 1010
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 4 /* tokenSeen */
            putfield org.jruby.ext.ripper.RipperLexer.tokenSeen:Z
        31: .line 1011
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.lex_state:I
            sipush 897
            invokestatic org.jruby.ext.ripper.RipperLexer.isLexState:(II)Z
            ifeq 34
        32: .line 1012
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.lex_state:I
            sipush 2048
            invokestatic org.jruby.ext.ripper.RipperLexer.isLexState:(II)Z
            ifne 34
        33: .line 1011
            iconst_1
            goto 35
      StackMap locals:
      StackMap stack:
        34: iconst_0
      StackMap locals:
      StackMap stack: int
        35: istore 6 /* normalArg */
        start local 6 // boolean normalArg
        36: .line 1013
            iload 6 /* normalArg */
            ifne 37
            aload 0 /* this */
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.lex_state:I
            sipush 2064
            invokevirtual org.jruby.ext.ripper.RipperLexer.isLexStateAll:(II)Z
            ifeq 43
        37: .line 1014
      StackMap locals: int
      StackMap stack:
            iload 5 /* fallthru */
            ifne 38
            aload 0 /* this */
            sipush 384
            invokevirtual org.jruby.ext.ripper.RipperLexer.dispatchScanEvent:(I)V
        38: .line 1015
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 5 /* fallthru */
        39: .line 1016
            iload 6 /* normalArg */
            ifne 7
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.inKwarg:Z
            ifeq 7
        40: .line 1017
            aload 0 /* this */
            iconst_1
            putfield org.jruby.ext.ripper.RipperLexer.commandStart:Z
        41: .line 1018
            aload 0 /* this */
            iconst_1
            invokevirtual org.jruby.ext.ripper.RipperLexer.setState:(I)V
        42: .line 1019
            bipush 10
            ireturn
        43: .line 1024
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 7 /* done */
        start local 7 // boolean done
        44: .line 1025
            goto 61
        45: .line 1026
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.nextc:()I
            istore 1 /* c */
        46: .line 1028
            iload 1 /* c */
            lookupswitch { // 8
                   -1: 58
                    9: 47
                   11: 47
                   12: 47
                   13: 47
                   32: 47
                   38: 49
                   46: 49
              default: 56
          }
        47: .line 1031
      StackMap locals:
      StackMap stack:
            iconst_1
            istore 2 /* spaceSeen */
        48: .line 1032
            goto 61
        49: .line 1035
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            sipush 384
            invokevirtual org.jruby.ext.ripper.RipperLexer.dispatchDelayedToken:(I)V
        50: .line 1036
            aload 0 /* this */
            bipush 46
            invokevirtual org.jruby.ext.ripper.RipperLexer.peek:(I)Z
            iload 1 /* c */
            bipush 38
            if_icmpne 51
            iconst_1
            goto 52
      StackMap locals:
      StackMap stack: int
        51: iconst_0
      StackMap locals: org.jruby.ext.ripper.RipperLexer int int int int int int int
      StackMap stack: int int
        52: if_icmpne 56
        53: .line 1037
            aload 0 /* this */
            iload 1 /* c */
            invokevirtual org.jruby.ext.ripper.RipperLexer.pushback:(I)V
        54: .line 1039
            aload 0 /* this */
            sipush 389
            invokevirtual org.jruby.ext.ripper.RipperLexer.dispatchScanEvent:(I)V
        55: .line 1040
            goto 7
        56: .line 1044
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            dup
            getfield org.jruby.ext.ripper.RipperLexer.ruby_sourceline:I
            iconst_1
            isub
            putfield org.jruby.ext.ripper.RipperLexer.ruby_sourceline:I
        57: .line 1045
            aload 0 /* this */
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.lex_lastline:Lorg/jruby/util/ByteList;
            putfield org.jruby.ext.ripper.RipperLexer.lex_nextline:Lorg/jruby/util/ByteList;
        58: .line 1047
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.lex_goto_eol:()V
        59: .line 1048
            iload 1 /* c */
            iconst_m1
            if_icmpeq 60
            aload 0 /* this */
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.lex_p:I
            putfield org.jruby.ext.ripper.RipperLexer.tokp:I
        60: .line 1049
      StackMap locals:
      StackMap stack:
            iconst_1
            istore 7 /* done */
        61: .line 1025
      StackMap locals:
      StackMap stack:
            iload 7 /* done */
            ifeq 45
        62: .line 1053
            aload 0 /* this */
            iconst_1
            putfield org.jruby.ext.ripper.RipperLexer.commandStart:Z
        63: .line 1054
            aload 0 /* this */
            iconst_1
            invokevirtual org.jruby.ext.ripper.RipperLexer.setState:(I)V
        64: .line 1055
            bipush 10
            ireturn
        end local 7 // boolean done
        end local 6 // boolean normalArg
        65: .line 1058
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 2 /* spaceSeen */
            invokevirtual org.jruby.ext.ripper.RipperLexer.star:(Z)I
            ireturn
        66: .line 1060
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.bang:()I
            ireturn
        67: .line 1063
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.was_bol:()Z
            ifeq 86
        68: .line 1064
            aload 0 /* this */
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.lexb:Lorg/jruby/util/ByteList;
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.lex_p:I
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.lex_pend:I
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.lex_p:I
            isub
            invokevirtual org.jruby.util.ByteList.makeShared:(II)Lorg/jruby/util/ByteList;
            getstatic org.jruby.ext.ripper.RipperLexer.BEGIN_DOC_MARKER:Lorg/jruby/util/ByteList;
            getstatic org.jruby.ext.ripper.RipperLexer.BEGIN_DOC_MARKER:Lorg/jruby/util/ByteList;
            invokevirtual org.jruby.util.ByteList.length:()I
            invokevirtual org.jruby.ext.ripper.RipperLexer.strncmp:(Lorg/jruby/util/ByteList;Lorg/jruby/util/ByteList;I)Z
            ifeq 86
        69: .line 1065
            aload 0 /* this */
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.lex_p:I
            iconst_5
            iadd
            invokevirtual org.jruby.ext.ripper.RipperLexer.p:(I)I
            invokestatic java.lang.Character.isWhitespace:(I)Z
            ifeq 86
        70: .line 1066
            iconst_1
            istore 6 /* first_p */
        start local 6 // boolean first_p
        71: .line 1068
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.lex_goto_eol:()V
        72: .line 1070
            aload 0 /* this */
            sipush 386
            invokevirtual org.jruby.ext.ripper.RipperLexer.dispatchScanEvent:(I)V
        73: .line 1072
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.lex_goto_eol:()V
        74: .line 1074
            iload 6 /* first_p */
            ifne 75
            aload 0 /* this */
            sipush 387
            invokevirtual org.jruby.ext.ripper.RipperLexer.dispatchScanEvent:(I)V
        75: .line 1075
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 6 /* first_p */
        76: .line 1077
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.nextc:()I
            istore 1 /* c */
        77: .line 1079
            iload 1 /* c */
            iconst_m1
            if_icmpne 80
        78: .line 1080
            aload 0 /* this */
            ldc "embedded document meets end of file"
            invokevirtual org.jruby.ext.ripper.RipperLexer.compile_error:(Ljava/lang/String;)V
        79: .line 1081
            iconst_m1
            ireturn
        80: .line 1084
      StackMap locals:
      StackMap stack:
            iload 1 /* c */
            bipush 61
            if_icmpeq 81
            goto 73
        81: .line 1086
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.lexb:Lorg/jruby/util/ByteList;
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.lex_p:I
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.lex_pend:I
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.lex_p:I
            isub
            invokevirtual org.jruby.util.ByteList.makeShared:(II)Lorg/jruby/util/ByteList;
            getstatic org.jruby.ext.ripper.RipperLexer.END_DOC_MARKER:Lorg/jruby/util/ByteList;
            getstatic org.jruby.ext.ripper.RipperLexer.END_DOC_MARKER:Lorg/jruby/util/ByteList;
            invokevirtual org.jruby.util.ByteList.length:()I
            invokevirtual org.jruby.ext.ripper.RipperLexer.strncmp:(Lorg/jruby/util/ByteList;Lorg/jruby/util/ByteList;I)Z
            ifeq 73
        82: .line 1087
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.lex_p:I
            iconst_3
            iadd
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.lex_pend:I
            if_icmpeq 83
            aload 0 /* this */
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.lex_p:I
            iconst_3
            iadd
            invokevirtual org.jruby.ext.ripper.RipperLexer.p:(I)I
            invokestatic java.lang.Character.isWhitespace:(I)Z
            ifeq 73
        83: .line 1091
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.lex_goto_eol:()V
        84: .line 1092
            aload 0 /* this */
            sipush 388
            invokevirtual org.jruby.ext.ripper.RipperLexer.dispatchScanEvent:(I)V
        85: .line 1094
            goto 7
        end local 6 // boolean first_p
        86: .line 1099
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.isAfterOperator:()Z
            ifeq 87
            bipush 16
            goto 88
      StackMap locals:
      StackMap stack: org.jruby.ext.ripper.RipperLexer
        87: iconst_1
      StackMap locals: org.jruby.ext.ripper.RipperLexer int int int int int
      StackMap stack: org.jruby.ext.ripper.RipperLexer int
        88: invokevirtual org.jruby.ext.ripper.RipperLexer.setState:(I)V
        89: .line 1101
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.nextc:()I
            istore 1 /* c */
        90: .line 1102
            iload 1 /* c */
            bipush 61
            if_icmpne 96
        91: .line 1103
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.nextc:()I
            istore 1 /* c */
        92: .line 1104
            iload 1 /* c */
            bipush 61
            if_icmpne 94
        93: .line 1105
            sipush 320
            ireturn
        94: .line 1108
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 1 /* c */
            invokevirtual org.jruby.ext.ripper.RipperLexer.pushback:(I)V
        95: .line 1109
            sipush 319
            ireturn
        96: .line 1111
      StackMap locals:
      StackMap stack:
            iload 1 /* c */
            bipush 126
            if_icmpne 98
        97: .line 1112
            sipush 326
            ireturn
        98: .line 1113
      StackMap locals:
      StackMap stack:
            iload 1 /* c */
            bipush 62
            if_icmpne 100
        99: .line 1114
            sipush 339
            ireturn
       100: .line 1116
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 1 /* c */
            invokevirtual org.jruby.ext.ripper.RipperLexer.pushback:(I)V
       101: .line 1117
            bipush 61
            ireturn
       102: .line 1120
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 2 /* spaceSeen */
            invokevirtual org.jruby.ext.ripper.RipperLexer.lessThan:(Z)I
            ireturn
       103: .line 1122
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.greaterThan:()I
            ireturn
       104: .line 1124
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 3 /* commandState */
            invokevirtual org.jruby.ext.ripper.RipperLexer.doubleQuote:(Z)I
            ireturn
       105: .line 1126
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 3 /* commandState */
            invokevirtual org.jruby.ext.ripper.RipperLexer.backtick:(Z)I
            ireturn
       106: .line 1128
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 3 /* commandState */
            invokevirtual org.jruby.ext.ripper.RipperLexer.singleQuote:(Z)I
            ireturn
       107: .line 1130
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.questionMark:()I
            ireturn
       108: .line 1132
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 2 /* spaceSeen */
            invokevirtual org.jruby.ext.ripper.RipperLexer.ampersand:(Z)I
            ireturn
       109: .line 1134
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.pipe:()I
            ireturn
       110: .line 1136
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 2 /* spaceSeen */
            invokevirtual org.jruby.ext.ripper.RipperLexer.plus:(Z)I
            ireturn
       111: .line 1138
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 2 /* spaceSeen */
            invokevirtual org.jruby.ext.ripper.RipperLexer.minus:(Z)I
            ireturn
       112: .line 1140
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.dot:()I
            ireturn
       113: .line 1143
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 1 /* c */
            invokevirtual org.jruby.ext.ripper.RipperLexer.parseNumber:(I)I
            ireturn
       114: .line 1145
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.rightParen:()I
            ireturn
       115: .line 1147
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.rightBracket:()I
            ireturn
       116: .line 1149
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.rightCurly:()I
            ireturn
       117: .line 1151
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 2 /* spaceSeen */
            invokevirtual org.jruby.ext.ripper.RipperLexer.colon:(Z)I
            ireturn
       118: .line 1153
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 2 /* spaceSeen */
            invokevirtual org.jruby.ext.ripper.RipperLexer.slash:(Z)I
            ireturn
       119: .line 1155
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.caret:()I
            ireturn
       120: .line 1157
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_1
            putfield org.jruby.ext.ripper.RipperLexer.commandStart:Z
       121: .line 1158
            aload 0 /* this */
            iconst_1
            invokevirtual org.jruby.ext.ripper.RipperLexer.setState:(I)V
       122: .line 1159
            bipush 59
            ireturn
       123: .line 1161
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 1 /* c */
            invokevirtual org.jruby.ext.ripper.RipperLexer.comma:(I)I
            ireturn
       124: .line 1163
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.tilde:()I
            ireturn
       125: .line 1165
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 2 /* spaceSeen */
            invokevirtual org.jruby.ext.ripper.RipperLexer.leftParen:(Z)I
            ireturn
       126: .line 1167
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 2 /* spaceSeen */
            invokevirtual org.jruby.ext.ripper.RipperLexer.leftBracket:(Z)I
            ireturn
       127: .line 1169
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.leftCurly:()I
            ireturn
       128: .line 1171
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.nextc:()I
            istore 1 /* c */
       129: .line 1172
            iload 1 /* c */
            bipush 10
            if_icmpne 133
       130: .line 1173
            iconst_1
            istore 2 /* spaceSeen */
       131: .line 1174
            aload 0 /* this */
            sipush 389
            invokevirtual org.jruby.ext.ripper.RipperLexer.dispatchScanEvent:(I)V
       132: .line 1175
            goto 7
       133: .line 1177
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 1 /* c */
            invokevirtual org.jruby.ext.ripper.RipperLexer.pushback:(I)V
       134: .line 1178
            bipush 92
            ireturn
       135: .line 1180
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 2 /* spaceSeen */
            invokevirtual org.jruby.ext.ripper.RipperLexer.percent:(Z)I
            ireturn
       136: .line 1182
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.dollar:()I
            ireturn
       137: .line 1184
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.at:()I
            ireturn
       138: .line 1186
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.was_bol:()Z
            ifeq 144
            aload 0 /* this */
            getstatic org.jruby.ext.ripper.RipperLexer.END_MARKER:Lorg/jruby/util/ByteList;
            iconst_0
            invokevirtual org.jruby.ext.ripper.RipperLexer.whole_match_p:(Lorg/jruby/util/ByteList;Z)Z
            ifeq 144
       139: .line 1187
            aload 0 /* this */
            iconst_1
            putfield org.jruby.ext.ripper.RipperLexer.__end__seen:Z
       140: .line 1188
            aload 0 /* this */
            iconst_1
            putfield org.jruby.ext.ripper.RipperLexer.eofp:Z
       141: .line 1190
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.lex_goto_eol:()V
       142: .line 1191
            aload 0 /* this */
            sipush 398
            invokevirtual org.jruby.ext.ripper.RipperLexer.dispatchScanEvent:(I)V
       143: .line 1192
            iconst_m1
            ireturn
       144: .line 1194
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 1 /* c */
            iload 3 /* commandState */
            invokevirtual org.jruby.ext.ripper.RipperLexer.identifier:(IZ)I
            ireturn
       145: .line 1196
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 1 /* c */
            iload 3 /* commandState */
            invokevirtual org.jruby.ext.ripper.RipperLexer.identifier:(IZ)I
            ireturn
        end local 5 // boolean fallthru
        end local 4 // boolean tokenSeen
        end local 3 // boolean commandState
        end local 2 // boolean spaceSeen
        end local 1 // int c
        end local 0 // org.jruby.ext.ripper.RipperLexer this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0  146     0           this  Lorg/jruby/ext/ripper/RipperLexer;
            9  146     1              c  I
            1  146     2      spaceSeen  Z
            4  146     3   commandState  Z
            2  146     4      tokenSeen  Z
            7  146     5       fallthru  Z
           12   24     6  whitespaceBuf  Lorg/jruby/util/ByteList;
           14   24     7        looping  Z
           36   65     6      normalArg  Z
           44   65     7           done  Z
           71   86     6        first_p  Z
    Exceptions:
      throws java.io.IOException

  private int identifierToken(int, int, java.lang.String);
    descriptor: (IILjava/lang/String;)I
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=4, args_size=4
        start local 0 // org.jruby.ext.ripper.RipperLexer this
        start local 1 // int last_state
        start local 2 // int result
        start local 3 // java.lang.String value
         0: .line 1202
            iload 2 /* result */
            sipush 306
            if_icmpne 3
            iload 1 /* last_state */
            sipush 384
            invokestatic org.jruby.ext.ripper.RipperLexer.isLexState:(II)Z
            ifne 3
         1: .line 1203
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.parser:Lorg/jruby/ext/ripper/RipperParserBase;
            invokevirtual org.jruby.ext.ripper.RipperParserBase.getCurrentScope:()Lorg/jruby/parser/StaticScope;
            aload 3 /* value */
            invokevirtual org.jruby.parser.StaticScope.isDefined:(Ljava/lang/String;)I
            iflt 3
         2: .line 1204
            aload 0 /* this */
            sipush 1026
            invokevirtual org.jruby.ext.ripper.RipperLexer.setState:(I)V
         3: .line 1207
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 3 /* value */
            invokevirtual java.lang.String.intern:()Ljava/lang/String;
            putfield org.jruby.ext.ripper.RipperLexer.identValue:Ljava/lang/String;
         4: .line 1208
            iload 2 /* result */
            ireturn
        end local 3 // java.lang.String value
        end local 2 // int result
        end local 1 // int last_state
        end local 0 // org.jruby.ext.ripper.RipperLexer this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    5     0        this  Lorg/jruby/ext/ripper/RipperLexer;
            0    5     1  last_state  I
            0    5     2      result  I
            0    5     3       value  Ljava/lang/String;
    MethodParameters:
            Name  Flags
      last_state  
      result      
      value       

  private int ampersand(boolean);
    descriptor: (Z)I
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // org.jruby.ext.ripper.RipperLexer this
        start local 1 // boolean spaceSeen
         0: .line 1212
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.nextc:()I
            istore 2 /* c */
        start local 2 // int c
         1: .line 1214
            iload 2 /* c */
            lookupswitch { // 3
                   38: 2
                   46: 10
                   61: 8
              default: 12
          }
         2: .line 1216
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            iconst_1
            invokevirtual org.jruby.ext.ripper.RipperLexer.setState:(I)V
         3: .line 1217
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.nextc:()I
            dup
            istore 2 /* c */
            bipush 61
            if_icmpne 6
         4: .line 1218
            aload 0 /* this */
            iconst_1
            invokevirtual org.jruby.ext.ripper.RipperLexer.setState:(I)V
         5: .line 1219
            sipush 338
            ireturn
         6: .line 1221
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 2 /* c */
            invokevirtual org.jruby.ext.ripper.RipperLexer.pushback:(I)V
         7: .line 1222
            sipush 324
            ireturn
         8: .line 1224
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_1
            invokevirtual org.jruby.ext.ripper.RipperLexer.setState:(I)V
         9: .line 1225
            sipush 338
            ireturn
        10: .line 1227
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            sipush 256
            invokevirtual org.jruby.ext.ripper.RipperLexer.setState:(I)V
        11: .line 1228
            sipush 335
            ireturn
        12: .line 1230
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 2 /* c */
            invokevirtual org.jruby.ext.ripper.RipperLexer.pushback:(I)V
        13: .line 1232
            aload 0 /* this */
            iload 2 /* c */
            iload 1 /* spaceSeen */
            invokevirtual org.jruby.ext.ripper.RipperLexer.isSpaceArg:(IZ)Z
            ifeq 17
        14: .line 1233
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.isVerbose:()Z
            ifeq 15
            aload 0 /* this */
            ldc "`&' interpreted as argument prefix"
            invokevirtual org.jruby.ext.ripper.RipperLexer.warning:(Ljava/lang/String;)V
        15: .line 1234
      StackMap locals:
      StackMap stack:
            sipush 350
            istore 2 /* c */
        16: .line 1235
            goto 21
      StackMap locals:
      StackMap stack:
        17: aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.isBEG:()Z
            ifeq 20
        18: .line 1236
            sipush 350
            istore 2 /* c */
        19: .line 1237
            goto 21
        20: .line 1238
      StackMap locals:
      StackMap stack:
            sipush 351
            istore 2 /* c */
        21: .line 1241
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.isAfterOperator:()Z
            ifeq 22
            bipush 16
            goto 23
      StackMap locals:
      StackMap stack: org.jruby.ext.ripper.RipperLexer
        22: iconst_1
      StackMap locals: org.jruby.ext.ripper.RipperLexer int int
      StackMap stack: org.jruby.ext.ripper.RipperLexer int
        23: invokevirtual org.jruby.ext.ripper.RipperLexer.setState:(I)V
        24: .line 1243
            iload 2 /* c */
            ireturn
        end local 2 // int c
        end local 1 // boolean spaceSeen
        end local 0 // org.jruby.ext.ripper.RipperLexer this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   25     0       this  Lorg/jruby/ext/ripper/RipperLexer;
            0   25     1  spaceSeen  Z
            1   25     2          c  I
    Exceptions:
      throws java.io.IOException
    MethodParameters:
           Name  Flags
      spaceSeen  

  private int at();
    descriptor: ()I
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=3, args_size=1
        start local 0 // org.jruby.ext.ripper.RipperLexer this
         0: .line 1247
            aload 0 /* this */
            iconst_1
            invokevirtual org.jruby.ext.ripper.RipperLexer.newtok:(Z)V
         1: .line 1248
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.nextc:()I
            istore 1 /* c */
        start local 1 // int c
         2: .line 1250
            iload 1 /* c */
            bipush 64
            if_icmpne 6
         3: .line 1251
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.nextc:()I
            istore 1 /* c */
         4: .line 1252
            sipush 311
            istore 2 /* result */
        start local 2 // int result
         5: .line 1253
            goto 7
        end local 2 // int result
         6: .line 1254
      StackMap locals: int
      StackMap stack:
            sipush 309
            istore 2 /* result */
        start local 2 // int result
         7: .line 1257
      StackMap locals: int
      StackMap stack:
            iload 1 /* c */
            iconst_m1
            if_icmpeq 8
            iload 1 /* c */
            invokestatic org.jruby.ext.ripper.RipperLexer.isSpace:(I)Z
            ifeq 12
         8: .line 1258
      StackMap locals:
      StackMap stack:
            iload 2 /* result */
            sipush 309
            if_icmpne 10
         9: .line 1259
            aload 0 /* this */
            ldc "`@' without identifiers is not allowed as an instance variable name"
            invokevirtual org.jruby.ext.ripper.RipperLexer.compile_error:(Ljava/lang/String;)V
        10: .line 1262
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            ldc "`@@' without identifiers is not allowed as a class variable name"
            invokevirtual org.jruby.ext.ripper.RipperLexer.compile_error:(Ljava/lang/String;)V
        11: .line 1263
            goto 17
      StackMap locals:
      StackMap stack:
        12: iload 1 /* c */
            invokestatic java.lang.Character.isDigit:(I)Z
            ifne 13
            aload 0 /* this */
            iload 1 /* c */
            invokevirtual org.jruby.ext.ripper.RipperLexer.isIdentifierChar:(I)Z
            ifne 17
        13: .line 1264
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 1 /* c */
            invokevirtual org.jruby.ext.ripper.RipperLexer.pushback:(I)V
        14: .line 1265
            iload 2 /* result */
            sipush 309
            if_icmpne 16
        15: .line 1266
            aload 0 /* this */
            new java.lang.StringBuilder
            dup
            ldc "`@"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 1 /* c */
            i2c
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            ldc "' is not allowed as an instance variable name"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual org.jruby.ext.ripper.RipperLexer.compile_error:(Ljava/lang/String;)V
        16: .line 1268
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            new java.lang.StringBuilder
            dup
            ldc "`@@"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 1 /* c */
            i2c
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            ldc "' is not allowed as a class variable name"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual org.jruby.ext.ripper.RipperLexer.compile_error:(Ljava/lang/String;)V
        17: .line 1271
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 1 /* c */
            invokevirtual org.jruby.ext.ripper.RipperLexer.tokadd_ident:(I)Z
            ifne 18
            iconst_m1
            ireturn
        18: .line 1273
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.lex_state:I
            putfield org.jruby.ext.ripper.RipperLexer.last_state:I
        19: .line 1274
            aload 0 /* this */
            iconst_2
            invokevirtual org.jruby.ext.ripper.RipperLexer.setState:(I)V
        20: .line 1276
            aload 0 /* this */
            iload 2 /* result */
            invokevirtual org.jruby.ext.ripper.RipperLexer.tokenize_ident:(I)I
            ireturn
        end local 2 // int result
        end local 1 // int c
        end local 0 // org.jruby.ext.ripper.RipperLexer this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   21     0    this  Lorg/jruby/ext/ripper/RipperLexer;
            2   21     1       c  I
            5    6     2  result  I
            7   21     2  result  I
    Exceptions:
      throws java.io.IOException

  private int backtick(boolean);
    descriptor: (Z)I
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=2, args_size=2
        start local 0 // org.jruby.ext.ripper.RipperLexer this
        start local 1 // boolean commandState
         0: .line 1280
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.lex_state:I
            sipush 128
            invokestatic org.jruby.ext.ripper.RipperLexer.isLexState:(II)Z
            ifeq 3
         1: .line 1281
            aload 0 /* this */
            bipush 8
            invokevirtual org.jruby.ext.ripper.RipperLexer.setState:(I)V
         2: .line 1282
            sipush 364
            ireturn
         3: .line 1284
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.lex_state:I
            sipush 256
            invokestatic org.jruby.ext.ripper.RipperLexer.isLexState:(II)Z
            ifeq 8
         4: .line 1285
            aload 0 /* this */
            iload 1 /* commandState */
            ifeq 5
            bipush 32
            goto 6
      StackMap locals:
      StackMap stack: org.jruby.ext.ripper.RipperLexer
         5: bipush 16
      StackMap locals: org.jruby.ext.ripper.RipperLexer int
      StackMap stack: org.jruby.ext.ripper.RipperLexer int
         6: invokevirtual org.jruby.ext.ripper.RipperLexer.setState:(I)V
         7: .line 1287
            sipush 364
            ireturn
         8: .line 1290
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            new org.jruby.ext.ripper.StringTerm
            dup
            iconst_2
            iconst_0
            bipush 96
            invokespecial org.jruby.ext.ripper.StringTerm.<init>:(III)V
            putfield org.jruby.ext.ripper.RipperLexer.lex_strterm:Lorg/jruby/ext/ripper/StrTerm;
         9: .line 1291
            sipush 367
            ireturn
        end local 1 // boolean commandState
        end local 0 // org.jruby.ext.ripper.RipperLexer this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   10     0          this  Lorg/jruby/ext/ripper/RipperLexer;
            0   10     1  commandState  Z
    Exceptions:
      throws java.io.IOException
    MethodParameters:
              Name  Flags
      commandState  

  private int bang();
    descriptor: ()I
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // org.jruby.ext.ripper.RipperLexer this
         0: .line 1295
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.nextc:()I
            istore 1 /* c */
        start local 1 // int c
         1: .line 1297
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.isAfterOperator:()Z
            ifeq 4
         2: .line 1298
            aload 0 /* this */
            bipush 16
            invokevirtual org.jruby.ext.ripper.RipperLexer.setState:(I)V
         3: .line 1299
            iload 1 /* c */
            bipush 64
            if_icmpne 5
            sipush 360
            ireturn
         4: .line 1301
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            iconst_1
            invokevirtual org.jruby.ext.ripper.RipperLexer.setState:(I)V
         5: .line 1304
      StackMap locals:
      StackMap stack:
            iload 1 /* c */
            lookupswitch { // 2
                   61: 6
                  126: 7
              default: 8
          }
         6: .line 1306
      StackMap locals:
      StackMap stack:
            sipush 321
            ireturn
         7: .line 1308
      StackMap locals:
      StackMap stack:
            sipush 327
            ireturn
         8: .line 1310
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 1 /* c */
            invokevirtual org.jruby.ext.ripper.RipperLexer.pushback:(I)V
         9: .line 1312
            sipush 360
            ireturn
        end local 1 // int c
        end local 0 // org.jruby.ext.ripper.RipperLexer this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   10     0  this  Lorg/jruby/ext/ripper/RipperLexer;
            1   10     1     c  I
    Exceptions:
      throws java.io.IOException

  private int caret();
    descriptor: ()I
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // org.jruby.ext.ripper.RipperLexer this
         0: .line 1317
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.nextc:()I
            istore 1 /* c */
        start local 1 // int c
         1: .line 1318
            iload 1 /* c */
            bipush 61
            if_icmpne 4
         2: .line 1319
            aload 0 /* this */
            iconst_1
            invokevirtual org.jruby.ext.ripper.RipperLexer.setState:(I)V
         3: .line 1321
            sipush 338
            ireturn
         4: .line 1324
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.isAfterOperator:()Z
            ifeq 5
            bipush 16
            goto 6
      StackMap locals:
      StackMap stack: org.jruby.ext.ripper.RipperLexer
         5: iconst_1
      StackMap locals: org.jruby.ext.ripper.RipperLexer int
      StackMap stack: org.jruby.ext.ripper.RipperLexer int
         6: invokevirtual org.jruby.ext.ripper.RipperLexer.setState:(I)V
         7: .line 1326
            aload 0 /* this */
            iload 1 /* c */
            invokevirtual org.jruby.ext.ripper.RipperLexer.pushback:(I)V
         8: .line 1328
            sipush 361
            ireturn
        end local 1 // int c
        end local 0 // org.jruby.ext.ripper.RipperLexer this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    9     0  this  Lorg/jruby/ext/ripper/RipperLexer;
            1    9     1     c  I
    Exceptions:
      throws java.io.IOException

  private int colon(boolean);
    descriptor: (Z)I
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=3, args_size=2
        start local 0 // org.jruby.ext.ripper.RipperLexer this
        start local 1 // boolean spaceSeen
         0: .line 1332
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.nextc:()I
            istore 2 /* c */
        start local 2 // int c
         1: .line 1334
            iload 2 /* c */
            bipush 58
            if_icmpne 7
         2: .line 1335
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.isBEG:()Z
            ifne 3
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.lex_state:I
            sipush 512
            invokestatic org.jruby.ext.ripper.RipperLexer.isLexState:(II)Z
            ifne 3
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.isARG:()Z
            ifeq 5
            iload 1 /* spaceSeen */
            ifeq 5
         3: .line 1336
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            iconst_1
            invokevirtual org.jruby.ext.ripper.RipperLexer.setState:(I)V
         4: .line 1337
            sipush 337
            ireturn
         5: .line 1339
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            sipush 256
            invokevirtual org.jruby.ext.ripper.RipperLexer.setState:(I)V
         6: .line 1340
            sipush 336
            ireturn
         7: .line 1343
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.isEND:()Z
            ifne 8
            iload 2 /* c */
            invokestatic java.lang.Character.isWhitespace:(I)Z
            ifne 8
            iload 2 /* c */
            bipush 35
            if_icmpne 11
         8: .line 1344
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 2 /* c */
            invokevirtual org.jruby.ext.ripper.RipperLexer.pushback:(I)V
         9: .line 1345
            aload 0 /* this */
            iconst_1
            invokevirtual org.jruby.ext.ripper.RipperLexer.setState:(I)V
        10: .line 1346
            bipush 58
            ireturn
        11: .line 1349
      StackMap locals:
      StackMap stack:
            iload 2 /* c */
            lookupswitch { // 2
                   34: 14
                   39: 12
              default: 16
          }
        12: .line 1351
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            new org.jruby.ext.ripper.StringTerm
            dup
            bipush 16
            iconst_0
            iload 2 /* c */
            invokespecial org.jruby.ext.ripper.StringTerm.<init>:(III)V
            putfield org.jruby.ext.ripper.RipperLexer.lex_strterm:Lorg/jruby/ext/ripper/StrTerm;
        13: .line 1352
            goto 17
        14: .line 1354
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            new org.jruby.ext.ripper.StringTerm
            dup
            bipush 18
            iconst_0
            iload 2 /* c */
            invokespecial org.jruby.ext.ripper.StringTerm.<init>:(III)V
            putfield org.jruby.ext.ripper.RipperLexer.lex_strterm:Lorg/jruby/ext/ripper/StrTerm;
        15: .line 1355
            goto 17
        16: .line 1357
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 2 /* c */
            invokevirtual org.jruby.ext.ripper.RipperLexer.pushback:(I)V
        17: .line 1361
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            sipush 128
            invokevirtual org.jruby.ext.ripper.RipperLexer.setState:(I)V
        18: .line 1362
            sipush 365
            ireturn
        end local 2 // int c
        end local 1 // boolean spaceSeen
        end local 0 // org.jruby.ext.ripper.RipperLexer this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   19     0       this  Lorg/jruby/ext/ripper/RipperLexer;
            0   19     1  spaceSeen  Z
            1   19     2          c  I
    Exceptions:
      throws java.io.IOException
    MethodParameters:
           Name  Flags
      spaceSeen  

  private int comma(int);
    descriptor: (I)I
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.jruby.ext.ripper.RipperLexer this
        start local 1 // int c
         0: .line 1366
            aload 0 /* this */
            sipush 1025
            invokevirtual org.jruby.ext.ripper.RipperLexer.setState:(I)V
         1: .line 1367
            iload 1 /* c */
            ireturn
        end local 1 // int c
        end local 0 // org.jruby.ext.ripper.RipperLexer this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/jruby/ext/ripper/RipperLexer;
            0    2     1     c  I
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      c     

  private int doKeyword(int);
    descriptor: (I)I
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // org.jruby.ext.ripper.RipperLexer this
        start local 1 // int state
         0: .line 1371
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.getLeftParenBegin:()I
            istore 2 /* leftParenBegin */
        start local 2 // int leftParenBegin
         1: .line 1372
            iload 2 /* leftParenBegin */
            ifle 5
            iload 2 /* leftParenBegin */
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.parenNest:I
            if_icmpne 5
         2: .line 1373
            aload 0 /* this */
            iconst_0
            invokevirtual org.jruby.ext.ripper.RipperLexer.setLeftParenBegin:(I)V
         3: .line 1374
            aload 0 /* this */
            dup
            getfield org.jruby.ext.ripper.RipperLexer.parenNest:I
            iconst_1
            isub
            putfield org.jruby.ext.ripper.RipperLexer.parenNest:I
         4: .line 1375
            sipush 305
            ireturn
         5: .line 1378
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.conditionState:Lorg/jruby/lexer/yacc/StackState;
            invokevirtual org.jruby.lexer.yacc.StackState.isInState:()Z
            ifeq 6
            sipush 281
            ireturn
         6: .line 1380
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.cmdArgumentState:Lorg/jruby/lexer/yacc/StackState;
            invokevirtual org.jruby.lexer.yacc.StackState.isInState:()Z
            ifeq 8
            iload 1 /* state */
            bipush 32
            invokestatic org.jruby.ext.ripper.RipperLexer.isLexState:(II)Z
            ifne 8
         7: .line 1381
            sipush 282
            ireturn
         8: .line 1383
      StackMap locals:
      StackMap stack:
            iload 1 /* state */
            iconst_5
            invokestatic org.jruby.ext.ripper.RipperLexer.isLexState:(II)Z
            ifeq 10
         9: .line 1384
            sipush 282
            ireturn
        10: .line 1386
      StackMap locals:
      StackMap stack:
            sipush 280
            ireturn
        end local 2 // int leftParenBegin
        end local 1 // int state
        end local 0 // org.jruby.ext.ripper.RipperLexer this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   11     0            this  Lorg/jruby/ext/ripper/RipperLexer;
            0   11     1           state  I
            1   11     2  leftParenBegin  I
    MethodParameters:
       Name  Flags
      state  

  private int dollar();
    descriptor: ()I
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=3, args_size=1
        start local 0 // org.jruby.ext.ripper.RipperLexer this
         0: .line 1390
            aload 0 /* this */
            iconst_2
            invokevirtual org.jruby.ext.ripper.RipperLexer.setState:(I)V
         1: .line 1391
            aload 0 /* this */
            iconst_1
            invokevirtual org.jruby.ext.ripper.RipperLexer.newtok:(Z)V
         2: .line 1392
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.nextc:()I
            istore 1 /* c */
        start local 1 // int c
         3: .line 1394
            iload 1 /* c */
            lookupswitch { // 32
                   33: 13
                   34: 13
                   36: 13
                   38: 23
                   39: 23
                   42: 13
                   43: 23
                   44: 13
                   45: 15
                   46: 13
                   47: 13
                   48: 41
                   49: 28
                   50: 28
                   51: 28
                   52: 28
                   53: 28
                   54: 28
                   55: 28
                   56: 28
                   57: 28
                   58: 13
                   59: 13
                   60: 13
                   61: 13
                   62: 13
                   63: 13
                   64: 13
                   92: 13
                   95: 4
                   96: 23
                  126: 13
              default: 43
          }
         4: .line 1396
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.nextc:()I
            istore 1 /* c */
         5: .line 1397
            aload 0 /* this */
            iload 1 /* c */
            invokevirtual org.jruby.ext.ripper.RipperLexer.isIdentifierChar:(I)Z
            ifeq 11
         6: .line 1398
            aload 0 /* this */
            iload 1 /* c */
            invokevirtual org.jruby.ext.ripper.RipperLexer.tokadd_ident:(I)Z
            ifne 7
            iconst_m1
            ireturn
         7: .line 1400
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.lex_state:I
            putfield org.jruby.ext.ripper.RipperLexer.last_state:I
         8: .line 1401
            aload 0 /* this */
            iconst_2
            invokevirtual org.jruby.ext.ripper.RipperLexer.setState:(I)V
         9: .line 1402
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.createTokenString:()Ljava/lang/String;
            invokevirtual java.lang.String.intern:()Ljava/lang/String;
            putfield org.jruby.ext.ripper.RipperLexer.identValue:Ljava/lang/String;
        10: .line 1403
            sipush 308
            ireturn
        11: .line 1405
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 1 /* c */
            invokevirtual org.jruby.ext.ripper.RipperLexer.pushback:(I)V
        12: .line 1406
            bipush 95
            istore 1 /* c */
        13: .line 1425
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            new java.lang.StringBuilder
            dup
            ldc "$"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 1 /* c */
            i2c
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            putfield org.jruby.ext.ripper.RipperLexer.identValue:Ljava/lang/String;
        14: .line 1426
            sipush 308
            ireturn
        15: .line 1429
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.nextc:()I
            istore 1 /* c */
        16: .line 1430
            aload 0 /* this */
            iload 1 /* c */
            invokevirtual org.jruby.ext.ripper.RipperLexer.isIdentifierChar:(I)Z
            ifeq 18
        17: .line 1431
            aload 0 /* this */
            iload 1 /* c */
            invokevirtual org.jruby.ext.ripper.RipperLexer.tokadd_mbchar:(I)Z
            ifne 21
            iconst_m1
            ireturn
        18: .line 1433
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 1 /* c */
            invokevirtual org.jruby.ext.ripper.RipperLexer.pushback:(I)V
        19: .line 1434
            aload 0 /* this */
            bipush 45
            invokevirtual org.jruby.ext.ripper.RipperLexer.pushback:(I)V
        20: .line 1435
            bipush 36
            ireturn
        21: .line 1437
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.createTokenString:()Ljava/lang/String;
            invokevirtual java.lang.String.intern:()Ljava/lang/String;
            putfield org.jruby.ext.ripper.RipperLexer.identValue:Ljava/lang/String;
        22: .line 1439
            sipush 308
            ireturn
        23: .line 1446
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.last_state:I
            sipush 128
            if_icmpne 26
        24: .line 1447
            aload 0 /* this */
            new java.lang.StringBuilder
            dup
            ldc "$"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 1 /* c */
            i2c
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            putfield org.jruby.ext.ripper.RipperLexer.identValue:Ljava/lang/String;
        25: .line 1448
            sipush 308
            ireturn
        26: .line 1451
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            new java.lang.StringBuilder
            dup
            ldc "$"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 1 /* c */
            i2c
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            putfield org.jruby.ext.ripper.RipperLexer.identValue:Ljava/lang/String;
        27: .line 1452
            sipush 377
            ireturn
        28: .line 1457
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.nextc:()I
            istore 1 /* c */
        29: .line 1458
            iload 1 /* c */
            invokestatic java.lang.Character.isDigit:(I)Z
            ifne 28
        30: .line 1459
            aload 0 /* this */
            iload 1 /* c */
            invokevirtual org.jruby.ext.ripper.RipperLexer.pushback:(I)V
        31: .line 1460
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.last_state:I
            sipush 128
            if_icmpne 34
        32: .line 1461
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.createTokenString:()Ljava/lang/String;
            invokevirtual java.lang.String.intern:()Ljava/lang/String;
            putfield org.jruby.ext.ripper.RipperLexer.identValue:Ljava/lang/String;
        33: .line 1462
            sipush 308
            ireturn
        34: .line 1465
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.createTokenString:()Ljava/lang/String;
            astore 2 /* refAsString */
        start local 2 // java.lang.String refAsString
        35: .line 1468
            aload 2 /* refAsString */
            iconst_1
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            invokevirtual java.lang.String.intern:()Ljava/lang/String;
            invokestatic java.lang.Integer.parseInt:(Ljava/lang/String;)I
            pop
        36: .line 1469
            goto 39
      StackMap locals: org.jruby.ext.ripper.RipperLexer int java.lang.String
      StackMap stack: java.lang.NumberFormatException
        37: pop
        38: .line 1470
            aload 0 /* this */
            new java.lang.StringBuilder
            dup
            ldc "`"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 2 /* refAsString */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "' is too big for a number variable, always nil"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual org.jruby.ext.ripper.RipperLexer.warn:(Ljava/lang/String;)V
        39: .line 1473
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.createTokenString:()Ljava/lang/String;
            invokevirtual java.lang.String.intern:()Ljava/lang/String;
            putfield org.jruby.ext.ripper.RipperLexer.identValue:Ljava/lang/String;
        40: .line 1474
            sipush 376
            ireturn
        end local 2 // java.lang.String refAsString
        41: .line 1476
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_2
            invokevirtual org.jruby.ext.ripper.RipperLexer.setState:(I)V
        42: .line 1478
            aload 0 /* this */
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.last_state:I
            sipush 308
            new java.lang.StringBuilder
            dup
            ldc "$"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 1 /* c */
            i2c
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.lang.String.intern:()Ljava/lang/String;
            invokevirtual org.jruby.ext.ripper.RipperLexer.identifierToken:(IILjava/lang/String;)I
            ireturn
        43: .line 1480
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 1 /* c */
            invokevirtual org.jruby.ext.ripper.RipperLexer.isIdentifierChar:(I)Z
            ifne 50
        44: .line 1481
            iload 1 /* c */
            iconst_m1
            if_icmpeq 45
            iload 1 /* c */
            invokestatic org.jruby.ext.ripper.RipperLexer.isSpace:(I)Z
            ifeq 47
        45: .line 1482
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            ldc "`$' without identifiers is not allowed as a global variable name"
            invokevirtual org.jruby.ext.ripper.RipperLexer.compile_error:(Ljava/lang/String;)V
        46: .line 1483
            goto 49
        47: .line 1484
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 1 /* c */
            invokevirtual org.jruby.ext.ripper.RipperLexer.pushback:(I)V
        48: .line 1485
            aload 0 /* this */
            new java.lang.StringBuilder
            dup
            ldc "`$"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 1 /* c */
            i2c
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            ldc "' is not allowed as a global variable name"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual org.jruby.ext.ripper.RipperLexer.compile_error:(Ljava/lang/String;)V
        49: .line 1487
      StackMap locals:
      StackMap stack:
            iconst_m1
            ireturn
        50: .line 1490
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.lex_state:I
            putfield org.jruby.ext.ripper.RipperLexer.last_state:I
        51: .line 1491
            aload 0 /* this */
            iconst_2
            invokevirtual org.jruby.ext.ripper.RipperLexer.setState:(I)V
        52: .line 1493
            aload 0 /* this */
            iload 1 /* c */
            invokevirtual org.jruby.ext.ripper.RipperLexer.tokadd_ident:(I)Z
            pop
        53: .line 1495
            aload 0 /* this */
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.last_state:I
            sipush 308
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.createTokenString:()Ljava/lang/String;
            invokevirtual java.lang.String.intern:()Ljava/lang/String;
            invokevirtual org.jruby.ext.ripper.RipperLexer.identifierToken:(IILjava/lang/String;)I
            ireturn
        end local 1 // int c
        end local 0 // org.jruby.ext.ripper.RipperLexer this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   54     0         this  Lorg/jruby/ext/ripper/RipperLexer;
            3   54     1            c  I
           35   41     2  refAsString  Ljava/lang/String;
      Exception table:
        from    to  target  type
          35    36      37  Class java.lang.NumberFormatException
    Exceptions:
      throws java.io.IOException

  private int dot();
    descriptor: ()I
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // org.jruby.ext.ripper.RipperLexer this
         0: .line 1502
            aload 0 /* this */
            iconst_1
            invokevirtual org.jruby.ext.ripper.RipperLexer.setState:(I)V
         1: .line 1503
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.nextc:()I
            dup
            istore 1 /* c */
        start local 1 // int c
         2: bipush 46
            if_icmpne 6
         3: .line 1504
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.nextc:()I
            dup
            istore 1 /* c */
            bipush 46
            if_icmpne 4
            sipush 330
            ireturn
         4: .line 1506
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            iload 1 /* c */
            invokevirtual org.jruby.ext.ripper.RipperLexer.pushback:(I)V
         5: .line 1508
            sipush 329
            ireturn
         6: .line 1511
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 1 /* c */
            invokevirtual org.jruby.ext.ripper.RipperLexer.pushback:(I)V
         7: .line 1512
            iload 1 /* c */
            invokestatic java.lang.Character.isDigit:(I)Z
            ifeq 8
            aload 0 /* this */
            ldc "no .<digit> floating literal anymore; put 0 before dot"
            invokevirtual org.jruby.ext.ripper.RipperLexer.compile_error:(Ljava/lang/String;)V
         8: .line 1514
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            sipush 256
            invokevirtual org.jruby.ext.ripper.RipperLexer.setState:(I)V
         9: .line 1516
            sipush 328
            ireturn
        end local 1 // int c
        end local 0 // org.jruby.ext.ripper.RipperLexer this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   10     0  this  Lorg/jruby/ext/ripper/RipperLexer;
            2   10     1     c  I
    Exceptions:
      throws java.io.IOException

  private int doubleQuote(boolean);
    descriptor: (Z)I
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=3, args_size=2
        start local 0 // org.jruby.ext.ripper.RipperLexer this
        start local 1 // boolean commandState
         0: .line 1520
            aload 0 /* this */
            iload 1 /* commandState */
            invokevirtual org.jruby.ext.ripper.RipperLexer.isLabelPossible:(Z)Z
            ifeq 1
            bipush 64
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_0
      StackMap locals:
      StackMap stack: int
         2: istore 2 /* label */
        start local 2 // int label
         3: .line 1521
            aload 0 /* this */
            new org.jruby.ext.ripper.StringTerm
            dup
            iconst_2
            iload 2 /* label */
            ior
            iconst_0
            bipush 34
            invokespecial org.jruby.ext.ripper.StringTerm.<init>:(III)V
            putfield org.jruby.ext.ripper.RipperLexer.lex_strterm:Lorg/jruby/ext/ripper/StrTerm;
         4: .line 1523
            sipush 366
            ireturn
        end local 2 // int label
        end local 1 // boolean commandState
        end local 0 // org.jruby.ext.ripper.RipperLexer this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    5     0          this  Lorg/jruby/ext/ripper/RipperLexer;
            0    5     1  commandState  Z
            3    5     2         label  I
    Exceptions:
      throws java.io.IOException
    MethodParameters:
              Name  Flags
      commandState  

  private int greaterThan();
    descriptor: ()I
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // org.jruby.ext.ripper.RipperLexer this
         0: .line 1527
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.isAfterOperator:()Z
            ifeq 1
            bipush 16
            goto 2
      StackMap locals:
      StackMap stack: org.jruby.ext.ripper.RipperLexer
         1: iconst_1
      StackMap locals: org.jruby.ext.ripper.RipperLexer
      StackMap stack: org.jruby.ext.ripper.RipperLexer int
         2: invokevirtual org.jruby.ext.ripper.RipperLexer.setState:(I)V
         3: .line 1529
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.nextc:()I
            istore 1 /* c */
        start local 1 // int c
         4: .line 1531
            iload 1 /* c */
            tableswitch { // 61 - 62
                   61: 5
                   62: 6
              default: 11
          }
         5: .line 1533
      StackMap locals: int
      StackMap stack:
            sipush 322
            ireturn
         6: .line 1535
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.nextc:()I
            dup
            istore 1 /* c */
            bipush 61
            if_icmpne 9
         7: .line 1536
            aload 0 /* this */
            iconst_1
            invokevirtual org.jruby.ext.ripper.RipperLexer.setState:(I)V
         8: .line 1537
            sipush 338
            ireturn
         9: .line 1539
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 1 /* c */
            invokevirtual org.jruby.ext.ripper.RipperLexer.pushback:(I)V
        10: .line 1541
            sipush 334
            ireturn
        11: .line 1543
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 1 /* c */
            invokevirtual org.jruby.ext.ripper.RipperLexer.pushback:(I)V
        12: .line 1545
            sipush 358
            ireturn
        end local 1 // int c
        end local 0 // org.jruby.ext.ripper.RipperLexer this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   13     0  this  Lorg/jruby/ext/ripper/RipperLexer;
            4   13     1     c  I
    Exceptions:
      throws java.io.IOException

  private int identifier(int, boolean);
    descriptor: (IZ)I
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=9, args_size=3
        start local 0 // org.jruby.ext.ripper.RipperLexer this
        start local 1 // int c
        start local 2 // boolean commandState
         0: .line 1550
            aload 0 /* this */
            iload 1 /* c */
            invokevirtual org.jruby.ext.ripper.RipperLexer.isIdentifierChar:(I)Z
            ifne 3
         1: .line 1551
            new java.lang.StringBuilder
            dup
            ldc "\\"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 1 /* c */
            sipush 255
            iand
            invokestatic java.lang.Integer.toOctalString:(I)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 3 /* badChar */
        start local 3 // java.lang.String badChar
         2: .line 1552
            aload 0 /* this */
            new java.lang.StringBuilder
            dup
            ldc "Invalid char `"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 3 /* badChar */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "' ('"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            iload 1 /* c */
            i2c
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            ldc "') in expression"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual org.jruby.ext.ripper.RipperLexer.compile_error:(Ljava/lang/String;)V
        end local 3 // java.lang.String badChar
         3: .line 1560
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.lex_p:I
            iconst_1
            isub
            istore 3 /* whereKeywordShouldStart */
        start local 3 // int whereKeywordShouldStart
         4: .line 1563
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            iload 1 /* c */
            invokevirtual org.jruby.ext.ripper.RipperLexer.tokadd_mbchar:(I)Z
            ifne 5
            iconst_m1
            ireturn
         5: .line 1564
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.nextc:()I
            istore 1 /* c */
         6: .line 1565
            aload 0 /* this */
            iload 1 /* c */
            invokevirtual org.jruby.ext.ripper.RipperLexer.isIdentifierChar:(I)Z
            ifne 4
         7: .line 1567
            iconst_0
            istore 4 /* lastBangOrPredicate */
        start local 4 // boolean lastBangOrPredicate
         8: .line 1570
            iload 1 /* c */
            bipush 33
            if_icmpeq 9
            iload 1 /* c */
            bipush 63
            if_icmpne 14
         9: .line 1571
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            bipush 61
            invokevirtual org.jruby.ext.ripper.RipperLexer.peek:(I)Z
            ifne 12
        10: .line 1572
            iconst_1
            istore 4 /* lastBangOrPredicate */
        11: .line 1573
            goto 15
        12: .line 1574
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 1 /* c */
            invokevirtual org.jruby.ext.ripper.RipperLexer.pushback:(I)V
        13: .line 1576
            goto 15
        14: .line 1577
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 1 /* c */
            invokevirtual org.jruby.ext.ripper.RipperLexer.pushback:(I)V
        15: .line 1580
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 5 /* result */
        start local 5 // int result
        16: .line 1582
            aload 0 /* this */
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.lex_state:I
            putfield org.jruby.ext.ripper.RipperLexer.last_state:I
        17: .line 1584
            iload 4 /* lastBangOrPredicate */
            ifeq 21
        18: .line 1585
            sipush 307
            istore 5 /* result */
        19: .line 1586
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.createTokenString:()Ljava/lang/String;
            astore 6 /* tempVal */
        start local 6 // java.lang.String tempVal
        20: .line 1587
            goto 38
        end local 6 // java.lang.String tempVal
        21: .line 1588
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.lex_state:I
            sipush 128
            invokestatic org.jruby.ext.ripper.RipperLexer.isLexState:(II)Z
            ifeq 33
        22: .line 1589
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.nextc:()I
            dup
            istore 1 /* c */
            bipush 61
            if_icmpne 32
        23: .line 1590
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.nextc:()I
            istore 7 /* c2 */
        start local 7 // int c2
        24: .line 1592
            iload 7 /* c2 */
            bipush 126
            if_icmpeq 29
            iload 7 /* c2 */
            bipush 62
            if_icmpeq 29
        25: .line 1593
            iload 7 /* c2 */
            bipush 61
            if_icmpne 26
            aload 0 /* this */
            bipush 62
            invokevirtual org.jruby.ext.ripper.RipperLexer.peek:(I)Z
            ifeq 29
        26: .line 1594
      StackMap locals: org.jruby.ext.ripper.RipperLexer int int int int int top int
      StackMap stack:
            sipush 306
            istore 5 /* result */
        27: .line 1595
            aload 0 /* this */
            iload 7 /* c2 */
            invokevirtual org.jruby.ext.ripper.RipperLexer.pushback:(I)V
        28: .line 1596
            goto 33
        29: .line 1597
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 7 /* c2 */
            invokevirtual org.jruby.ext.ripper.RipperLexer.pushback:(I)V
        30: .line 1598
            aload 0 /* this */
            iload 1 /* c */
            invokevirtual org.jruby.ext.ripper.RipperLexer.pushback:(I)V
        end local 7 // int c2
        31: .line 1600
            goto 33
        32: .line 1601
      StackMap locals: org.jruby.ext.ripper.RipperLexer int int int int int
      StackMap stack:
            aload 0 /* this */
            iload 1 /* c */
            invokevirtual org.jruby.ext.ripper.RipperLexer.pushback:(I)V
        33: .line 1604
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.createTokenString:()Ljava/lang/String;
            astore 6 /* tempVal */
        start local 6 // java.lang.String tempVal
        34: .line 1606
            iload 5 /* result */
            ifne 37
            aload 6 /* tempVal */
            iconst_0
            invokevirtual java.lang.String.charAt:(I)C
            invokestatic java.lang.Character.isUpperCase:(C)Z
            ifeq 37
        35: .line 1607
            sipush 310
            istore 5 /* result */
        36: .line 1608
            goto 38
        37: .line 1609
      StackMap locals: java.lang.String
      StackMap stack:
            sipush 306
            istore 5 /* result */
        38: .line 1613
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 2 /* commandState */
            invokevirtual org.jruby.ext.ripper.RipperLexer.isLabelPossible:(Z)Z
            ifeq 44
        39: .line 1614
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.isLabelSuffix:()Z
            ifeq 44
        40: .line 1615
            aload 0 /* this */
            sipush 2064
            invokevirtual org.jruby.ext.ripper.RipperLexer.setState:(I)V
        41: .line 1616
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.nextc:()I
            pop
        42: .line 1617
            aload 0 /* this */
            aload 6 /* tempVal */
            invokevirtual java.lang.String.intern:()Ljava/lang/String;
            putfield org.jruby.ext.ripper.RipperLexer.identValue:Ljava/lang/String;
        43: .line 1618
            sipush 312
            ireturn
        44: .line 1622
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.lex_state:I
            sipush 256
            if_icmpeq 58
        45: .line 1623
            aload 0 /* this */
            iload 3 /* whereKeywordShouldStart */
            invokevirtual org.jruby.ext.ripper.RipperLexer.createTokenString:(I)Ljava/lang/String;
            invokestatic org.jruby.ext.ripper.RipperLexer.getKeyword:(Ljava/lang/String;)Lorg/jruby/ext/ripper/RipperLexer$Keyword;
            astore 7 /* keyword */
        start local 7 // org.jruby.ext.ripper.RipperLexer$Keyword keyword
        46: .line 1625
            aload 7 /* keyword */
            ifnull 58
        47: .line 1626
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.lex_state:I
            istore 8 /* state */
        start local 8 // int state
        48: .line 1627
            aload 0 /* this */
            aload 7 /* keyword */
            getfield org.jruby.ext.ripper.RipperLexer$Keyword.state:I
            invokevirtual org.jruby.ext.ripper.RipperLexer.setState:(I)V
        49: .line 1629
            iload 8 /* state */
            sipush 128
            invokestatic org.jruby.ext.ripper.RipperLexer.isLexState:(II)Z
            ifeq 52
        50: .line 1630
            aload 0 /* this */
            aload 6 /* tempVal */
            putfield org.jruby.ext.ripper.RipperLexer.identValue:Ljava/lang/String;
        51: .line 1631
            aload 7 /* keyword */
            getfield org.jruby.ext.ripper.RipperLexer$Keyword.id0:I
            ireturn
        52: .line 1634
      StackMap locals: org.jruby.ext.ripper.RipperLexer$Keyword int
      StackMap stack:
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.lex_state:I
            iconst_1
            invokestatic org.jruby.ext.ripper.RipperLexer.isLexState:(II)Z
            ifeq 53
            aload 0 /* this */
            iconst_1
            putfield org.jruby.ext.ripper.RipperLexer.commandStart:Z
        53: .line 1636
      StackMap locals:
      StackMap stack:
            aload 7 /* keyword */
            getfield org.jruby.ext.ripper.RipperLexer$Keyword.id0:I
            sipush 280
            if_icmpne 54
            aload 0 /* this */
            iload 8 /* state */
            invokevirtual org.jruby.ext.ripper.RipperLexer.doKeyword:(I)I
            ireturn
        54: .line 1638
      StackMap locals:
      StackMap stack:
            iload 8 /* state */
            sipush 2049
            invokestatic org.jruby.ext.ripper.RipperLexer.isLexState:(II)Z
            ifeq 56
        55: .line 1639
            aload 7 /* keyword */
            getfield org.jruby.ext.ripper.RipperLexer$Keyword.id0:I
            ireturn
        56: .line 1641
      StackMap locals:
      StackMap stack:
            aload 7 /* keyword */
            getfield org.jruby.ext.ripper.RipperLexer$Keyword.id0:I
            aload 7 /* keyword */
            getfield org.jruby.ext.ripper.RipperLexer$Keyword.id1:I
            if_icmpeq 57
            aload 0 /* this */
            sipush 1025
            invokevirtual org.jruby.ext.ripper.RipperLexer.setState:(I)V
        57: .line 1642
      StackMap locals:
      StackMap stack:
            aload 7 /* keyword */
            getfield org.jruby.ext.ripper.RipperLexer$Keyword.id1:I
            ireturn
        end local 8 // int state
        end local 7 // org.jruby.ext.ripper.RipperLexer$Keyword keyword
        58: .line 1647
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.lex_state:I
            sipush 881
            invokestatic org.jruby.ext.ripper.RipperLexer.isLexState:(II)Z
            ifeq 63
        59: .line 1648
            aload 0 /* this */
            iload 2 /* commandState */
            ifeq 60
            bipush 32
            goto 61
      StackMap locals:
      StackMap stack: org.jruby.ext.ripper.RipperLexer
        60: bipush 16
      StackMap locals: org.jruby.ext.ripper.RipperLexer int int int int int java.lang.String
      StackMap stack: org.jruby.ext.ripper.RipperLexer int
        61: invokevirtual org.jruby.ext.ripper.RipperLexer.setState:(I)V
        62: .line 1649
            goto 67
      StackMap locals:
      StackMap stack:
        63: aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.lex_state:I
            sipush 128
            if_icmpne 66
        64: .line 1650
            aload 0 /* this */
            bipush 8
            invokevirtual org.jruby.ext.ripper.RipperLexer.setState:(I)V
        65: .line 1651
            goto 67
        66: .line 1652
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_2
            invokevirtual org.jruby.ext.ripper.RipperLexer.setState:(I)V
        67: .line 1655
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.last_state:I
            iload 5 /* result */
            aload 6 /* tempVal */
            invokevirtual java.lang.String.intern:()Ljava/lang/String;
            invokevirtual org.jruby.ext.ripper.RipperLexer.identifierToken:(IILjava/lang/String;)I
            ireturn
        end local 6 // java.lang.String tempVal
        end local 5 // int result
        end local 4 // boolean lastBangOrPredicate
        end local 3 // int whereKeywordShouldStart
        end local 2 // boolean commandState
        end local 1 // int c
        end local 0 // org.jruby.ext.ripper.RipperLexer this
      LocalVariableTable:
        Start  End  Slot                     Name  Signature
            0   68     0                     this  Lorg/jruby/ext/ripper/RipperLexer;
            0   68     1                        c  I
            0   68     2             commandState  Z
            2    3     3                  badChar  Ljava/lang/String;
            4   68     3  whereKeywordShouldStart  I
            8   68     4      lastBangOrPredicate  Z
           16   68     5                   result  I
           20   21     6                  tempVal  Ljava/lang/String;
           34   68     6                  tempVal  Ljava/lang/String;
           24   31     7                       c2  I
           46   58     7                  keyword  Lorg/jruby/ext/ripper/RipperLexer$Keyword;
           48   58     8                    state  I
    Exceptions:
      throws java.io.IOException
    MethodParameters:
              Name  Flags
      c             
      commandState  

  private int leftBracket(boolean);
    descriptor: (Z)I
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // org.jruby.ext.ripper.RipperLexer this
        start local 1 // boolean spaceSeen
         0: .line 1659
            aload 0 /* this */
            dup
            getfield org.jruby.ext.ripper.RipperLexer.parenNest:I
            iconst_1
            iadd
            putfield org.jruby.ext.ripper.RipperLexer.parenNest:I
         1: .line 1660
            bipush 91
            istore 2 /* c */
        start local 2 // int c
         2: .line 1661
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.isAfterOperator:()Z
            ifeq 12
         3: .line 1662
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.nextc:()I
            dup
            istore 2 /* c */
            bipush 93
            if_icmpne 9
         4: .line 1663
            aload 0 /* this */
            bipush 16
            invokevirtual org.jruby.ext.ripper.RipperLexer.setState:(I)V
         5: .line 1664
            aload 0 /* this */
            bipush 61
            invokevirtual org.jruby.ext.ripper.RipperLexer.peek:(I)Z
            ifeq 8
         6: .line 1665
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.nextc:()I
            pop
         7: .line 1666
            sipush 332
            ireturn
         8: .line 1668
      StackMap locals: int
      StackMap stack:
            sipush 331
            ireturn
         9: .line 1670
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 2 /* c */
            invokevirtual org.jruby.ext.ripper.RipperLexer.pushback:(I)V
        10: .line 1671
            aload 0 /* this */
            sipush 1040
            invokevirtual org.jruby.ext.ripper.RipperLexer.setState:(I)V
        11: .line 1672
            bipush 91
            ireturn
        12: .line 1673
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.isBEG:()Z
            ifne 13
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.isARG:()Z
            ifeq 14
            iload 1 /* spaceSeen */
            ifne 13
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.lex_state:I
            sipush 2048
            invokestatic org.jruby.ext.ripper.RipperLexer.isLexState:(II)Z
            ifeq 14
        13: .line 1674
      StackMap locals:
      StackMap stack:
            sipush 344
            istore 2 /* c */
        14: .line 1677
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            sipush 1025
            invokevirtual org.jruby.ext.ripper.RipperLexer.setState:(I)V
        15: .line 1678
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.conditionState:Lorg/jruby/lexer/yacc/StackState;
            invokevirtual org.jruby.lexer.yacc.StackState.stop:()V
        16: .line 1679
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.cmdArgumentState:Lorg/jruby/lexer/yacc/StackState;
            invokevirtual org.jruby.lexer.yacc.StackState.stop:()V
        17: .line 1680
            aload 0 /* this */
            ldc "["
            putfield org.jruby.ext.ripper.RipperLexer.yaccValue:Ljava/lang/Object;
        18: .line 1681
            iload 2 /* c */
            ireturn
        end local 2 // int c
        end local 1 // boolean spaceSeen
        end local 0 // org.jruby.ext.ripper.RipperLexer this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   19     0       this  Lorg/jruby/ext/ripper/RipperLexer;
            0   19     1  spaceSeen  Z
            2   19     2          c  I
    Exceptions:
      throws java.io.IOException
    MethodParameters:
           Name  Flags
      spaceSeen  

  private int leftCurly();
    descriptor: ()I
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=3, args_size=1
        start local 0 // org.jruby.ext.ripper.RipperLexer this
         0: .line 1685
            aload 0 /* this */
            dup
            getfield org.jruby.ext.ripper.RipperLexer.braceNest:I
            iconst_1
            iadd
            putfield org.jruby.ext.ripper.RipperLexer.braceNest:I
         1: .line 1686
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.getLeftParenBegin:()I
            istore 1 /* leftParenBegin */
        start local 1 // int leftParenBegin
         2: .line 1687
            iload 1 /* leftParenBegin */
            ifle 9
            iload 1 /* leftParenBegin */
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.parenNest:I
            if_icmpne 9
         3: .line 1688
            aload 0 /* this */
            iconst_1
            invokevirtual org.jruby.ext.ripper.RipperLexer.setState:(I)V
         4: .line 1689
            aload 0 /* this */
            iconst_0
            invokevirtual org.jruby.ext.ripper.RipperLexer.setLeftParenBegin:(I)V
         5: .line 1690
            aload 0 /* this */
            dup
            getfield org.jruby.ext.ripper.RipperLexer.parenNest:I
            iconst_1
            isub
            putfield org.jruby.ext.ripper.RipperLexer.parenNest:I
         6: .line 1691
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.conditionState:Lorg/jruby/lexer/yacc/StackState;
            invokevirtual org.jruby.lexer.yacc.StackState.stop:()V
         7: .line 1692
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.cmdArgumentState:Lorg/jruby/lexer/yacc/StackState;
            invokevirtual org.jruby.lexer.yacc.StackState.stop:()V
         8: .line 1693
            sipush 375
            ireturn
         9: .line 1697
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.lex_state:I
            sipush 2048
            invokestatic org.jruby.ext.ripper.RipperLexer.isLexState:(II)Z
            ifeq 12
        10: .line 1698
            sipush 346
            istore 2 /* c */
        start local 2 // char c
        11: .line 1699
            goto 19
        end local 2 // char c
      StackMap locals:
      StackMap stack:
        12: aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.lex_state:I
            bipush 58
            invokestatic org.jruby.ext.ripper.RipperLexer.isLexState:(II)Z
            ifeq 15
        13: .line 1700
            sipush 362
            istore 2 /* c */
        start local 2 // char c
        14: .line 1701
            goto 19
        end local 2 // char c
      StackMap locals:
      StackMap stack:
        15: aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.lex_state:I
            iconst_4
            invokestatic org.jruby.ext.ripper.RipperLexer.isLexState:(II)Z
            ifeq 18
        16: .line 1702
            sipush 347
            istore 2 /* c */
        start local 2 // char c
        17: .line 1703
            goto 19
        end local 2 // char c
        18: .line 1704
      StackMap locals:
      StackMap stack:
            sipush 346
            istore 2 /* c */
        start local 2 // char c
        19: .line 1707
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.conditionState:Lorg/jruby/lexer/yacc/StackState;
            invokevirtual org.jruby.lexer.yacc.StackState.stop:()V
        20: .line 1708
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.cmdArgumentState:Lorg/jruby/lexer/yacc/StackState;
            invokevirtual org.jruby.lexer.yacc.StackState.stop:()V
        21: .line 1709
            aload 0 /* this */
            iconst_1
            invokevirtual org.jruby.ext.ripper.RipperLexer.setState:(I)V
        22: .line 1710
            aload 0 /* this */
            iload 2 /* c */
            sipush 347
            if_icmpne 23
            iconst_1
            goto 24
      StackMap locals:
      StackMap stack: org.jruby.ext.ripper.RipperLexer
        23: sipush 1025
      StackMap locals: org.jruby.ext.ripper.RipperLexer int int
      StackMap stack: org.jruby.ext.ripper.RipperLexer int
        24: invokevirtual org.jruby.ext.ripper.RipperLexer.setState:(I)V
        25: .line 1711
            iload 2 /* c */
            sipush 346
            if_icmpeq 26
            aload 0 /* this */
            iconst_1
            putfield org.jruby.ext.ripper.RipperLexer.commandStart:Z
        26: .line 1713
      StackMap locals:
      StackMap stack:
            iload 2 /* c */
            ireturn
        end local 2 // char c
        end local 1 // int leftParenBegin
        end local 0 // org.jruby.ext.ripper.RipperLexer this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   27     0            this  Lorg/jruby/ext/ripper/RipperLexer;
            2   27     1  leftParenBegin  I
           11   12     2               c  C
           14   15     2               c  C
           17   18     2               c  C
           19   27     2               c  C

  private int leftParen(boolean);
    descriptor: (Z)I
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // org.jruby.ext.ripper.RipperLexer this
        start local 1 // boolean spaceSeen
         0: .line 1719
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.isBEG:()Z
            ifeq 3
         1: .line 1720
            sipush 340
            istore 2 /* result */
        start local 2 // int result
         2: .line 1721
            goto 7
        end local 2 // int result
      StackMap locals:
      StackMap stack:
         3: aload 0 /* this */
            bipush 40
            iload 1 /* spaceSeen */
            invokevirtual org.jruby.ext.ripper.RipperLexer.isSpaceArg:(IZ)Z
            ifeq 6
         4: .line 1722
            sipush 343
            istore 2 /* result */
        start local 2 // int result
         5: .line 1723
            goto 7
        end local 2 // int result
         6: .line 1724
      StackMap locals:
      StackMap stack:
            sipush 341
            istore 2 /* result */
        start local 2 // int result
         7: .line 1727
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            dup
            getfield org.jruby.ext.ripper.RipperLexer.parenNest:I
            iconst_1
            iadd
            putfield org.jruby.ext.ripper.RipperLexer.parenNest:I
         8: .line 1728
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.conditionState:Lorg/jruby/lexer/yacc/StackState;
            invokevirtual org.jruby.lexer.yacc.StackState.stop:()V
         9: .line 1729
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.cmdArgumentState:Lorg/jruby/lexer/yacc/StackState;
            invokevirtual org.jruby.lexer.yacc.StackState.stop:()V
        10: .line 1730
            aload 0 /* this */
            sipush 1025
            invokevirtual org.jruby.ext.ripper.RipperLexer.setState:(I)V
        11: .line 1732
            iload 2 /* result */
            ireturn
        end local 2 // int result
        end local 1 // boolean spaceSeen
        end local 0 // org.jruby.ext.ripper.RipperLexer this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   12     0       this  Lorg/jruby/ext/ripper/RipperLexer;
            0   12     1  spaceSeen  Z
            2    3     2     result  I
            5    6     2     result  I
            7   12     2     result  I
    Exceptions:
      throws java.io.IOException
    MethodParameters:
           Name  Flags
      spaceSeen  

  private int lessThan(boolean);
    descriptor: (Z)I
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=4, args_size=2
        start local 0 // org.jruby.ext.ripper.RipperLexer this
        start local 1 // boolean spaceSeen
         0: .line 1736
            aload 0 /* this */
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.lex_state:I
            putfield org.jruby.ext.ripper.RipperLexer.last_state:I
         1: .line 1737
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.nextc:()I
            istore 2 /* c */
        start local 2 // int c
         2: .line 1738
            iload 2 /* c */
            bipush 60
            if_icmpne 6
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.lex_state:I
            sipush 768
            invokestatic org.jruby.ext.ripper.RipperLexer.isLexState:(II)Z
            ifne 6
         3: .line 1739
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.isEND:()Z
            ifne 6
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.isARG:()Z
            ifeq 4
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.lex_state:I
            sipush 2048
            invokestatic org.jruby.ext.ripper.RipperLexer.isLexState:(II)Z
            ifne 4
            iload 1 /* spaceSeen */
            ifeq 6
         4: .line 1740
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.hereDocumentIdentifier:()I
            istore 3 /* tok */
        start local 3 // int tok
         5: .line 1742
            iload 3 /* tok */
            ifeq 6
            iload 3 /* tok */
            ireturn
        end local 3 // int tok
         6: .line 1745
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.isAfterOperator:()Z
            ifeq 7
            bipush 16
            goto 8
      StackMap locals:
      StackMap stack: org.jruby.ext.ripper.RipperLexer
         7: iconst_1
      StackMap locals: org.jruby.ext.ripper.RipperLexer int int
      StackMap stack: org.jruby.ext.ripper.RipperLexer int
         8: invokevirtual org.jruby.ext.ripper.RipperLexer.setState:(I)V
         9: .line 1747
            iload 2 /* c */
            tableswitch { // 60 - 61
                   60: 14
                   61: 10
              default: 20
          }
        10: .line 1749
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.nextc:()I
            dup
            istore 2 /* c */
            bipush 62
            if_icmpne 12
        11: .line 1750
            sipush 318
            ireturn
        12: .line 1752
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 2 /* c */
            invokevirtual org.jruby.ext.ripper.RipperLexer.pushback:(I)V
        13: .line 1753
            sipush 323
            ireturn
        14: .line 1755
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.nextc:()I
            dup
            istore 2 /* c */
            bipush 61
            if_icmpne 17
        15: .line 1756
            aload 0 /* this */
            iconst_1
            invokevirtual org.jruby.ext.ripper.RipperLexer.setState:(I)V
        16: .line 1757
            sipush 338
            ireturn
        17: .line 1759
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 2 /* c */
            invokevirtual org.jruby.ext.ripper.RipperLexer.pushback:(I)V
        18: .line 1760
            aload 0 /* this */
            iload 2 /* c */
            iload 1 /* spaceSeen */
            ldc "<<"
            ldc "here document"
            invokevirtual org.jruby.ext.ripper.RipperLexer.warn_balanced:(IZLjava/lang/String;Ljava/lang/String;)V
        19: .line 1761
            sipush 333
            ireturn
        20: .line 1763
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 2 /* c */
            invokevirtual org.jruby.ext.ripper.RipperLexer.pushback:(I)V
        21: .line 1764
            sipush 357
            ireturn
        end local 2 // int c
        end local 1 // boolean spaceSeen
        end local 0 // org.jruby.ext.ripper.RipperLexer this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   22     0       this  Lorg/jruby/ext/ripper/RipperLexer;
            0   22     1  spaceSeen  Z
            2   22     2          c  I
            5    6     3        tok  I
    Exceptions:
      throws java.io.IOException
    MethodParameters:
           Name  Flags
      spaceSeen  

  private int minus(boolean);
    descriptor: (Z)I
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=3, args_size=2
        start local 0 // org.jruby.ext.ripper.RipperLexer this
        start local 1 // boolean spaceSeen
         0: .line 1769
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.nextc:()I
            istore 2 /* c */
        start local 2 // int c
         1: .line 1771
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.isAfterOperator:()Z
            ifeq 7
         2: .line 1772
            aload 0 /* this */
            bipush 16
            invokevirtual org.jruby.ext.ripper.RipperLexer.setState:(I)V
         3: .line 1773
            iload 2 /* c */
            bipush 64
            if_icmpne 5
         4: .line 1774
            sipush 315
            ireturn
         5: .line 1776
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            iload 2 /* c */
            invokevirtual org.jruby.ext.ripper.RipperLexer.pushback:(I)V
         6: .line 1777
            sipush 356
            ireturn
         7: .line 1779
      StackMap locals:
      StackMap stack:
            iload 2 /* c */
            bipush 61
            if_icmpne 10
         8: .line 1780
            aload 0 /* this */
            iconst_1
            invokevirtual org.jruby.ext.ripper.RipperLexer.setState:(I)V
         9: .line 1782
            sipush 338
            ireturn
        10: .line 1784
      StackMap locals:
      StackMap stack:
            iload 2 /* c */
            bipush 62
            if_icmpne 13
        11: .line 1785
            aload 0 /* this */
            bipush 8
            invokevirtual org.jruby.ext.ripper.RipperLexer.setState:(I)V
        12: .line 1786
            sipush 374
            ireturn
        13: .line 1788
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.isBEG:()Z
            ifne 14
            aload 0 /* this */
            iload 2 /* c */
            iload 1 /* spaceSeen */
            invokevirtual org.jruby.ext.ripper.RipperLexer.isSpaceArg:(IZ)Z
            ifeq 19
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.arg_ambiguous:()Z
            ifeq 19
        14: .line 1789
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_1
            invokevirtual org.jruby.ext.ripper.RipperLexer.setState:(I)V
        15: .line 1790
            aload 0 /* this */
            iload 2 /* c */
            invokevirtual org.jruby.ext.ripper.RipperLexer.pushback:(I)V
        16: .line 1791
            iload 2 /* c */
            invokestatic java.lang.Character.isDigit:(I)Z
            ifeq 18
        17: .line 1792
            sipush 316
            ireturn
        18: .line 1794
      StackMap locals:
      StackMap stack:
            sipush 315
            ireturn
        19: .line 1796
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_1
            invokevirtual org.jruby.ext.ripper.RipperLexer.setState:(I)V
        20: .line 1797
            aload 0 /* this */
            iload 2 /* c */
            invokevirtual org.jruby.ext.ripper.RipperLexer.pushback:(I)V
        21: .line 1798
            aload 0 /* this */
            iload 2 /* c */
            iload 1 /* spaceSeen */
            ldc "-"
            ldc "unary operator"
            invokevirtual org.jruby.ext.ripper.RipperLexer.warn_balanced:(IZLjava/lang/String;Ljava/lang/String;)V
        22: .line 1799
            sipush 356
            ireturn
        end local 2 // int c
        end local 1 // boolean spaceSeen
        end local 0 // org.jruby.ext.ripper.RipperLexer this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   23     0       this  Lorg/jruby/ext/ripper/RipperLexer;
            0   23     1  spaceSeen  Z
            1   23     2          c  I
    Exceptions:
      throws java.io.IOException
    MethodParameters:
           Name  Flags
      spaceSeen  

  private int percent(boolean);
    descriptor: (Z)I
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=3, args_size=2
        start local 0 // org.jruby.ext.ripper.RipperLexer this
        start local 1 // boolean spaceSeen
         0: .line 1803
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.isBEG:()Z
            ifeq 1
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.nextc:()I
            invokevirtual org.jruby.ext.ripper.RipperLexer.parseQuote:(I)I
            ireturn
         1: .line 1805
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.nextc:()I
            istore 2 /* c */
        start local 2 // int c
         2: .line 1807
            iload 2 /* c */
            bipush 61
            if_icmpne 5
         3: .line 1808
            aload 0 /* this */
            iconst_1
            invokevirtual org.jruby.ext.ripper.RipperLexer.setState:(I)V
         4: .line 1809
            sipush 338
            ireturn
         5: .line 1812
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            iload 2 /* c */
            iload 1 /* spaceSeen */
            invokevirtual org.jruby.ext.ripper.RipperLexer.isSpaceArg:(IZ)Z
            ifne 6
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.lex_state:I
            sipush 4096
            invokestatic org.jruby.ext.ripper.RipperLexer.isLexState:(II)Z
            ifeq 7
            iload 2 /* c */
            bipush 115
            if_icmpne 7
      StackMap locals:
      StackMap stack:
         6: aload 0 /* this */
            iload 2 /* c */
            invokevirtual org.jruby.ext.ripper.RipperLexer.parseQuote:(I)I
            ireturn
         7: .line 1814
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.isAfterOperator:()Z
            ifeq 8
            bipush 16
            goto 9
      StackMap locals:
      StackMap stack: org.jruby.ext.ripper.RipperLexer
         8: iconst_1
      StackMap locals: org.jruby.ext.ripper.RipperLexer int int
      StackMap stack: org.jruby.ext.ripper.RipperLexer int
         9: invokevirtual org.jruby.ext.ripper.RipperLexer.setState:(I)V
        10: .line 1816
            aload 0 /* this */
            iload 2 /* c */
            invokevirtual org.jruby.ext.ripper.RipperLexer.pushback:(I)V
        11: .line 1817
            aload 0 /* this */
            iload 2 /* c */
            iload 1 /* spaceSeen */
            ldc "%"
            ldc "string literal"
            invokevirtual org.jruby.ext.ripper.RipperLexer.warn_balanced:(IZLjava/lang/String;Ljava/lang/String;)V
        12: .line 1818
            sipush 353
            ireturn
        end local 2 // int c
        end local 1 // boolean spaceSeen
        end local 0 // org.jruby.ext.ripper.RipperLexer this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   13     0       this  Lorg/jruby/ext/ripper/RipperLexer;
            0   13     1  spaceSeen  Z
            2   13     2          c  I
    Exceptions:
      throws java.io.IOException
    MethodParameters:
           Name  Flags
      spaceSeen  

  private int pipe();
    descriptor: ()I
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // org.jruby.ext.ripper.RipperLexer this
         0: .line 1822
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.nextc:()I
            istore 1 /* c */
        start local 1 // int c
         1: .line 1824
            iload 1 /* c */
            lookupswitch { // 2
                   61: 8
                  124: 2
              default: 10
          }
         2: .line 1826
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            iconst_1
            invokevirtual org.jruby.ext.ripper.RipperLexer.setState:(I)V
         3: .line 1827
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.nextc:()I
            dup
            istore 1 /* c */
            bipush 61
            if_icmpne 6
         4: .line 1828
            aload 0 /* this */
            iconst_1
            invokevirtual org.jruby.ext.ripper.RipperLexer.setState:(I)V
         5: .line 1829
            sipush 338
            ireturn
         6: .line 1831
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 1 /* c */
            invokevirtual org.jruby.ext.ripper.RipperLexer.pushback:(I)V
         7: .line 1832
            sipush 325
            ireturn
         8: .line 1834
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_1
            invokevirtual org.jruby.ext.ripper.RipperLexer.setState:(I)V
         9: .line 1836
            sipush 338
            ireturn
        10: .line 1838
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.isAfterOperator:()Z
            ifeq 11
            bipush 16
            goto 12
      StackMap locals:
      StackMap stack: org.jruby.ext.ripper.RipperLexer
        11: sipush 1025
      StackMap locals: org.jruby.ext.ripper.RipperLexer int
      StackMap stack: org.jruby.ext.ripper.RipperLexer int
        12: invokevirtual org.jruby.ext.ripper.RipperLexer.setState:(I)V
        13: .line 1840
            aload 0 /* this */
            iload 1 /* c */
            invokevirtual org.jruby.ext.ripper.RipperLexer.pushback:(I)V
        14: .line 1842
            sipush 359
            ireturn
        end local 1 // int c
        end local 0 // org.jruby.ext.ripper.RipperLexer this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   15     0  this  Lorg/jruby/ext/ripper/RipperLexer;
            1   15     1     c  I
    Exceptions:
      throws java.io.IOException

  private int plus(boolean);
    descriptor: (Z)I
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=3, args_size=2
        start local 0 // org.jruby.ext.ripper.RipperLexer this
        start local 1 // boolean spaceSeen
         0: .line 1847
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.nextc:()I
            istore 2 /* c */
        start local 2 // int c
         1: .line 1848
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.isAfterOperator:()Z
            ifeq 6
         2: .line 1849
            aload 0 /* this */
            bipush 16
            invokevirtual org.jruby.ext.ripper.RipperLexer.setState:(I)V
         3: .line 1850
            iload 2 /* c */
            bipush 64
            if_icmpne 4
            sipush 314
            ireturn
         4: .line 1852
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            iload 2 /* c */
            invokevirtual org.jruby.ext.ripper.RipperLexer.pushback:(I)V
         5: .line 1854
            sipush 355
            ireturn
         6: .line 1857
      StackMap locals:
      StackMap stack:
            iload 2 /* c */
            bipush 61
            if_icmpne 9
         7: .line 1858
            aload 0 /* this */
            iconst_1
            invokevirtual org.jruby.ext.ripper.RipperLexer.setState:(I)V
         8: .line 1860
            sipush 338
            ireturn
         9: .line 1863
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.isBEG:()Z
            ifne 10
            aload 0 /* this */
            iload 2 /* c */
            iload 1 /* spaceSeen */
            invokevirtual org.jruby.ext.ripper.RipperLexer.isSpaceArg:(IZ)Z
            ifeq 16
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.arg_ambiguous:()Z
            ifeq 16
        10: .line 1864
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_1
            invokevirtual org.jruby.ext.ripper.RipperLexer.setState:(I)V
        11: .line 1865
            aload 0 /* this */
            iload 2 /* c */
            invokevirtual org.jruby.ext.ripper.RipperLexer.pushback:(I)V
        12: .line 1866
            iload 2 /* c */
            invokestatic java.lang.Character.isDigit:(I)Z
            ifeq 15
        13: .line 1867
            bipush 43
            istore 2 /* c */
        14: .line 1868
            aload 0 /* this */
            iload 2 /* c */
            invokevirtual org.jruby.ext.ripper.RipperLexer.parseNumber:(I)I
            ireturn
        15: .line 1871
      StackMap locals:
      StackMap stack:
            sipush 314
            ireturn
        16: .line 1874
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_1
            invokevirtual org.jruby.ext.ripper.RipperLexer.setState:(I)V
        17: .line 1875
            aload 0 /* this */
            iload 2 /* c */
            invokevirtual org.jruby.ext.ripper.RipperLexer.pushback:(I)V
        18: .line 1876
            aload 0 /* this */
            iload 2 /* c */
            iload 1 /* spaceSeen */
            ldc "+"
            ldc "unary operator"
            invokevirtual org.jruby.ext.ripper.RipperLexer.warn_balanced:(IZLjava/lang/String;Ljava/lang/String;)V
        19: .line 1877
            sipush 355
            ireturn
        end local 2 // int c
        end local 1 // boolean spaceSeen
        end local 0 // org.jruby.ext.ripper.RipperLexer this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   20     0       this  Lorg/jruby/ext/ripper/RipperLexer;
            0   20     1  spaceSeen  Z
            1   20     2          c  I
    Exceptions:
      throws java.io.IOException
    MethodParameters:
           Name  Flags
      spaceSeen  

  private int questionMark();
    descriptor: ()I
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=3, args_size=1
        start local 0 // org.jruby.ext.ripper.RipperLexer this
         0: .line 1887
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.isEND:()Z
            ifeq 3
         1: .line 1888
            aload 0 /* this */
            iconst_1
            invokevirtual org.jruby.ext.ripper.RipperLexer.setState:(I)V
         2: .line 1890
            bipush 63
            ireturn
         3: .line 1893
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.nextc:()I
            istore 1 /* c */
        start local 1 // int c
         4: .line 1894
            iload 1 /* c */
            iconst_m1
            if_icmpne 7
         5: .line 1895
            aload 0 /* this */
            ldc "incomplete character syntax"
            invokevirtual org.jruby.ext.ripper.RipperLexer.compile_error:(Ljava/lang/String;)V
         6: .line 1896
            iconst_m1
            ireturn
         7: .line 1899
      StackMap locals: int
      StackMap stack:
            iload 1 /* c */
            invokestatic java.lang.Character.isWhitespace:(I)Z
            ifeq 25
         8: .line 1900
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.isARG:()Z
            ifne 22
         9: .line 1901
            iconst_0
            istore 2 /* c2 */
        start local 2 // int c2
        10: .line 1902
            iload 1 /* c */
            lookupswitch { // 5
                    9: 15
                   10: 13
                   12: 19
                   13: 17
                   32: 11
              default: 20
          }
        11: .line 1904
      StackMap locals: int
      StackMap stack:
            bipush 115
            istore 2 /* c2 */
        12: .line 1905
            goto 20
        13: .line 1907
      StackMap locals:
      StackMap stack:
            bipush 110
            istore 2 /* c2 */
        14: .line 1908
            goto 20
        15: .line 1910
      StackMap locals:
      StackMap stack:
            bipush 116
            istore 2 /* c2 */
        16: .line 1911
            goto 20
        17: .line 1918
      StackMap locals:
      StackMap stack:
            bipush 114
            istore 2 /* c2 */
        18: .line 1919
            goto 20
        19: .line 1921
      StackMap locals:
      StackMap stack:
            bipush 102
            istore 2 /* c2 */
        20: .line 1924
      StackMap locals:
      StackMap stack:
            iload 2 /* c2 */
            ifeq 22
        21: .line 1925
            aload 0 /* this */
            new java.lang.StringBuilder
            dup
            ldc "invalid character syntax; use ?\\"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 2 /* c2 */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual org.jruby.ext.ripper.RipperLexer.warn:(Ljava/lang/String;)V
        end local 2 // int c2
        22: .line 1928
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 1 /* c */
            invokevirtual org.jruby.ext.ripper.RipperLexer.pushback:(I)V
        23: .line 1929
            aload 0 /* this */
            iconst_1
            invokevirtual org.jruby.ext.ripper.RipperLexer.setState:(I)V
        24: .line 1930
            bipush 63
            ireturn
        25: .line 1931
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.isASCII:()Z
            ifeq 30
        26: .line 1932
            new org.jruby.util.ByteList
            dup
            iconst_1
            invokespecial org.jruby.util.ByteList.<init>:(I)V
            astore 2 /* buffer */
        start local 2 // org.jruby.util.ByteList buffer
        27: .line 1933
            aload 0 /* this */
            iload 1 /* c */
            aload 2 /* buffer */
            invokevirtual org.jruby.ext.ripper.RipperLexer.tokenAddMBC:(ILorg/jruby/util/ByteList;)Z
            ifne 28
            iconst_m1
            ireturn
        28: .line 1935
      StackMap locals: org.jruby.util.ByteList
      StackMap stack:
            aload 0 /* this */
            iconst_2
            invokevirtual org.jruby.ext.ripper.RipperLexer.setState:(I)V
        29: .line 1936
            sipush 313
            ireturn
        end local 2 // org.jruby.util.ByteList buffer
        30: .line 1937
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 1 /* c */
            invokevirtual org.jruby.ext.ripper.RipperLexer.isIdentifierChar:(I)Z
            ifeq 34
            aload 0 /* this */
            bipush 10
            invokevirtual org.jruby.ext.ripper.RipperLexer.peek:(I)Z
            ifne 34
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.isNext_identchar:()Z
            ifeq 34
        31: .line 1938
            aload 0 /* this */
            iload 1 /* c */
            invokevirtual org.jruby.ext.ripper.RipperLexer.pushback:(I)V
        32: .line 1939
            aload 0 /* this */
            iconst_1
            invokevirtual org.jruby.ext.ripper.RipperLexer.setState:(I)V
        33: .line 1941
            bipush 63
            ireturn
        34: .line 1942
      StackMap locals:
      StackMap stack:
            iload 1 /* c */
            bipush 92
            if_icmpne 46
        35: .line 1943
            aload 0 /* this */
            bipush 117
            invokevirtual org.jruby.ext.ripper.RipperLexer.peek:(I)Z
            ifeq 45
        36: .line 1944
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.nextc:()I
            pop
        37: .line 1945
            new org.jruby.util.ByteList
            dup
            iconst_2
            invokespecial org.jruby.util.ByteList.<init>:(I)V
            astore 2 /* oneCharBL */
        start local 2 // org.jruby.util.ByteList oneCharBL
        38: .line 1946
            aload 0 /* this */
            aload 2 /* oneCharBL */
            iconst_0
            iconst_0
            invokevirtual org.jruby.ext.ripper.RipperLexer.readUTFEscape:(Lorg/jruby/util/ByteList;ZZ)I
            istore 1 /* c */
        39: .line 1948
            iload 1 /* c */
            sipush 128
            if_icmplt 42
        40: .line 1949
            aload 0 /* this */
            iload 1 /* c */
            aload 2 /* oneCharBL */
            invokevirtual org.jruby.ext.ripper.RipperLexer.tokenAddMBC:(ILorg/jruby/util/ByteList;)Z
            pop
        41: .line 1950
            goto 43
        42: .line 1951
      StackMap locals: org.jruby.util.ByteList
      StackMap stack:
            aload 2 /* oneCharBL */
            iload 1 /* c */
            invokevirtual org.jruby.util.ByteList.append:(I)Lorg/jruby/util/ByteList;
            pop
        43: .line 1954
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_2
            invokevirtual org.jruby.ext.ripper.RipperLexer.setState:(I)V
        44: .line 1956
            sipush 379
            ireturn
        end local 2 // org.jruby.util.ByteList oneCharBL
        45: .line 1958
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.readEscape:()I
            istore 1 /* c */
        46: .line 1962
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_2
            invokevirtual org.jruby.ext.ripper.RipperLexer.setState:(I)V
        47: .line 1964
            new org.jruby.util.ByteList
            dup
            iconst_1
            invokespecial org.jruby.util.ByteList.<init>:(I)V
            astore 2 /* oneCharBL */
        start local 2 // org.jruby.util.ByteList oneCharBL
        48: .line 1965
            aload 2 /* oneCharBL */
            iload 1 /* c */
            invokevirtual org.jruby.util.ByteList.append:(I)Lorg/jruby/util/ByteList;
            pop
        49: .line 1966
            sipush 313
            ireturn
        end local 2 // org.jruby.util.ByteList oneCharBL
        end local 1 // int c
        end local 0 // org.jruby.ext.ripper.RipperLexer this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   50     0       this  Lorg/jruby/ext/ripper/RipperLexer;
            4   50     1          c  I
           10   22     2         c2  I
           27   30     2     buffer  Lorg/jruby/util/ByteList;
           38   45     2  oneCharBL  Lorg/jruby/util/ByteList;
           48   50     2  oneCharBL  Lorg/jruby/util/ByteList;
    Exceptions:
      throws java.io.IOException

  private int rightBracket();
    descriptor: ()I
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.jruby.ext.ripper.RipperLexer this
         0: .line 1970
            aload 0 /* this */
            dup
            getfield org.jruby.ext.ripper.RipperLexer.parenNest:I
            iconst_1
            isub
            putfield org.jruby.ext.ripper.RipperLexer.parenNest:I
         1: .line 1971
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.conditionState:Lorg/jruby/lexer/yacc/StackState;
            invokevirtual org.jruby.lexer.yacc.StackState.restart:()V
         2: .line 1972
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.cmdArgumentState:Lorg/jruby/lexer/yacc/StackState;
            invokevirtual org.jruby.lexer.yacc.StackState.restart:()V
         3: .line 1973
            aload 0 /* this */
            iconst_2
            invokevirtual org.jruby.ext.ripper.RipperLexer.setState:(I)V
         4: .line 1974
            sipush 345
            ireturn
        end local 0 // org.jruby.ext.ripper.RipperLexer this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lorg/jruby/ext/ripper/RipperLexer;

  private int rightCurly();
    descriptor: ()I
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=2, args_size=1
        start local 0 // org.jruby.ext.ripper.RipperLexer this
         0: .line 1978
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.conditionState:Lorg/jruby/lexer/yacc/StackState;
            invokevirtual org.jruby.lexer.yacc.StackState.restart:()V
         1: .line 1979
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.cmdArgumentState:Lorg/jruby/lexer/yacc/StackState;
            invokevirtual org.jruby.lexer.yacc.StackState.restart:()V
         2: .line 1980
            aload 0 /* this */
            iconst_2
            invokevirtual org.jruby.ext.ripper.RipperLexer.setState:(I)V
         3: .line 1982
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.braceNest:I
            ifne 4
            sipush 395
            goto 5
      StackMap locals:
      StackMap stack:
         4: sipush 363
      StackMap locals:
      StackMap stack: int
         5: istore 1 /* tok */
        start local 1 // int tok
         6: .line 1983
            aload 0 /* this */
            dup
            getfield org.jruby.ext.ripper.RipperLexer.braceNest:I
            iconst_1
            isub
            putfield org.jruby.ext.ripper.RipperLexer.braceNest:I
         7: .line 1984
            iload 1 /* tok */
            ireturn
        end local 1 // int tok
        end local 0 // org.jruby.ext.ripper.RipperLexer this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    8     0  this  Lorg/jruby/ext/ripper/RipperLexer;
            6    8     1   tok  I

  private int rightParen();
    descriptor: ()I
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.jruby.ext.ripper.RipperLexer this
         0: .line 1988
            aload 0 /* this */
            dup
            getfield org.jruby.ext.ripper.RipperLexer.parenNest:I
            iconst_1
            isub
            putfield org.jruby.ext.ripper.RipperLexer.parenNest:I
         1: .line 1989
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.conditionState:Lorg/jruby/lexer/yacc/StackState;
            invokevirtual org.jruby.lexer.yacc.StackState.restart:()V
         2: .line 1990
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.cmdArgumentState:Lorg/jruby/lexer/yacc/StackState;
            invokevirtual org.jruby.lexer.yacc.StackState.restart:()V
         3: .line 1991
            aload 0 /* this */
            bipush 8
            invokevirtual org.jruby.ext.ripper.RipperLexer.setState:(I)V
         4: .line 1992
            sipush 342
            ireturn
        end local 0 // org.jruby.ext.ripper.RipperLexer this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lorg/jruby/ext/ripper/RipperLexer;

  private int singleQuote(boolean);
    descriptor: (Z)I
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=3, args_size=2
        start local 0 // org.jruby.ext.ripper.RipperLexer this
        start local 1 // boolean commandState
         0: .line 1996
            aload 0 /* this */
            iload 1 /* commandState */
            invokevirtual org.jruby.ext.ripper.RipperLexer.isLabelPossible:(Z)Z
            ifeq 1
            bipush 64
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_0
      StackMap locals:
      StackMap stack: int
         2: istore 2 /* label */
        start local 2 // int label
         3: .line 1997
            aload 0 /* this */
            new org.jruby.ext.ripper.StringTerm
            dup
            iload 2 /* label */
            iconst_0
            bipush 39
            invokespecial org.jruby.ext.ripper.StringTerm.<init>:(III)V
            putfield org.jruby.ext.ripper.RipperLexer.lex_strterm:Lorg/jruby/ext/ripper/StrTerm;
         4: .line 1998
            sipush 366
            ireturn
        end local 2 // int label
        end local 1 // boolean commandState
        end local 0 // org.jruby.ext.ripper.RipperLexer this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    5     0          this  Lorg/jruby/ext/ripper/RipperLexer;
            0    5     1  commandState  Z
            3    5     2         label  I
    Exceptions:
      throws java.io.IOException
    MethodParameters:
              Name  Flags
      commandState  

  private int slash(boolean);
    descriptor: (Z)I
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=3, args_size=2
        start local 0 // org.jruby.ext.ripper.RipperLexer this
        start local 1 // boolean spaceSeen
         0: .line 2002
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.isBEG:()Z
            ifeq 3
         1: .line 2003
            aload 0 /* this */
            new org.jruby.ext.ripper.StringTerm
            dup
            bipush 7
            iconst_0
            bipush 47
            invokespecial org.jruby.ext.ripper.StringTerm.<init>:(III)V
            putfield org.jruby.ext.ripper.RipperLexer.lex_strterm:Lorg/jruby/ext/ripper/StrTerm;
         2: .line 2005
            sipush 368
            ireturn
         3: .line 2008
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.nextc:()I
            istore 2 /* c */
        start local 2 // int c
         4: .line 2010
            iload 2 /* c */
            bipush 61
            if_icmpne 7
         5: .line 2011
            aload 0 /* this */
            iconst_1
            invokevirtual org.jruby.ext.ripper.RipperLexer.setState:(I)V
         6: .line 2013
            sipush 338
            ireturn
         7: .line 2015
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            iload 2 /* c */
            invokevirtual org.jruby.ext.ripper.RipperLexer.pushback:(I)V
         8: .line 2016
            aload 0 /* this */
            iload 2 /* c */
            iload 1 /* spaceSeen */
            invokevirtual org.jruby.ext.ripper.RipperLexer.isSpaceArg:(IZ)Z
            ifeq 12
         9: .line 2017
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.arg_ambiguous:()Z
            pop
        10: .line 2018
            aload 0 /* this */
            new org.jruby.ext.ripper.StringTerm
            dup
            bipush 7
            iconst_0
            bipush 47
            invokespecial org.jruby.ext.ripper.StringTerm.<init>:(III)V
            putfield org.jruby.ext.ripper.RipperLexer.lex_strterm:Lorg/jruby/ext/ripper/StrTerm;
        11: .line 2020
            sipush 368
            ireturn
        12: .line 2023
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.isAfterOperator:()Z
            ifeq 13
            bipush 16
            goto 14
      StackMap locals:
      StackMap stack: org.jruby.ext.ripper.RipperLexer
        13: iconst_1
      StackMap locals: org.jruby.ext.ripper.RipperLexer int int
      StackMap stack: org.jruby.ext.ripper.RipperLexer int
        14: invokevirtual org.jruby.ext.ripper.RipperLexer.setState:(I)V
        15: .line 2026
            aload 0 /* this */
            iload 2 /* c */
            iload 1 /* spaceSeen */
            ldc "/"
            ldc "regexp literal"
            invokevirtual org.jruby.ext.ripper.RipperLexer.warn_balanced:(IZLjava/lang/String;Ljava/lang/String;)V
        16: .line 2027
            sipush 354
            ireturn
        end local 2 // int c
        end local 1 // boolean spaceSeen
        end local 0 // org.jruby.ext.ripper.RipperLexer this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   17     0       this  Lorg/jruby/ext/ripper/RipperLexer;
            0   17     1  spaceSeen  Z
            4   17     2          c  I
    Exceptions:
      throws java.io.IOException
    MethodParameters:
           Name  Flags
      spaceSeen  

  private int star(boolean);
    descriptor: (Z)I
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=3, args_size=2
        start local 0 // org.jruby.ext.ripper.RipperLexer this
        start local 1 // boolean spaceSeen
         0: .line 2031
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.nextc:()I
            istore 2 /* c */
        start local 2 // int c
         1: .line 2033
            iload 2 /* c */
            lookupswitch { // 2
                   42: 2
                   61: 16
              default: 18
          }
         2: .line 2035
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.nextc:()I
            dup
            istore 2 /* c */
            bipush 61
            if_icmpne 5
         3: .line 2036
            aload 0 /* this */
            iconst_1
            invokevirtual org.jruby.ext.ripper.RipperLexer.setState:(I)V
         4: .line 2038
            sipush 338
            ireturn
         5: .line 2041
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 2 /* c */
            invokevirtual org.jruby.ext.ripper.RipperLexer.pushback:(I)V
         6: .line 2044
            aload 0 /* this */
            iload 2 /* c */
            iload 1 /* spaceSeen */
            invokevirtual org.jruby.ext.ripper.RipperLexer.isSpaceArg:(IZ)Z
            ifeq 10
         7: .line 2045
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.isVerbose:()Z
            ifeq 8
            getstatic org.jruby.util.cli.Options.PARSER_WARN_ARGUMENT_PREFIX:Lcom/headius/options/Option;
            invokevirtual com.headius.options.Option.load:()Ljava/lang/Object;
            checkcast java.lang.Boolean
            invokevirtual java.lang.Boolean.booleanValue:()Z
            ifeq 8
            aload 0 /* this */
            ldc "`**' interpreted as argument prefix"
            invokevirtual org.jruby.ext.ripper.RipperLexer.warning:(Ljava/lang/String;)V
         8: .line 2046
      StackMap locals:
      StackMap stack:
            sipush 394
            istore 2 /* c */
         9: .line 2047
            goto 28
      StackMap locals:
      StackMap stack:
        10: aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.isBEG:()Z
            ifeq 13
        11: .line 2048
            sipush 394
            istore 2 /* c */
        12: .line 2049
            goto 28
        13: .line 2050
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 2 /* c */
            iload 1 /* spaceSeen */
            ldc "**"
            ldc "argument prefix"
            invokevirtual org.jruby.ext.ripper.RipperLexer.warn_balanced:(IZLjava/lang/String;Ljava/lang/String;)V
        14: .line 2051
            sipush 317
            istore 2 /* c */
        15: .line 2053
            goto 28
        16: .line 2055
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_1
            invokevirtual org.jruby.ext.ripper.RipperLexer.setState:(I)V
        17: .line 2057
            sipush 338
            ireturn
        18: .line 2059
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 2 /* c */
            invokevirtual org.jruby.ext.ripper.RipperLexer.pushback:(I)V
        19: .line 2060
            aload 0 /* this */
            iload 2 /* c */
            iload 1 /* spaceSeen */
            invokevirtual org.jruby.ext.ripper.RipperLexer.isSpaceArg:(IZ)Z
            ifeq 23
        20: .line 2061
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.isVerbose:()Z
            ifeq 21
            getstatic org.jruby.util.cli.Options.PARSER_WARN_ARGUMENT_PREFIX:Lcom/headius/options/Option;
            invokevirtual com.headius.options.Option.load:()Ljava/lang/Object;
            checkcast java.lang.Boolean
            invokevirtual java.lang.Boolean.booleanValue:()Z
            ifeq 21
            aload 0 /* this */
            ldc "`*' interpreted as argument prefix"
            invokevirtual org.jruby.ext.ripper.RipperLexer.warning:(Ljava/lang/String;)V
        21: .line 2062
      StackMap locals:
      StackMap stack:
            sipush 348
            istore 2 /* c */
        22: .line 2063
            goto 28
      StackMap locals:
      StackMap stack:
        23: aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.isBEG:()Z
            ifeq 26
        24: .line 2064
            sipush 348
            istore 2 /* c */
        25: .line 2065
            goto 28
        26: .line 2066
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 2 /* c */
            iload 1 /* spaceSeen */
            ldc "*"
            ldc "argument prefix"
            invokevirtual org.jruby.ext.ripper.RipperLexer.warn_balanced:(IZLjava/lang/String;Ljava/lang/String;)V
        27: .line 2067
            sipush 349
            istore 2 /* c */
        28: .line 2072
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.isAfterOperator:()Z
            ifeq 29
            bipush 16
            goto 30
      StackMap locals:
      StackMap stack: org.jruby.ext.ripper.RipperLexer
        29: iconst_1
      StackMap locals: org.jruby.ext.ripper.RipperLexer int int
      StackMap stack: org.jruby.ext.ripper.RipperLexer int
        30: invokevirtual org.jruby.ext.ripper.RipperLexer.setState:(I)V
        31: .line 2073
            iload 2 /* c */
            ireturn
        end local 2 // int c
        end local 1 // boolean spaceSeen
        end local 0 // org.jruby.ext.ripper.RipperLexer this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   32     0       this  Lorg/jruby/ext/ripper/RipperLexer;
            0   32     1  spaceSeen  Z
            1   32     2          c  I
    Exceptions:
      throws java.io.IOException
    MethodParameters:
           Name  Flags
      spaceSeen  

  private int tilde();
    descriptor: ()I
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // org.jruby.ext.ripper.RipperLexer this
         0: .line 2079
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.isAfterOperator:()Z
            ifeq 5
         1: .line 2080
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.nextc:()I
            dup
            istore 1 /* c */
        start local 1 // int c
         2: bipush 64
            if_icmpeq 3
            aload 0 /* this */
            iload 1 /* c */
            invokevirtual org.jruby.ext.ripper.RipperLexer.pushback:(I)V
         3: .line 2081
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            bipush 16
            invokevirtual org.jruby.ext.ripper.RipperLexer.setState:(I)V
         4: .line 2082
            goto 6
        end local 1 // int c
         5: .line 2083
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_1
            invokevirtual org.jruby.ext.ripper.RipperLexer.setState:(I)V
         6: .line 2086
      StackMap locals:
      StackMap stack:
            sipush 352
            ireturn
        end local 0 // org.jruby.ext.ripper.RipperLexer this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0  this  Lorg/jruby/ext/ripper/RipperLexer;
            2    5     1     c  I
    Exceptions:
      throws java.io.IOException

  private int parseNumber(int);
    descriptor: (I)I
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=6, args_size=2
        start local 0 // org.jruby.ext.ripper.RipperLexer this
        start local 1 // int c
         0: .line 2097
            aload 0 /* this */
            iconst_2
            invokevirtual org.jruby.ext.ripper.RipperLexer.setState:(I)V
         1: .line 2099
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.numberBuffer:Lorg/jruby/util/ByteList;
            iconst_0
            invokevirtual org.jruby.util.ByteList.setRealSize:(I)V
         2: .line 2101
            iload 1 /* c */
            bipush 45
            if_icmpne 6
         3: .line 2102
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.numberBuffer:Lorg/jruby/util/ByteList;
            iload 1 /* c */
            i2c
            invokevirtual org.jruby.util.ByteList.append:(I)Lorg/jruby/util/ByteList;
            pop
         4: .line 2103
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.nextc:()I
            istore 1 /* c */
         5: .line 2104
            goto 8
      StackMap locals:
      StackMap stack:
         6: iload 1 /* c */
            bipush 43
            if_icmpne 8
         7: .line 2106
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.nextc:()I
            istore 1 /* c */
         8: .line 2109
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 2 /* nondigit */
        start local 2 // int nondigit
         9: .line 2111
            iload 1 /* c */
            bipush 48
            if_icmpne 82
        10: .line 2112
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.numberBuffer:Lorg/jruby/util/ByteList;
            invokevirtual org.jruby.util.ByteList.length:()I
            istore 3 /* startLen */
        start local 3 // int startLen
        11: .line 2114
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.nextc:()I
            dup
            istore 1 /* c */
            lookupswitch { // 22
                   46: 77
                   48: 64
                   49: 64
                   50: 64
                   51: 64
                   52: 64
                   53: 64
                   54: 64
                   55: 64
                   56: 76
                   57: 76
                   66: 29
                   68: 46
                   69: 77
                   79: 63
                   88: 12
                   95: 64
                   98: 29
                  100: 46
                  101: 77
                  111: 63
                  120: 12
              default: 79
          }
        12: .line 2117
      StackMap locals: int int
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.nextc:()I
            istore 1 /* c */
        13: .line 2118
            iload 1 /* c */
            invokestatic org.jruby.ext.ripper.RipperLexer.isHexChar:(I)Z
            ifeq 22
        14: .line 2120
      StackMap locals:
      StackMap stack:
            iload 1 /* c */
            bipush 95
            if_icmpne 18
        15: .line 2121
            iload 2 /* nondigit */
            ifeq 16
            goto 22
        16: .line 2122
      StackMap locals:
      StackMap stack:
            iload 1 /* c */
            istore 2 /* nondigit */
        17: .line 2123
            goto 21
      StackMap locals:
      StackMap stack:
        18: iload 1 /* c */
            invokestatic org.jruby.ext.ripper.RipperLexer.isHexChar:(I)Z
            ifeq 22
        19: .line 2124
            iconst_0
            istore 2 /* nondigit */
        20: .line 2125
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.numberBuffer:Lorg/jruby/util/ByteList;
            iload 1 /* c */
            i2c
            invokevirtual org.jruby.util.ByteList.append:(I)Lorg/jruby/util/ByteList;
            pop
        21: .line 2119
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.nextc:()I
            istore 1 /* c */
            goto 14
        22: .line 2131
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 1 /* c */
            invokevirtual org.jruby.ext.ripper.RipperLexer.pushback:(I)V
        23: .line 2133
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.numberBuffer:Lorg/jruby/util/ByteList;
            invokevirtual org.jruby.util.ByteList.length:()I
            iload 3 /* startLen */
            if_icmpne 26
        24: .line 2134
            aload 0 /* this */
            ldc "Hexadecimal number without hex-digits."
            invokevirtual org.jruby.ext.ripper.RipperLexer.compile_error:(Ljava/lang/String;)V
        25: .line 2135
            goto 28
      StackMap locals:
      StackMap stack:
        26: iload 2 /* nondigit */
            ifeq 28
        27: .line 2136
            aload 0 /* this */
            ldc "Trailing '_' in number."
            invokevirtual org.jruby.ext.ripper.RipperLexer.compile_error:(Ljava/lang/String;)V
        28: .line 2138
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            iconst_3
            invokevirtual org.jruby.ext.ripper.RipperLexer.numberLiteralSuffix:(I)I
            invokevirtual org.jruby.ext.ripper.RipperLexer.setIntegerLiteral:(I)I
            ireturn
        29: .line 2141
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.nextc:()I
            istore 1 /* c */
        30: .line 2142
            iload 1 /* c */
            bipush 48
            if_icmpeq 31
            iload 1 /* c */
            bipush 49
            if_icmpne 39
        31: .line 2144
      StackMap locals:
      StackMap stack:
            iload 1 /* c */
            bipush 95
            if_icmpne 35
        32: .line 2145
            iload 2 /* nondigit */
            ifeq 33
            goto 39
        33: .line 2146
      StackMap locals:
      StackMap stack:
            iload 1 /* c */
            istore 2 /* nondigit */
        34: .line 2147
            goto 38
      StackMap locals:
      StackMap stack:
        35: iload 1 /* c */
            bipush 48
            if_icmpeq 36
            iload 1 /* c */
            bipush 49
            if_icmpne 39
        36: .line 2148
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 2 /* nondigit */
        37: .line 2149
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.numberBuffer:Lorg/jruby/util/ByteList;
            iload 1 /* c */
            i2c
            invokevirtual org.jruby.util.ByteList.append:(I)Lorg/jruby/util/ByteList;
            pop
        38: .line 2143
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.nextc:()I
            istore 1 /* c */
            goto 31
        39: .line 2155
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 1 /* c */
            invokevirtual org.jruby.ext.ripper.RipperLexer.pushback:(I)V
        40: .line 2157
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.numberBuffer:Lorg/jruby/util/ByteList;
            invokevirtual org.jruby.util.ByteList.length:()I
            iload 3 /* startLen */
            if_icmpne 43
        41: .line 2158
            aload 0 /* this */
            ldc "Binary number without digits."
            invokevirtual org.jruby.ext.ripper.RipperLexer.compile_error:(Ljava/lang/String;)V
        42: .line 2159
            goto 45
      StackMap locals:
      StackMap stack:
        43: iload 2 /* nondigit */
            ifeq 45
        44: .line 2160
            aload 0 /* this */
            ldc "Trailing '_' in number."
            invokevirtual org.jruby.ext.ripper.RipperLexer.compile_error:(Ljava/lang/String;)V
        45: .line 2162
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            iconst_3
            invokevirtual org.jruby.ext.ripper.RipperLexer.numberLiteralSuffix:(I)I
            invokevirtual org.jruby.ext.ripper.RipperLexer.setIntegerLiteral:(I)I
            ireturn
        46: .line 2165
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.nextc:()I
            istore 1 /* c */
        47: .line 2166
            iload 1 /* c */
            invokestatic java.lang.Character.isDigit:(I)Z
            ifeq 56
        48: .line 2168
      StackMap locals:
      StackMap stack:
            iload 1 /* c */
            bipush 95
            if_icmpne 52
        49: .line 2169
            iload 2 /* nondigit */
            ifeq 50
            goto 56
        50: .line 2170
      StackMap locals:
      StackMap stack:
            iload 1 /* c */
            istore 2 /* nondigit */
        51: .line 2171
            goto 55
      StackMap locals:
      StackMap stack:
        52: iload 1 /* c */
            invokestatic java.lang.Character.isDigit:(I)Z
            ifeq 56
        53: .line 2172
            iconst_0
            istore 2 /* nondigit */
        54: .line 2173
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.numberBuffer:Lorg/jruby/util/ByteList;
            iload 1 /* c */
            i2c
            invokevirtual org.jruby.util.ByteList.append:(I)Lorg/jruby/util/ByteList;
            pop
        55: .line 2167
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.nextc:()I
            istore 1 /* c */
            goto 48
        56: .line 2179
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 1 /* c */
            invokevirtual org.jruby.ext.ripper.RipperLexer.pushback:(I)V
        57: .line 2181
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.numberBuffer:Lorg/jruby/util/ByteList;
            invokevirtual org.jruby.util.ByteList.length:()I
            iload 3 /* startLen */
            if_icmpne 60
        58: .line 2182
            aload 0 /* this */
            ldc "Binary number without digits."
            invokevirtual org.jruby.ext.ripper.RipperLexer.compile_error:(Ljava/lang/String;)V
        59: .line 2183
            goto 62
      StackMap locals:
      StackMap stack:
        60: iload 2 /* nondigit */
            ifeq 62
        61: .line 2184
            aload 0 /* this */
            ldc "Trailing '_' in number."
            invokevirtual org.jruby.ext.ripper.RipperLexer.compile_error:(Ljava/lang/String;)V
        62: .line 2186
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            iconst_3
            invokevirtual org.jruby.ext.ripper.RipperLexer.numberLiteralSuffix:(I)I
            invokevirtual org.jruby.ext.ripper.RipperLexer.setIntegerLiteral:(I)I
            ireturn
        63: .line 2189
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.nextc:()I
            istore 1 /* c */
        64: .line 2193
      StackMap locals:
      StackMap stack:
            iload 1 /* c */
            bipush 95
            if_icmpne 68
        65: .line 2194
            iload 2 /* nondigit */
            ifeq 66
            goto 72
        66: .line 2196
      StackMap locals:
      StackMap stack:
            iload 1 /* c */
            istore 2 /* nondigit */
        67: .line 2197
            goto 71
      StackMap locals:
      StackMap stack:
        68: iload 1 /* c */
            bipush 48
            if_icmplt 72
            iload 1 /* c */
            bipush 55
            if_icmpgt 72
        69: .line 2198
            iconst_0
            istore 2 /* nondigit */
        70: .line 2199
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.numberBuffer:Lorg/jruby/util/ByteList;
            iload 1 /* c */
            i2c
            invokevirtual org.jruby.util.ByteList.append:(I)Lorg/jruby/util/ByteList;
            pop
        71: .line 2192
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.nextc:()I
            istore 1 /* c */
            goto 64
        72: .line 2204
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.numberBuffer:Lorg/jruby/util/ByteList;
            invokevirtual org.jruby.util.ByteList.length:()I
            iload 3 /* startLen */
            if_icmple 76
        73: .line 2205
            aload 0 /* this */
            iload 1 /* c */
            invokevirtual org.jruby.ext.ripper.RipperLexer.pushback:(I)V
        74: .line 2207
            iload 2 /* nondigit */
            ifeq 75
            aload 0 /* this */
            ldc "Trailing '_' in number."
            invokevirtual org.jruby.ext.ripper.RipperLexer.compile_error:(Ljava/lang/String;)V
        75: .line 2209
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            iconst_3
            invokevirtual org.jruby.ext.ripper.RipperLexer.numberLiteralSuffix:(I)I
            invokevirtual org.jruby.ext.ripper.RipperLexer.setIntegerLiteral:(I)I
            ireturn
        76: .line 2213
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            ldc "Illegal octal digit."
            invokevirtual org.jruby.ext.ripper.RipperLexer.compile_error:(Ljava/lang/String;)V
        77: .line 2217
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.numberBuffer:Lorg/jruby/util/ByteList;
            bipush 48
            invokevirtual org.jruby.util.ByteList.append:(I)Lorg/jruby/util/ByteList;
            pop
        78: .line 2218
            goto 82
        79: .line 2220
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 1 /* c */
            invokevirtual org.jruby.ext.ripper.RipperLexer.pushback:(I)V
        80: .line 2221
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.numberBuffer:Lorg/jruby/util/ByteList;
            bipush 48
            invokevirtual org.jruby.util.ByteList.append:(I)Lorg/jruby/util/ByteList;
            pop
        81: .line 2222
            aload 0 /* this */
            aload 0 /* this */
            iconst_3
            invokevirtual org.jruby.ext.ripper.RipperLexer.numberLiteralSuffix:(I)I
            invokevirtual org.jruby.ext.ripper.RipperLexer.setIntegerLiteral:(I)I
            ireturn
        end local 3 // int startLen
        82: .line 2226
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 3 /* seen_point */
        start local 3 // boolean seen_point
        83: .line 2227
            iconst_0
            istore 4 /* seen_e */
        start local 4 // boolean seen_e
        84: .line 2230
      StackMap locals: int int
      StackMap stack:
            iload 1 /* c */
            lookupswitch { // 14
                   46: 88
                   48: 85
                   49: 85
                   50: 85
                   51: 85
                   52: 85
                   53: 85
                   54: 85
                   55: 85
                   56: 85
                   57: 85
                   69: 106
                   95: 122
                  101: 106
              default: 126
          }
        85: .line 2241
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 2 /* nondigit */
        86: .line 2242
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.numberBuffer:Lorg/jruby/util/ByteList;
            iload 1 /* c */
            i2c
            invokevirtual org.jruby.util.ByteList.append:(I)Lorg/jruby/util/ByteList;
            pop
        87: .line 2243
            goto 128
        88: .line 2245
      StackMap locals:
      StackMap stack:
            iload 2 /* nondigit */
            ifeq 92
        89: .line 2246
            aload 0 /* this */
            iload 1 /* c */
            invokevirtual org.jruby.ext.ripper.RipperLexer.pushback:(I)V
        90: .line 2247
            aload 0 /* this */
            ldc "Trailing '_' in number."
            invokevirtual org.jruby.ext.ripper.RipperLexer.compile_error:(Ljava/lang/String;)V
        91: .line 2248
            goto 128
      StackMap locals:
      StackMap stack:
        92: iload 3 /* seen_point */
            ifne 93
            iload 4 /* seen_e */
            ifeq 95
        93: .line 2249
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 1 /* c */
            invokevirtual org.jruby.ext.ripper.RipperLexer.pushback:(I)V
        94: .line 2250
            aload 0 /* this */
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.numberBuffer:Lorg/jruby/util/ByteList;
            invokevirtual org.jruby.util.ByteList.toString:()Ljava/lang/String;
            iload 4 /* seen_e */
            iload 3 /* seen_point */
            iload 2 /* nondigit */
            invokevirtual org.jruby.ext.ripper.RipperLexer.getNumberLiteral:(Ljava/lang/String;ZZI)I
            ireturn
        95: .line 2253
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.nextc:()I
            dup
            istore 5 /* c2 */
        start local 5 // int c2
        96: invokestatic java.lang.Character.isDigit:(I)Z
            ifne 101
        97: .line 2254
            aload 0 /* this */
            iload 5 /* c2 */
            invokevirtual org.jruby.ext.ripper.RipperLexer.pushback:(I)V
        98: .line 2255
            aload 0 /* this */
            bipush 46
            invokevirtual org.jruby.ext.ripper.RipperLexer.pushback:(I)V
        99: .line 2256
            iload 1 /* c */
            bipush 95
            if_icmpeq 128
       100: .line 2260
            aload 0 /* this */
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.numberBuffer:Lorg/jruby/util/ByteList;
            invokevirtual org.jruby.util.ByteList.toString:()Ljava/lang/String;
            iload 4 /* seen_e */
            iload 3 /* seen_point */
            iload 2 /* nondigit */
            invokevirtual org.jruby.ext.ripper.RipperLexer.getNumberLiteral:(Ljava/lang/String;ZZI)I
            ireturn
       101: .line 2263
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.numberBuffer:Lorg/jruby/util/ByteList;
            bipush 46
            invokevirtual org.jruby.util.ByteList.append:(I)Lorg/jruby/util/ByteList;
            pop
       102: .line 2264
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.numberBuffer:Lorg/jruby/util/ByteList;
            iload 5 /* c2 */
            i2c
            invokevirtual org.jruby.util.ByteList.append:(I)Lorg/jruby/util/ByteList;
            pop
       103: .line 2265
            iconst_1
            istore 3 /* seen_point */
       104: .line 2266
            iconst_0
            istore 2 /* nondigit */
        end local 5 // int c2
       105: .line 2269
            goto 128
       106: .line 2272
      StackMap locals:
      StackMap stack:
            iload 2 /* nondigit */
            ifeq 109
       107: .line 2273
            aload 0 /* this */
            ldc "Trailing '_' in number."
            invokevirtual org.jruby.ext.ripper.RipperLexer.compile_error:(Ljava/lang/String;)V
       108: .line 2274
            goto 128
      StackMap locals:
      StackMap stack:
       109: iload 4 /* seen_e */
            ifeq 112
       110: .line 2275
            aload 0 /* this */
            iload 1 /* c */
            invokevirtual org.jruby.ext.ripper.RipperLexer.pushback:(I)V
       111: .line 2276
            aload 0 /* this */
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.numberBuffer:Lorg/jruby/util/ByteList;
            invokevirtual org.jruby.util.ByteList.toString:()Ljava/lang/String;
            iload 4 /* seen_e */
            iload 3 /* seen_point */
            iload 2 /* nondigit */
            invokevirtual org.jruby.ext.ripper.RipperLexer.getNumberLiteral:(Ljava/lang/String;ZZI)I
            ireturn
       112: .line 2278
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.numberBuffer:Lorg/jruby/util/ByteList;
            iload 1 /* c */
            i2c
            invokevirtual org.jruby.util.ByteList.append:(I)Lorg/jruby/util/ByteList;
            pop
       113: .line 2279
            iconst_1
            istore 4 /* seen_e */
       114: .line 2280
            iload 1 /* c */
            istore 2 /* nondigit */
       115: .line 2281
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.nextc:()I
            istore 1 /* c */
       116: .line 2282
            iload 1 /* c */
            bipush 45
            if_icmpeq 117
            iload 1 /* c */
            bipush 43
            if_icmpne 120
       117: .line 2283
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.numberBuffer:Lorg/jruby/util/ByteList;
            iload 1 /* c */
            i2c
            invokevirtual org.jruby.util.ByteList.append:(I)Lorg/jruby/util/ByteList;
            pop
       118: .line 2284
            iload 1 /* c */
            istore 2 /* nondigit */
       119: .line 2285
            goto 128
       120: .line 2286
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 1 /* c */
            invokevirtual org.jruby.ext.ripper.RipperLexer.pushback:(I)V
       121: .line 2289
            goto 128
       122: .line 2291
      StackMap locals:
      StackMap stack:
            iload 2 /* nondigit */
            ifeq 124
       123: .line 2292
            aload 0 /* this */
            ldc "Trailing '_' in number."
            invokevirtual org.jruby.ext.ripper.RipperLexer.compile_error:(Ljava/lang/String;)V
       124: .line 2294
      StackMap locals:
      StackMap stack:
            iload 1 /* c */
            istore 2 /* nondigit */
       125: .line 2295
            goto 128
       126: .line 2297
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 1 /* c */
            invokevirtual org.jruby.ext.ripper.RipperLexer.pushback:(I)V
       127: .line 2298
            aload 0 /* this */
            aload 0 /* this */
            getfield org.jruby.ext.ripper.RipperLexer.numberBuffer:Lorg/jruby/util/ByteList;
            invokevirtual org.jruby.util.ByteList.toString:()Ljava/lang/String;
            iload 4 /* seen_e */
            iload 3 /* seen_point */
            iload 2 /* nondigit */
            invokevirtual org.jruby.ext.ripper.RipperLexer.getNumberLiteral:(Ljava/lang/String;ZZI)I
            ireturn
       128: .line 2229
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.nextc:()I
            istore 1 /* c */
            goto 84
        end local 4 // boolean seen_e
        end local 3 // boolean seen_point
        end local 2 // int nondigit
        end local 1 // int c
        end local 0 // org.jruby.ext.ripper.RipperLexer this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0  129     0        this  Lorg/jruby/ext/ripper/RipperLexer;
            0  129     1           c  I
            9  129     2    nondigit  I
           11   82     3    startLen  I
           83  129     3  seen_point  Z
           84  129     4      seen_e  Z
           96  105     5          c2  I
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      c     

  private int getNumberLiteral(java.lang.String, boolean, boolean, int);
    descriptor: (Ljava/lang/String;ZZI)I
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=7, args_size=5
        start local 0 // org.jruby.ext.ripper.RipperLexer this
        start local 1 // java.lang.String number
        start local 2 // boolean seen_e
        start local 3 // boolean seen_point
        start local 4 // int nondigit
         0: .line 2305
            iload 4 /* nondigit */
            ifeq 1
            aload 0 /* this */
            ldc "Trailing '_' in number."
            invokevirtual org.jruby.ext.ripper.RipperLexer.compile_error:(Ljava/lang/String;)V
         1: .line 2307
      StackMap locals:
      StackMap stack:
            iload 2 /* seen_e */
            ifne 2
            iload 3 /* seen_point */
            ifne 2
            iconst_0
            goto 3
      StackMap locals:
      StackMap stack:
         2: iconst_1
      StackMap locals:
      StackMap stack: int
         3: istore 5 /* isFloat */
        start local 5 // boolean isFloat
         4: .line 2308
            iload 5 /* isFloat */
            ifeq 9
         5: .line 2309
            aload 0 /* this */
            iload 2 /* seen_e */
            ifeq 6
            iconst_2
            goto 7
      StackMap locals: org.jruby.ext.ripper.RipperLexer java.lang.String int int int int
      StackMap stack: org.jruby.ext.ripper.RipperLexer
         6: iconst_3
      StackMap locals: org.jruby.ext.ripper.RipperLexer java.lang.String int int int int
      StackMap stack: org.jruby.ext.ripper.RipperLexer int
         7: invokevirtual org.jruby.ext.ripper.RipperLexer.numberLiteralSuffix:(I)I
            istore 6 /* suffix */
        start local 6 // int suffix
         8: .line 2310
            aload 0 /* this */
            aload 0 /* this */
            aload 1 /* number */
            iload 6 /* suffix */
            invokevirtual org.jruby.ext.ripper.RipperLexer.getFloatToken:(Ljava/lang/String;I)I
            iload 6 /* suffix */
            invokevirtual org.jruby.ext.ripper.RipperLexer.setNumberLiteral:(II)I
            ireturn
        end local 6 // int suffix
         9: .line 2313
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            iconst_3
            invokevirtual org.jruby.ext.ripper.RipperLexer.numberLiteralSuffix:(I)I
            invokevirtual org.jruby.ext.ripper.RipperLexer.setIntegerLiteral:(I)I
            ireturn
        end local 5 // boolean isFloat
        end local 4 // int nondigit
        end local 3 // boolean seen_point
        end local 2 // boolean seen_e
        end local 1 // java.lang.String number
        end local 0 // org.jruby.ext.ripper.RipperLexer this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   10     0        this  Lorg/jruby/ext/ripper/RipperLexer;
            0   10     1      number  Ljava/lang/String;
            0   10     2      seen_e  Z
            0   10     3  seen_point  Z
            0   10     4    nondigit  I
            4   10     5     isFloat  Z
            8    9     6      suffix  I
    Exceptions:
      throws java.io.IOException
    MethodParameters:
            Name  Flags
      number      
      seen_e      
      seen_point  
      nondigit    

  private int setNumberLiteral(int, int);
    descriptor: (II)I
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // org.jruby.ext.ripper.RipperLexer this
        start local 1 // int type
        start local 2 // int suffix
         0: .line 2317
            iload 2 /* suffix */
            iconst_2
            iand
            ifeq 1
            sipush 380
            istore 1 /* type */
         1: .line 2319
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            bipush 6
            invokevirtual org.jruby.ext.ripper.RipperLexer.setState:(I)V
         2: .line 2320
            iload 1 /* type */
            ireturn
        end local 2 // int suffix
        end local 1 // int type
        end local 0 // org.jruby.ext.ripper.RipperLexer this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    3     0    this  Lorg/jruby/ext/ripper/RipperLexer;
            0    3     1    type  I
            0    3     2  suffix  I
    MethodParameters:
        Name  Flags
      type    
      suffix  

  private int setIntegerLiteral(int);
    descriptor: (I)I
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // org.jruby.ext.ripper.RipperLexer this
        start local 1 // int suffix
         0: .line 2324
            iload 1 /* suffix */
            iconst_1
            iand
            ifeq 1
            sipush 382
            goto 2
      StackMap locals:
      StackMap stack:
         1: sipush 379
      StackMap locals:
      StackMap stack: int
         2: istore 2 /* type */
        start local 2 // int type
         3: .line 2326
            aload 0 /* this */
            iload 2 /* type */
            iload 1 /* suffix */
            invokevirtual org.jruby.ext.ripper.RipperLexer.setNumberLiteral:(II)I
            ireturn
        end local 2 // int type
        end local 1 // int suffix
        end local 0 // org.jruby.ext.ripper.RipperLexer this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    4     0    this  Lorg/jruby/ext/ripper/RipperLexer;
            0    4     1  suffix  I
            3    4     2    type  I
    MethodParameters:
        Name  Flags
      suffix  

  public void readUTFEscapeRegexpLiteral(org.jruby.util.ByteList);
    descriptor: (Lorg/jruby/util/ByteList;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=2
        start local 0 // org.jruby.ext.ripper.RipperLexer this
        start local 1 // org.jruby.util.ByteList buffer
         0: .line 2332
            aload 1 /* buffer */
            bipush 92
            invokevirtual org.jruby.util.ByteList.append:(I)Lorg/jruby/util/ByteList;
            pop
         1: .line 2333
            aload 1 /* buffer */
            bipush 117
            invokevirtual org.jruby.util.ByteList.append:(I)Lorg/jruby/util/ByteList;
            pop
         2: .line 2335
            aload 0 /* this */
            bipush 123
            invokevirtual org.jruby.ext.ripper.RipperLexer.peek:(I)Z
            ifeq 12
         3: .line 2337
      StackMap locals:
      StackMap stack:
            aload 1 /* buffer */
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.nextc:()I
            invokevirtual org.jruby.util.ByteList.append:(I)Lorg/jruby/util/ByteList;
            pop
         4: .line 2338
            aload 0 /* this */
            aload 1 /* buffer */
            bipush 6
            iconst_0
            ldc "invalid Unicode escape"
            invokevirtual org.jruby.ext.ripper.RipperLexer.scanHexLiteral:(Lorg/jruby/util/ByteList;IZLjava/lang/String;)C
            ldc 1114111
            if_icmple 6
         5: .line 2339
            aload 0 /* this */
            ldc "invalid Unicode codepoint (too large)"
            invokevirtual org.jruby.ext.ripper.RipperLexer.compile_error:(Ljava/lang/String;)V
         6: .line 2341
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            bipush 32
            invokevirtual org.jruby.ext.ripper.RipperLexer.peek:(I)Z
            ifne 3
            aload 0 /* this */
            bipush 9
            invokevirtual org.jruby.ext.ripper.RipperLexer.peek:(I)Z
            ifne 3
         7: .line 2343
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.nextc:()I
            istore 2 /* c */
        start local 2 // int c
         8: .line 2344
            iload 2 /* c */
            bipush 125
            if_icmpeq 10
         9: .line 2345
            aload 0 /* this */
            ldc "unterminated Unicode escape"
            invokevirtual org.jruby.ext.ripper.RipperLexer.compile_error:(Ljava/lang/String;)V
        10: .line 2347
      StackMap locals: int
      StackMap stack:
            aload 1 /* buffer */
            iload 2 /* c */
            i2c
            invokevirtual org.jruby.util.ByteList.append:(I)Lorg/jruby/util/ByteList;
            pop
        end local 2 // int c
        11: .line 2348
            goto 13
        12: .line 2349
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* buffer */
            iconst_4
            iconst_1
            ldc "Invalid Unicode escape"
            invokevirtual org.jruby.ext.ripper.RipperLexer.scanHexLiteral:(Lorg/jruby/util/ByteList;IZLjava/lang/String;)C
            pop
        13: .line 2351
      StackMap locals:
      StackMap stack:
            return
        end local 1 // org.jruby.util.ByteList buffer
        end local 0 // org.jruby.ext.ripper.RipperLexer this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   14     0    this  Lorg/jruby/ext/ripper/RipperLexer;
            0   14     1  buffer  Lorg/jruby/util/ByteList;
            8   11     2       c  I
    Exceptions:
      throws java.io.IOException
    MethodParameters:
        Name  Flags
      buffer  

  public boolean tokenAddMBC(int, org.jruby.util.ByteList);
    descriptor: (ILorg/jruby/util/ByteList;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.jruby.ext.ripper.RipperLexer this
        start local 1 // int first_byte
        start local 2 // org.jruby.util.ByteList buffer
         0: .line 2357
            aload 0 /* this */
            iload 1 /* first_byte */
            aload 2 /* buffer */
            invokevirtual org.jruby.ext.ripper.RipperLexer.tokadd_mbchar:(ILorg/jruby/util/ByteList;)Z
            ireturn
        end local 2 // org.jruby.util.ByteList buffer
        end local 1 // int first_byte
        end local 0 // org.jruby.ext.ripper.RipperLexer this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    1     0        this  Lorg/jruby/ext/ripper/RipperLexer;
            0    1     1  first_byte  I
            0    1     2      buffer  Lorg/jruby/util/ByteList;
    MethodParameters:
            Name  Flags
      first_byte  
      buffer      

  public int readUTFEscape(org.jruby.util.ByteList, boolean, boolean);
    descriptor: (Lorg/jruby/util/ByteList;ZZ)I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=6, args_size=4
        start local 0 // org.jruby.ext.ripper.RipperLexer this
        start local 1 // org.jruby.util.ByteList buffer
        start local 2 // boolean stringLiteral
        start local 3 // boolean symbolLiteral
         0: .line 2365
            aload 0 /* this */
            bipush 123
            invokevirtual org.jruby.ext.ripper.RipperLexer.peek:(I)Z
            ifeq 11
         1: .line 2367
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.nextc:()I
            pop
         2: .line 2368
            aload 0 /* this */
            bipush 6
            iconst_0
            ldc "invalid Unicode escape"
            invokevirtual org.jruby.ext.ripper.RipperLexer.scanHex:(IZLjava/lang/String;)I
            istore 4 /* codepoint */
        start local 4 // int codepoint
         3: .line 2369
            iload 4 /* codepoint */
            ldc 1114111
            if_icmple 5
         4: .line 2370
            aload 0 /* this */
            ldc "invalid Unicode codepoint (too large)"
            invokevirtual org.jruby.ext.ripper.RipperLexer.compile_error:(Ljava/lang/String;)V
         5: .line 2372
      StackMap locals: int
      StackMap stack:
            aload 1 /* buffer */
            ifnull 6
            aload 0 /* this */
            iload 4 /* codepoint */
            aload 1 /* buffer */
            iload 2 /* stringLiteral */
            invokevirtual org.jruby.ext.ripper.RipperLexer.readUTF8EscapeIntoBuffer:(ILorg/jruby/util/ByteList;Z)V
         6: .line 2373
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            bipush 32
            invokevirtual org.jruby.ext.ripper.RipperLexer.peek:(I)Z
            ifne 1
            aload 0 /* this */
            bipush 9
            invokevirtual org.jruby.ext.ripper.RipperLexer.peek:(I)Z
            ifne 1
         7: .line 2375
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.nextc:()I
            istore 5 /* c */
        start local 5 // int c
         8: .line 2376
            iload 5 /* c */
            bipush 125
            if_icmpeq 13
         9: .line 2377
            aload 0 /* this */
            ldc "unterminated Unicode escape"
            invokevirtual org.jruby.ext.ripper.RipperLexer.compile_error:(Ljava/lang/String;)V
        10: .line 2379
            goto 13
        end local 5 // int c
        end local 4 // int codepoint
        11: .line 2380
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_4
            iconst_1
            ldc "Invalid Unicode escape"
            invokevirtual org.jruby.ext.ripper.RipperLexer.scanHex:(IZLjava/lang/String;)I
            istore 4 /* codepoint */
        start local 4 // int codepoint
        12: .line 2381
            aload 1 /* buffer */
            ifnull 13
            aload 0 /* this */
            iload 4 /* codepoint */
            aload 1 /* buffer */
            iload 2 /* stringLiteral */
            invokevirtual org.jruby.ext.ripper.RipperLexer.readUTF8EscapeIntoBuffer:(ILorg/jruby/util/ByteList;Z)V
        13: .line 2384
      StackMap locals: int
      StackMap stack:
            iload 4 /* codepoint */
            ireturn
        end local 4 // int codepoint
        end local 3 // boolean symbolLiteral
        end local 2 // boolean stringLiteral
        end local 1 // org.jruby.util.ByteList buffer
        end local 0 // org.jruby.ext.ripper.RipperLexer this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   14     0           this  Lorg/jruby/ext/ripper/RipperLexer;
            0   14     1         buffer  Lorg/jruby/util/ByteList;
            0   14     2  stringLiteral  Z
            0   14     3  symbolLiteral  Z
            3   11     4      codepoint  I
           12   14     4      codepoint  I
            8   11     5              c  I
    Exceptions:
      throws java.io.IOException
    MethodParameters:
               Name  Flags
      buffer         
      stringLiteral  
      symbolLiteral  

  private void readUTF8EscapeIntoBuffer(int, org.jruby.util.ByteList, boolean);
    descriptor: (ILorg/jruby/util/ByteList;Z)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=4, args_size=4
        start local 0 // org.jruby.ext.ripper.RipperLexer this
        start local 1 // int codepoint
        start local 2 // org.jruby.util.ByteList buffer
        start local 3 // boolean stringLiteral
         0: .line 2388
            iload 1 /* codepoint */
            sipush 128
            if_icmplt 4
         1: .line 2389
            aload 2 /* buffer */
            getstatic org.jruby.ext.ripper.RipperLexer.UTF8_ENCODING:Lorg/jcodings/Encoding;
            invokevirtual org.jruby.util.ByteList.setEncoding:(Lorg/jcodings/Encoding;)V
         2: .line 2390
            iload 3 /* stringLiteral */
            ifeq 6
            aload 0 /* this */
            iload 1 /* codepoint */
            aload 2 /* buffer */
            invokevirtual org.jruby.ext.ripper.RipperLexer.tokenAddMBC:(ILorg/jruby/util/ByteList;)Z
            pop
         3: .line 2391
            goto 6
      StackMap locals:
      StackMap stack:
         4: iload 3 /* stringLiteral */
            ifeq 6
         5: .line 2392
            aload 2 /* buffer */
            iload 1 /* codepoint */
            i2c
            invokevirtual org.jruby.util.ByteList.append:(I)Lorg/jruby/util/ByteList;
            pop
         6: .line 2394
      StackMap locals:
      StackMap stack:
            return
        end local 3 // boolean stringLiteral
        end local 2 // org.jruby.util.ByteList buffer
        end local 1 // int codepoint
        end local 0 // org.jruby.ext.ripper.RipperLexer this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    7     0           this  Lorg/jruby/ext/ripper/RipperLexer;
            0    7     1      codepoint  I
            0    7     2         buffer  Lorg/jruby/util/ByteList;
            0    7     3  stringLiteral  Z
    MethodParameters:
               Name  Flags
      codepoint      
      buffer         
      stringLiteral  

  public int readEscape();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=1
        start local 0 // org.jruby.ext.ripper.RipperLexer this
         0: .line 2397
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.nextc:()I
            istore 1 /* c */
        start local 1 // int c
         1: .line 2399
            iload 1 /* c */
            lookupswitch { // 23
                   -1: 33
                   48: 10
                   49: 10
                   50: 10
                   51: 10
                   52: 10
                   53: 10
                   54: 10
                   55: 10
                   67: 23
                   77: 15
                   92: 2
                   97: 8
                   98: 13
                   99: 25
                  101: 9
                  102: 6
                  110: 3
                  114: 5
                  115: 14
                  116: 4
                  118: 7
                  120: 12
              default: 34
          }
         2: .line 2401
      StackMap locals: int
      StackMap stack:
            iload 1 /* c */
            ireturn
         3: .line 2403
      StackMap locals:
      StackMap stack:
            bipush 10
            ireturn
         4: .line 2405
      StackMap locals:
      StackMap stack:
            bipush 9
            ireturn
         5: .line 2407
      StackMap locals:
      StackMap stack:
            bipush 13
            ireturn
         6: .line 2409
      StackMap locals:
      StackMap stack:
            bipush 12
            ireturn
         7: .line 2411
      StackMap locals:
      StackMap stack:
            bipush 11
            ireturn
         8: .line 2413
      StackMap locals:
      StackMap stack:
            bipush 7
            ireturn
         9: .line 2415
      StackMap locals:
      StackMap stack:
            bipush 27
            ireturn
        10: .line 2418
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 1 /* c */
            invokevirtual org.jruby.ext.ripper.RipperLexer.pushback:(I)V
        11: .line 2419
            aload 0 /* this */
            iconst_3
            invokevirtual org.jruby.ext.ripper.RipperLexer.scanOct:(I)C
            ireturn
        12: .line 2421
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_2
            iconst_0
            ldc "Invalid escape character syntax"
            invokevirtual org.jruby.ext.ripper.RipperLexer.scanHex:(IZLjava/lang/String;)I
            ireturn
        13: .line 2423
      StackMap locals:
      StackMap stack:
            bipush 8
            ireturn
        14: .line 2425
      StackMap locals:
      StackMap stack:
            bipush 32
            ireturn
        15: .line 2427
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.nextc:()I
            dup
            istore 1 /* c */
            bipush 45
            if_icmpeq 18
        16: .line 2428
            aload 0 /* this */
            ldc "Invalid escape character syntax"
            invokevirtual org.jruby.ext.ripper.RipperLexer.compile_error:(Ljava/lang/String;)V
        17: .line 2429
            goto 22
      StackMap locals:
      StackMap stack:
        18: aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.nextc:()I
            dup
            istore 1 /* c */
            bipush 92
            if_icmpne 20
        19: .line 2430
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.readEscape:()I
            sipush 128
            ior
            i2c
            ireturn
        20: .line 2431
      StackMap locals:
      StackMap stack:
            iload 1 /* c */
            iconst_m1
            if_icmpne 22
        21: .line 2432
            aload 0 /* this */
            ldc "Invalid escape character syntax"
            invokevirtual org.jruby.ext.ripper.RipperLexer.compile_error:(Ljava/lang/String;)V
        22: .line 2434
      StackMap locals:
      StackMap stack:
            iload 1 /* c */
            sipush 255
            iand
            sipush 128
            ior
            i2c
            ireturn
        23: .line 2436
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.nextc:()I
            bipush 45
            if_icmpeq 25
        24: .line 2437
            aload 0 /* this */
            ldc "Invalid escape character syntax"
            invokevirtual org.jruby.ext.ripper.RipperLexer.compile_error:(Ljava/lang/String;)V
        25: .line 2440
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.nextc:()I
            dup
            istore 1 /* c */
            bipush 92
            if_icmpne 28
        26: .line 2441
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.readEscape:()I
            istore 1 /* c */
        27: .line 2442
            goto 32
      StackMap locals:
      StackMap stack:
        28: iload 1 /* c */
            bipush 63
            if_icmpne 30
        29: .line 2443
            bipush 127
            ireturn
        30: .line 2444
      StackMap locals:
      StackMap stack:
            iload 1 /* c */
            iconst_m1
            if_icmpne 32
        31: .line 2445
            aload 0 /* this */
            ldc "Invalid escape character syntax"
            invokevirtual org.jruby.ext.ripper.RipperLexer.compile_error:(Ljava/lang/String;)V
        32: .line 2447
      StackMap locals:
      StackMap stack:
            iload 1 /* c */
            sipush 159
            iand
            i2c
            ireturn
        33: .line 2449
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            ldc "Invalid escape character syntax"
            invokevirtual org.jruby.ext.ripper.RipperLexer.compile_error:(Ljava/lang/String;)V
        34: .line 2451
      StackMap locals:
      StackMap stack:
            iload 1 /* c */
            ireturn
        end local 1 // int c
        end local 0 // org.jruby.ext.ripper.RipperLexer this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   35     0  this  Lorg/jruby/ext/ripper/RipperLexer;
            1   35     1     c  I
    Exceptions:
      throws java.io.IOException

  private char scanHexLiteral(org.jruby.util.ByteList, int, boolean, java.lang.String);
    descriptor: (Lorg/jruby/util/ByteList;IZLjava/lang/String;)C
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=8, args_size=5
        start local 0 // org.jruby.ext.ripper.RipperLexer this
        start local 1 // org.jruby.util.ByteList buffer
        start local 2 // int count
        start local 3 // boolean strict
        start local 4 // java.lang.String errorMessage
         0: .line 2463
            iconst_0
            istore 5 /* i */
        start local 5 // int i
         1: .line 2464
            iconst_0
            istore 6 /* hexValue */
        start local 6 // char hexValue
         2: .line 2466
            goto 11
         3: .line 2467
      StackMap locals: int int
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.nextc:()I
            istore 7 /* h1 */
        start local 7 // int h1
         4: .line 2469
            iload 7 /* h1 */
            invokestatic org.jruby.ext.ripper.RipperLexer.isHexChar:(I)Z
            ifne 7
         5: .line 2470
            aload 0 /* this */
            iload 7 /* h1 */
            invokevirtual org.jruby.ext.ripper.RipperLexer.pushback:(I)V
         6: .line 2471
            goto 12
         7: .line 2474
      StackMap locals: int
      StackMap stack:
            aload 1 /* buffer */
            iload 7 /* h1 */
            invokevirtual org.jruby.util.ByteList.append:(I)Lorg/jruby/util/ByteList;
            pop
         8: .line 2476
            iload 6 /* hexValue */
            iconst_4
            ishl
            i2c
            istore 6 /* hexValue */
         9: .line 2477
            iload 6 /* hexValue */
            iload 7 /* h1 */
            i2c
            invokestatic java.lang.String.valueOf:(C)Ljava/lang/String;
            bipush 16
            invokestatic java.lang.Integer.parseInt:(Ljava/lang/String;I)I
            bipush 15
            iand
            ior
            i2c
            istore 6 /* hexValue */
        end local 7 // int h1
        10: .line 2466
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
        11: iload 5 /* i */
            iload 2 /* count */
            if_icmplt 3
        12: .line 2481
      StackMap locals:
      StackMap stack:
            iload 5 /* i */
            ifeq 13
            iload 3 /* strict */
            ifeq 14
            iload 2 /* count */
            iload 5 /* i */
            if_icmpeq 14
      StackMap locals:
      StackMap stack:
        13: aload 0 /* this */
            aload 4 /* errorMessage */
            invokevirtual org.jruby.ext.ripper.RipperLexer.compile_error:(Ljava/lang/String;)V
        14: .line 2483
      StackMap locals:
      StackMap stack:
            iload 6 /* hexValue */
            ireturn
        end local 6 // char hexValue
        end local 5 // int i
        end local 4 // java.lang.String errorMessage
        end local 3 // boolean strict
        end local 2 // int count
        end local 1 // org.jruby.util.ByteList buffer
        end local 0 // org.jruby.ext.ripper.RipperLexer this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   15     0          this  Lorg/jruby/ext/ripper/RipperLexer;
            0   15     1        buffer  Lorg/jruby/util/ByteList;
            0   15     2         count  I
            0   15     3        strict  Z
            0   15     4  errorMessage  Ljava/lang/String;
            1   15     5             i  I
            2   15     6      hexValue  C
            4   10     7            h1  I
    Exceptions:
      throws java.io.IOException
    MethodParameters:
              Name  Flags
      buffer        
      count         
      strict        
      errorMessage  

  private int scanHex(int, boolean, java.lang.String);
    descriptor: (IZLjava/lang/String;)I
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=7, args_size=4
        start local 0 // org.jruby.ext.ripper.RipperLexer this
        start local 1 // int count
        start local 2 // boolean strict
        start local 3 // java.lang.String errorMessage
         0: .line 2491
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         1: .line 2492
            iconst_0
            istore 5 /* hexValue */
        start local 5 // int hexValue
         2: .line 2494
            goto 10
         3: .line 2495
      StackMap locals: int int
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.jruby.ext.ripper.RipperLexer.nextc:()I
            istore 6 /* h1 */
        start local 6 // int h1
         4: .line 2497
            iload 6 /* h1 */
            invokestatic org.jruby.ext.ripper.RipperLexer.isHexChar:(I)Z
            ifne 7
         5: .line 2498
            aload 0 /* this */
            iload 6 /* h1 */
            invokevirtual org.jruby.ext.ripper.RipperLexer.pushback:(I)V
         6: .line 2499
            goto 11
         7: .line 2502
      StackMap locals: int
      StackMap stack:
            iload 5 /* hexValue */
            iconst_4
            ishl
            istore 5 /* hexValue */
         8: .line 2503
            iload 5 /* hexValue */
            iload 6 /* h1 */
            i2c
            invokestatic java.lang.String.valueOf:(C)Ljava/lang/String;
            bipush 16
            invokestatic java.lang.Integer.parseInt:(Ljava/lang/String;I)I
            bipush 15
            iand
            ior
            istore 5 /* hexValue */
        end local 6 // int h1
         9: .line 2494
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
        10: iload 4 /* i */
            iload 1 /* count */
            if_icmplt 3
        11: .line 2507
      StackMap locals:
      StackMap stack:
            iload 4 /* i */
            ifeq 12
            iload 2 /* strict */
            ifeq 13
            iload 1 /* count */
            iload 4 /* i */
            if_icmpeq 13
      StackMap locals:
      StackMap stack:
        12: aload 0 /* this */
            aload 3 /* errorMessage */
            invokevirtual org.jruby.ext.ripper.RipperLexer.compile_error:(Ljava/lang/String;)V
        13: .line 2509
      StackMap locals:
      StackMap stack:
            iload 5 /* hexValue */
            ireturn
        end local 5 // int hexValue
        end local 4 // int i
        end local 3 // java.lang.String errorMessage
        end local 2 // boolean strict
        end local 1 // int count
        end local 0 // org.jruby.ext.ripper.RipperLexer this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   14     0          this  Lorg/jruby/ext/ripper/RipperLexer;
            0   14     1         count  I
            0   14     2        strict  Z
            0   14     3  errorMessage  Ljava/lang/String;
            1   14     4             i  I
            2   14     5      hexValue  I
            4    9     6            h1  I
    Exceptions:
      throws java.io.IOException
    MethodParameters:
              Name  Flags
      count         
      strict        
      errorMessage  
}
SourceFile: "RipperLexer.java"
NestMembers:
  org.jruby.ext.ripper.RipperLexer$Keyword
InnerClasses:
  public final Keyword = org.jruby.ext.ripper.RipperLexer$Keyword of org.jruby.ext.ripper.RipperLexer