public final class com.sun.jndi.ldap.LdapURL extends com.sun.jndi.toolkit.url.Uri
  minor version: 0
  major version: 59
  flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
  this_class: com.sun.jndi.ldap.LdapURL
  super_class: com.sun.jndi.toolkit.url.Uri
{
  private boolean useSsl;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

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

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

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

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

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

  public void <init>(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=2
        start local 0 // com.sun.jndi.ldap.LdapURL this
        start local 1 // java.lang.String url
         0: .line 79
            aload 0 /* this */
            invokespecial com.sun.jndi.toolkit.url.Uri.<init>:()V
         1: .line 67
            aload 0 /* this */
            iconst_0
            putfield com.sun.jndi.ldap.LdapURL.useSsl:Z
         2: .line 68
            aload 0 /* this */
            aconst_null
            putfield com.sun.jndi.ldap.LdapURL.DN:Ljava/lang/String;
         3: .line 69
            aload 0 /* this */
            aconst_null
            putfield com.sun.jndi.ldap.LdapURL.attributes:Ljava/lang/String;
         4: .line 70
            aload 0 /* this */
            aconst_null
            putfield com.sun.jndi.ldap.LdapURL.scope:Ljava/lang/String;
         5: .line 71
            aload 0 /* this */
            aconst_null
            putfield com.sun.jndi.ldap.LdapURL.filter:Ljava/lang/String;
         6: .line 72
            aload 0 /* this */
            aconst_null
            putfield com.sun.jndi.ldap.LdapURL.extensions:Ljava/lang/String;
         7: .line 82
            aload 0 /* this */
            aload 1 /* url */
            invokevirtual com.sun.jndi.ldap.LdapURL.init:(Ljava/lang/String;)V
         8: .line 83
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.jndi.ldap.LdapURL.scheme:Ljava/lang/String;
            ldc "ldaps"
            invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
            putfield com.sun.jndi.ldap.LdapURL.useSsl:Z
         9: .line 85
            aload 0 /* this */
            getfield com.sun.jndi.ldap.LdapURL.scheme:Ljava/lang/String;
            ldc "ldap"
            invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
            ifne 11
            aload 0 /* this */
            getfield com.sun.jndi.ldap.LdapURL.useSsl:Z
            ifne 11
        10: .line 86
            new java.net.MalformedURLException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Not an LDAP URL: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* url */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.net.MalformedURLException.<init>:(Ljava/lang/String;)V
            athrow
        11: .line 89
      StackMap locals: com.sun.jndi.ldap.LdapURL java.lang.String
      StackMap stack:
            aload 0 /* this */
            invokevirtual com.sun.jndi.ldap.LdapURL.parsePathAndQuery:()V
        12: .line 91
            goto 21
      StackMap locals:
      StackMap stack: java.net.MalformedURLException
        13: astore 2 /* e */
        start local 2 // java.net.MalformedURLException e
        14: .line 92
            new javax.naming.NamingException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Cannot parse url: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* url */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial javax.naming.NamingException.<init>:(Ljava/lang/String;)V
            astore 3 /* ne */
        start local 3 // javax.naming.NamingException ne
        15: .line 93
            aload 3 /* ne */
            aload 2 /* e */
            invokevirtual javax.naming.NamingException.setRootCause:(Ljava/lang/Throwable;)V
        16: .line 94
            aload 3 /* ne */
            athrow
        end local 3 // javax.naming.NamingException ne
        end local 2 // java.net.MalformedURLException e
        17: .line 95
      StackMap locals:
      StackMap stack: java.io.UnsupportedEncodingException
            astore 2 /* e */
        start local 2 // java.io.UnsupportedEncodingException e
        18: .line 96
            new javax.naming.NamingException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Cannot parse url: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* url */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial javax.naming.NamingException.<init>:(Ljava/lang/String;)V
            astore 3 /* ne */
        start local 3 // javax.naming.NamingException ne
        19: .line 97
            aload 3 /* ne */
            aload 2 /* e */
            invokevirtual javax.naming.NamingException.setRootCause:(Ljava/lang/Throwable;)V
        20: .line 98
            aload 3 /* ne */
            athrow
        end local 3 // javax.naming.NamingException ne
        end local 2 // java.io.UnsupportedEncodingException e
        21: .line 100
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.lang.String url
        end local 0 // com.sun.jndi.ldap.LdapURL this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   22     0  this  Lcom/sun/jndi/ldap/LdapURL;
            0   22     1   url  Ljava/lang/String;
           14   17     2     e  Ljava/net/MalformedURLException;
           15   17     3    ne  Ljavax/naming/NamingException;
           18   21     2     e  Ljava/io/UnsupportedEncodingException;
           19   21     3    ne  Ljavax/naming/NamingException;
      Exception table:
        from    to  target  type
           7    12      13  Class java.net.MalformedURLException
           7    12      17  Class java.io.UnsupportedEncodingException
    Exceptions:
      throws javax.naming.NamingException
    MethodParameters:
      Name  Flags
      url   

  public boolean useSsl();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.sun.jndi.ldap.LdapURL this
         0: .line 106
            aload 0 /* this */
            getfield com.sun.jndi.ldap.LdapURL.useSsl:Z
            ireturn
        end local 0 // com.sun.jndi.ldap.LdapURL this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/jndi/ldap/LdapURL;

  public java.lang.String getDN();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.sun.jndi.ldap.LdapURL this
         0: .line 113
            aload 0 /* this */
            getfield com.sun.jndi.ldap.LdapURL.DN:Ljava/lang/String;
            areturn
        end local 0 // com.sun.jndi.ldap.LdapURL this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/jndi/ldap/LdapURL;

  public java.lang.String getAttributes();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.sun.jndi.ldap.LdapURL this
         0: .line 120
            aload 0 /* this */
            getfield com.sun.jndi.ldap.LdapURL.attributes:Ljava/lang/String;
            areturn
        end local 0 // com.sun.jndi.ldap.LdapURL this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/jndi/ldap/LdapURL;

  public java.lang.String getScope();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.sun.jndi.ldap.LdapURL this
         0: .line 127
            aload 0 /* this */
            getfield com.sun.jndi.ldap.LdapURL.scope:Ljava/lang/String;
            areturn
        end local 0 // com.sun.jndi.ldap.LdapURL this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/jndi/ldap/LdapURL;

  public java.lang.String getFilter();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.sun.jndi.ldap.LdapURL this
         0: .line 134
            aload 0 /* this */
            getfield com.sun.jndi.ldap.LdapURL.filter:Ljava/lang/String;
            areturn
        end local 0 // com.sun.jndi.ldap.LdapURL this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/jndi/ldap/LdapURL;

  public java.lang.String getExtensions();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.sun.jndi.ldap.LdapURL this
         0: .line 141
            aload 0 /* this */
            getfield com.sun.jndi.ldap.LdapURL.extensions:Ljava/lang/String;
            areturn
        end local 0 // com.sun.jndi.ldap.LdapURL this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/jndi/ldap/LdapURL;

  public static java.lang.String[] fromList(java.lang.String);
    descriptor: (Ljava/lang/String;)[Ljava/lang/String;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=5, args_size=1
        start local 0 // java.lang.String urlList
         0: .line 149
            aload 0 /* urlList */
            invokevirtual java.lang.String.length:()I
            iconst_1
            iadd
            iconst_2
            idiv
            anewarray java.lang.String
            astore 1 /* urls */
        start local 1 // java.lang.String[] urls
         1: .line 150
            iconst_0
            istore 2 /* i */
        start local 2 // int i
         2: .line 151
            new java.util.StringTokenizer
            dup
            aload 0 /* urlList */
            ldc " "
            invokespecial java.util.StringTokenizer.<init>:(Ljava/lang/String;Ljava/lang/String;)V
            astore 3 /* st */
        start local 3 // java.util.StringTokenizer st
         3: .line 153
            goto 5
         4: .line 154
      StackMap locals: java.lang.String[] int java.util.StringTokenizer
      StackMap stack:
            aload 1 /* urls */
            iload 2 /* i */
            iinc 2 /* i */ 1
            aload 3 /* st */
            invokevirtual java.util.StringTokenizer.nextToken:()Ljava/lang/String;
            aastore
         5: .line 153
      StackMap locals:
      StackMap stack:
            aload 3 /* st */
            invokevirtual java.util.StringTokenizer.hasMoreTokens:()Z
            ifne 4
         6: .line 156
            iload 2 /* i */
            anewarray java.lang.String
            astore 4 /* trimmed */
        start local 4 // java.lang.String[] trimmed
         7: .line 157
            aload 1 /* urls */
            iconst_0
            aload 4 /* trimmed */
            iconst_0
            iload 2 /* i */
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
         8: .line 158
            aload 4 /* trimmed */
            areturn
        end local 4 // java.lang.String[] trimmed
        end local 3 // java.util.StringTokenizer st
        end local 2 // int i
        end local 1 // java.lang.String[] urls
        end local 0 // java.lang.String urlList
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    9     0  urlList  Ljava/lang/String;
            1    9     1     urls  [Ljava/lang/String;
            2    9     2        i  I
            3    9     3       st  Ljava/util/StringTokenizer;
            7    9     4  trimmed  [Ljava/lang/String;
    Exceptions:
      throws javax.naming.NamingException
    MethodParameters:
         Name  Flags
      urlList  

  public static boolean hasQueryComponents(java.lang.String);
    descriptor: (Ljava/lang/String;)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // java.lang.String url
         0: .line 165
            aload 0 /* url */
            bipush 63
            invokevirtual java.lang.String.lastIndexOf:(I)I
            iconst_m1
            if_icmpeq 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // java.lang.String url
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0   url  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      url   

  static java.lang.String toUrlString(java.lang.String, int, java.lang.String, boolean);
    descriptor: (Ljava/lang/String;ILjava/lang/String;Z)Ljava/lang/String;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=3, locals=7, args_size=4
        start local 0 // java.lang.String host
        start local 1 // int port
        start local 2 // java.lang.String dn
        start local 3 // boolean useSsl
         0: .line 177
            aload 0 /* host */
            ifnull 1
            aload 0 /* host */
            goto 2
      StackMap locals:
      StackMap stack:
         1: ldc ""
      StackMap locals:
      StackMap stack: java.lang.String
         2: astore 4 /* h */
        start local 4 // java.lang.String h
         3: .line 178
            aload 4 /* h */
            bipush 58
            invokevirtual java.lang.String.indexOf:(I)I
            iconst_m1
            if_icmpeq 5
            aload 4 /* h */
            iconst_0
            invokevirtual java.lang.String.charAt:(I)C
            bipush 91
            if_icmpeq 5
         4: .line 179
            new java.lang.StringBuilder
            dup
            ldc "["
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 4 /* h */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "]"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 4 /* h */
         5: .line 181
      StackMap locals: java.lang.String
      StackMap stack:
            iload 1 /* port */
            iconst_m1
            if_icmpeq 6
            new java.lang.StringBuilder
            dup
            ldc ":"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 1 /* port */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            goto 7
      StackMap locals:
      StackMap stack:
         6: ldc ""
      StackMap locals:
      StackMap stack: java.lang.String
         7: astore 5 /* p */
        start local 5 // java.lang.String p
         8: .line 182
            aload 2 /* dn */
            ifnull 9
            new java.lang.StringBuilder
            dup
            ldc "/"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 2 /* dn */
            ldc "UTF8"
            invokestatic com.sun.jndi.toolkit.url.UrlUtil.encode:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            goto 10
      StackMap locals: java.lang.String
      StackMap stack:
         9: ldc ""
      StackMap locals:
      StackMap stack: java.lang.String
        10: astore 6 /* d */
        start local 6 // java.lang.String d
        11: .line 184
            iload 3 /* useSsl */
            ifeq 12
            new java.lang.StringBuilder
            dup
            ldc "ldaps://"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 4 /* h */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 5 /* p */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 6 /* d */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            goto 13
      StackMap locals: java.lang.String
      StackMap stack:
        12: new java.lang.StringBuilder
            dup
            ldc "ldap://"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 4 /* h */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 5 /* p */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 6 /* d */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
      StackMap locals:
      StackMap stack: java.lang.String
        13: areturn
        end local 6 // java.lang.String d
        end local 5 // java.lang.String p
        end local 4 // java.lang.String h
        14: .line 185
      StackMap locals: java.lang.String int java.lang.String int
      StackMap stack: java.io.UnsupportedEncodingException
            pop
        15: .line 187
            new java.lang.IllegalStateException
            dup
            ldc "UTF-8 encoding unavailable"
            invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
            athrow
        end local 3 // boolean useSsl
        end local 2 // java.lang.String dn
        end local 1 // int port
        end local 0 // java.lang.String host
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   16     0    host  Ljava/lang/String;
            0   16     1    port  I
            0   16     2      dn  Ljava/lang/String;
            0   16     3  useSsl  Z
            3   14     4       h  Ljava/lang/String;
            8   14     5       p  Ljava/lang/String;
           11   14     6       d  Ljava/lang/String;
      Exception table:
        from    to  target  type
           0    13      14  Class java.io.UnsupportedEncodingException
    MethodParameters:
        Name  Flags
      host    
      port    
      dn      
      useSsl  

  private void parsePathAndQuery();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=4, args_size=1
        start local 0 // com.sun.jndi.ldap.LdapURL this
         0: .line 200
            aload 0 /* this */
            getfield com.sun.jndi.ldap.LdapURL.path:Ljava/lang/String;
            ldc ""
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 2
         1: .line 201
            return
         2: .line 204
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.jndi.ldap.LdapURL.path:Ljava/lang/String;
            ldc "/"
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifeq 3
            aload 0 /* this */
            getfield com.sun.jndi.ldap.LdapURL.path:Ljava/lang/String;
            iconst_1
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            goto 4
      StackMap locals:
      StackMap stack: com.sun.jndi.ldap.LdapURL
         3: aload 0 /* this */
            getfield com.sun.jndi.ldap.LdapURL.path:Ljava/lang/String;
      StackMap locals: com.sun.jndi.ldap.LdapURL
      StackMap stack: com.sun.jndi.ldap.LdapURL java.lang.String
         4: putfield com.sun.jndi.ldap.LdapURL.DN:Ljava/lang/String;
         5: .line 205
            aload 0 /* this */
            getfield com.sun.jndi.ldap.LdapURL.DN:Ljava/lang/String;
            invokevirtual java.lang.String.length:()I
            ifle 7
         6: .line 206
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.jndi.ldap.LdapURL.DN:Ljava/lang/String;
            ldc "UTF8"
            invokestatic com.sun.jndi.toolkit.url.UrlUtil.decode:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
            putfield com.sun.jndi.ldap.LdapURL.DN:Ljava/lang/String;
         7: .line 211
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.jndi.ldap.LdapURL.query:Ljava/lang/String;
            ifnull 8
            aload 0 /* this */
            getfield com.sun.jndi.ldap.LdapURL.query:Ljava/lang/String;
            invokevirtual java.lang.String.length:()I
            iconst_2
            if_icmpge 9
         8: .line 212
      StackMap locals:
      StackMap stack:
            return
         9: .line 215
      StackMap locals:
      StackMap stack:
            iconst_1
            istore 1 /* currentIndex */
        start local 1 // int currentIndex
        10: .line 220
            aload 0 /* this */
            getfield com.sun.jndi.ldap.LdapURL.query:Ljava/lang/String;
            bipush 63
            iload 1 /* currentIndex */
            invokevirtual java.lang.String.indexOf:(II)I
            istore 2 /* nextQmark */
        start local 2 // int nextQmark
        11: .line 221
            iload 2 /* nextQmark */
            iconst_m1
            if_icmpne 12
            aload 0 /* this */
            getfield com.sun.jndi.ldap.LdapURL.query:Ljava/lang/String;
            invokevirtual java.lang.String.length:()I
            goto 13
      StackMap locals: int int
      StackMap stack:
        12: iload 2 /* nextQmark */
      StackMap locals:
      StackMap stack: int
        13: istore 3 /* endIndex */
        start local 3 // int endIndex
        14: .line 222
            iload 3 /* endIndex */
            iload 1 /* currentIndex */
            isub
            ifle 16
        15: .line 223
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.jndi.ldap.LdapURL.query:Ljava/lang/String;
            iload 1 /* currentIndex */
            iload 3 /* endIndex */
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            putfield com.sun.jndi.ldap.LdapURL.attributes:Ljava/lang/String;
        16: .line 225
      StackMap locals: int
      StackMap stack:
            iload 3 /* endIndex */
            iconst_1
            iadd
            istore 1 /* currentIndex */
        17: .line 226
            iload 1 /* currentIndex */
            aload 0 /* this */
            getfield com.sun.jndi.ldap.LdapURL.query:Ljava/lang/String;
            invokevirtual java.lang.String.length:()I
            if_icmplt 19
        18: .line 227
            return
        19: .line 231
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.jndi.ldap.LdapURL.query:Ljava/lang/String;
            bipush 63
            iload 1 /* currentIndex */
            invokevirtual java.lang.String.indexOf:(II)I
            istore 2 /* nextQmark */
        20: .line 232
            iload 2 /* nextQmark */
            iconst_m1
            if_icmpne 21
            aload 0 /* this */
            getfield com.sun.jndi.ldap.LdapURL.query:Ljava/lang/String;
            invokevirtual java.lang.String.length:()I
            goto 22
      StackMap locals:
      StackMap stack:
        21: iload 2 /* nextQmark */
      StackMap locals:
      StackMap stack: int
        22: istore 3 /* endIndex */
        23: .line 233
            iload 3 /* endIndex */
            iload 1 /* currentIndex */
            isub
            ifle 25
        24: .line 234
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.jndi.ldap.LdapURL.query:Ljava/lang/String;
            iload 1 /* currentIndex */
            iload 3 /* endIndex */
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            putfield com.sun.jndi.ldap.LdapURL.scope:Ljava/lang/String;
        25: .line 236
      StackMap locals:
      StackMap stack:
            iload 3 /* endIndex */
            iconst_1
            iadd
            istore 1 /* currentIndex */
        26: .line 237
            iload 1 /* currentIndex */
            aload 0 /* this */
            getfield com.sun.jndi.ldap.LdapURL.query:Ljava/lang/String;
            invokevirtual java.lang.String.length:()I
            if_icmplt 28
        27: .line 238
            return
        28: .line 242
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.jndi.ldap.LdapURL.query:Ljava/lang/String;
            bipush 63
            iload 1 /* currentIndex */
            invokevirtual java.lang.String.indexOf:(II)I
            istore 2 /* nextQmark */
        29: .line 243
            iload 2 /* nextQmark */
            iconst_m1
            if_icmpne 30
            aload 0 /* this */
            getfield com.sun.jndi.ldap.LdapURL.query:Ljava/lang/String;
            invokevirtual java.lang.String.length:()I
            goto 31
      StackMap locals:
      StackMap stack:
        30: iload 2 /* nextQmark */
      StackMap locals:
      StackMap stack: int
        31: istore 3 /* endIndex */
        32: .line 244
            iload 3 /* endIndex */
            iload 1 /* currentIndex */
            isub
            ifle 35
        33: .line 245
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.jndi.ldap.LdapURL.query:Ljava/lang/String;
            iload 1 /* currentIndex */
            iload 3 /* endIndex */
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            putfield com.sun.jndi.ldap.LdapURL.filter:Ljava/lang/String;
        34: .line 246
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.jndi.ldap.LdapURL.filter:Ljava/lang/String;
            ldc "UTF8"
            invokestatic com.sun.jndi.toolkit.url.UrlUtil.decode:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
            putfield com.sun.jndi.ldap.LdapURL.filter:Ljava/lang/String;
        35: .line 248
      StackMap locals:
      StackMap stack:
            iload 3 /* endIndex */
            iconst_1
            iadd
            istore 1 /* currentIndex */
        36: .line 249
            iload 1 /* currentIndex */
            aload 0 /* this */
            getfield com.sun.jndi.ldap.LdapURL.query:Ljava/lang/String;
            invokevirtual java.lang.String.length:()I
            if_icmplt 38
        37: .line 250
            return
        38: .line 254
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.jndi.ldap.LdapURL.query:Ljava/lang/String;
            invokevirtual java.lang.String.length:()I
            iload 1 /* currentIndex */
            isub
            ifle 41
        39: .line 255
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.jndi.ldap.LdapURL.query:Ljava/lang/String;
            iload 1 /* currentIndex */
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            putfield com.sun.jndi.ldap.LdapURL.extensions:Ljava/lang/String;
        40: .line 256
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.jndi.ldap.LdapURL.extensions:Ljava/lang/String;
            ldc "UTF8"
            invokestatic com.sun.jndi.toolkit.url.UrlUtil.decode:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
            putfield com.sun.jndi.ldap.LdapURL.extensions:Ljava/lang/String;
        41: .line 258
      StackMap locals:
      StackMap stack:
            return
        end local 3 // int endIndex
        end local 2 // int nextQmark
        end local 1 // int currentIndex
        end local 0 // com.sun.jndi.ldap.LdapURL this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   42     0          this  Lcom/sun/jndi/ldap/LdapURL;
           10   42     1  currentIndex  I
           11   42     2     nextQmark  I
           14   42     3      endIndex  I
    Exceptions:
      throws java.net.MalformedURLException, java.io.UnsupportedEncodingException
}
SourceFile: "LdapURL.java"