public class org.antlr.codegen.Python3Target extends org.antlr.codegen.Target
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.antlr.codegen.Python3Target
  super_class: org.antlr.codegen.Target
{
  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.antlr.codegen.Python3Target this
         0: .line 44
            aload 0 /* this */
            invokespecial org.antlr.codegen.Target.<init>:()V
            return
        end local 0 // org.antlr.codegen.Python3Target this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/antlr/codegen/Python3Target;

  public boolean useBaseTemplatesForSynPredFragments();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.antlr.codegen.Python3Target this
         0: .line 47
            iconst_0
            ireturn
        end local 0 // org.antlr.codegen.Python3Target this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/antlr/codegen/Python3Target;

  public java.lang.String getTokenTypeAsTargetLabel(org.antlr.codegen.CodeGenerator, int);
    descriptor: (Lorg/antlr/codegen/CodeGenerator;I)Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=4, args_size=3
        start local 0 // org.antlr.codegen.Python3Target this
        start local 1 // org.antlr.codegen.CodeGenerator generator
        start local 2 // int ttype
         0: .line 56
            iload 2 /* ttype */
            iflt 2
            iload 2 /* ttype */
            iconst_3
            if_icmpgt 2
         1: .line 57
            iload 2 /* ttype */
            invokestatic java.lang.String.valueOf:(I)Ljava/lang/String;
            areturn
         2: .line 60
      StackMap locals:
      StackMap stack:
            aload 1 /* generator */
            getfield org.antlr.codegen.CodeGenerator.grammar:Lorg/antlr/tool/Grammar;
            iload 2 /* ttype */
            invokevirtual org.antlr.tool.Grammar.getTokenDisplayName:(I)Ljava/lang/String;
            astore 3 /* name */
        start local 3 // java.lang.String name
         3: .line 63
            aload 3 /* name */
            iconst_0
            invokevirtual java.lang.String.charAt:(I)C
            bipush 39
            if_icmpne 5
         4: .line 64
            iload 2 /* ttype */
            invokestatic java.lang.String.valueOf:(I)Ljava/lang/String;
            areturn
         5: .line 67
      StackMap locals: java.lang.String
      StackMap stack:
            aload 3 /* name */
            areturn
        end local 3 // java.lang.String name
        end local 2 // int ttype
        end local 1 // org.antlr.codegen.CodeGenerator generator
        end local 0 // org.antlr.codegen.Python3Target this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    6     0       this  Lorg/antlr/codegen/Python3Target;
            0    6     1  generator  Lorg/antlr/codegen/CodeGenerator;
            0    6     2      ttype  I
            3    6     3       name  Ljava/lang/String;
    MethodParameters:
           Name  Flags
      generator  
      ttype      

  public java.lang.String getTargetCharLiteralFromANTLRCharLiteral(org.antlr.codegen.CodeGenerator, java.lang.String);
    descriptor: (Lorg/antlr/codegen/CodeGenerator;Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=4, args_size=3
        start local 0 // org.antlr.codegen.Python3Target this
        start local 1 // org.antlr.codegen.CodeGenerator generator
        start local 2 // java.lang.String literal
         0: .line 74
            aload 2 /* literal */
            invokestatic org.antlr.tool.Grammar.getCharValueFromGrammarCharLiteral:(Ljava/lang/String;)I
            istore 3 /* c */
        start local 3 // int c
         1: .line 75
            iload 3 /* c */
            invokestatic java.lang.String.valueOf:(I)Ljava/lang/String;
            areturn
        end local 3 // int c
        end local 2 // java.lang.String literal
        end local 1 // org.antlr.codegen.CodeGenerator generator
        end local 0 // org.antlr.codegen.Python3Target this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    2     0       this  Lorg/antlr/codegen/Python3Target;
            0    2     1  generator  Lorg/antlr/codegen/CodeGenerator;
            0    2     2    literal  Ljava/lang/String;
            1    2     3          c  I
    MethodParameters:
           Name  Flags
      generator  
      literal    

  private java.util.List<java.lang.String> splitLines(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/util/List;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=5, args_size=2
        start local 0 // org.antlr.codegen.Python3Target this
        start local 1 // java.lang.String text
         0: .line 79
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 2 /* l */
        start local 2 // java.util.ArrayList l
         1: .line 80
            iconst_0
            istore 3 /* idx */
        start local 3 // int idx
         2: .line 83
      StackMap locals: java.util.ArrayList int
      StackMap stack:
            aload 1 /* text */
            ldc "\n"
            iload 3 /* idx */
            invokevirtual java.lang.String.indexOf:(Ljava/lang/String;I)I
            istore 4 /* eol */
        start local 4 // int eol
         3: .line 84
            iload 4 /* eol */
            iconst_m1
            if_icmpne 6
         4: .line 85
            aload 2 /* l */
            aload 1 /* text */
            iload 3 /* idx */
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
            pop
         5: .line 86
            goto 9
         6: .line 89
      StackMap locals: int
      StackMap stack:
            aload 2 /* l */
            aload 1 /* text */
            iload 3 /* idx */
            iload 4 /* eol */
            iconst_1
            iadd
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
            pop
         7: .line 90
            iload 4 /* eol */
            iconst_1
            iadd
            istore 3 /* idx */
        end local 4 // int eol
         8: .line 82
            goto 2
         9: .line 94
      StackMap locals:
      StackMap stack:
            aload 2 /* l */
            areturn
        end local 3 // int idx
        end local 2 // java.util.ArrayList l
        end local 1 // java.lang.String text
        end local 0 // org.antlr.codegen.Python3Target this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   10     0  this  Lorg/antlr/codegen/Python3Target;
            0   10     1  text  Ljava/lang/String;
            1   10     2     l  Ljava/util/ArrayList<Ljava/lang/String;>;
            2   10     3   idx  I
            3    8     4   eol  I
    Signature: (Ljava/lang/String;)Ljava/util/List<Ljava/lang/String;>;
    MethodParameters:
      Name  Flags
      text  

  public java.util.List<java.lang.Object> postProcessAction(java.util.List<java.lang.Object>, org.antlr.runtime.Token);
    descriptor: (Ljava/util/List;Lorg/antlr/runtime/Token;)Ljava/util/List;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=13, args_size=3
        start local 0 // org.antlr.codegen.Python3Target this
        start local 1 // java.util.List chunks
        start local 2 // org.antlr.runtime.Token actionToken
         0: .line 113
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 3 /* nChunks */
        start local 3 // java.util.List nChunks
         1: .line 114
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         2: goto 26
         3: .line 115
      StackMap locals: java.util.List int
      StackMap stack:
            aload 1 /* chunks */
            iload 4 /* i */
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            astore 5 /* chunk */
        start local 5 // java.lang.Object chunk
         4: .line 117
            aload 5 /* chunk */
            instanceof java.lang.String
            ifeq 16
         5: .line 118
            aload 1 /* chunks */
            iload 4 /* i */
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast java.lang.String
            astore 6 /* text */
        start local 6 // java.lang.String text
         6: .line 119
            aload 3 /* nChunks */
            invokeinterface java.util.List.isEmpty:()Z
            ifeq 14
            aload 2 /* actionToken */
            invokeinterface org.antlr.runtime.Token.getCharPositionInLine:()I
            iflt 14
         7: .line 123
            ldc ""
            astore 7 /* ws */
        start local 7 // java.lang.String ws
         8: .line 124
            iconst_0
            istore 8 /* j */
        start local 8 // int j
         9: goto 12
        10: .line 125
      StackMap locals: org.antlr.codegen.Python3Target java.util.List org.antlr.runtime.Token java.util.List int java.lang.Object java.lang.String java.lang.String int
      StackMap stack:
            new java.lang.StringBuilder
            dup
            aload 7 /* ws */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc " "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 7 /* ws */
        11: .line 124
            iinc 8 /* j */ 1
      StackMap locals:
      StackMap stack:
        12: iload 8 /* j */
            aload 2 /* actionToken */
            invokeinterface org.antlr.runtime.Token.getCharPositionInLine:()I
            if_icmplt 10
        end local 8 // int j
        13: .line 127
            new java.lang.StringBuilder
            dup
            aload 7 /* ws */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 6 /* text */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 6 /* text */
        end local 7 // java.lang.String ws
        14: .line 130
      StackMap locals:
      StackMap stack:
            aload 3 /* nChunks */
            aload 0 /* this */
            aload 6 /* text */
            invokevirtual org.antlr.codegen.Python3Target.splitLines:(Ljava/lang/String;)Ljava/util/List;
            invokeinterface java.util.List.addAll:(Ljava/util/Collection;)Z
            pop
        end local 6 // java.lang.String text
        15: .line 131
            goto 25
        16: .line 133
      StackMap locals:
      StackMap stack:
            aload 3 /* nChunks */
            invokeinterface java.util.List.isEmpty:()Z
            ifeq 24
            aload 2 /* actionToken */
            invokeinterface org.antlr.runtime.Token.getCharPositionInLine:()I
            iflt 24
        17: .line 137
            ldc ""
            astore 6 /* ws */
        start local 6 // java.lang.String ws
        18: .line 138
            iconst_0
            istore 7 /* j */
        start local 7 // int j
        19: goto 22
        20: .line 139
      StackMap locals: java.lang.String int
      StackMap stack:
            new java.lang.StringBuilder
            dup
            aload 6 /* ws */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc " "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 6 /* ws */
        21: .line 138
            iinc 7 /* j */ 1
      StackMap locals:
      StackMap stack:
        22: iload 7 /* j */
            aload 2 /* actionToken */
            invokeinterface org.antlr.runtime.Token.getCharPositionInLine:()I
            if_icmple 20
        end local 7 // int j
        23: .line 141
            aload 3 /* nChunks */
            aload 6 /* ws */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        end local 6 // java.lang.String ws
        24: .line 144
      StackMap locals:
      StackMap stack:
            aload 3 /* nChunks */
            aload 5 /* chunk */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        end local 5 // java.lang.Object chunk
        25: .line 114
      StackMap locals:
      StackMap stack:
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
        26: iload 4 /* i */
            aload 1 /* chunks */
            invokeinterface java.util.List.size:()I
            if_icmplt 3
        end local 4 // int i
        27: .line 148
            aload 2 /* actionToken */
            invokeinterface org.antlr.runtime.Token.getLine:()I
            istore 4 /* lineNo */
        start local 4 // int lineNo
        28: .line 149
            iconst_0
            istore 5 /* col */
        start local 5 // int col
        29: .line 152
            aload 3 /* nChunks */
            invokeinterface java.util.List.size:()I
            iconst_1
            isub
            istore 6 /* lastChunk */
        start local 6 // int lastChunk
        30: .line 153
            goto 32
        31: .line 156
      StackMap locals: int int
      StackMap stack:
            iinc 6 /* lastChunk */ -1
        32: .line 153
      StackMap locals:
      StackMap stack:
            iload 6 /* lastChunk */
            ifle 35
        33: .line 154
            aload 3 /* nChunks */
            iload 6 /* lastChunk */
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            instanceof java.lang.String
            ifeq 35
        34: .line 155
            aload 3 /* nChunks */
            iload 6 /* lastChunk */
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast java.lang.String
            invokevirtual java.lang.String.trim:()Ljava/lang/String;
            invokevirtual java.lang.String.length:()I
            ifeq 31
        35: .line 159
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 7 /* firstChunk */
        start local 7 // int firstChunk
        36: .line 160
            goto 39
        37: .line 164
      StackMap locals: int
      StackMap stack:
            iinc 4 /* lineNo */ 1
        38: .line 165
            iinc 7 /* firstChunk */ 1
        39: .line 160
      StackMap locals:
      StackMap stack:
            iload 7 /* firstChunk */
            iload 6 /* lastChunk */
            if_icmpgt 43
        40: .line 161
            aload 3 /* nChunks */
            iload 7 /* firstChunk */
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            instanceof java.lang.String
            ifeq 43
        41: .line 162
            aload 3 /* nChunks */
            iload 7 /* firstChunk */
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast java.lang.String
            invokevirtual java.lang.String.trim:()Ljava/lang/String;
            invokevirtual java.lang.String.length:()I
            ifne 43
        42: .line 163
            aload 3 /* nChunks */
            iload 7 /* firstChunk */
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast java.lang.String
            ldc "\n"
            invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
            ifne 37
        43: .line 168
      StackMap locals:
      StackMap stack:
            iconst_m1
            istore 8 /* indent */
        start local 8 // int indent
        44: .line 169
            iload 7 /* firstChunk */
            istore 9 /* i */
        start local 9 // int i
        45: goto 81
        46: .line 170
      StackMap locals: int int
      StackMap stack:
            aload 3 /* nChunks */
            iload 9 /* i */
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            astore 10 /* chunk */
        start local 10 // java.lang.Object chunk
        47: .line 174
            aload 10 /* chunk */
            instanceof java.lang.String
            ifeq 79
        48: .line 175
            aload 10 /* chunk */
            checkcast java.lang.String
            astore 11 /* text */
        start local 11 // java.lang.String text
        49: .line 177
            iload 5 /* col */
            ifne 73
        50: .line 178
            iload 8 /* indent */
            iconst_m1
            if_icmpne 59
        51: .line 182
            iconst_0
            istore 8 /* indent */
        52: .line 183
            iconst_0
            istore 12 /* j */
        start local 12 // int j
        53: goto 58
        54: .line 184
      StackMap locals: java.lang.Object java.lang.String int
      StackMap stack:
            aload 11 /* text */
            iload 12 /* j */
            invokevirtual java.lang.String.charAt:(I)C
            invokestatic java.lang.Character.isWhitespace:(C)Z
            ifne 56
        55: .line 185
            goto 59
        56: .line 187
      StackMap locals:
      StackMap stack:
            iinc 8 /* indent */ 1
        57: .line 183
            iinc 12 /* j */ 1
      StackMap locals:
      StackMap stack:
        58: iload 12 /* j */
            aload 11 /* text */
            invokevirtual java.lang.String.length:()I
            if_icmplt 54
        end local 12 // int j
        59: .line 191
      StackMap locals:
      StackMap stack:
            aload 11 /* text */
            invokevirtual java.lang.String.length:()I
            iload 8 /* indent */
            if_icmplt 70
        60: .line 193
            iconst_0
            istore 12 /* j */
        start local 12 // int j
        61: goto 67
        62: .line 194
      StackMap locals: int
      StackMap stack:
            aload 11 /* text */
            iload 12 /* j */
            invokevirtual java.lang.String.charAt:(I)C
            invokestatic java.lang.Character.isWhitespace:(C)Z
            ifne 66
        63: .line 196
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            new java.lang.StringBuilder
            dup
            ldc "Warning: badly indented line "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 4 /* lineNo */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            ldc " in action:"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
        64: .line 197
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            aload 11 /* text */
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
        65: .line 198
            goto 68
        66: .line 193
      StackMap locals:
      StackMap stack:
            iinc 12 /* j */ 1
      StackMap locals:
      StackMap stack:
        67: iload 12 /* j */
            iload 8 /* indent */
            if_icmplt 62
        68: .line 202
      StackMap locals:
      StackMap stack:
            aload 3 /* nChunks */
            iload 9 /* i */
            aload 11 /* text */
            iload 12 /* j */
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            invokeinterface java.util.List.set:(ILjava/lang/Object;)Ljava/lang/Object;
            pop
        end local 12 // int j
        69: .line 203
            goto 73
        70: .line 204
      StackMap locals:
      StackMap stack:
            aload 11 /* text */
            invokevirtual java.lang.String.trim:()Ljava/lang/String;
            invokevirtual java.lang.String.length:()I
            ifle 73
        71: .line 206
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            new java.lang.StringBuilder
            dup
            ldc "Warning: badly indented line "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 4 /* lineNo */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            ldc " in action:"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
        72: .line 207
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            aload 11 /* text */
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
        73: .line 211
      StackMap locals:
      StackMap stack:
            aload 11 /* text */
            ldc "\n"
            invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
            ifeq 77
        74: .line 212
            iinc 4 /* lineNo */ 1
        75: .line 213
            iconst_0
            istore 5 /* col */
        76: .line 214
            goto 80
        77: .line 216
      StackMap locals:
      StackMap stack:
            iload 5 /* col */
            aload 11 /* text */
            invokevirtual java.lang.String.length:()I
            iadd
            istore 5 /* col */
        end local 11 // java.lang.String text
        78: .line 218
            goto 80
        79: .line 221
      StackMap locals:
      StackMap stack:
            iinc 5 /* col */ 1
        end local 10 // java.lang.Object chunk
        80: .line 169
      StackMap locals:
      StackMap stack:
            iinc 9 /* i */ 1
      StackMap locals:
      StackMap stack:
        81: iload 9 /* i */
            iload 6 /* lastChunk */
            if_icmple 46
        end local 9 // int i
        82: .line 225
            aload 3 /* nChunks */
            areturn
        end local 8 // int indent
        end local 7 // int firstChunk
        end local 6 // int lastChunk
        end local 5 // int col
        end local 4 // int lineNo
        end local 3 // java.util.List nChunks
        end local 2 // org.antlr.runtime.Token actionToken
        end local 1 // java.util.List chunks
        end local 0 // org.antlr.codegen.Python3Target this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   83     0         this  Lorg/antlr/codegen/Python3Target;
            0   83     1       chunks  Ljava/util/List<Ljava/lang/Object;>;
            0   83     2  actionToken  Lorg/antlr/runtime/Token;
            1   83     3      nChunks  Ljava/util/List<Ljava/lang/Object;>;
            2   27     4            i  I
            4   25     5        chunk  Ljava/lang/Object;
            6   15     6         text  Ljava/lang/String;
            8   14     7           ws  Ljava/lang/String;
            9   13     8            j  I
           18   24     6           ws  Ljava/lang/String;
           19   23     7            j  I
           28   83     4       lineNo  I
           29   83     5          col  I
           30   83     6    lastChunk  I
           36   83     7   firstChunk  I
           44   83     8       indent  I
           45   82     9            i  I
           47   80    10        chunk  Ljava/lang/Object;
           49   78    11         text  Ljava/lang/String;
           53   59    12            j  I
           61   69    12            j  I
    Signature: (Ljava/util/List<Ljava/lang/Object;>;Lorg/antlr/runtime/Token;)Ljava/util/List<Ljava/lang/Object;>;
    MethodParameters:
             Name  Flags
      chunks       
      actionToken  
}
SourceFile: "Python3Target.java"