public class com.sun.javafx.fxml.expression.KeyPath extends java.util.AbstractList<java.lang.String>
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: com.sun.javafx.fxml.expression.KeyPath
  super_class: java.util.AbstractList
{
  private java.util.ArrayList<java.lang.String> elements;
    descriptor: Ljava/util/ArrayList;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/util/ArrayList<Ljava/lang/String;>;

  public void <init>(java.util.ArrayList<java.lang.String>);
    descriptor: (Ljava/util/ArrayList;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.sun.javafx.fxml.expression.KeyPath this
        start local 1 // java.util.ArrayList elements
         0: .line 40
            aload 0 /* this */
            invokespecial java.util.AbstractList.<init>:()V
         1: .line 41
            aload 1 /* elements */
            ifnonnull 3
         2: .line 42
            new java.lang.NullPointerException
            dup
            invokespecial java.lang.NullPointerException.<init>:()V
            athrow
         3: .line 45
      StackMap locals: com.sun.javafx.fxml.expression.KeyPath java.util.ArrayList
      StackMap stack:
            aload 0 /* this */
            aload 1 /* elements */
            putfield com.sun.javafx.fxml.expression.KeyPath.elements:Ljava/util/ArrayList;
         4: .line 46
            return
        end local 1 // java.util.ArrayList elements
        end local 0 // com.sun.javafx.fxml.expression.KeyPath this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    5     0      this  Lcom/sun/javafx/fxml/expression/KeyPath;
            0    5     1  elements  Ljava/util/ArrayList<Ljava/lang/String;>;
    Signature: (Ljava/util/ArrayList<Ljava/lang/String;>;)V
    MethodParameters:
          Name  Flags
      elements  

  public java.lang.String get(int);
    descriptor: (I)Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.sun.javafx.fxml.expression.KeyPath this
        start local 1 // int index
         0: .line 50
            aload 0 /* this */
            getfield com.sun.javafx.fxml.expression.KeyPath.elements:Ljava/util/ArrayList;
            iload 1 /* index */
            invokevirtual java.util.ArrayList.get:(I)Ljava/lang/Object;
            checkcast java.lang.String
            areturn
        end local 1 // int index
        end local 0 // com.sun.javafx.fxml.expression.KeyPath this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0   this  Lcom/sun/javafx/fxml/expression/KeyPath;
            0    1     1  index  I
    MethodParameters:
       Name  Flags
      index  

  public int size();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.sun.javafx.fxml.expression.KeyPath this
         0: .line 55
            aload 0 /* this */
            getfield com.sun.javafx.fxml.expression.KeyPath.elements:Ljava/util/ArrayList;
            invokevirtual java.util.ArrayList.size:()I
            ireturn
        end local 0 // com.sun.javafx.fxml.expression.KeyPath this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/javafx/fxml/expression/KeyPath;

  public java.lang.String toString();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=5, args_size=1
        start local 0 // com.sun.javafx.fxml.expression.KeyPath this
         0: .line 60
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            astore 1 /* stringBuilder */
        start local 1 // java.lang.StringBuilder stringBuilder
         1: .line 62
            iconst_0
            istore 2 /* i */
        start local 2 // int i
         2: aload 0 /* this */
            getfield com.sun.javafx.fxml.expression.KeyPath.elements:Ljava/util/ArrayList;
            invokevirtual java.util.ArrayList.size:()I
            istore 3 /* n */
        start local 3 // int n
         3: goto 14
         4: .line 63
      StackMap locals: java.lang.StringBuilder int int
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.javafx.fxml.expression.KeyPath.elements:Ljava/util/ArrayList;
            iload 2 /* i */
            invokevirtual java.util.ArrayList.get:(I)Ljava/lang/Object;
            checkcast java.lang.String
            astore 4 /* element */
        start local 4 // java.lang.String element
         5: .line 65
            aload 4 /* element */
            iconst_0
            invokevirtual java.lang.String.charAt:(I)C
            invokestatic java.lang.Character.isDigit:(C)Z
            ifeq 10
         6: .line 66
            aload 1 /* stringBuilder */
            ldc "["
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
         7: .line 67
            aload 1 /* stringBuilder */
            aload 4 /* element */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
         8: .line 68
            aload 1 /* stringBuilder */
            ldc "]"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
         9: .line 69
            goto 13
        10: .line 70
      StackMap locals: java.lang.String
      StackMap stack:
            iload 2 /* i */
            ifle 12
        11: .line 71
            aload 1 /* stringBuilder */
            ldc "."
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        12: .line 74
      StackMap locals:
      StackMap stack:
            aload 1 /* stringBuilder */
            aload 4 /* element */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        end local 4 // java.lang.String element
        13: .line 62
      StackMap locals:
      StackMap stack:
            iinc 2 /* i */ 1
      StackMap locals:
      StackMap stack:
        14: iload 2 /* i */
            iload 3 /* n */
            if_icmplt 4
        end local 3 // int n
        end local 2 // int i
        15: .line 78
            aload 1 /* stringBuilder */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 1 // java.lang.StringBuilder stringBuilder
        end local 0 // com.sun.javafx.fxml.expression.KeyPath this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   16     0           this  Lcom/sun/javafx/fxml/expression/KeyPath;
            1   16     1  stringBuilder  Ljava/lang/StringBuilder;
            2   15     2              i  I
            3   15     3              n  I
            5   13     4        element  Ljava/lang/String;

  public static com.sun.javafx.fxml.expression.KeyPath parse(java.lang.String);
    descriptor: (Ljava/lang/String;)Lcom/sun/javafx/fxml/expression/KeyPath;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=4, args_size=1
        start local 0 // java.lang.String value
         0: .line 93
            new java.io.PushbackReader
            dup
            new java.io.StringReader
            dup
            aload 0 /* value */
            invokespecial java.io.StringReader.<init>:(Ljava/lang/String;)V
            invokespecial java.io.PushbackReader.<init>:(Ljava/io/Reader;)V
            astore 2 /* reader */
        start local 2 // java.io.PushbackReader reader
         1: .line 96
            aload 2 /* reader */
            invokestatic com.sun.javafx.fxml.expression.KeyPath.parse:(Ljava/io/PushbackReader;)Lcom/sun/javafx/fxml/expression/KeyPath;
            astore 1 /* keyPath */
        start local 1 // com.sun.javafx.fxml.expression.KeyPath keyPath
         2: .line 97
            goto 6
        end local 1 // com.sun.javafx.fxml.expression.KeyPath keyPath
      StackMap locals: java.lang.String top java.io.PushbackReader
      StackMap stack: java.lang.Throwable
         3: astore 3
         4: .line 98
            aload 2 /* reader */
            invokevirtual java.io.PushbackReader.close:()V
         5: .line 99
            aload 3
            athrow
        start local 1 // com.sun.javafx.fxml.expression.KeyPath keyPath
         6: .line 98
      StackMap locals: java.lang.String com.sun.javafx.fxml.expression.KeyPath java.io.PushbackReader
      StackMap stack:
            aload 2 /* reader */
            invokevirtual java.io.PushbackReader.close:()V
        end local 2 // java.io.PushbackReader reader
         7: .line 100
            goto 10
        end local 1 // com.sun.javafx.fxml.expression.KeyPath keyPath
      StackMap locals: java.lang.String
      StackMap stack: java.io.IOException
         8: astore 2 /* exception */
        start local 2 // java.io.IOException exception
         9: .line 101
            new java.lang.RuntimeException
            dup
            aload 2 /* exception */
            invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/Throwable;)V
            athrow
        end local 2 // java.io.IOException exception
        start local 1 // com.sun.javafx.fxml.expression.KeyPath keyPath
        10: .line 104
      StackMap locals: com.sun.javafx.fxml.expression.KeyPath
      StackMap stack:
            aload 1 /* keyPath */
            areturn
        end local 1 // com.sun.javafx.fxml.expression.KeyPath keyPath
        end local 0 // java.lang.String value
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   11     0      value  Ljava/lang/String;
            2    3     1    keyPath  Lcom/sun/javafx/fxml/expression/KeyPath;
            6    8     1    keyPath  Lcom/sun/javafx/fxml/expression/KeyPath;
           10   11     1    keyPath  Lcom/sun/javafx/fxml/expression/KeyPath;
            1    7     2     reader  Ljava/io/PushbackReader;
            9   10     2  exception  Ljava/io/IOException;
      Exception table:
        from    to  target  type
           1     3       3  any
           0     7       8  Class java.io.IOException
    MethodParameters:
       Name  Flags
      value  

  protected static com.sun.javafx.fxml.expression.KeyPath parse(java.io.PushbackReader);
    descriptor: (Ljava/io/PushbackReader;)Lcom/sun/javafx/fxml/expression/KeyPath;
    flags: (0x000c) ACC_PROTECTED, ACC_STATIC
    Code:
      stack=3, locals=7, args_size=1
        start local 0 // java.io.PushbackReader reader
         0: .line 118
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 1 /* elements */
        start local 1 // java.util.ArrayList elements
         1: .line 120
            aload 0 /* reader */
            invokevirtual java.io.PushbackReader.read:()I
            istore 2 /* c */
        start local 2 // int c
         2: .line 122
            goto 52
         3: .line 123
      StackMap locals: java.util.ArrayList int
      StackMap stack:
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            astore 3 /* keyBuilder */
        start local 3 // java.lang.StringBuilder keyBuilder
         4: .line 125
            iload 2 /* c */
            bipush 91
            if_icmpne 5
            iconst_1
            goto 6
      StackMap locals: java.lang.StringBuilder
      StackMap stack:
         5: iconst_0
      StackMap locals:
      StackMap stack: int
         6: istore 4 /* bracketed */
        start local 4 // boolean bracketed
         7: .line 127
            iload 4 /* bracketed */
            ifeq 44
         8: .line 128
            aload 0 /* reader */
            invokevirtual java.io.PushbackReader.read:()I
            istore 2 /* c */
         9: .line 129
            iload 2 /* c */
            bipush 34
            if_icmpeq 10
            iload 2 /* c */
            bipush 39
            if_icmpeq 10
            iconst_0
            goto 11
      StackMap locals: int
      StackMap stack:
        10: iconst_1
      StackMap locals:
      StackMap stack: int
        11: istore 5 /* quoted */
        start local 5 // boolean quoted
        12: .line 132
            iload 5 /* quoted */
            ifeq 16
        13: .line 133
            iload 2 /* c */
            i2c
            istore 6 /* quote */
        start local 6 // char quote
        14: .line 134
            aload 0 /* reader */
            invokevirtual java.io.PushbackReader.read:()I
            istore 2 /* c */
        15: .line 135
            goto 34
        end local 6 // char quote
        16: .line 136
      StackMap locals: int
      StackMap stack:
            iconst_0
            istore 6 /* quote */
        start local 6 // char quote
        17: .line 139
            goto 34
        18: .line 141
      StackMap locals: int
      StackMap stack:
            iload 2 /* c */
            invokestatic java.lang.Character.isISOControl:(I)Z
            ifeq 20
        19: .line 142
            new java.lang.IllegalArgumentException
            dup
            ldc "Illegal identifier character."
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        20: .line 145
      StackMap locals:
      StackMap stack:
            iload 5 /* quoted */
            ifne 23
        21: .line 146
            iload 2 /* c */
            invokestatic java.lang.Character.isDigit:(I)Z
            ifne 23
        22: .line 147
            new java.lang.IllegalArgumentException
            dup
            ldc "Illegal character in index value."
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        23: .line 150
      StackMap locals:
      StackMap stack:
            aload 3 /* keyBuilder */
            iload 2 /* c */
            i2c
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        24: .line 151
            aload 0 /* reader */
            invokevirtual java.io.PushbackReader.read:()I
            istore 2 /* c */
        25: .line 153
            iload 5 /* quoted */
            ifeq 31
        26: .line 154
            iload 2 /* c */
            iload 6 /* quote */
            if_icmpeq 27
            iconst_1
            goto 28
      StackMap locals:
      StackMap stack:
        27: iconst_0
      StackMap locals:
      StackMap stack: int
        28: istore 5 /* quoted */
        29: .line 156
            iload 5 /* quoted */
            ifne 31
        30: .line 157
            aload 0 /* reader */
            invokevirtual java.io.PushbackReader.read:()I
            istore 2 /* c */
        31: .line 161
      StackMap locals:
      StackMap stack:
            iload 2 /* c */
            bipush 93
            if_icmpeq 32
            iconst_1
            goto 33
      StackMap locals:
      StackMap stack:
        32: iconst_0
      StackMap locals:
      StackMap stack: int
        33: istore 4 /* bracketed */
        34: .line 139
      StackMap locals:
      StackMap stack:
            iload 2 /* c */
            iconst_m1
            if_icmpeq 36
        35: .line 140
            iload 4 /* bracketed */
            ifne 18
        36: .line 164
      StackMap locals:
      StackMap stack:
            iload 5 /* quoted */
            ifeq 38
        37: .line 165
            new java.lang.IllegalArgumentException
            dup
            ldc "Unterminated quoted identifier."
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        38: .line 168
      StackMap locals:
      StackMap stack:
            iload 4 /* bracketed */
            ifeq 40
        39: .line 169
            new java.lang.IllegalArgumentException
            dup
            ldc "Unterminated bracketed identifier."
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        40: .line 172
      StackMap locals:
      StackMap stack:
            aload 0 /* reader */
            invokevirtual java.io.PushbackReader.read:()I
            istore 2 /* c */
        end local 6 // char quote
        end local 5 // boolean quoted
        41: .line 173
            goto 45
        42: .line 175
      StackMap locals:
      StackMap stack:
            aload 3 /* keyBuilder */
            iload 2 /* c */
            i2c
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        43: .line 176
            aload 0 /* reader */
            invokevirtual java.io.PushbackReader.read:()I
            istore 2 /* c */
        44: .line 174
      StackMap locals:
      StackMap stack:
            iload 2 /* c */
            iconst_m1
            if_icmpeq 45
            iload 2 /* c */
            bipush 46
            if_icmpeq 45
            iload 2 /* c */
            bipush 91
            if_icmpeq 45
            iload 2 /* c */
            invokestatic java.lang.Character.isJavaIdentifierPart:(I)Z
            ifne 42
        45: .line 180
      StackMap locals:
      StackMap stack:
            iload 2 /* c */
            bipush 46
            if_icmpne 49
        46: .line 181
            aload 0 /* reader */
            invokevirtual java.io.PushbackReader.read:()I
            istore 2 /* c */
        47: .line 183
            iload 2 /* c */
            iconst_m1
            if_icmpne 49
        48: .line 184
            new java.lang.IllegalArgumentException
            dup
            ldc "Illegal terminator character."
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        49: .line 188
      StackMap locals:
      StackMap stack:
            aload 3 /* keyBuilder */
            invokevirtual java.lang.StringBuilder.length:()I
            ifne 51
        50: .line 189
            new java.lang.IllegalArgumentException
            dup
            ldc "Missing identifier."
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        51: .line 192
      StackMap locals:
      StackMap stack:
            aload 1 /* elements */
            aload 3 /* keyBuilder */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
            pop
        end local 4 // boolean bracketed
        end local 3 // java.lang.StringBuilder keyBuilder
        52: .line 122
      StackMap locals:
      StackMap stack:
            iload 2 /* c */
            iconst_m1
            if_icmpeq 53
            iload 2 /* c */
            invokestatic java.lang.Character.isJavaIdentifierStart:(I)Z
            ifne 3
            iload 2 /* c */
            bipush 91
            if_icmpeq 3
        53: .line 195
      StackMap locals:
      StackMap stack:
            aload 1 /* elements */
            invokevirtual java.util.ArrayList.size:()I
            ifne 55
        54: .line 196
            new java.lang.IllegalArgumentException
            dup
            ldc "Invalid path."
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        55: .line 200
      StackMap locals:
      StackMap stack:
            iload 2 /* c */
            iconst_m1
            if_icmpeq 57
        56: .line 201
            aload 0 /* reader */
            iload 2 /* c */
            invokevirtual java.io.PushbackReader.unread:(I)V
        57: .line 204
      StackMap locals:
      StackMap stack:
            new com.sun.javafx.fxml.expression.KeyPath
            dup
            aload 1 /* elements */
            invokespecial com.sun.javafx.fxml.expression.KeyPath.<init>:(Ljava/util/ArrayList;)V
            areturn
        end local 2 // int c
        end local 1 // java.util.ArrayList elements
        end local 0 // java.io.PushbackReader reader
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   58     0      reader  Ljava/io/PushbackReader;
            1   58     1    elements  Ljava/util/ArrayList<Ljava/lang/String;>;
            2   58     2           c  I
            4   52     3  keyBuilder  Ljava/lang/StringBuilder;
            7   52     4   bracketed  Z
           12   41     5      quoted  Z
           14   16     6       quote  C
           17   41     6       quote  C
    Exceptions:
      throws java.io.IOException
    MethodParameters:
        Name  Flags
      reader  

  public java.lang.Object get(int);
    descriptor: (I)Ljava/lang/Object;
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
         0: .line 1
            aload 0
            iload 1
            invokevirtual com.sun.javafx.fxml.expression.KeyPath.get:(I)Ljava/lang/String;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
}
Signature: Ljava/util/AbstractList<Ljava/lang/String;>;
SourceFile: "KeyPath.java"