class javax.naming.NameImpl
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: javax.naming.NameImpl
  super_class: java.lang.Object
{
  private static final byte LEFT_TO_RIGHT;
    descriptor: B
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 1

  private static final byte RIGHT_TO_LEFT;
    descriptor: B
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 2

  private static final byte FLAT;
    descriptor: B
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 0

  private java.util.Vector components;
    descriptor: Ljava/util/Vector;
    flags: (0x0002) ACC_PRIVATE

  private byte syntaxDirection;
    descriptor: B
    flags: (0x0002) ACC_PRIVATE

  private java.lang.String syntaxSeparator;
    descriptor: Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE

  private java.lang.String syntaxSeparator2;
    descriptor: Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE

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

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

  private java.lang.String syntaxEscape;
    descriptor: Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE

  private java.lang.String syntaxBeginQuote1;
    descriptor: Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE

  private java.lang.String syntaxEndQuote1;
    descriptor: Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE

  private java.lang.String syntaxBeginQuote2;
    descriptor: Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE

  private java.lang.String syntaxEndQuote2;
    descriptor: Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE

  private java.lang.String syntaxAvaSeparator;
    descriptor: Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE

  private java.lang.String syntaxTypevalSeparator;
    descriptor: Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE

  private static final int STYLE_NONE;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 0

  private static final int STYLE_QUOTE1;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 1

  private static final int STYLE_QUOTE2;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 2

  private static final int STYLE_ESCAPE;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 3

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

  private final boolean isA(java.lang.String, int, java.lang.String);
    descriptor: (Ljava/lang/String;ILjava/lang/String;)Z
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Code:
      stack=3, locals=4, args_size=4
        start local 0 // javax.naming.NameImpl this
        start local 1 // java.lang.String n
        start local 2 // int i
        start local 3 // java.lang.String match
         0: .line 76
            aload 3 /* match */
            ifnull 1
            aload 1 /* n */
            aload 3 /* match */
            iload 2 /* i */
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;I)Z
            ifeq 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 3 // java.lang.String match
        end local 2 // int i
        end local 1 // java.lang.String n
        end local 0 // javax.naming.NameImpl this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0   this  Ljavax/naming/NameImpl;
            0    2     1      n  Ljava/lang/String;
            0    2     2      i  I
            0    2     3  match  Ljava/lang/String;
    MethodParameters:
       Name  Flags
      n      
      i      
      match  

  private final boolean isMeta(java.lang.String, int);
    descriptor: (Ljava/lang/String;I)Z
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // javax.naming.NameImpl this
        start local 1 // java.lang.String n
        start local 2 // int i
         0: .line 80
            aload 0 /* this */
            aload 1 /* n */
            iload 2 /* i */
            aload 0 /* this */
            getfield javax.naming.NameImpl.syntaxEscape:Ljava/lang/String;
            invokevirtual javax.naming.NameImpl.isA:(Ljava/lang/String;ILjava/lang/String;)Z
            ifne 5
         1: .line 81
            aload 0 /* this */
            aload 1 /* n */
            iload 2 /* i */
            aload 0 /* this */
            getfield javax.naming.NameImpl.syntaxBeginQuote1:Ljava/lang/String;
            invokevirtual javax.naming.NameImpl.isA:(Ljava/lang/String;ILjava/lang/String;)Z
            ifne 5
         2: .line 82
            aload 0 /* this */
            aload 1 /* n */
            iload 2 /* i */
            aload 0 /* this */
            getfield javax.naming.NameImpl.syntaxBeginQuote2:Ljava/lang/String;
            invokevirtual javax.naming.NameImpl.isA:(Ljava/lang/String;ILjava/lang/String;)Z
            ifne 5
         3: .line 83
            aload 0 /* this */
            aload 1 /* n */
            iload 2 /* i */
            invokevirtual javax.naming.NameImpl.isSeparator:(Ljava/lang/String;I)Z
            ifne 5
         4: .line 80
            iconst_0
            ireturn
      StackMap locals:
      StackMap stack:
         5: iconst_1
            ireturn
        end local 2 // int i
        end local 1 // java.lang.String n
        end local 0 // javax.naming.NameImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0  this  Ljavax/naming/NameImpl;
            0    6     1     n  Ljava/lang/String;
            0    6     2     i  I
    MethodParameters:
      Name  Flags
      n     
      i     

  private final boolean isSeparator(java.lang.String, int);
    descriptor: (Ljava/lang/String;I)Z
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // javax.naming.NameImpl this
        start local 1 // java.lang.String n
        start local 2 // int i
         0: .line 87
            aload 0 /* this */
            aload 1 /* n */
            iload 2 /* i */
            aload 0 /* this */
            getfield javax.naming.NameImpl.syntaxSeparator:Ljava/lang/String;
            invokevirtual javax.naming.NameImpl.isA:(Ljava/lang/String;ILjava/lang/String;)Z
            ifne 3
         1: .line 88
            aload 0 /* this */
            aload 1 /* n */
            iload 2 /* i */
            aload 0 /* this */
            getfield javax.naming.NameImpl.syntaxSeparator2:Ljava/lang/String;
            invokevirtual javax.naming.NameImpl.isA:(Ljava/lang/String;ILjava/lang/String;)Z
            ifne 3
         2: .line 87
            iconst_0
            ireturn
      StackMap locals:
      StackMap stack:
         3: iconst_1
            ireturn
        end local 2 // int i
        end local 1 // java.lang.String n
        end local 0 // javax.naming.NameImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Ljavax/naming/NameImpl;
            0    4     1     n  Ljava/lang/String;
            0    4     2     i  I
    MethodParameters:
      Name  Flags
      n     
      i     

  private final int skipSeparator(java.lang.String, int);
    descriptor: (Ljava/lang/String;I)I
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // javax.naming.NameImpl this
        start local 1 // java.lang.String name
        start local 2 // int i
         0: .line 92
            aload 0 /* this */
            aload 1 /* name */
            iload 2 /* i */
            aload 0 /* this */
            getfield javax.naming.NameImpl.syntaxSeparator:Ljava/lang/String;
            invokevirtual javax.naming.NameImpl.isA:(Ljava/lang/String;ILjava/lang/String;)Z
            ifeq 3
         1: .line 93
            iload 2 /* i */
            aload 0 /* this */
            getfield javax.naming.NameImpl.syntaxSeparator:Ljava/lang/String;
            invokevirtual java.lang.String.length:()I
            iadd
            istore 2 /* i */
         2: .line 94
            goto 5
      StackMap locals:
      StackMap stack:
         3: aload 0 /* this */
            aload 1 /* name */
            iload 2 /* i */
            aload 0 /* this */
            getfield javax.naming.NameImpl.syntaxSeparator2:Ljava/lang/String;
            invokevirtual javax.naming.NameImpl.isA:(Ljava/lang/String;ILjava/lang/String;)Z
            ifeq 5
         4: .line 95
            iload 2 /* i */
            aload 0 /* this */
            getfield javax.naming.NameImpl.syntaxSeparator2:Ljava/lang/String;
            invokevirtual java.lang.String.length:()I
            iadd
            istore 2 /* i */
         5: .line 97
      StackMap locals:
      StackMap stack:
            iload 2 /* i */
            ireturn
        end local 2 // int i
        end local 1 // java.lang.String name
        end local 0 // javax.naming.NameImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0  this  Ljavax/naming/NameImpl;
            0    6     1  name  Ljava/lang/String;
            0    6     2     i  I
    MethodParameters:
      Name  Flags
      name  
      i     

  private final int extractComp(java.lang.String, int, int, java.util.Vector);
    descriptor: (Ljava/lang/String;IILjava/util/Vector;)I
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Code:
      stack=6, locals=10, args_size=5
        start local 0 // javax.naming.NameImpl this
        start local 1 // java.lang.String name
        start local 2 // int i
        start local 3 // int len
        start local 4 // java.util.Vector comps
         0: .line 104
            iconst_1
            istore 7 /* start */
        start local 7 // boolean start
         1: .line 105
            iconst_0
            istore 8 /* one */
        start local 8 // boolean one
         2: .line 106
            new java.lang.StringBuffer
            dup
            iload 3 /* len */
            invokespecial java.lang.StringBuffer.<init>:(I)V
            astore 9 /* answer */
        start local 9 // java.lang.StringBuffer answer
         3: .line 108
            goto 76
         4: .line 110
      StackMap locals: javax.naming.NameImpl java.lang.String int int java.util.Vector top top int int java.lang.StringBuffer
      StackMap stack:
            iload 7 /* start */
            ifeq 33
            aload 0 /* this */
            aload 1 /* name */
            iload 2 /* i */
            aload 0 /* this */
            getfield javax.naming.NameImpl.syntaxBeginQuote1:Ljava/lang/String;
            invokevirtual javax.naming.NameImpl.isA:(Ljava/lang/String;ILjava/lang/String;)Z
            dup
            istore 8 /* one */
            ifne 6
         5: .line 111
            aload 0 /* this */
            aload 1 /* name */
            iload 2 /* i */
            aload 0 /* this */
            getfield javax.naming.NameImpl.syntaxBeginQuote2:Ljava/lang/String;
            invokevirtual javax.naming.NameImpl.isA:(Ljava/lang/String;ILjava/lang/String;)Z
            ifeq 33
         6: .line 114
      StackMap locals:
      StackMap stack:
            iload 8 /* one */
            ifeq 7
            aload 0 /* this */
            getfield javax.naming.NameImpl.syntaxBeginQuote1:Ljava/lang/String;
            goto 8
      StackMap locals:
      StackMap stack:
         7: aload 0 /* this */
            getfield javax.naming.NameImpl.syntaxBeginQuote2:Ljava/lang/String;
      StackMap locals:
      StackMap stack: java.lang.String
         8: astore 5 /* beginQuote */
        start local 5 // java.lang.String beginQuote
         9: .line 115
            iload 8 /* one */
            ifeq 10
            aload 0 /* this */
            getfield javax.naming.NameImpl.syntaxEndQuote1:Ljava/lang/String;
            goto 11
      StackMap locals: javax.naming.NameImpl java.lang.String int int java.util.Vector java.lang.String top int int java.lang.StringBuffer
      StackMap stack:
        10: aload 0 /* this */
            getfield javax.naming.NameImpl.syntaxEndQuote2:Ljava/lang/String;
      StackMap locals:
      StackMap stack: java.lang.String
        11: astore 6 /* endQuote */
        start local 6 // java.lang.String endQuote
        12: .line 116
            aload 0 /* this */
            getfield javax.naming.NameImpl.escapingStyle:I
            ifne 16
        13: .line 117
            aload 0 /* this */
            iload 8 /* one */
            ifeq 14
            iconst_1
            goto 15
      StackMap locals: javax.naming.NameImpl java.lang.String int int java.util.Vector java.lang.String java.lang.String int int java.lang.StringBuffer
      StackMap stack: javax.naming.NameImpl
        14: iconst_2
      StackMap locals: javax.naming.NameImpl java.lang.String int int java.util.Vector java.lang.String java.lang.String int int java.lang.StringBuffer
      StackMap stack: javax.naming.NameImpl int
        15: putfield javax.naming.NameImpl.escapingStyle:I
        16: .line 121
      StackMap locals:
      StackMap stack:
            iload 2 /* i */
            aload 5 /* beginQuote */
            invokevirtual java.lang.String.length:()I
            iadd
            istore 2 /* i */
        17: .line 122
            goto 23
        18: .line 126
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* name */
            iload 2 /* i */
            aload 0 /* this */
            getfield javax.naming.NameImpl.syntaxEscape:Ljava/lang/String;
            invokevirtual javax.naming.NameImpl.isA:(Ljava/lang/String;ILjava/lang/String;)Z
            ifeq 21
        19: .line 127
            aload 0 /* this */
            aload 1 /* name */
            iload 2 /* i */
            aload 0 /* this */
            getfield javax.naming.NameImpl.syntaxEscape:Ljava/lang/String;
            invokevirtual java.lang.String.length:()I
            iadd
            aload 6 /* endQuote */
            invokevirtual javax.naming.NameImpl.isA:(Ljava/lang/String;ILjava/lang/String;)Z
            ifeq 21
        20: .line 128
            iload 2 /* i */
            aload 0 /* this */
            getfield javax.naming.NameImpl.syntaxEscape:Ljava/lang/String;
            invokevirtual java.lang.String.length:()I
            iadd
            istore 2 /* i */
        21: .line 130
      StackMap locals:
      StackMap stack:
            aload 9 /* answer */
            aload 1 /* name */
            iload 2 /* i */
            invokevirtual java.lang.String.charAt:(I)C
            invokevirtual java.lang.StringBuffer.append:(C)Ljava/lang/StringBuffer;
            pop
        22: .line 123
            iinc 2 /* i */ 1
        23: .line 122
      StackMap locals:
      StackMap stack:
            iload 2 /* i */
            iload 3 /* len */
            if_icmpge 24
            aload 1 /* name */
            aload 6 /* endQuote */
            iload 2 /* i */
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;I)Z
            ifeq 18
        24: .line 134
      StackMap locals:
      StackMap stack:
            iload 2 /* i */
            iload 3 /* len */
            if_icmplt 27
        25: .line 136
            new javax.naming.InvalidNameException
            dup
            new java.lang.StringBuilder
            dup
            aload 1 /* name */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc ": no close quote"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial javax.naming.InvalidNameException.<init>:(Ljava/lang/String;)V
        26: .line 135
            athrow
        27: .line 139
      StackMap locals:
      StackMap stack:
            iload 2 /* i */
            aload 6 /* endQuote */
            invokevirtual java.lang.String.length:()I
            iadd
            istore 2 /* i */
        28: .line 142
            iload 2 /* i */
            iload 3 /* len */
            if_icmpeq 77
            aload 0 /* this */
            aload 1 /* name */
            iload 2 /* i */
            invokevirtual javax.naming.NameImpl.isSeparator:(Ljava/lang/String;I)Z
            ifeq 30
        29: .line 143
            goto 77
        30: .line 146
      StackMap locals:
      StackMap stack:
            new javax.naming.InvalidNameException
            dup
            new java.lang.StringBuilder
            dup
            aload 1 /* name */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        31: .line 147
            ldc ": close quote appears before end of component"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        32: .line 146
            invokespecial javax.naming.InvalidNameException.<init>:(Ljava/lang/String;)V
            athrow
        end local 6 // java.lang.String endQuote
        end local 5 // java.lang.String beginQuote
        33: .line 149
      StackMap locals: javax.naming.NameImpl java.lang.String int int java.util.Vector top top int int java.lang.StringBuffer
      StackMap stack:
            aload 0 /* this */
            aload 1 /* name */
            iload 2 /* i */
            invokevirtual javax.naming.NameImpl.isSeparator:(Ljava/lang/String;I)Z
            ifeq 35
        34: .line 150
            goto 77
        35: .line 152
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* name */
            iload 2 /* i */
            aload 0 /* this */
            getfield javax.naming.NameImpl.syntaxEscape:Ljava/lang/String;
            invokevirtual javax.naming.NameImpl.isA:(Ljava/lang/String;ILjava/lang/String;)Z
            ifeq 45
        36: .line 153
            aload 0 /* this */
            aload 1 /* name */
            iload 2 /* i */
            aload 0 /* this */
            getfield javax.naming.NameImpl.syntaxEscape:Ljava/lang/String;
            invokevirtual java.lang.String.length:()I
            iadd
            invokevirtual javax.naming.NameImpl.isMeta:(Ljava/lang/String;I)Z
            ifeq 41
        37: .line 156
            iload 2 /* i */
            aload 0 /* this */
            getfield javax.naming.NameImpl.syntaxEscape:Ljava/lang/String;
            invokevirtual java.lang.String.length:()I
            iadd
            istore 2 /* i */
        38: .line 157
            aload 0 /* this */
            getfield javax.naming.NameImpl.escapingStyle:I
            ifne 74
        39: .line 158
            aload 0 /* this */
            iconst_3
            putfield javax.naming.NameImpl.escapingStyle:I
        40: .line 160
            goto 74
      StackMap locals:
      StackMap stack:
        41: iload 2 /* i */
            aload 0 /* this */
            getfield javax.naming.NameImpl.syntaxEscape:Ljava/lang/String;
            invokevirtual java.lang.String.length:()I
            iadd
            iload 3 /* len */
            if_icmplt 74
        42: .line 161
            new javax.naming.InvalidNameException
            dup
            new java.lang.StringBuilder
            dup
            aload 1 /* name */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        43: .line 162
            ldc ": unescaped "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield javax.naming.NameImpl.syntaxEscape:Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc " at end of component"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        44: .line 161
            invokespecial javax.naming.InvalidNameException.<init>:(Ljava/lang/String;)V
            athrow
        45: .line 164
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* name */
            iload 2 /* i */
            aload 0 /* this */
            getfield javax.naming.NameImpl.syntaxTypevalSeparator:Ljava/lang/String;
            invokevirtual javax.naming.NameImpl.isA:(Ljava/lang/String;ILjava/lang/String;)Z
            ifeq 74
        46: .line 165
            aload 0 /* this */
            aload 1 /* name */
            iload 2 /* i */
            aload 0 /* this */
            getfield javax.naming.NameImpl.syntaxTypevalSeparator:Ljava/lang/String;
            invokevirtual java.lang.String.length:()I
            iadd
            aload 0 /* this */
            getfield javax.naming.NameImpl.syntaxBeginQuote1:Ljava/lang/String;
            invokevirtual javax.naming.NameImpl.isA:(Ljava/lang/String;ILjava/lang/String;)Z
            dup
            istore 8 /* one */
            ifne 48
        47: .line 166
            aload 0 /* this */
            aload 1 /* name */
            iload 2 /* i */
            aload 0 /* this */
            getfield javax.naming.NameImpl.syntaxTypevalSeparator:Ljava/lang/String;
            invokevirtual java.lang.String.length:()I
            iadd
            aload 0 /* this */
            getfield javax.naming.NameImpl.syntaxBeginQuote2:Ljava/lang/String;
            invokevirtual javax.naming.NameImpl.isA:(Ljava/lang/String;ILjava/lang/String;)Z
            ifeq 74
        48: .line 168
      StackMap locals:
      StackMap stack:
            iload 8 /* one */
            ifeq 49
            aload 0 /* this */
            getfield javax.naming.NameImpl.syntaxBeginQuote1:Ljava/lang/String;
            goto 50
      StackMap locals:
      StackMap stack:
        49: aload 0 /* this */
            getfield javax.naming.NameImpl.syntaxBeginQuote2:Ljava/lang/String;
      StackMap locals:
      StackMap stack: java.lang.String
        50: astore 5 /* beginQuote */
        start local 5 // java.lang.String beginQuote
        51: .line 169
            iload 8 /* one */
            ifeq 52
            aload 0 /* this */
            getfield javax.naming.NameImpl.syntaxEndQuote1:Ljava/lang/String;
            goto 53
      StackMap locals: javax.naming.NameImpl java.lang.String int int java.util.Vector java.lang.String top int int java.lang.StringBuffer
      StackMap stack:
        52: aload 0 /* this */
            getfield javax.naming.NameImpl.syntaxEndQuote2:Ljava/lang/String;
      StackMap locals:
      StackMap stack: java.lang.String
        53: astore 6 /* endQuote */
        start local 6 // java.lang.String endQuote
        54: .line 171
            iload 2 /* i */
            aload 0 /* this */
            getfield javax.naming.NameImpl.syntaxTypevalSeparator:Ljava/lang/String;
            invokevirtual java.lang.String.length:()I
            iadd
            istore 2 /* i */
        55: .line 172
            aload 9 /* answer */
            new java.lang.StringBuilder
            dup
            aload 0 /* this */
            getfield javax.naming.NameImpl.syntaxTypevalSeparator:Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 5 /* beginQuote */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
        56: .line 175
            iload 2 /* i */
            aload 5 /* beginQuote */
            invokevirtual java.lang.String.length:()I
            iadd
            istore 2 /* i */
        57: .line 176
            goto 63
        58: .line 180
      StackMap locals: javax.naming.NameImpl java.lang.String int int java.util.Vector java.lang.String java.lang.String int int java.lang.StringBuffer
      StackMap stack:
            aload 0 /* this */
            aload 1 /* name */
            iload 2 /* i */
            aload 0 /* this */
            getfield javax.naming.NameImpl.syntaxEscape:Ljava/lang/String;
            invokevirtual javax.naming.NameImpl.isA:(Ljava/lang/String;ILjava/lang/String;)Z
            ifeq 61
        59: .line 181
            aload 0 /* this */
            aload 1 /* name */
            iload 2 /* i */
            aload 0 /* this */
            getfield javax.naming.NameImpl.syntaxEscape:Ljava/lang/String;
            invokevirtual java.lang.String.length:()I
            iadd
            aload 6 /* endQuote */
            invokevirtual javax.naming.NameImpl.isA:(Ljava/lang/String;ILjava/lang/String;)Z
            ifeq 61
        60: .line 182
            iload 2 /* i */
            aload 0 /* this */
            getfield javax.naming.NameImpl.syntaxEscape:Ljava/lang/String;
            invokevirtual java.lang.String.length:()I
            iadd
            istore 2 /* i */
        61: .line 184
      StackMap locals:
      StackMap stack:
            aload 9 /* answer */
            aload 1 /* name */
            iload 2 /* i */
            invokevirtual java.lang.String.charAt:(I)C
            invokevirtual java.lang.StringBuffer.append:(C)Ljava/lang/StringBuffer;
            pop
        62: .line 177
            iinc 2 /* i */ 1
        63: .line 176
      StackMap locals:
      StackMap stack:
            iload 2 /* i */
            iload 3 /* len */
            if_icmpge 64
            aload 1 /* name */
            aload 6 /* endQuote */
            iload 2 /* i */
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;I)Z
            ifeq 58
        64: .line 188
      StackMap locals:
      StackMap stack:
            iload 2 /* i */
            iload 3 /* len */
            if_icmplt 67
        65: .line 190
            new javax.naming.InvalidNameException
            dup
            new java.lang.StringBuilder
            dup
            aload 1 /* name */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc ": typeval no close quote"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial javax.naming.InvalidNameException.<init>:(Ljava/lang/String;)V
        66: .line 189
            athrow
        67: .line 192
      StackMap locals:
      StackMap stack:
            iload 2 /* i */
            aload 6 /* endQuote */
            invokevirtual java.lang.String.length:()I
            iadd
            istore 2 /* i */
        68: .line 193
            aload 9 /* answer */
            aload 6 /* endQuote */
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
        69: .line 196
            iload 2 /* i */
            iload 3 /* len */
            if_icmpeq 77
            aload 0 /* this */
            aload 1 /* name */
            iload 2 /* i */
            invokevirtual javax.naming.NameImpl.isSeparator:(Ljava/lang/String;I)Z
            ifeq 71
        70: .line 197
            goto 77
        71: .line 199
      StackMap locals:
      StackMap stack:
            new javax.naming.InvalidNameException
            dup
            new java.lang.StringBuilder
            dup
            aload 1 /* name */
            iload 2 /* i */
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        72: .line 200
            ldc ": typeval close quote appears before end of component"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        73: .line 199
            invokespecial javax.naming.InvalidNameException.<init>:(Ljava/lang/String;)V
            athrow
        end local 6 // java.lang.String endQuote
        end local 5 // java.lang.String beginQuote
        74: .line 203
      StackMap locals: javax.naming.NameImpl java.lang.String int int java.util.Vector top top int int java.lang.StringBuffer
      StackMap stack:
            aload 9 /* answer */
            aload 1 /* name */
            iload 2 /* i */
            iinc 2 /* i */ 1
            invokevirtual java.lang.String.charAt:(I)C
            invokevirtual java.lang.StringBuffer.append:(C)Ljava/lang/StringBuffer;
            pop
        75: .line 204
            iconst_0
            istore 7 /* start */
        76: .line 108
      StackMap locals:
      StackMap stack:
            iload 2 /* i */
            iload 3 /* len */
            if_icmplt 4
        77: .line 207
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield javax.naming.NameImpl.syntaxDirection:B
            iconst_2
            if_icmpne 79
        78: .line 208
            aload 4 /* comps */
            aload 9 /* answer */
            invokevirtual java.lang.StringBuffer.toString:()Ljava/lang/String;
            iconst_0
            invokevirtual java.util.Vector.insertElementAt:(Ljava/lang/Object;I)V
            goto 80
        79: .line 210
      StackMap locals:
      StackMap stack:
            aload 4 /* comps */
            aload 9 /* answer */
            invokevirtual java.lang.StringBuffer.toString:()Ljava/lang/String;
            invokevirtual java.util.Vector.addElement:(Ljava/lang/Object;)V
        80: .line 211
      StackMap locals:
      StackMap stack:
            iload 2 /* i */
            ireturn
        end local 9 // java.lang.StringBuffer answer
        end local 8 // boolean one
        end local 7 // boolean start
        end local 4 // java.util.Vector comps
        end local 3 // int len
        end local 2 // int i
        end local 1 // java.lang.String name
        end local 0 // javax.naming.NameImpl this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   81     0        this  Ljavax/naming/NameImpl;
            0   81     1        name  Ljava/lang/String;
            0   81     2           i  I
            0   81     3         len  I
            0   81     4       comps  Ljava/util/Vector;
            9   33     5  beginQuote  Ljava/lang/String;
           51   74     5  beginQuote  Ljava/lang/String;
           12   33     6    endQuote  Ljava/lang/String;
           54   74     6    endQuote  Ljava/lang/String;
            1   81     7       start  Z
            2   81     8         one  Z
            3   81     9      answer  Ljava/lang/StringBuffer;
    Exceptions:
      throws javax.naming.InvalidNameException
    MethodParameters:
       Name  Flags
      name   
      i      
      len    
      comps  

  private static boolean getBoolean(java.util.Properties, java.lang.String);
    descriptor: (Ljava/util/Properties;Ljava/lang/String;)Z
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // java.util.Properties p
        start local 1 // java.lang.String name
         0: .line 215
            aload 0 /* p */
            aload 1 /* name */
            invokevirtual java.util.Properties.getProperty:(Ljava/lang/String;)Ljava/lang/String;
            invokestatic javax.naming.NameImpl.toBoolean:(Ljava/lang/String;)Z
            ireturn
        end local 1 // java.lang.String name
        end local 0 // java.util.Properties p
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0     p  Ljava/util/Properties;
            0    1     1  name  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      p     
      name  

  private static boolean toBoolean(java.lang.String);
    descriptor: (Ljava/lang/String;)Z
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // java.lang.String name
         0: .line 219
            aload 0 /* name */
            ifnull 1
            aload 0 /* name */
            invokevirtual java.lang.String.toLowerCase:()Ljava/lang/String;
            ldc "true"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // java.lang.String name
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  name  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      name  

  private final void recordNamingConvention(java.util.Properties);
    descriptor: (Ljava/util/Properties;)V
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Code:
      stack=5, locals=3, args_size=2
        start local 0 // javax.naming.NameImpl this
        start local 1 // java.util.Properties p
         0: .line 224
            aload 1 /* p */
            ldc "jndi.syntax.direction"
            ldc "flat"
            invokevirtual java.util.Properties.getProperty:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
         1: .line 223
            astore 2 /* syntaxDirectionStr */
        start local 2 // java.lang.String syntaxDirectionStr
         2: .line 225
            aload 2 /* syntaxDirectionStr */
            ldc "left_to_right"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 5
         3: .line 226
            aload 0 /* this */
            iconst_1
            putfield javax.naming.NameImpl.syntaxDirection:B
         4: .line 227
            goto 14
      StackMap locals: java.lang.String
      StackMap stack:
         5: aload 2 /* syntaxDirectionStr */
            ldc "right_to_left"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 8
         6: .line 228
            aload 0 /* this */
            iconst_2
            putfield javax.naming.NameImpl.syntaxDirection:B
         7: .line 229
            goto 14
      StackMap locals:
      StackMap stack:
         8: aload 2 /* syntaxDirectionStr */
            ldc "flat"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 11
         9: .line 230
            aload 0 /* this */
            iconst_0
            putfield javax.naming.NameImpl.syntaxDirection:B
        10: .line 231
            goto 14
        11: .line 232
      StackMap locals:
      StackMap stack:
            new java.lang.IllegalArgumentException
            dup
            new java.lang.StringBuilder
            dup
            aload 2 /* syntaxDirectionStr */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        12: .line 233
            ldc "is not a valid value for the jndi.syntax.direction property"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        13: .line 232
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        14: .line 236
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield javax.naming.NameImpl.syntaxDirection:B
            ifeq 21
        15: .line 237
            aload 0 /* this */
            aload 1 /* p */
            ldc "jndi.syntax.separator"
            invokevirtual java.util.Properties.getProperty:(Ljava/lang/String;)Ljava/lang/String;
            putfield javax.naming.NameImpl.syntaxSeparator:Ljava/lang/String;
        16: .line 238
            aload 0 /* this */
            aload 1 /* p */
            ldc "jndi.syntax.separator2"
            invokevirtual java.util.Properties.getProperty:(Ljava/lang/String;)Ljava/lang/String;
            putfield javax.naming.NameImpl.syntaxSeparator2:Ljava/lang/String;
        17: .line 239
            aload 0 /* this */
            getfield javax.naming.NameImpl.syntaxSeparator:Ljava/lang/String;
            ifnonnull 22
        18: .line 240
            new java.lang.IllegalArgumentException
            dup
        19: .line 241
            ldc "jndi.syntax.separator property required for non-flat syntax"
        20: .line 240
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        21: .line 244
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aconst_null
            putfield javax.naming.NameImpl.syntaxSeparator:Ljava/lang/String;
        22: .line 246
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* p */
            ldc "jndi.syntax.escape"
            invokevirtual java.util.Properties.getProperty:(Ljava/lang/String;)Ljava/lang/String;
            putfield javax.naming.NameImpl.syntaxEscape:Ljava/lang/String;
        23: .line 248
            aload 0 /* this */
            aload 1 /* p */
            ldc "jndi.syntax.ignorecase"
            invokestatic javax.naming.NameImpl.getBoolean:(Ljava/util/Properties;Ljava/lang/String;)Z
            putfield javax.naming.NameImpl.syntaxCaseInsensitive:Z
        24: .line 249
            aload 0 /* this */
            aload 1 /* p */
            ldc "jndi.syntax.trimblanks"
            invokestatic javax.naming.NameImpl.getBoolean:(Ljava/util/Properties;Ljava/lang/String;)Z
            putfield javax.naming.NameImpl.syntaxTrimBlanks:Z
        25: .line 251
            aload 0 /* this */
            aload 1 /* p */
            ldc "jndi.syntax.beginquote"
            invokevirtual java.util.Properties.getProperty:(Ljava/lang/String;)Ljava/lang/String;
            putfield javax.naming.NameImpl.syntaxBeginQuote1:Ljava/lang/String;
        26: .line 252
            aload 0 /* this */
            aload 1 /* p */
            ldc "jndi.syntax.endquote"
            invokevirtual java.util.Properties.getProperty:(Ljava/lang/String;)Ljava/lang/String;
            putfield javax.naming.NameImpl.syntaxEndQuote1:Ljava/lang/String;
        27: .line 253
            aload 0 /* this */
            getfield javax.naming.NameImpl.syntaxEndQuote1:Ljava/lang/String;
            ifnonnull 29
            aload 0 /* this */
            getfield javax.naming.NameImpl.syntaxBeginQuote1:Ljava/lang/String;
            ifnull 29
        28: .line 254
            aload 0 /* this */
            aload 0 /* this */
            getfield javax.naming.NameImpl.syntaxBeginQuote1:Ljava/lang/String;
            putfield javax.naming.NameImpl.syntaxEndQuote1:Ljava/lang/String;
            goto 31
        29: .line 255
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield javax.naming.NameImpl.syntaxBeginQuote1:Ljava/lang/String;
            ifnonnull 31
            aload 0 /* this */
            getfield javax.naming.NameImpl.syntaxEndQuote1:Ljava/lang/String;
            ifnull 31
        30: .line 256
            aload 0 /* this */
            aload 0 /* this */
            getfield javax.naming.NameImpl.syntaxEndQuote1:Ljava/lang/String;
            putfield javax.naming.NameImpl.syntaxBeginQuote1:Ljava/lang/String;
        31: .line 257
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* p */
            ldc "jndi.syntax.beginquote2"
            invokevirtual java.util.Properties.getProperty:(Ljava/lang/String;)Ljava/lang/String;
            putfield javax.naming.NameImpl.syntaxBeginQuote2:Ljava/lang/String;
        32: .line 258
            aload 0 /* this */
            aload 1 /* p */
            ldc "jndi.syntax.endquote2"
            invokevirtual java.util.Properties.getProperty:(Ljava/lang/String;)Ljava/lang/String;
            putfield javax.naming.NameImpl.syntaxEndQuote2:Ljava/lang/String;
        33: .line 259
            aload 0 /* this */
            getfield javax.naming.NameImpl.syntaxEndQuote2:Ljava/lang/String;
            ifnonnull 35
            aload 0 /* this */
            getfield javax.naming.NameImpl.syntaxBeginQuote2:Ljava/lang/String;
            ifnull 35
        34: .line 260
            aload 0 /* this */
            aload 0 /* this */
            getfield javax.naming.NameImpl.syntaxBeginQuote2:Ljava/lang/String;
            putfield javax.naming.NameImpl.syntaxEndQuote2:Ljava/lang/String;
            goto 37
        35: .line 261
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield javax.naming.NameImpl.syntaxBeginQuote2:Ljava/lang/String;
            ifnonnull 37
            aload 0 /* this */
            getfield javax.naming.NameImpl.syntaxEndQuote2:Ljava/lang/String;
            ifnull 37
        36: .line 262
            aload 0 /* this */
            aload 0 /* this */
            getfield javax.naming.NameImpl.syntaxEndQuote2:Ljava/lang/String;
            putfield javax.naming.NameImpl.syntaxBeginQuote2:Ljava/lang/String;
        37: .line 264
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* p */
            ldc "jndi.syntax.separator.ava"
            invokevirtual java.util.Properties.getProperty:(Ljava/lang/String;)Ljava/lang/String;
            putfield javax.naming.NameImpl.syntaxAvaSeparator:Ljava/lang/String;
        38: .line 265
            aload 0 /* this */
        39: .line 266
            aload 1 /* p */
            ldc "jndi.syntax.separator.typeval"
            invokevirtual java.util.Properties.getProperty:(Ljava/lang/String;)Ljava/lang/String;
        40: .line 265
            putfield javax.naming.NameImpl.syntaxTypevalSeparator:Ljava/lang/String;
        41: .line 267
            return
        end local 2 // java.lang.String syntaxDirectionStr
        end local 1 // java.util.Properties p
        end local 0 // javax.naming.NameImpl this
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0   42     0                this  Ljavax/naming/NameImpl;
            0   42     1                   p  Ljava/util/Properties;
            2   42     2  syntaxDirectionStr  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      p     

  void <init>(java.util.Properties);
    descriptor: (Ljava/util/Properties;)V
    flags: (0x0000) 
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // javax.naming.NameImpl this
        start local 1 // java.util.Properties syntax
         0: .line 269
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 50
            aload 0 /* this */
            iconst_1
            putfield javax.naming.NameImpl.syntaxDirection:B
         2: .line 51
            aload 0 /* this */
            ldc "/"
            putfield javax.naming.NameImpl.syntaxSeparator:Ljava/lang/String;
         3: .line 52
            aload 0 /* this */
            aconst_null
            putfield javax.naming.NameImpl.syntaxSeparator2:Ljava/lang/String;
         4: .line 53
            aload 0 /* this */
            iconst_0
            putfield javax.naming.NameImpl.syntaxCaseInsensitive:Z
         5: .line 54
            aload 0 /* this */
            iconst_0
            putfield javax.naming.NameImpl.syntaxTrimBlanks:Z
         6: .line 55
            aload 0 /* this */
            ldc "\\"
            putfield javax.naming.NameImpl.syntaxEscape:Ljava/lang/String;
         7: .line 56
            aload 0 /* this */
            ldc "\""
            putfield javax.naming.NameImpl.syntaxBeginQuote1:Ljava/lang/String;
         8: .line 57
            aload 0 /* this */
            ldc "\""
            putfield javax.naming.NameImpl.syntaxEndQuote1:Ljava/lang/String;
         9: .line 58
            aload 0 /* this */
            ldc "'"
            putfield javax.naming.NameImpl.syntaxBeginQuote2:Ljava/lang/String;
        10: .line 59
            aload 0 /* this */
            ldc "'"
            putfield javax.naming.NameImpl.syntaxEndQuote2:Ljava/lang/String;
        11: .line 60
            aload 0 /* this */
            aconst_null
            putfield javax.naming.NameImpl.syntaxAvaSeparator:Ljava/lang/String;
        12: .line 61
            aload 0 /* this */
            aconst_null
            putfield javax.naming.NameImpl.syntaxTypevalSeparator:Ljava/lang/String;
        13: .line 71
            aload 0 /* this */
            iconst_0
            putfield javax.naming.NameImpl.escapingStyle:I
        14: .line 270
            aload 1 /* syntax */
            ifnull 16
        15: .line 271
            aload 0 /* this */
            aload 1 /* syntax */
            invokevirtual javax.naming.NameImpl.recordNamingConvention:(Ljava/util/Properties;)V
        16: .line 273
      StackMap locals: javax.naming.NameImpl java.util.Properties
      StackMap stack:
            aload 0 /* this */
            new java.util.Vector
            dup
            invokespecial java.util.Vector.<init>:()V
            putfield javax.naming.NameImpl.components:Ljava/util/Vector;
        17: .line 274
            return
        end local 1 // java.util.Properties syntax
        end local 0 // javax.naming.NameImpl this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   18     0    this  Ljavax/naming/NameImpl;
            0   18     1  syntax  Ljava/util/Properties;
    MethodParameters:
        Name  Flags
      syntax  

  void <init>(java.util.Properties, java.lang.String);
    descriptor: (Ljava/util/Properties;Ljava/lang/String;)V
    flags: (0x0000) 
    Code:
      stack=5, locals=8, args_size=3
        start local 0 // javax.naming.NameImpl this
        start local 1 // java.util.Properties syntax
        start local 2 // java.lang.String n
         0: .line 277
            aload 0 /* this */
            aload 1 /* syntax */
            invokespecial javax.naming.NameImpl.<init>:(Ljava/util/Properties;)V
         1: .line 279
            aload 0 /* this */
            getfield javax.naming.NameImpl.syntaxDirection:B
            iconst_2
            if_icmpne 2
            iconst_1
            goto 3
      StackMap locals: javax.naming.NameImpl java.util.Properties java.lang.String
      StackMap stack:
         2: iconst_0
      StackMap locals:
      StackMap stack: int
         3: istore 3 /* rToL */
        start local 3 // boolean rToL
         4: .line 280
            iconst_1
            istore 4 /* compsAllEmpty */
        start local 4 // boolean compsAllEmpty
         5: .line 281
            aload 2 /* n */
            invokevirtual java.lang.String.length:()I
            istore 5 /* len */
        start local 5 // int len
         6: .line 283
            iconst_0
            istore 6 /* i */
        start local 6 // int i
         7: goto 22
         8: .line 284
      StackMap locals: javax.naming.NameImpl java.util.Properties java.lang.String int int int int
      StackMap stack:
            aload 0 /* this */
            aload 2 /* n */
            iload 6 /* i */
            iload 5 /* len */
            aload 0 /* this */
            getfield javax.naming.NameImpl.components:Ljava/util/Vector;
            invokevirtual javax.naming.NameImpl.extractComp:(Ljava/lang/String;IILjava/util/Vector;)I
            istore 6 /* i */
         9: .line 286
            iload 3 /* rToL */
            ifeq 11
        10: .line 287
            aload 0 /* this */
            getfield javax.naming.NameImpl.components:Ljava/util/Vector;
            invokevirtual java.util.Vector.firstElement:()Ljava/lang/Object;
            checkcast java.lang.String
            goto 12
        11: .line 288
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield javax.naming.NameImpl.components:Ljava/util/Vector;
            invokevirtual java.util.Vector.lastElement:()Ljava/lang/Object;
            checkcast java.lang.String
        12: .line 286
      StackMap locals:
      StackMap stack: java.lang.String
            astore 7 /* comp */
        start local 7 // java.lang.String comp
        13: .line 289
            aload 7 /* comp */
            invokevirtual java.lang.String.length:()I
            iconst_1
            if_icmplt 15
        14: .line 290
            iconst_0
            istore 4 /* compsAllEmpty */
        15: .line 293
      StackMap locals: java.lang.String
      StackMap stack:
            iload 6 /* i */
            iload 5 /* len */
            if_icmpge 22
        16: .line 294
            aload 0 /* this */
            aload 2 /* n */
            iload 6 /* i */
            invokevirtual javax.naming.NameImpl.skipSeparator:(Ljava/lang/String;I)I
            istore 6 /* i */
        17: .line 295
            iload 6 /* i */
            iload 5 /* len */
            if_icmpne 22
            iload 4 /* compsAllEmpty */
            ifne 22
        18: .line 297
            iload 3 /* rToL */
            ifeq 21
        19: .line 298
            aload 0 /* this */
            getfield javax.naming.NameImpl.components:Ljava/util/Vector;
            ldc ""
            iconst_0
            invokevirtual java.util.Vector.insertElementAt:(Ljava/lang/Object;I)V
        20: .line 299
            goto 22
        21: .line 300
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield javax.naming.NameImpl.components:Ljava/util/Vector;
            ldc ""
            invokevirtual java.util.Vector.addElement:(Ljava/lang/Object;)V
        end local 7 // java.lang.String comp
        22: .line 283
      StackMap locals:
      StackMap stack:
            iload 6 /* i */
            iload 5 /* len */
            if_icmplt 8
        end local 6 // int i
        23: .line 305
            return
        end local 5 // int len
        end local 4 // boolean compsAllEmpty
        end local 3 // boolean rToL
        end local 2 // java.lang.String n
        end local 1 // java.util.Properties syntax
        end local 0 // javax.naming.NameImpl this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   24     0           this  Ljavax/naming/NameImpl;
            0   24     1         syntax  Ljava/util/Properties;
            0   24     2              n  Ljava/lang/String;
            4   24     3           rToL  Z
            5   24     4  compsAllEmpty  Z
            6   24     5            len  I
            7   23     6              i  I
           13   22     7           comp  Ljava/lang/String;
    Exceptions:
      throws javax.naming.InvalidNameException
    MethodParameters:
        Name  Flags
      syntax  
      n       

  void <init>(java.util.Properties, java.util.Enumeration);
    descriptor: (Ljava/util/Properties;Ljava/util/Enumeration;)V
    flags: (0x0000) 
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // javax.naming.NameImpl this
        start local 1 // java.util.Properties syntax
        start local 2 // java.util.Enumeration comps
         0: .line 308
            aload 0 /* this */
            aload 1 /* syntax */
            invokespecial javax.naming.NameImpl.<init>:(Ljava/util/Properties;)V
         1: .line 311
            goto 3
         2: .line 312
      StackMap locals: javax.naming.NameImpl java.util.Properties java.util.Enumeration
      StackMap stack:
            aload 0 /* this */
            getfield javax.naming.NameImpl.components:Ljava/util/Vector;
            aload 2 /* comps */
            invokeinterface java.util.Enumeration.nextElement:()Ljava/lang/Object;
            invokevirtual java.util.Vector.addElement:(Ljava/lang/Object;)V
         3: .line 311
      StackMap locals:
      StackMap stack:
            aload 2 /* comps */
            invokeinterface java.util.Enumeration.hasMoreElements:()Z
            ifne 2
         4: .line 313
            return
        end local 2 // java.util.Enumeration comps
        end local 1 // java.util.Properties syntax
        end local 0 // javax.naming.NameImpl this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    5     0    this  Ljavax/naming/NameImpl;
            0    5     1  syntax  Ljava/util/Properties;
            0    5     2   comps  Ljava/util/Enumeration;
    MethodParameters:
        Name  Flags
      syntax  
      comps   

  private final java.lang.String stringifyComp(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Code:
      stack=4, locals=10, args_size=2
        start local 0 // javax.naming.NameImpl this
        start local 1 // java.lang.String comp
         0: .line 339
            aload 1 /* comp */
            invokevirtual java.lang.String.length:()I
            istore 2 /* len */
        start local 2 // int len
         1: .line 340
            iconst_0
            istore 3 /* escapeSeparator */
        start local 3 // boolean escapeSeparator
         2: iconst_0
            istore 4 /* escapeSeparator2 */
        start local 4 // boolean escapeSeparator2
         3: .line 341
            aconst_null
            astore 5 /* beginQuote */
        start local 5 // java.lang.String beginQuote
         4: aconst_null
            astore 6 /* endQuote */
        start local 6 // java.lang.String endQuote
         5: .line 342
            new java.lang.StringBuffer
            dup
            iload 2 /* len */
            invokespecial java.lang.StringBuffer.<init>:(I)V
            astore 7 /* strbuf */
        start local 7 // java.lang.StringBuffer strbuf
         6: .line 346
            aload 0 /* this */
            getfield javax.naming.NameImpl.syntaxSeparator:Ljava/lang/String;
            ifnull 18
         7: .line 347
            aload 1 /* comp */
            aload 0 /* this */
            getfield javax.naming.NameImpl.syntaxSeparator:Ljava/lang/String;
            invokevirtual java.lang.String.indexOf:(Ljava/lang/String;)I
            iflt 18
         8: .line 348
            aload 0 /* this */
            getfield javax.naming.NameImpl.syntaxBeginQuote1:Ljava/lang/String;
            ifnull 12
         9: .line 349
            aload 0 /* this */
            getfield javax.naming.NameImpl.syntaxBeginQuote1:Ljava/lang/String;
            astore 5 /* beginQuote */
        10: .line 350
            aload 0 /* this */
            getfield javax.naming.NameImpl.syntaxEndQuote1:Ljava/lang/String;
            astore 6 /* endQuote */
        11: .line 351
            goto 18
      StackMap locals: javax.naming.NameImpl java.lang.String int int int java.lang.String java.lang.String java.lang.StringBuffer
      StackMap stack:
        12: aload 0 /* this */
            getfield javax.naming.NameImpl.syntaxBeginQuote2:Ljava/lang/String;
            ifnull 16
        13: .line 352
            aload 0 /* this */
            getfield javax.naming.NameImpl.syntaxBeginQuote2:Ljava/lang/String;
            astore 5 /* beginQuote */
        14: .line 353
            aload 0 /* this */
            getfield javax.naming.NameImpl.syntaxEndQuote2:Ljava/lang/String;
            astore 6 /* endQuote */
        15: .line 354
            goto 18
      StackMap locals:
      StackMap stack:
        16: aload 0 /* this */
            getfield javax.naming.NameImpl.syntaxEscape:Ljava/lang/String;
            ifnull 18
        17: .line 355
            iconst_1
            istore 3 /* escapeSeparator */
        18: .line 357
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield javax.naming.NameImpl.syntaxSeparator2:Ljava/lang/String;
            ifnull 32
        19: .line 358
            aload 1 /* comp */
            aload 0 /* this */
            getfield javax.naming.NameImpl.syntaxSeparator2:Ljava/lang/String;
            invokevirtual java.lang.String.indexOf:(Ljava/lang/String;)I
            iflt 32
        20: .line 359
            aload 0 /* this */
            getfield javax.naming.NameImpl.syntaxBeginQuote1:Ljava/lang/String;
            ifnull 25
        21: .line 360
            aload 5 /* beginQuote */
            ifnonnull 32
        22: .line 361
            aload 0 /* this */
            getfield javax.naming.NameImpl.syntaxBeginQuote1:Ljava/lang/String;
            astore 5 /* beginQuote */
        23: .line 362
            aload 0 /* this */
            getfield javax.naming.NameImpl.syntaxEndQuote1:Ljava/lang/String;
            astore 6 /* endQuote */
        24: .line 364
            goto 32
      StackMap locals:
      StackMap stack:
        25: aload 0 /* this */
            getfield javax.naming.NameImpl.syntaxBeginQuote2:Ljava/lang/String;
            ifnull 30
        26: .line 365
            aload 5 /* beginQuote */
            ifnonnull 32
        27: .line 366
            aload 0 /* this */
            getfield javax.naming.NameImpl.syntaxBeginQuote2:Ljava/lang/String;
            astore 5 /* beginQuote */
        28: .line 367
            aload 0 /* this */
            getfield javax.naming.NameImpl.syntaxEndQuote2:Ljava/lang/String;
            astore 6 /* endQuote */
        29: .line 369
            goto 32
      StackMap locals:
      StackMap stack:
        30: aload 0 /* this */
            getfield javax.naming.NameImpl.syntaxEscape:Ljava/lang/String;
            ifnull 32
        31: .line 370
            iconst_1
            istore 4 /* escapeSeparator2 */
        32: .line 374
      StackMap locals:
      StackMap stack:
            aload 5 /* beginQuote */
            ifnull 44
        33: .line 377
            aload 7 /* strbuf */
            aload 5 /* beginQuote */
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            astore 7 /* strbuf */
        34: .line 381
            iconst_0
            istore 8 /* i */
        start local 8 // int i
        35: goto 41
        36: .line 382
      StackMap locals: int
      StackMap stack:
            aload 1 /* comp */
            aload 6 /* endQuote */
            iload 8 /* i */
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;I)Z
            ifeq 40
        37: .line 384
            aload 7 /* strbuf */
            aload 0 /* this */
            getfield javax.naming.NameImpl.syntaxEscape:Ljava/lang/String;
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            aload 6 /* endQuote */
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
        38: .line 385
            iload 8 /* i */
            aload 6 /* endQuote */
            invokevirtual java.lang.String.length:()I
            iadd
            istore 8 /* i */
        39: .line 386
            goto 41
        40: .line 388
      StackMap locals:
      StackMap stack:
            aload 7 /* strbuf */
            aload 1 /* comp */
            iload 8 /* i */
            iinc 8 /* i */ 1
            invokevirtual java.lang.String.charAt:(I)C
            invokevirtual java.lang.StringBuffer.append:(C)Ljava/lang/StringBuffer;
            pop
        41: .line 381
      StackMap locals:
      StackMap stack:
            iload 8 /* i */
            iload 2 /* len */
            if_icmplt 36
        end local 8 // int i
        42: .line 393
            aload 7 /* strbuf */
            aload 6 /* endQuote */
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
        43: .line 395
            goto 76
        44: .line 404
      StackMap locals:
      StackMap stack:
            iconst_1
            istore 8 /* start */
        start local 8 // boolean start
        45: .line 405
            iconst_0
            istore 9 /* i */
        start local 9 // int i
        46: goto 75
        47: .line 407
      StackMap locals: int int
      StackMap stack:
            iload 8 /* start */
            ifeq 51
            aload 0 /* this */
            aload 1 /* comp */
            iload 9 /* i */
            aload 0 /* this */
            getfield javax.naming.NameImpl.syntaxBeginQuote1:Ljava/lang/String;
            invokevirtual javax.naming.NameImpl.isA:(Ljava/lang/String;ILjava/lang/String;)Z
            ifeq 51
        48: .line 408
            aload 7 /* strbuf */
            aload 0 /* this */
            getfield javax.naming.NameImpl.syntaxEscape:Ljava/lang/String;
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            aload 0 /* this */
            getfield javax.naming.NameImpl.syntaxBeginQuote1:Ljava/lang/String;
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
        49: .line 409
            iload 9 /* i */
            aload 0 /* this */
            getfield javax.naming.NameImpl.syntaxBeginQuote1:Ljava/lang/String;
            invokevirtual java.lang.String.length:()I
            iadd
            istore 9 /* i */
        50: .line 410
            goto 74
      StackMap locals:
      StackMap stack:
        51: iload 8 /* start */
            ifeq 55
            aload 0 /* this */
            aload 1 /* comp */
            iload 9 /* i */
            aload 0 /* this */
            getfield javax.naming.NameImpl.syntaxBeginQuote2:Ljava/lang/String;
            invokevirtual javax.naming.NameImpl.isA:(Ljava/lang/String;ILjava/lang/String;)Z
            ifeq 55
        52: .line 411
            aload 7 /* strbuf */
            aload 0 /* this */
            getfield javax.naming.NameImpl.syntaxEscape:Ljava/lang/String;
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            aload 0 /* this */
            getfield javax.naming.NameImpl.syntaxBeginQuote2:Ljava/lang/String;
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
        53: .line 412
            iload 9 /* i */
            aload 0 /* this */
            getfield javax.naming.NameImpl.syntaxBeginQuote2:Ljava/lang/String;
            invokevirtual java.lang.String.length:()I
            iadd
            istore 9 /* i */
        54: .line 413
            goto 74
        55: .line 417
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* comp */
            iload 9 /* i */
            aload 0 /* this */
            getfield javax.naming.NameImpl.syntaxEscape:Ljava/lang/String;
            invokevirtual javax.naming.NameImpl.isA:(Ljava/lang/String;ILjava/lang/String;)Z
            ifeq 64
        56: .line 418
            iload 9 /* i */
            aload 0 /* this */
            getfield javax.naming.NameImpl.syntaxEscape:Ljava/lang/String;
            invokevirtual java.lang.String.length:()I
            iadd
            iload 2 /* len */
            if_icmplt 59
        57: .line 420
            aload 7 /* strbuf */
            aload 0 /* this */
            getfield javax.naming.NameImpl.syntaxEscape:Ljava/lang/String;
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
        58: .line 421
            goto 61
      StackMap locals:
      StackMap stack:
        59: aload 0 /* this */
            aload 1 /* comp */
            iload 9 /* i */
            aload 0 /* this */
            getfield javax.naming.NameImpl.syntaxEscape:Ljava/lang/String;
            invokevirtual java.lang.String.length:()I
            iadd
            invokevirtual javax.naming.NameImpl.isMeta:(Ljava/lang/String;I)Z
            ifeq 61
        60: .line 423
            aload 7 /* strbuf */
            aload 0 /* this */
            getfield javax.naming.NameImpl.syntaxEscape:Ljava/lang/String;
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
        61: .line 425
      StackMap locals:
      StackMap stack:
            aload 7 /* strbuf */
            aload 0 /* this */
            getfield javax.naming.NameImpl.syntaxEscape:Ljava/lang/String;
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
        62: .line 426
            iload 9 /* i */
            aload 0 /* this */
            getfield javax.naming.NameImpl.syntaxEscape:Ljava/lang/String;
            invokevirtual java.lang.String.length:()I
            iadd
            istore 9 /* i */
        63: .line 427
            goto 74
        64: .line 430
      StackMap locals:
      StackMap stack:
            iload 3 /* escapeSeparator */
            ifeq 68
            aload 1 /* comp */
            aload 0 /* this */
            getfield javax.naming.NameImpl.syntaxSeparator:Ljava/lang/String;
            iload 9 /* i */
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;I)Z
            ifeq 68
        65: .line 432
            aload 7 /* strbuf */
            aload 0 /* this */
            getfield javax.naming.NameImpl.syntaxEscape:Ljava/lang/String;
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            aload 0 /* this */
            getfield javax.naming.NameImpl.syntaxSeparator:Ljava/lang/String;
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
        66: .line 433
            iload 9 /* i */
            aload 0 /* this */
            getfield javax.naming.NameImpl.syntaxSeparator:Ljava/lang/String;
            invokevirtual java.lang.String.length:()I
            iadd
            istore 9 /* i */
        67: .line 434
            goto 74
      StackMap locals:
      StackMap stack:
        68: iload 4 /* escapeSeparator2 */
            ifeq 73
        69: .line 435
            aload 1 /* comp */
            aload 0 /* this */
            getfield javax.naming.NameImpl.syntaxSeparator2:Ljava/lang/String;
            iload 9 /* i */
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;I)Z
            ifeq 73
        70: .line 437
            aload 7 /* strbuf */
            aload 0 /* this */
            getfield javax.naming.NameImpl.syntaxEscape:Ljava/lang/String;
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            aload 0 /* this */
            getfield javax.naming.NameImpl.syntaxSeparator2:Ljava/lang/String;
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
        71: .line 438
            iload 9 /* i */
            aload 0 /* this */
            getfield javax.naming.NameImpl.syntaxSeparator2:Ljava/lang/String;
            invokevirtual java.lang.String.length:()I
            iadd
            istore 9 /* i */
        72: .line 439
            goto 74
        73: .line 441
      StackMap locals:
      StackMap stack:
            aload 7 /* strbuf */
            aload 1 /* comp */
            iload 9 /* i */
            iinc 9 /* i */ 1
            invokevirtual java.lang.String.charAt:(I)C
            invokevirtual java.lang.StringBuffer.append:(C)Ljava/lang/StringBuffer;
            pop
        74: .line 443
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 8 /* start */
        75: .line 405
      StackMap locals:
      StackMap stack:
            iload 9 /* i */
            iload 2 /* len */
            if_icmplt 47
        end local 9 // int i
        end local 8 // boolean start
        76: .line 446
      StackMap locals:
      StackMap stack:
            aload 7 /* strbuf */
            invokevirtual java.lang.StringBuffer.toString:()Ljava/lang/String;
            areturn
        end local 7 // java.lang.StringBuffer strbuf
        end local 6 // java.lang.String endQuote
        end local 5 // java.lang.String beginQuote
        end local 4 // boolean escapeSeparator2
        end local 3 // boolean escapeSeparator
        end local 2 // int len
        end local 1 // java.lang.String comp
        end local 0 // javax.naming.NameImpl this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0   77     0              this  Ljavax/naming/NameImpl;
            0   77     1              comp  Ljava/lang/String;
            1   77     2               len  I
            2   77     3   escapeSeparator  Z
            3   77     4  escapeSeparator2  Z
            4   77     5        beginQuote  Ljava/lang/String;
            5   77     6          endQuote  Ljava/lang/String;
            6   77     7            strbuf  Ljava/lang/StringBuffer;
           35   42     8                 i  I
           45   76     8             start  Z
           46   76     9                 i  I
    MethodParameters:
      Name  Flags
      comp  

  public java.lang.String toString();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=6, args_size=1
        start local 0 // javax.naming.NameImpl this
         0: .line 450
            new java.lang.StringBuffer
            dup
            invokespecial java.lang.StringBuffer.<init>:()V
            astore 1 /* answer */
        start local 1 // java.lang.StringBuffer answer
         1: .line 452
            iconst_1
            istore 3 /* compsAllEmpty */
        start local 3 // boolean compsAllEmpty
         2: .line 453
            aload 0 /* this */
            getfield javax.naming.NameImpl.components:Ljava/util/Vector;
            invokevirtual java.util.Vector.size:()I
            istore 4 /* size */
        start local 4 // int size
         3: .line 455
            iconst_0
            istore 5 /* i */
        start local 5 // int i
         4: goto 16
         5: .line 456
      StackMap locals: javax.naming.NameImpl java.lang.StringBuffer top int int int
      StackMap stack:
            aload 0 /* this */
            getfield javax.naming.NameImpl.syntaxDirection:B
            iconst_2
            if_icmpne 9
         6: .line 458
            aload 0 /* this */
            aload 0 /* this */
            getfield javax.naming.NameImpl.components:Ljava/util/Vector;
            iload 4 /* size */
            iconst_1
            isub
            iload 5 /* i */
            isub
            invokevirtual java.util.Vector.elementAt:(I)Ljava/lang/Object;
            checkcast java.lang.String
            invokevirtual javax.naming.NameImpl.stringifyComp:(Ljava/lang/String;)Ljava/lang/String;
         7: .line 457
            astore 2 /* comp */
        start local 2 // java.lang.String comp
         8: .line 459
            goto 10
        end local 2 // java.lang.String comp
         9: .line 460
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield javax.naming.NameImpl.components:Ljava/util/Vector;
            iload 5 /* i */
            invokevirtual java.util.Vector.elementAt:(I)Ljava/lang/Object;
            checkcast java.lang.String
            invokevirtual javax.naming.NameImpl.stringifyComp:(Ljava/lang/String;)Ljava/lang/String;
            astore 2 /* comp */
        start local 2 // java.lang.String comp
        10: .line 462
      StackMap locals: javax.naming.NameImpl java.lang.StringBuffer java.lang.String int int int
      StackMap stack:
            iload 5 /* i */
            ifeq 12
            aload 0 /* this */
            getfield javax.naming.NameImpl.syntaxSeparator:Ljava/lang/String;
            ifnull 12
        11: .line 463
            aload 1 /* answer */
            aload 0 /* this */
            getfield javax.naming.NameImpl.syntaxSeparator:Ljava/lang/String;
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
        12: .line 464
      StackMap locals:
      StackMap stack:
            aload 2 /* comp */
            invokevirtual java.lang.String.length:()I
            iconst_1
            if_icmplt 14
        13: .line 465
            iconst_0
            istore 3 /* compsAllEmpty */
        14: .line 466
      StackMap locals:
      StackMap stack:
            aload 1 /* answer */
            aload 2 /* comp */
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            astore 1 /* answer */
        15: .line 455
            iinc 5 /* i */ 1
        end local 2 // java.lang.String comp
      StackMap locals: javax.naming.NameImpl java.lang.StringBuffer top int int int
      StackMap stack:
        16: iload 5 /* i */
            iload 4 /* size */
            if_icmplt 5
        end local 5 // int i
        17: .line 468
            iload 3 /* compsAllEmpty */
            ifeq 19
            iload 4 /* size */
            iconst_1
            if_icmplt 19
            aload 0 /* this */
            getfield javax.naming.NameImpl.syntaxSeparator:Ljava/lang/String;
            ifnull 19
        18: .line 469
            aload 1 /* answer */
            aload 0 /* this */
            getfield javax.naming.NameImpl.syntaxSeparator:Ljava/lang/String;
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            astore 1 /* answer */
        19: .line 470
      StackMap locals:
      StackMap stack:
            aload 1 /* answer */
            invokevirtual java.lang.StringBuffer.toString:()Ljava/lang/String;
            areturn
        end local 4 // int size
        end local 3 // boolean compsAllEmpty
        end local 1 // java.lang.StringBuffer answer
        end local 0 // javax.naming.NameImpl this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   20     0           this  Ljavax/naming/NameImpl;
            1   20     1         answer  Ljava/lang/StringBuffer;
            8    9     2           comp  Ljava/lang/String;
           10   16     2           comp  Ljava/lang/String;
            2   20     3  compsAllEmpty  Z
            3   20     4           size  I
            4   17     5              i  I

  public boolean equals(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=7, args_size=2
        start local 0 // javax.naming.NameImpl this
        start local 1 // java.lang.Object obj
         0: .line 474
            aload 1 /* obj */
            ifnull 18
            aload 1 /* obj */
            instanceof javax.naming.NameImpl
            ifeq 18
         1: .line 475
            aload 1 /* obj */
            checkcast javax.naming.NameImpl
            astore 2 /* target */
        start local 2 // javax.naming.NameImpl target
         2: .line 476
            aload 2 /* target */
            invokevirtual javax.naming.NameImpl.size:()I
            aload 0 /* this */
            invokevirtual javax.naming.NameImpl.size:()I
            if_icmpne 18
         3: .line 477
            aload 0 /* this */
            invokevirtual javax.naming.NameImpl.getAll:()Ljava/util/Enumeration;
            astore 3 /* mycomps */
        start local 3 // java.util.Enumeration mycomps
         4: .line 478
            aload 2 /* target */
            invokevirtual javax.naming.NameImpl.getAll:()Ljava/util/Enumeration;
            astore 4 /* comps */
        start local 4 // java.util.Enumeration comps
         5: .line 479
            goto 16
         6: .line 481
      StackMap locals: javax.naming.NameImpl java.util.Enumeration java.util.Enumeration
      StackMap stack:
            aload 3 /* mycomps */
            invokeinterface java.util.Enumeration.nextElement:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 5 /* my */
        start local 5 // java.lang.String my
         7: .line 482
            aload 4 /* comps */
            invokeinterface java.util.Enumeration.nextElement:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 6 /* his */
        start local 6 // java.lang.String his
         8: .line 483
            aload 0 /* this */
            getfield javax.naming.NameImpl.syntaxTrimBlanks:Z
            ifeq 11
         9: .line 484
            aload 5 /* my */
            invokevirtual java.lang.String.trim:()Ljava/lang/String;
            astore 5 /* my */
        10: .line 485
            aload 6 /* his */
            invokevirtual java.lang.String.trim:()Ljava/lang/String;
            astore 6 /* his */
        11: .line 487
      StackMap locals: java.lang.String java.lang.String
      StackMap stack:
            aload 0 /* this */
            getfield javax.naming.NameImpl.syntaxCaseInsensitive:Z
            ifeq 14
        12: .line 488
            aload 5 /* my */
            aload 6 /* his */
            invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
            ifne 16
        13: .line 489
            iconst_0
            ireturn
        14: .line 491
      StackMap locals:
      StackMap stack:
            aload 5 /* my */
            aload 6 /* his */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 16
        15: .line 492
            iconst_0
            ireturn
        end local 6 // java.lang.String his
        end local 5 // java.lang.String my
        16: .line 479
      StackMap locals:
      StackMap stack:
            aload 3 /* mycomps */
            invokeinterface java.util.Enumeration.hasMoreElements:()Z
            ifne 6
        17: .line 495
            iconst_1
            ireturn
        end local 4 // java.util.Enumeration comps
        end local 3 // java.util.Enumeration mycomps
        end local 2 // javax.naming.NameImpl target
        18: .line 498
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 1 // java.lang.Object obj
        end local 0 // javax.naming.NameImpl this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   19     0     this  Ljavax/naming/NameImpl;
            0   19     1      obj  Ljava/lang/Object;
            2   18     2   target  Ljavax/naming/NameImpl;
            4   18     3  mycomps  Ljava/util/Enumeration;
            5   18     4    comps  Ljava/util/Enumeration;
            7   16     5       my  Ljava/lang/String;
            8   16     6      his  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      obj   

  public int compareTo(javax.naming.NameImpl);
    descriptor: (Ljavax/naming/NameImpl;)I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=10, args_size=2
        start local 0 // javax.naming.NameImpl this
        start local 1 // javax.naming.NameImpl obj
         0: .line 510
            aload 0 /* this */
            aload 1 /* obj */
            if_acmpne 2
         1: .line 511
            iconst_0
            ireturn
         2: .line 514
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual javax.naming.NameImpl.size:()I
            istore 2 /* len1 */
        start local 2 // int len1
         3: .line 515
            aload 1 /* obj */
            invokevirtual javax.naming.NameImpl.size:()I
            istore 3 /* len2 */
        start local 3 // int len2
         4: .line 516
            iload 2 /* len1 */
            iload 3 /* len2 */
            invokestatic java.lang.Math.min:(II)I
            istore 4 /* n */
        start local 4 // int n
         5: .line 518
            iconst_0
            istore 5 /* index1 */
        start local 5 // int index1
         6: iconst_0
            istore 6 /* index2 */
        start local 6 // int index2
         7: .line 520
            goto 19
         8: .line 521
      StackMap locals: javax.naming.NameImpl javax.naming.NameImpl int int int int int
      StackMap stack:
            aload 0 /* this */
            iload 5 /* index1 */
            iinc 5 /* index1 */ 1
            invokevirtual javax.naming.NameImpl.get:(I)Ljava/lang/String;
            astore 7 /* comp1 */
        start local 7 // java.lang.String comp1
         9: .line 522
            aload 1 /* obj */
            iload 6 /* index2 */
            iinc 6 /* index2 */ 1
            invokevirtual javax.naming.NameImpl.get:(I)Ljava/lang/String;
            astore 8 /* comp2 */
        start local 8 // java.lang.String comp2
        10: .line 525
            aload 0 /* this */
            getfield javax.naming.NameImpl.syntaxTrimBlanks:Z
            ifeq 13
        11: .line 526
            aload 7 /* comp1 */
            invokevirtual java.lang.String.trim:()Ljava/lang/String;
            astore 7 /* comp1 */
        12: .line 527
            aload 8 /* comp2 */
            invokevirtual java.lang.String.trim:()Ljava/lang/String;
            astore 8 /* comp2 */
        13: .line 529
      StackMap locals: java.lang.String java.lang.String
      StackMap stack:
            aload 0 /* this */
            getfield javax.naming.NameImpl.syntaxCaseInsensitive:Z
            ifeq 16
        14: .line 530
            aload 7 /* comp1 */
            invokevirtual java.lang.String.toLowerCase:()Ljava/lang/String;
            astore 7 /* comp1 */
        15: .line 531
            aload 8 /* comp2 */
            invokevirtual java.lang.String.toLowerCase:()Ljava/lang/String;
            astore 8 /* comp2 */
        16: .line 533
      StackMap locals:
      StackMap stack:
            aload 7 /* comp1 */
            aload 8 /* comp2 */
            invokevirtual java.lang.String.compareTo:(Ljava/lang/String;)I
            istore 9 /* local */
        start local 9 // int local
        17: .line 534
            iload 9 /* local */
            ifeq 19
        18: .line 535
            iload 9 /* local */
            ireturn
        end local 9 // int local
        end local 8 // java.lang.String comp2
        end local 7 // java.lang.String comp1
        19: .line 520
      StackMap locals:
      StackMap stack:
            iload 4 /* n */
            iinc 4 /* n */ -1
            ifne 8
        20: .line 539
            iload 2 /* len1 */
            iload 3 /* len2 */
            isub
            ireturn
        end local 6 // int index2
        end local 5 // int index1
        end local 4 // int n
        end local 3 // int len2
        end local 2 // int len1
        end local 1 // javax.naming.NameImpl obj
        end local 0 // javax.naming.NameImpl this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   21     0    this  Ljavax/naming/NameImpl;
            0   21     1     obj  Ljavax/naming/NameImpl;
            3   21     2    len1  I
            4   21     3    len2  I
            5   21     4       n  I
            6   21     5  index1  I
            7   21     6  index2  I
            9   19     7   comp1  Ljava/lang/String;
           10   19     8   comp2  Ljava/lang/String;
           17   19     9   local  I
    MethodParameters:
      Name  Flags
      obj   

  public int size();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // javax.naming.NameImpl this
         0: .line 543
            aload 0 /* this */
            getfield javax.naming.NameImpl.components:Ljava/util/Vector;
            invokevirtual java.util.Vector.size:()I
            ireturn
        end local 0 // javax.naming.NameImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljavax/naming/NameImpl;

  public java.util.Enumeration getAll();
    descriptor: ()Ljava/util/Enumeration;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // javax.naming.NameImpl this
         0: .line 547
            aload 0 /* this */
            getfield javax.naming.NameImpl.components:Ljava/util/Vector;
            invokevirtual java.util.Vector.elements:()Ljava/util/Enumeration;
            areturn
        end local 0 // javax.naming.NameImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljavax/naming/NameImpl;

  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 // javax.naming.NameImpl this
        start local 1 // int posn
         0: .line 551
            aload 0 /* this */
            getfield javax.naming.NameImpl.components:Ljava/util/Vector;
            iload 1 /* posn */
            invokevirtual java.util.Vector.elementAt:(I)Ljava/lang/Object;
            checkcast java.lang.String
            areturn
        end local 1 // int posn
        end local 0 // javax.naming.NameImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljavax/naming/NameImpl;
            0    1     1  posn  I
    MethodParameters:
      Name  Flags
      posn  

  public java.util.Enumeration getPrefix(int);
    descriptor: (I)Ljava/util/Enumeration;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=2, args_size=2
        start local 0 // javax.naming.NameImpl this
        start local 1 // int posn
         0: .line 555
            iload 1 /* posn */
            iflt 1
            iload 1 /* posn */
            aload 0 /* this */
            invokevirtual javax.naming.NameImpl.size:()I
            if_icmple 2
         1: .line 556
      StackMap locals:
      StackMap stack:
            new java.lang.ArrayIndexOutOfBoundsException
            dup
            iload 1 /* posn */
            invokespecial java.lang.ArrayIndexOutOfBoundsException.<init>:(I)V
            athrow
         2: .line 558
      StackMap locals:
      StackMap stack:
            new javax.naming.NameImplEnumerator
            dup
            aload 0 /* this */
            getfield javax.naming.NameImpl.components:Ljava/util/Vector;
            iconst_0
            iload 1 /* posn */
            invokespecial javax.naming.NameImplEnumerator.<init>:(Ljava/util/Vector;II)V
            areturn
        end local 1 // int posn
        end local 0 // javax.naming.NameImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Ljavax/naming/NameImpl;
            0    3     1  posn  I
    MethodParameters:
      Name  Flags
      posn  

  public java.util.Enumeration getSuffix(int);
    descriptor: (I)Ljava/util/Enumeration;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=2
        start local 0 // javax.naming.NameImpl this
        start local 1 // int posn
         0: .line 562
            aload 0 /* this */
            invokevirtual javax.naming.NameImpl.size:()I
            istore 2 /* cnt */
        start local 2 // int cnt
         1: .line 563
            iload 1 /* posn */
            iflt 2
            iload 1 /* posn */
            iload 2 /* cnt */
            if_icmple 3
         2: .line 564
      StackMap locals: int
      StackMap stack:
            new java.lang.ArrayIndexOutOfBoundsException
            dup
            iload 1 /* posn */
            invokespecial java.lang.ArrayIndexOutOfBoundsException.<init>:(I)V
            athrow
         3: .line 566
      StackMap locals:
      StackMap stack:
            new javax.naming.NameImplEnumerator
            dup
            aload 0 /* this */
            getfield javax.naming.NameImpl.components:Ljava/util/Vector;
            iload 1 /* posn */
            iload 2 /* cnt */
            invokespecial javax.naming.NameImplEnumerator.<init>:(Ljava/util/Vector;II)V
            areturn
        end local 2 // int cnt
        end local 1 // int posn
        end local 0 // javax.naming.NameImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Ljavax/naming/NameImpl;
            0    4     1  posn  I
            1    4     2   cnt  I
    MethodParameters:
      Name  Flags
      posn  

  public boolean isEmpty();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // javax.naming.NameImpl this
         0: .line 570
            aload 0 /* this */
            getfield javax.naming.NameImpl.components:Ljava/util/Vector;
            invokevirtual java.util.Vector.isEmpty:()Z
            ireturn
        end local 0 // javax.naming.NameImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljavax/naming/NameImpl;

  public boolean startsWith(int, java.util.Enumeration);
    descriptor: (ILjava/util/Enumeration;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=6, args_size=3
        start local 0 // javax.naming.NameImpl this
        start local 1 // int posn
        start local 2 // java.util.Enumeration prefix
         0: .line 574
            iload 1 /* posn */
            iflt 1
            iload 1 /* posn */
            aload 0 /* this */
            invokevirtual javax.naming.NameImpl.size:()I
            if_icmple 2
         1: .line 575
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
         2: .line 578
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 1 /* posn */
            invokevirtual javax.naming.NameImpl.getPrefix:(I)Ljava/util/Enumeration;
            astore 3 /* mycomps */
        start local 3 // java.util.Enumeration mycomps
         3: .line 579
            goto 14
         4: .line 580
      StackMap locals: java.util.Enumeration
      StackMap stack:
            aload 3 /* mycomps */
            invokeinterface java.util.Enumeration.nextElement:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 4 /* my */
        start local 4 // java.lang.String my
         5: .line 581
            aload 2 /* prefix */
            invokeinterface java.util.Enumeration.nextElement:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 5 /* his */
        start local 5 // java.lang.String his
         6: .line 582
            aload 0 /* this */
            getfield javax.naming.NameImpl.syntaxTrimBlanks:Z
            ifeq 9
         7: .line 583
            aload 4 /* my */
            invokevirtual java.lang.String.trim:()Ljava/lang/String;
            astore 4 /* my */
         8: .line 584
            aload 5 /* his */
            invokevirtual java.lang.String.trim:()Ljava/lang/String;
            astore 5 /* his */
         9: .line 586
      StackMap locals: java.lang.String java.lang.String
      StackMap stack:
            aload 0 /* this */
            getfield javax.naming.NameImpl.syntaxCaseInsensitive:Z
            ifeq 12
        10: .line 587
            aload 4 /* my */
            aload 5 /* his */
            invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
            ifne 14
        11: .line 588
            iconst_0
            ireturn
        12: .line 590
      StackMap locals:
      StackMap stack:
            aload 4 /* my */
            aload 5 /* his */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 14
        13: .line 591
            iconst_0
            ireturn
        end local 5 // java.lang.String his
        end local 4 // java.lang.String my
        14: .line 579
      StackMap locals:
      StackMap stack:
            aload 3 /* mycomps */
            invokeinterface java.util.Enumeration.hasMoreElements:()Z
            ifne 4
        end local 3 // java.util.Enumeration mycomps
        15: .line 594
            goto 18
      StackMap locals: javax.naming.NameImpl int java.util.Enumeration
      StackMap stack: java.util.NoSuchElementException
        16: pop
        17: .line 595
            iconst_0
            ireturn
        18: .line 597
      StackMap locals:
      StackMap stack:
            iconst_1
            ireturn
        end local 2 // java.util.Enumeration prefix
        end local 1 // int posn
        end local 0 // javax.naming.NameImpl this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   19     0     this  Ljavax/naming/NameImpl;
            0   19     1     posn  I
            0   19     2   prefix  Ljava/util/Enumeration;
            3   15     3  mycomps  Ljava/util/Enumeration;
            5   14     4       my  Ljava/lang/String;
            6   14     5      his  Ljava/lang/String;
      Exception table:
        from    to  target  type
           2    11      16  Class java.util.NoSuchElementException
          12    13      16  Class java.util.NoSuchElementException
          14    15      16  Class java.util.NoSuchElementException
    MethodParameters:
        Name  Flags
      posn    
      prefix  

  public boolean endsWith(int, java.util.Enumeration);
    descriptor: (ILjava/util/Enumeration;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=7, args_size=3
        start local 0 // javax.naming.NameImpl this
        start local 1 // int posn
        start local 2 // java.util.Enumeration suffix
         0: .line 605
            aload 0 /* this */
            invokevirtual javax.naming.NameImpl.size:()I
            iload 1 /* posn */
            isub
            istore 3 /* startIndex */
        start local 3 // int startIndex
         1: .line 606
            iload 3 /* startIndex */
            iflt 2
            iload 3 /* startIndex */
            aload 0 /* this */
            invokevirtual javax.naming.NameImpl.size:()I
            if_icmple 3
         2: .line 607
      StackMap locals: int
      StackMap stack:
            iconst_0
            ireturn
         3: .line 610
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 3 /* startIndex */
            invokevirtual javax.naming.NameImpl.getSuffix:(I)Ljava/util/Enumeration;
            astore 4 /* mycomps */
        start local 4 // java.util.Enumeration mycomps
         4: .line 611
            goto 15
         5: .line 612
      StackMap locals: java.util.Enumeration
      StackMap stack:
            aload 4 /* mycomps */
            invokeinterface java.util.Enumeration.nextElement:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 5 /* my */
        start local 5 // java.lang.String my
         6: .line 613
            aload 2 /* suffix */
            invokeinterface java.util.Enumeration.nextElement:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 6 /* his */
        start local 6 // java.lang.String his
         7: .line 614
            aload 0 /* this */
            getfield javax.naming.NameImpl.syntaxTrimBlanks:Z
            ifeq 10
         8: .line 615
            aload 5 /* my */
            invokevirtual java.lang.String.trim:()Ljava/lang/String;
            astore 5 /* my */
         9: .line 616
            aload 6 /* his */
            invokevirtual java.lang.String.trim:()Ljava/lang/String;
            astore 6 /* his */
        10: .line 618
      StackMap locals: java.lang.String java.lang.String
      StackMap stack:
            aload 0 /* this */
            getfield javax.naming.NameImpl.syntaxCaseInsensitive:Z
            ifeq 13
        11: .line 619
            aload 5 /* my */
            aload 6 /* his */
            invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
            ifne 15
        12: .line 620
            iconst_0
            ireturn
        13: .line 622
      StackMap locals:
      StackMap stack:
            aload 5 /* my */
            aload 6 /* his */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 15
        14: .line 623
            iconst_0
            ireturn
        end local 6 // java.lang.String his
        end local 5 // java.lang.String my
        15: .line 611
      StackMap locals:
      StackMap stack:
            aload 4 /* mycomps */
            invokeinterface java.util.Enumeration.hasMoreElements:()Z
            ifne 5
        end local 4 // java.util.Enumeration mycomps
        16: .line 626
            goto 19
      StackMap locals: javax.naming.NameImpl int java.util.Enumeration int
      StackMap stack: java.util.NoSuchElementException
        17: pop
        18: .line 627
            iconst_0
            ireturn
        19: .line 629
      StackMap locals:
      StackMap stack:
            iconst_1
            ireturn
        end local 3 // int startIndex
        end local 2 // java.util.Enumeration suffix
        end local 1 // int posn
        end local 0 // javax.naming.NameImpl this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   20     0        this  Ljavax/naming/NameImpl;
            0   20     1        posn  I
            0   20     2      suffix  Ljava/util/Enumeration;
            1   20     3  startIndex  I
            4   16     4     mycomps  Ljava/util/Enumeration;
            6   15     5          my  Ljava/lang/String;
            7   15     6         his  Ljava/lang/String;
      Exception table:
        from    to  target  type
           3    12      17  Class java.util.NoSuchElementException
          13    14      17  Class java.util.NoSuchElementException
          15    16      17  Class java.util.NoSuchElementException
    MethodParameters:
        Name  Flags
      posn    
      suffix  

  public boolean addAll(java.util.Enumeration);
    descriptor: (Ljava/util/Enumeration;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=4, args_size=2
        start local 0 // javax.naming.NameImpl this
        start local 1 // java.util.Enumeration comps
         0: .line 633
            iconst_0
            istore 2 /* added */
        start local 2 // boolean added
         1: .line 634
            goto 12
         2: .line 636
      StackMap locals: int
      StackMap stack:
            aload 1 /* comps */
            invokeinterface java.util.Enumeration.nextElement:()Ljava/lang/Object;
            astore 3 /* comp */
        start local 3 // java.lang.Object comp
         3: .line 637
            aload 0 /* this */
            invokevirtual javax.naming.NameImpl.size:()I
            ifle 7
            aload 0 /* this */
            getfield javax.naming.NameImpl.syntaxDirection:B
            ifne 7
         4: .line 638
            new javax.naming.InvalidNameException
            dup
         5: .line 639
            ldc "A flat name can only have a single component"
         6: .line 638
            invokespecial javax.naming.InvalidNameException.<init>:(Ljava/lang/String;)V
            athrow
         7: .line 641
      StackMap locals: java.lang.Object
      StackMap stack:
            aload 0 /* this */
            getfield javax.naming.NameImpl.components:Ljava/util/Vector;
            aload 3 /* comp */
            invokevirtual java.util.Vector.addElement:(Ljava/lang/Object;)V
         8: .line 642
            iconst_1
            istore 2 /* added */
        end local 3 // java.lang.Object comp
         9: .line 643
            goto 12
      StackMap locals: javax.naming.NameImpl java.util.Enumeration int
      StackMap stack: java.util.NoSuchElementException
        10: pop
        11: .line 644
            goto 13
        12: .line 634
      StackMap locals:
      StackMap stack:
            aload 1 /* comps */
            invokeinterface java.util.Enumeration.hasMoreElements:()Z
            ifne 2
        13: .line 647
      StackMap locals:
      StackMap stack:
            iload 2 /* added */
            ireturn
        end local 2 // boolean added
        end local 1 // java.util.Enumeration comps
        end local 0 // javax.naming.NameImpl this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   14     0   this  Ljavax/naming/NameImpl;
            0   14     1  comps  Ljava/util/Enumeration;
            1   14     2  added  Z
            3    9     3   comp  Ljava/lang/Object;
      Exception table:
        from    to  target  type
           2     9      10  Class java.util.NoSuchElementException
    Exceptions:
      throws javax.naming.InvalidNameException
    MethodParameters:
       Name  Flags
      comps  

  public boolean addAll(int, java.util.Enumeration);
    descriptor: (ILjava/util/Enumeration;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=6, args_size=3
        start local 0 // javax.naming.NameImpl this
        start local 1 // int posn
        start local 2 // java.util.Enumeration comps
         0: .line 652
            iconst_0
            istore 3 /* added */
        start local 3 // boolean added
         1: .line 653
            iload 1 /* posn */
            istore 4 /* i */
        start local 4 // int i
         2: goto 14
         3: .line 655
      StackMap locals: int int
      StackMap stack:
            aload 2 /* comps */
            invokeinterface java.util.Enumeration.nextElement:()Ljava/lang/Object;
            astore 5 /* comp */
        start local 5 // java.lang.Object comp
         4: .line 656
            aload 0 /* this */
            invokevirtual javax.naming.NameImpl.size:()I
            ifle 8
            aload 0 /* this */
            getfield javax.naming.NameImpl.syntaxDirection:B
            ifne 8
         5: .line 657
            new javax.naming.InvalidNameException
            dup
         6: .line 658
            ldc "A flat name can only have a single component"
         7: .line 657
            invokespecial javax.naming.InvalidNameException.<init>:(Ljava/lang/String;)V
            athrow
         8: .line 660
      StackMap locals: java.lang.Object
      StackMap stack:
            aload 0 /* this */
            getfield javax.naming.NameImpl.components:Ljava/util/Vector;
            aload 5 /* comp */
            iload 4 /* i */
            invokevirtual java.util.Vector.insertElementAt:(Ljava/lang/Object;I)V
         9: .line 661
            iconst_1
            istore 3 /* added */
        end local 5 // java.lang.Object comp
        10: .line 662
            goto 13
      StackMap locals: javax.naming.NameImpl int java.util.Enumeration int int
      StackMap stack: java.util.NoSuchElementException
        11: pop
        12: .line 663
            goto 15
        13: .line 653
      StackMap locals:
      StackMap stack:
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
        14: aload 2 /* comps */
            invokeinterface java.util.Enumeration.hasMoreElements:()Z
            ifne 3
        end local 4 // int i
        15: .line 666
      StackMap locals:
      StackMap stack:
            iload 3 /* added */
            ireturn
        end local 3 // boolean added
        end local 2 // java.util.Enumeration comps
        end local 1 // int posn
        end local 0 // javax.naming.NameImpl this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   16     0   this  Ljavax/naming/NameImpl;
            0   16     1   posn  I
            0   16     2  comps  Ljava/util/Enumeration;
            1   16     3  added  Z
            2   15     4      i  I
            4   10     5   comp  Ljava/lang/Object;
      Exception table:
        from    to  target  type
           3    10      11  Class java.util.NoSuchElementException
    Exceptions:
      throws javax.naming.InvalidNameException
    MethodParameters:
       Name  Flags
      posn   
      comps  

  public void add(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // javax.naming.NameImpl this
        start local 1 // java.lang.String comp
         0: .line 670
            aload 0 /* this */
            invokevirtual javax.naming.NameImpl.size:()I
            ifle 4
            aload 0 /* this */
            getfield javax.naming.NameImpl.syntaxDirection:B
            ifne 4
         1: .line 671
            new javax.naming.InvalidNameException
            dup
         2: .line 672
            ldc "A flat name can only have a single component"
         3: .line 671
            invokespecial javax.naming.InvalidNameException.<init>:(Ljava/lang/String;)V
            athrow
         4: .line 674
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield javax.naming.NameImpl.components:Ljava/util/Vector;
            aload 1 /* comp */
            invokevirtual java.util.Vector.addElement:(Ljava/lang/Object;)V
         5: .line 675
            return
        end local 1 // java.lang.String comp
        end local 0 // javax.naming.NameImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0  this  Ljavax/naming/NameImpl;
            0    6     1  comp  Ljava/lang/String;
    Exceptions:
      throws javax.naming.InvalidNameException
    MethodParameters:
      Name  Flags
      comp  

  public void add(int, java.lang.String);
    descriptor: (ILjava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // javax.naming.NameImpl this
        start local 1 // int posn
        start local 2 // java.lang.String comp
         0: .line 678
            aload 0 /* this */
            invokevirtual javax.naming.NameImpl.size:()I
            ifle 4
            aload 0 /* this */
            getfield javax.naming.NameImpl.syntaxDirection:B
            ifne 4
         1: .line 679
            new javax.naming.InvalidNameException
            dup
         2: .line 680
            ldc "A flat name can only zero or one component"
         3: .line 679
            invokespecial javax.naming.InvalidNameException.<init>:(Ljava/lang/String;)V
            athrow
         4: .line 682
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield javax.naming.NameImpl.components:Ljava/util/Vector;
            aload 2 /* comp */
            iload 1 /* posn */
            invokevirtual java.util.Vector.insertElementAt:(Ljava/lang/Object;I)V
         5: .line 683
            return
        end local 2 // java.lang.String comp
        end local 1 // int posn
        end local 0 // javax.naming.NameImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0  this  Ljavax/naming/NameImpl;
            0    6     1  posn  I
            0    6     2  comp  Ljava/lang/String;
    Exceptions:
      throws javax.naming.InvalidNameException
    MethodParameters:
      Name  Flags
      posn  
      comp  

  public java.lang.Object remove(int);
    descriptor: (I)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // javax.naming.NameImpl this
        start local 1 // int posn
         0: .line 686
            aload 0 /* this */
            getfield javax.naming.NameImpl.components:Ljava/util/Vector;
            iload 1 /* posn */
            invokevirtual java.util.Vector.elementAt:(I)Ljava/lang/Object;
            astore 2 /* r */
        start local 2 // java.lang.Object r
         1: .line 687
            aload 0 /* this */
            getfield javax.naming.NameImpl.components:Ljava/util/Vector;
            iload 1 /* posn */
            invokevirtual java.util.Vector.removeElementAt:(I)V
         2: .line 688
            aload 2 /* r */
            areturn
        end local 2 // java.lang.Object r
        end local 1 // int posn
        end local 0 // javax.naming.NameImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Ljavax/naming/NameImpl;
            0    3     1  posn  I
            1    3     2     r  Ljava/lang/Object;
    MethodParameters:
      Name  Flags
      posn  

  public int hashCode();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=4, args_size=1
        start local 0 // javax.naming.NameImpl this
         0: .line 692
            iconst_0
            istore 1 /* hash */
        start local 1 // int hash
         1: .line 693
            aload 0 /* this */
            invokevirtual javax.naming.NameImpl.getAll:()Ljava/util/Enumeration;
            astore 2 /* e */
        start local 2 // java.util.Enumeration e
         2: goto 9
         3: .line 694
      StackMap locals: int java.util.Enumeration
      StackMap stack:
            aload 2 /* e */
            invokeinterface java.util.Enumeration.nextElement:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 3 /* comp */
        start local 3 // java.lang.String comp
         4: .line 695
            aload 0 /* this */
            getfield javax.naming.NameImpl.syntaxTrimBlanks:Z
            ifeq 6
         5: .line 696
            aload 3 /* comp */
            invokevirtual java.lang.String.trim:()Ljava/lang/String;
            astore 3 /* comp */
         6: .line 698
      StackMap locals: java.lang.String
      StackMap stack:
            aload 0 /* this */
            getfield javax.naming.NameImpl.syntaxCaseInsensitive:Z
            ifeq 8
         7: .line 699
            aload 3 /* comp */
            invokevirtual java.lang.String.toLowerCase:()Ljava/lang/String;
            astore 3 /* comp */
         8: .line 702
      StackMap locals:
      StackMap stack:
            iload 1 /* hash */
            aload 3 /* comp */
            invokevirtual java.lang.String.hashCode:()I
            iadd
            istore 1 /* hash */
        end local 3 // java.lang.String comp
         9: .line 693
      StackMap locals:
      StackMap stack:
            aload 2 /* e */
            invokeinterface java.util.Enumeration.hasMoreElements:()Z
            ifne 3
        end local 2 // java.util.Enumeration e
        10: .line 704
            iload 1 /* hash */
            ireturn
        end local 1 // int hash
        end local 0 // javax.naming.NameImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   11     0  this  Ljavax/naming/NameImpl;
            1   11     1  hash  I
            2   10     2     e  Ljava/util/Enumeration;
            4    9     3  comp  Ljava/lang/String;
}
SourceFile: "NameImpl.java"