public final class java.net.URI implements java.lang.Comparable<java.net.URI>, java.io.Serializable
  minor version: 0
  major version: 59
  flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
  this_class: java.net.URI
  super_class: java.lang.Object
{
  static final long serialVersionUID;
    descriptor: J
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: -6052424284110960213

  private transient java.lang.String scheme;
    descriptor: Ljava/lang/String;
    flags: (0x0082) ACC_PRIVATE, ACC_TRANSIENT

  private transient java.lang.String fragment;
    descriptor: Ljava/lang/String;
    flags: (0x0082) ACC_PRIVATE, ACC_TRANSIENT

  private transient java.lang.String authority;
    descriptor: Ljava/lang/String;
    flags: (0x0082) ACC_PRIVATE, ACC_TRANSIENT

  private transient java.lang.String userInfo;
    descriptor: Ljava/lang/String;
    flags: (0x0082) ACC_PRIVATE, ACC_TRANSIENT

  private transient java.lang.String host;
    descriptor: Ljava/lang/String;
    flags: (0x0082) ACC_PRIVATE, ACC_TRANSIENT

  private transient int port;
    descriptor: I
    flags: (0x0082) ACC_PRIVATE, ACC_TRANSIENT

  private transient java.lang.String path;
    descriptor: Ljava/lang/String;
    flags: (0x0082) ACC_PRIVATE, ACC_TRANSIENT

  private transient java.lang.String query;
    descriptor: Ljava/lang/String;
    flags: (0x0082) ACC_PRIVATE, ACC_TRANSIENT

  private transient java.lang.String schemeSpecificPart;
    descriptor: Ljava/lang/String;
    flags: (0x0082) ACC_PRIVATE, ACC_TRANSIENT

  private transient int hash;
    descriptor: I
    flags: (0x0082) ACC_PRIVATE, ACC_TRANSIENT

  private transient java.lang.String decodedUserInfo;
    descriptor: Ljava/lang/String;
    flags: (0x0082) ACC_PRIVATE, ACC_TRANSIENT

  private transient java.lang.String decodedAuthority;
    descriptor: Ljava/lang/String;
    flags: (0x0082) ACC_PRIVATE, ACC_TRANSIENT

  private transient java.lang.String decodedPath;
    descriptor: Ljava/lang/String;
    flags: (0x0082) ACC_PRIVATE, ACC_TRANSIENT

  private transient java.lang.String decodedQuery;
    descriptor: Ljava/lang/String;
    flags: (0x0082) ACC_PRIVATE, ACC_TRANSIENT

  private transient java.lang.String decodedFragment;
    descriptor: Ljava/lang/String;
    flags: (0x0082) ACC_PRIVATE, ACC_TRANSIENT

  private transient java.lang.String decodedSchemeSpecificPart;
    descriptor: Ljava/lang/String;
    flags: (0x0082) ACC_PRIVATE, ACC_TRANSIENT

  private volatile java.lang.String string;
    descriptor: Ljava/lang/String;
    flags: (0x0042) ACC_PRIVATE, ACC_VOLATILE

  private static final long L_DIGIT;
    descriptor: J
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 287948901175001088

  private static final long H_DIGIT;
    descriptor: J
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 0

  private static final long L_UPALPHA;
    descriptor: J
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 0

  private static final long H_UPALPHA;
    descriptor: J
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 134217726

  private static final long L_LOWALPHA;
    descriptor: J
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 0

  private static final long H_LOWALPHA;
    descriptor: J
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 576460743713488896

  private static final long L_ALPHA;
    descriptor: J
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 0

  private static final long H_ALPHA;
    descriptor: J
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 576460743847706622

  private static final long L_ALPHANUM;
    descriptor: J
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 287948901175001088

  private static final long H_ALPHANUM;
    descriptor: J
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 576460743847706622

  private static final long L_HEX;
    descriptor: J
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 287948901175001088

  private static final long H_HEX;
    descriptor: J
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 541165879422

  private static final long L_MARK;
    descriptor: J
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 113808043409408

  private static final long H_MARK;
    descriptor: J
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 4611686020574871552

  private static final long L_UNRESERVED;
    descriptor: J
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 288062709218410496

  private static final long H_UNRESERVED;
    descriptor: J
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 5188146764422578174

  private static final long L_RESERVED;
    descriptor: J
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: -6052670429821140992

  private static final long H_RESERVED;
    descriptor: J
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 671088641

  private static final long L_ESCAPED;
    descriptor: J
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 1

  private static final long H_ESCAPED;
    descriptor: J
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 0

  private static final long L_URIC;
    descriptor: J
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: -5764607720602730495

  private static final long H_URIC;
    descriptor: J
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 5188146765093666815

  private static final long L_PCHAR;
    descriptor: J
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 2882162826460266497

  private static final long H_PCHAR;
    descriptor: J
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 5188146764422578175

  private static final long L_PATH;
    descriptor: J
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 3458764316252045313

  private static final long H_PATH;
    descriptor: J
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 5188146764422578175

  private static final long L_DASH;
    descriptor: J
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 35184372088832

  private static final long H_DASH;
    descriptor: J
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 0

  private static final long L_DOT;
    descriptor: J
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 70368744177664

  private static final long H_DOT;
    descriptor: J
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 0

  private static final long L_USERINFO;
    descriptor: J
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 3458623578763689985

  private static final long H_USERINFO;
    descriptor: J
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 5188146764422578174

  private static final long L_REG_NAME;
    descriptor: J
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 3458623578763689985

  private static final long H_REG_NAME;
    descriptor: J
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 5188146764422578175

  private static final long L_SERVER;
    descriptor: J
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 3458623578763689985

  private static final long H_SERVER;
    descriptor: J
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 5188146765093666815

  private static final long L_SERVER_PERCENT;
    descriptor: J
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 3458623716202643457

  private static final long H_SERVER_PERCENT;
    descriptor: J
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 5188146765093666815

  private static final long L_SCHEME;
    descriptor: J
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 288063250384289792

  private static final long H_SCHEME;
    descriptor: J
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 576460743847706622

  private static final long L_SCOPE_ID;
    descriptor: J
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 288019269919178752

  private static final long H_SCOPE_ID;
    descriptor: J
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 576460745995190270

  private static final char[] hexDigits;
    descriptor: [C
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  static final boolean $assertionsDisabled;
    descriptor: Z
    flags: (0x1018) ACC_STATIC, ACC_FINAL, ACC_SYNTHETIC

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=4, locals=0, args_size=0
         0: .line 499
            ldc Ljava/net/URI;
            invokevirtual java.lang.Class.desiredAssertionStatus:()Z
            ifne 1
            iconst_1
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_0
      StackMap locals:
      StackMap stack: int
         2: putstatic java.net.URI.$assertionsDisabled:Z
         3: .line 2753
            bipush 16
            newarray 5
            dup
            iconst_0
         4: .line 2754
            bipush 48
            castore
            dup
            iconst_1
            bipush 49
            castore
            dup
            iconst_2
            bipush 50
            castore
            dup
            iconst_3
            bipush 51
            castore
            dup
            iconst_4
            bipush 52
            castore
            dup
            iconst_5
            bipush 53
            castore
            dup
            bipush 6
            bipush 54
            castore
            dup
            bipush 7
            bipush 55
            castore
            dup
            bipush 8
         5: .line 2755
            bipush 56
            castore
            dup
            bipush 9
            bipush 57
            castore
            dup
            bipush 10
            bipush 65
            castore
            dup
            bipush 11
            bipush 66
            castore
            dup
            bipush 12
            bipush 67
            castore
            dup
            bipush 13
            bipush 68
            castore
            dup
            bipush 14
            bipush 69
            castore
            dup
            bipush 15
            bipush 70
            castore
         6: .line 2753
            putstatic java.net.URI.hexDigits:[C
         7: .line 3657
            new java.net.URI$1
            dup
            invokespecial java.net.URI$1.<init>:()V
         8: .line 3656
            invokestatic jdk.internal.access.SharedSecrets.setJavaNetUriAccess:(Ljdk/internal/access/JavaNetUriAccess;)V
         9: .line 3663
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  private void <init>();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // java.net.URI this
         0: .line 551
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 522
            aload 0 /* this */
            iconst_m1
            putfield java.net.URI.port:I
         2: .line 551
            return
        end local 0 // java.net.URI this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Ljava/net/URI;

  public void <init>(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // java.net.URI this
        start local 1 // java.lang.String str
         0: .line 622
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 522
            aload 0 /* this */
            iconst_m1
            putfield java.net.URI.port:I
         2: .line 623
            new java.net.URI$Parser
            dup
            aload 0 /* this */
            aload 1 /* str */
            invokespecial java.net.URI$Parser.<init>:(Ljava/net/URI;Ljava/lang/String;)V
            iconst_0
            invokevirtual java.net.URI$Parser.parse:(Z)V
         3: .line 624
            return
        end local 1 // java.lang.String str
        end local 0 // java.net.URI this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Ljava/net/URI;
            0    4     1   str  Ljava/lang/String;
    Exceptions:
      throws java.net.URISyntaxException
    MethodParameters:
      Name  Flags
      str   

  public void <init>(java.lang.String, java.lang.String, java.lang.String, int, java.lang.String, java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=10, locals=9, args_size=8
        start local 0 // java.net.URI this
        start local 1 // java.lang.String scheme
        start local 2 // java.lang.String userInfo
        start local 3 // java.lang.String host
        start local 4 // int port
        start local 5 // java.lang.String path
        start local 6 // java.lang.String query
        start local 7 // java.lang.String fragment
         0: .line 699
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 522
            aload 0 /* this */
            iconst_m1
            putfield java.net.URI.port:I
         2: .line 704
            aload 0 /* this */
            aload 1 /* scheme */
            aconst_null
         3: .line 705
            aconst_null
            aload 2 /* userInfo */
            aload 3 /* host */
            iload 4 /* port */
         4: .line 706
            aload 5 /* path */
            aload 6 /* query */
            aload 7 /* fragment */
         5: .line 704
            invokevirtual java.net.URI.toString:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
            astore 8 /* s */
        start local 8 // java.lang.String s
         6: .line 707
            aload 8 /* s */
            aload 1 /* scheme */
            aload 5 /* path */
            invokestatic java.net.URI.checkPath:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
         7: .line 708
            new java.net.URI$Parser
            dup
            aload 0 /* this */
            aload 8 /* s */
            invokespecial java.net.URI$Parser.<init>:(Ljava/net/URI;Ljava/lang/String;)V
            iconst_1
            invokevirtual java.net.URI$Parser.parse:(Z)V
         8: .line 709
            return
        end local 8 // java.lang.String s
        end local 7 // java.lang.String fragment
        end local 6 // java.lang.String query
        end local 5 // java.lang.String path
        end local 4 // int port
        end local 3 // java.lang.String host
        end local 2 // java.lang.String userInfo
        end local 1 // java.lang.String scheme
        end local 0 // java.net.URI this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    9     0      this  Ljava/net/URI;
            0    9     1    scheme  Ljava/lang/String;
            0    9     2  userInfo  Ljava/lang/String;
            0    9     3      host  Ljava/lang/String;
            0    9     4      port  I
            0    9     5      path  Ljava/lang/String;
            0    9     6     query  Ljava/lang/String;
            0    9     7  fragment  Ljava/lang/String;
            6    9     8         s  Ljava/lang/String;
    Exceptions:
      throws java.net.URISyntaxException
    MethodParameters:
          Name  Flags
      scheme    
      userInfo  
      host      
      port      
      path      
      query     
      fragment  

  public void <init>(java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=10, locals=7, args_size=6
        start local 0 // java.net.URI this
        start local 1 // java.lang.String scheme
        start local 2 // java.lang.String authority
        start local 3 // java.lang.String path
        start local 4 // java.lang.String query
        start local 5 // java.lang.String fragment
         0: .line 772
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 522
            aload 0 /* this */
            iconst_m1
            putfield java.net.URI.port:I
         2: .line 777
            aload 0 /* this */
            aload 1 /* scheme */
            aconst_null
         3: .line 778
            aload 2 /* authority */
            aconst_null
            aconst_null
            iconst_m1
         4: .line 779
            aload 3 /* path */
            aload 4 /* query */
            aload 5 /* fragment */
         5: .line 777
            invokevirtual java.net.URI.toString:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
            astore 6 /* s */
        start local 6 // java.lang.String s
         6: .line 780
            aload 6 /* s */
            aload 1 /* scheme */
            aload 3 /* path */
            invokestatic java.net.URI.checkPath:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
         7: .line 781
            new java.net.URI$Parser
            dup
            aload 0 /* this */
            aload 6 /* s */
            invokespecial java.net.URI$Parser.<init>:(Ljava/net/URI;Ljava/lang/String;)V
            iconst_0
            invokevirtual java.net.URI$Parser.parse:(Z)V
         8: .line 782
            return
        end local 6 // java.lang.String s
        end local 5 // java.lang.String fragment
        end local 4 // java.lang.String query
        end local 3 // java.lang.String path
        end local 2 // java.lang.String authority
        end local 1 // java.lang.String scheme
        end local 0 // java.net.URI this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    9     0       this  Ljava/net/URI;
            0    9     1     scheme  Ljava/lang/String;
            0    9     2  authority  Ljava/lang/String;
            0    9     3       path  Ljava/lang/String;
            0    9     4      query  Ljava/lang/String;
            0    9     5   fragment  Ljava/lang/String;
            6    9     6          s  Ljava/lang/String;
    Exceptions:
      throws java.net.URISyntaxException
    MethodParameters:
           Name  Flags
      scheme     
      authority  
      path       
      query      
      fragment   

  public void <init>(java.lang.String, java.lang.String, java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=8, locals=5, args_size=5
        start local 0 // java.net.URI this
        start local 1 // java.lang.String scheme
        start local 2 // java.lang.String host
        start local 3 // java.lang.String path
        start local 4 // java.lang.String fragment
         0: .line 809
            aload 0 /* this */
            aload 1 /* scheme */
            aconst_null
            aload 2 /* host */
            iconst_m1
            aload 3 /* path */
            aconst_null
            aload 4 /* fragment */
            invokespecial java.net.URI.<init>:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
         1: .line 810
            return
        end local 4 // java.lang.String fragment
        end local 3 // java.lang.String path
        end local 2 // java.lang.String host
        end local 1 // java.lang.String scheme
        end local 0 // java.net.URI this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    2     0      this  Ljava/net/URI;
            0    2     1    scheme  Ljava/lang/String;
            0    2     2      host  Ljava/lang/String;
            0    2     3      path  Ljava/lang/String;
            0    2     4  fragment  Ljava/lang/String;
    Exceptions:
      throws java.net.URISyntaxException
    MethodParameters:
          Name  Flags
      scheme    
      host      
      path      
      fragment  

  public void <init>(java.lang.String, java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=13, locals=4, args_size=4
        start local 0 // java.net.URI this
        start local 1 // java.lang.String scheme
        start local 2 // java.lang.String ssp
        start local 3 // java.lang.String fragment
         0: .line 849
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 522
            aload 0 /* this */
            iconst_m1
            putfield java.net.URI.port:I
         2: .line 852
            new java.net.URI$Parser
            dup
            aload 0 /* this */
            aload 0 /* this */
            aload 1 /* scheme */
            aload 2 /* ssp */
         3: .line 853
            aconst_null
            aconst_null
            aconst_null
            iconst_m1
         4: .line 854
            aconst_null
            aconst_null
            aload 3 /* fragment */
         5: .line 852
            invokevirtual java.net.URI.toString:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
            invokespecial java.net.URI$Parser.<init>:(Ljava/net/URI;Ljava/lang/String;)V
         6: .line 855
            iconst_0
            invokevirtual java.net.URI$Parser.parse:(Z)V
         7: .line 856
            return
        end local 3 // java.lang.String fragment
        end local 2 // java.lang.String ssp
        end local 1 // java.lang.String scheme
        end local 0 // java.net.URI this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    8     0      this  Ljava/net/URI;
            0    8     1    scheme  Ljava/lang/String;
            0    8     2       ssp  Ljava/lang/String;
            0    8     3  fragment  Ljava/lang/String;
    Exceptions:
      throws java.net.URISyntaxException
    MethodParameters:
          Name  Flags
      scheme    
      ssp       
      fragment  

  void <init>(java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;)V
    flags: (0x0000) 
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // java.net.URI this
        start local 1 // java.lang.String scheme
        start local 2 // java.lang.String path
         0: .line 862
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 522
            aload 0 /* this */
            iconst_m1
            putfield java.net.URI.port:I
         2: .line 863
            getstatic java.net.URI.$assertionsDisabled:Z
            ifne 3
            aload 1 /* scheme */
            aload 2 /* path */
            invokestatic java.net.URI.validSchemeAndPath:(Ljava/lang/String;Ljava/lang/String;)Z
            ifne 3
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         3: .line 864
      StackMap locals: java.net.URI java.lang.String java.lang.String
      StackMap stack:
            aload 0 /* this */
            aload 1 /* scheme */
            putfield java.net.URI.scheme:Ljava/lang/String;
         4: .line 865
            aload 0 /* this */
            aload 2 /* path */
            putfield java.net.URI.path:Ljava/lang/String;
         5: .line 866
            return
        end local 2 // java.lang.String path
        end local 1 // java.lang.String scheme
        end local 0 // java.net.URI this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    6     0    this  Ljava/net/URI;
            0    6     1  scheme  Ljava/lang/String;
            0    6     2    path  Ljava/lang/String;
    MethodParameters:
        Name  Flags
      scheme  
      path    

  private static boolean validSchemeAndPath(java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;)Z
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=5, locals=3, args_size=2
        start local 0 // java.lang.String scheme
        start local 1 // java.lang.String path
         0: .line 870
            new java.net.URI
            dup
            new java.lang.StringBuilder
            dup
            aload 0 /* scheme */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc ":"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 1 /* path */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.net.URI.<init>:(Ljava/lang/String;)V
            astore 2 /* u */
        start local 2 // java.net.URI u
         1: .line 871
            aload 0 /* scheme */
            aload 2 /* u */
            getfield java.net.URI.scheme:Ljava/lang/String;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 2
            aload 1 /* path */
            aload 2 /* u */
            getfield java.net.URI.path:Ljava/lang/String;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 2
            iconst_1
            ireturn
      StackMap locals: java.net.URI
      StackMap stack:
         2: iconst_0
         3: ireturn
        end local 2 // java.net.URI u
         4: .line 872
      StackMap locals: java.lang.String java.lang.String
      StackMap stack: java.net.URISyntaxException
            pop
         5: .line 873
            iconst_0
            ireturn
        end local 1 // java.lang.String path
        end local 0 // java.lang.String scheme
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    6     0  scheme  Ljava/lang/String;
            0    6     1    path  Ljava/lang/String;
            1    4     2       u  Ljava/net/URI;
      Exception table:
        from    to  target  type
           0     3       4  Class java.net.URISyntaxException
    MethodParameters:
        Name  Flags
      scheme  
      path    

  public static java.net.URI create(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/net/URI;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=2, args_size=1
        start local 0 // java.lang.String str
         0: .line 904
            new java.net.URI
            dup
            aload 0 /* str */
            invokespecial java.net.URI.<init>:(Ljava/lang/String;)V
         1: areturn
         2: .line 905
      StackMap locals:
      StackMap stack: java.net.URISyntaxException
            astore 1 /* x */
        start local 1 // java.net.URISyntaxException x
         3: .line 906
            new java.lang.IllegalArgumentException
            dup
            aload 1 /* x */
            invokevirtual java.net.URISyntaxException.getMessage:()Ljava/lang/String;
            aload 1 /* x */
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
            athrow
        end local 1 // java.net.URISyntaxException x
        end local 0 // java.lang.String str
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0   str  Ljava/lang/String;
            3    4     1     x  Ljava/net/URISyntaxException;
      Exception table:
        from    to  target  type
           0     1       2  Class java.net.URISyntaxException
    MethodParameters:
      Name  Flags
      str   

  public java.net.URI parseServerAuthority();
    descriptor: ()Ljava/net/URI;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // java.net.URI this
         0: .line 966
            aload 0 /* this */
            getfield java.net.URI.host:Ljava/lang/String;
            ifnonnull 1
            aload 0 /* this */
            getfield java.net.URI.authority:Ljava/lang/String;
            ifnonnull 2
         1: .line 967
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            areturn
         2: .line 968
      StackMap locals:
      StackMap stack:
            new java.net.URI$Parser
            dup
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual java.net.URI.toString:()Ljava/lang/String;
            invokespecial java.net.URI$Parser.<init>:(Ljava/net/URI;Ljava/lang/String;)V
            iconst_1
            invokevirtual java.net.URI$Parser.parse:(Z)V
         3: .line 969
            aload 0 /* this */
            areturn
        end local 0 // java.net.URI this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Ljava/net/URI;
    Exceptions:
      throws java.net.URISyntaxException

  public java.net.URI normalize();
    descriptor: ()Ljava/net/URI;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.net.URI this
         0: .line 1010
            aload 0 /* this */
            invokestatic java.net.URI.normalize:(Ljava/net/URI;)Ljava/net/URI;
            areturn
        end local 0 // java.net.URI this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljava/net/URI;

  public java.net.URI resolve(java.net.URI);
    descriptor: (Ljava/net/URI;)Ljava/net/URI;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // java.net.URI this
        start local 1 // java.net.URI uri
         0: .line 1068
            aload 0 /* this */
            aload 1 /* uri */
            invokestatic java.net.URI.resolve:(Ljava/net/URI;Ljava/net/URI;)Ljava/net/URI;
            areturn
        end local 1 // java.net.URI uri
        end local 0 // java.net.URI this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljava/net/URI;
            0    1     1   uri  Ljava/net/URI;
    MethodParameters:
      Name  Flags
      uri   

  public java.net.URI resolve(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/net/URI;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // java.net.URI this
        start local 1 // java.lang.String str
         0: .line 1089
            aload 0 /* this */
            aload 1 /* str */
            invokestatic java.net.URI.create:(Ljava/lang/String;)Ljava/net/URI;
            invokevirtual java.net.URI.resolve:(Ljava/net/URI;)Ljava/net/URI;
            areturn
        end local 1 // java.lang.String str
        end local 0 // java.net.URI this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljava/net/URI;
            0    1     1   str  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      str   

  public java.net.URI relativize(java.net.URI);
    descriptor: (Ljava/net/URI;)Ljava/net/URI;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // java.net.URI this
        start local 1 // java.net.URI uri
         0: .line 1119
            aload 0 /* this */
            aload 1 /* uri */
            invokestatic java.net.URI.relativize:(Ljava/net/URI;Ljava/net/URI;)Ljava/net/URI;
            areturn
        end local 1 // java.net.URI uri
        end local 0 // java.net.URI this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljava/net/URI;
            0    1     1   uri  Ljava/net/URI;
    MethodParameters:
      Name  Flags
      uri   

  public java.net.URL toURL();
    descriptor: ()Ljava/net/URL;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.net.URI this
         0: .line 1139
            aload 0 /* this */
            invokestatic java.net.URL.fromURI:(Ljava/net/URI;)Ljava/net/URL;
            areturn
        end local 0 // java.net.URI this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljava/net/URI;
    Exceptions:
      throws java.net.MalformedURLException

  public java.lang.String getScheme();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.net.URI this
         0: .line 1158
            aload 0 /* this */
            getfield java.net.URI.scheme:Ljava/lang/String;
            areturn
        end local 0 // java.net.URI this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljava/net/URI;

  public boolean isAbsolute();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.net.URI this
         0: .line 1169
            aload 0 /* this */
            getfield java.net.URI.scheme:Ljava/lang/String;
            ifnull 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // java.net.URI this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Ljava/net/URI;

  public boolean isOpaque();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.net.URI this
         0: .line 1183
            aload 0 /* this */
            getfield java.net.URI.path:Ljava/lang/String;
            ifnonnull 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // java.net.URI this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Ljava/net/URI;

  public java.lang.String getRawSchemeSpecificPart();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=9, locals=5, args_size=1
        start local 0 // java.net.URI this
         0: .line 1197
            aload 0 /* this */
            getfield java.net.URI.schemeSpecificPart:Ljava/lang/String;
            astore 1 /* part */
        start local 1 // java.lang.String part
         1: .line 1198
            aload 1 /* part */
            ifnull 3
         2: .line 1199
            aload 1 /* part */
            areturn
         3: .line 1202
      StackMap locals: java.lang.String
      StackMap stack:
            aload 0 /* this */
            getfield java.net.URI.string:Ljava/lang/String;
            astore 2 /* s */
        start local 2 // java.lang.String s
         4: .line 1203
            aload 2 /* s */
            ifnull 16
         5: .line 1205
            iconst_0
            istore 3 /* start */
        start local 3 // int start
         6: .line 1206
            aload 2 /* s */
            invokevirtual java.lang.String.length:()I
            istore 4 /* end */
        start local 4 // int end
         7: .line 1207
            aload 0 /* this */
            getfield java.net.URI.scheme:Ljava/lang/String;
            ifnull 9
         8: .line 1208
            aload 0 /* this */
            getfield java.net.URI.scheme:Ljava/lang/String;
            invokevirtual java.lang.String.length:()I
            iconst_1
            iadd
            istore 3 /* start */
         9: .line 1210
      StackMap locals: java.lang.String int int
      StackMap stack:
            aload 0 /* this */
            getfield java.net.URI.fragment:Ljava/lang/String;
            ifnull 11
        10: .line 1211
            iload 4 /* end */
            aload 0 /* this */
            getfield java.net.URI.fragment:Ljava/lang/String;
            invokevirtual java.lang.String.length:()I
            iconst_1
            iadd
            isub
            istore 4 /* end */
        11: .line 1213
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.net.URI.path:Ljava/lang/String;
            ifnull 14
            aload 0 /* this */
            getfield java.net.URI.path:Ljava/lang/String;
            invokevirtual java.lang.String.length:()I
            iload 4 /* end */
            iload 3 /* start */
            isub
            if_icmpne 14
        12: .line 1214
            aload 0 /* this */
            getfield java.net.URI.path:Ljava/lang/String;
            astore 1 /* part */
        13: .line 1215
            goto 21
        14: .line 1216
      StackMap locals:
      StackMap stack:
            aload 2 /* s */
            iload 3 /* start */
            iload 4 /* end */
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            astore 1 /* part */
        end local 4 // int end
        end local 3 // int start
        15: .line 1218
            goto 21
        16: .line 1219
      StackMap locals:
      StackMap stack:
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            astore 3 /* sb */
        start local 3 // java.lang.StringBuilder sb
        17: .line 1220
            aload 0 /* this */
            aload 3 /* sb */
            aconst_null
            aload 0 /* this */
            invokevirtual java.net.URI.getAuthority:()Ljava/lang/String;
            aload 0 /* this */
            invokevirtual java.net.URI.getUserInfo:()Ljava/lang/String;
        18: .line 1221
            aload 0 /* this */
            getfield java.net.URI.host:Ljava/lang/String;
            aload 0 /* this */
            getfield java.net.URI.port:I
            aload 0 /* this */
            invokevirtual java.net.URI.getPath:()Ljava/lang/String;
            aload 0 /* this */
            invokevirtual java.net.URI.getQuery:()Ljava/lang/String;
        19: .line 1220
            invokevirtual java.net.URI.appendSchemeSpecificPart:(Ljava/lang/StringBuilder;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;ILjava/lang/String;Ljava/lang/String;)V
        20: .line 1222
            aload 3 /* sb */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 1 /* part */
        end local 3 // java.lang.StringBuilder sb
        21: .line 1224
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* part */
            dup_x1
            putfield java.net.URI.schemeSpecificPart:Ljava/lang/String;
            areturn
        end local 2 // java.lang.String s
        end local 1 // java.lang.String part
        end local 0 // java.net.URI this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   22     0   this  Ljava/net/URI;
            1   22     1   part  Ljava/lang/String;
            4   22     2      s  Ljava/lang/String;
            6   15     3  start  I
            7   15     4    end  I
           17   21     3     sb  Ljava/lang/StringBuilder;

  public java.lang.String getSchemeSpecificPart();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=1
        start local 0 // java.net.URI this
         0: .line 1239
            aload 0 /* this */
            getfield java.net.URI.decodedSchemeSpecificPart:Ljava/lang/String;
            astore 1 /* part */
        start local 1 // java.lang.String part
         1: .line 1240
            aload 1 /* part */
            ifnonnull 3
         2: .line 1241
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual java.net.URI.getRawSchemeSpecificPart:()Ljava/lang/String;
            invokestatic java.net.URI.decode:(Ljava/lang/String;)Ljava/lang/String;
            dup
            astore 1 /* part */
            putfield java.net.URI.decodedSchemeSpecificPart:Ljava/lang/String;
         3: .line 1243
      StackMap locals: java.lang.String
      StackMap stack:
            aload 1 /* part */
            areturn
        end local 1 // java.lang.String part
        end local 0 // java.net.URI this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Ljava/net/URI;
            1    4     1  part  Ljava/lang/String;

  public java.lang.String getRawAuthority();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.net.URI this
         0: .line 1260
            aload 0 /* this */
            getfield java.net.URI.authority:Ljava/lang/String;
            areturn
        end local 0 // java.net.URI this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljava/net/URI;

  public java.lang.String getAuthority();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=1
        start local 0 // java.net.URI this
         0: .line 1274
            aload 0 /* this */
            getfield java.net.URI.decodedAuthority:Ljava/lang/String;
            astore 1 /* auth */
        start local 1 // java.lang.String auth
         1: .line 1275
            aload 1 /* auth */
            ifnonnull 3
            aload 0 /* this */
            getfield java.net.URI.authority:Ljava/lang/String;
            ifnull 3
         2: .line 1276
            aload 0 /* this */
            aload 0 /* this */
            getfield java.net.URI.authority:Ljava/lang/String;
            invokestatic java.net.URI.decode:(Ljava/lang/String;)Ljava/lang/String;
            dup
            astore 1 /* auth */
            putfield java.net.URI.decodedAuthority:Ljava/lang/String;
         3: .line 1278
      StackMap locals: java.lang.String
      StackMap stack:
            aload 1 /* auth */
            areturn
        end local 1 // java.lang.String auth
        end local 0 // java.net.URI this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Ljava/net/URI;
            1    4     1  auth  Ljava/lang/String;

  public java.lang.String getRawUserInfo();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.net.URI this
         0: .line 1292
            aload 0 /* this */
            getfield java.net.URI.userInfo:Ljava/lang/String;
            areturn
        end local 0 // java.net.URI this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljava/net/URI;

  public java.lang.String getUserInfo();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=1
        start local 0 // java.net.URI this
         0: .line 1306
            aload 0 /* this */
            getfield java.net.URI.decodedUserInfo:Ljava/lang/String;
            astore 1 /* user */
        start local 1 // java.lang.String user
         1: .line 1307
            aload 1 /* user */
            ifnonnull 3
            aload 0 /* this */
            getfield java.net.URI.userInfo:Ljava/lang/String;
            ifnull 3
         2: .line 1308
            aload 0 /* this */
            aload 0 /* this */
            getfield java.net.URI.userInfo:Ljava/lang/String;
            invokestatic java.net.URI.decode:(Ljava/lang/String;)Ljava/lang/String;
            dup
            astore 1 /* user */
            putfield java.net.URI.decodedUserInfo:Ljava/lang/String;
         3: .line 1310
      StackMap locals: java.lang.String
      StackMap stack:
            aload 1 /* user */
            areturn
        end local 1 // java.lang.String user
        end local 0 // java.net.URI this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Ljava/net/URI;
            1    4     1  user  Ljava/lang/String;

  public java.lang.String getHost();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.net.URI this
         0: .line 1350
            aload 0 /* this */
            getfield java.net.URI.host:Ljava/lang/String;
            areturn
        end local 0 // java.net.URI this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljava/net/URI;

  public int getPort();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.net.URI this
         0: .line 1363
            aload 0 /* this */
            getfield java.net.URI.port:I
            ireturn
        end local 0 // java.net.URI this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljava/net/URI;

  public java.lang.String getRawPath();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.net.URI this
         0: .line 1378
            aload 0 /* this */
            getfield java.net.URI.path:Ljava/lang/String;
            areturn
        end local 0 // java.net.URI this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljava/net/URI;

  public java.lang.String getPath();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=1
        start local 0 // java.net.URI this
         0: .line 1392
            aload 0 /* this */
            getfield java.net.URI.decodedPath:Ljava/lang/String;
            astore 1 /* decoded */
        start local 1 // java.lang.String decoded
         1: .line 1393
            aload 1 /* decoded */
            ifnonnull 3
            aload 0 /* this */
            getfield java.net.URI.path:Ljava/lang/String;
            ifnull 3
         2: .line 1394
            aload 0 /* this */
            aload 0 /* this */
            getfield java.net.URI.path:Ljava/lang/String;
            invokestatic java.net.URI.decode:(Ljava/lang/String;)Ljava/lang/String;
            dup
            astore 1 /* decoded */
            putfield java.net.URI.decodedPath:Ljava/lang/String;
         3: .line 1396
      StackMap locals: java.lang.String
      StackMap stack:
            aload 1 /* decoded */
            areturn
        end local 1 // java.lang.String decoded
        end local 0 // java.net.URI this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    4     0     this  Ljava/net/URI;
            1    4     1  decoded  Ljava/lang/String;

  public java.lang.String getRawQuery();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.net.URI this
         0: .line 1409
            aload 0 /* this */
            getfield java.net.URI.query:Ljava/lang/String;
            areturn
        end local 0 // java.net.URI this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljava/net/URI;

  public java.lang.String getQuery();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=1
        start local 0 // java.net.URI this
         0: .line 1423
            aload 0 /* this */
            getfield java.net.URI.decodedQuery:Ljava/lang/String;
            astore 1 /* decoded */
        start local 1 // java.lang.String decoded
         1: .line 1424
            aload 1 /* decoded */
            ifnonnull 3
            aload 0 /* this */
            getfield java.net.URI.query:Ljava/lang/String;
            ifnull 3
         2: .line 1425
            aload 0 /* this */
            aload 0 /* this */
            getfield java.net.URI.query:Ljava/lang/String;
            iconst_0
            invokestatic java.net.URI.decode:(Ljava/lang/String;Z)Ljava/lang/String;
            dup
            astore 1 /* decoded */
            putfield java.net.URI.decodedQuery:Ljava/lang/String;
         3: .line 1427
      StackMap locals: java.lang.String
      StackMap stack:
            aload 1 /* decoded */
            areturn
        end local 1 // java.lang.String decoded
        end local 0 // java.net.URI this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    4     0     this  Ljava/net/URI;
            1    4     1  decoded  Ljava/lang/String;

  public java.lang.String getRawFragment();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.net.URI this
         0: .line 1440
            aload 0 /* this */
            getfield java.net.URI.fragment:Ljava/lang/String;
            areturn
        end local 0 // java.net.URI this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljava/net/URI;

  public java.lang.String getFragment();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=1
        start local 0 // java.net.URI this
         0: .line 1454
            aload 0 /* this */
            getfield java.net.URI.decodedFragment:Ljava/lang/String;
            astore 1 /* decoded */
        start local 1 // java.lang.String decoded
         1: .line 1455
            aload 1 /* decoded */
            ifnonnull 3
            aload 0 /* this */
            getfield java.net.URI.fragment:Ljava/lang/String;
            ifnull 3
         2: .line 1456
            aload 0 /* this */
            aload 0 /* this */
            getfield java.net.URI.fragment:Ljava/lang/String;
            iconst_0
            invokestatic java.net.URI.decode:(Ljava/lang/String;Z)Ljava/lang/String;
            dup
            astore 1 /* decoded */
            putfield java.net.URI.decodedFragment:Ljava/lang/String;
         3: .line 1458
      StackMap locals: java.lang.String
      StackMap stack:
            aload 1 /* decoded */
            areturn
        end local 1 // java.lang.String decoded
        end local 0 // java.net.URI this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    4     0     this  Ljava/net/URI;
            1    4     1  decoded  Ljava/lang/String;

  public boolean equals(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // java.net.URI this
        start local 1 // java.lang.Object ob
         0: .line 1502
            aload 1 /* ob */
            aload 0 /* this */
            if_acmpne 2
         1: .line 1503
            iconst_1
            ireturn
         2: .line 1504
      StackMap locals:
      StackMap stack:
            aload 1 /* ob */
            instanceof java.net.URI
            ifne 4
         3: .line 1505
            iconst_0
            ireturn
         4: .line 1506
      StackMap locals:
      StackMap stack:
            aload 1 /* ob */
            checkcast java.net.URI
            astore 2 /* that */
        start local 2 // java.net.URI that
         5: .line 1507
            aload 0 /* this */
            invokevirtual java.net.URI.isOpaque:()Z
            aload 2 /* that */
            invokevirtual java.net.URI.isOpaque:()Z
            if_icmpeq 6
            iconst_0
            ireturn
         6: .line 1508
      StackMap locals: java.net.URI
      StackMap stack:
            aload 0 /* this */
            getfield java.net.URI.scheme:Ljava/lang/String;
            aload 2 /* that */
            getfield java.net.URI.scheme:Ljava/lang/String;
            invokestatic java.net.URI.equalIgnoringCase:(Ljava/lang/String;Ljava/lang/String;)Z
            ifne 7
            iconst_0
            ireturn
         7: .line 1509
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.net.URI.fragment:Ljava/lang/String;
            aload 2 /* that */
            getfield java.net.URI.fragment:Ljava/lang/String;
            invokestatic java.net.URI.equal:(Ljava/lang/String;Ljava/lang/String;)Z
            ifne 8
            iconst_0
            ireturn
         8: .line 1512
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual java.net.URI.isOpaque:()Z
            ifeq 10
         9: .line 1513
            aload 0 /* this */
            getfield java.net.URI.schemeSpecificPart:Ljava/lang/String;
            aload 2 /* that */
            getfield java.net.URI.schemeSpecificPart:Ljava/lang/String;
            invokestatic java.net.URI.equal:(Ljava/lang/String;Ljava/lang/String;)Z
            ireturn
        10: .line 1516
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.net.URI.path:Ljava/lang/String;
            aload 2 /* that */
            getfield java.net.URI.path:Ljava/lang/String;
            invokestatic java.net.URI.equal:(Ljava/lang/String;Ljava/lang/String;)Z
            ifne 11
            iconst_0
            ireturn
        11: .line 1517
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.net.URI.query:Ljava/lang/String;
            aload 2 /* that */
            getfield java.net.URI.query:Ljava/lang/String;
            invokestatic java.net.URI.equal:(Ljava/lang/String;Ljava/lang/String;)Z
            ifne 12
            iconst_0
            ireturn
        12: .line 1520
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.net.URI.authority:Ljava/lang/String;
            aload 2 /* that */
            getfield java.net.URI.authority:Ljava/lang/String;
            if_acmpne 13
            iconst_1
            ireturn
        13: .line 1521
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.net.URI.host:Ljava/lang/String;
            ifnull 17
        14: .line 1523
            aload 0 /* this */
            getfield java.net.URI.userInfo:Ljava/lang/String;
            aload 2 /* that */
            getfield java.net.URI.userInfo:Ljava/lang/String;
            invokestatic java.net.URI.equal:(Ljava/lang/String;Ljava/lang/String;)Z
            ifne 15
            iconst_0
            ireturn
        15: .line 1524
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.net.URI.host:Ljava/lang/String;
            aload 2 /* that */
            getfield java.net.URI.host:Ljava/lang/String;
            invokestatic java.net.URI.equalIgnoringCase:(Ljava/lang/String;Ljava/lang/String;)Z
            ifne 16
            iconst_0
            ireturn
        16: .line 1525
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.net.URI.port:I
            aload 2 /* that */
            getfield java.net.URI.port:I
            if_icmpeq 21
            iconst_0
            ireturn
        17: .line 1526
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.net.URI.authority:Ljava/lang/String;
            ifnull 19
        18: .line 1528
            aload 0 /* this */
            getfield java.net.URI.authority:Ljava/lang/String;
            aload 2 /* that */
            getfield java.net.URI.authority:Ljava/lang/String;
            invokestatic java.net.URI.equal:(Ljava/lang/String;Ljava/lang/String;)Z
            ifne 21
            iconst_0
            ireturn
        19: .line 1529
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.net.URI.authority:Ljava/lang/String;
            aload 2 /* that */
            getfield java.net.URI.authority:Ljava/lang/String;
            if_acmpeq 21
        20: .line 1530
            iconst_0
            ireturn
        21: .line 1533
      StackMap locals:
      StackMap stack:
            iconst_1
            ireturn
        end local 2 // java.net.URI that
        end local 1 // java.lang.Object ob
        end local 0 // java.net.URI this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   22     0  this  Ljava/net/URI;
            0   22     1    ob  Ljava/lang/Object;
            5   22     2  that  Ljava/net/URI;
    MethodParameters:
      Name  Flags
      ob    

  public int hashCode();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=1
        start local 0 // java.net.URI this
         0: .line 1544
            aload 0 /* this */
            getfield java.net.URI.hash:I
            istore 1 /* h */
        start local 1 // int h
         1: .line 1545
            iload 1 /* h */
            ifne 17
         2: .line 1546
            iconst_0
            aload 0 /* this */
            getfield java.net.URI.scheme:Ljava/lang/String;
            invokestatic java.net.URI.hashIgnoringCase:(ILjava/lang/String;)I
            istore 1 /* h */
         3: .line 1547
            iload 1 /* h */
            aload 0 /* this */
            getfield java.net.URI.fragment:Ljava/lang/String;
            invokestatic java.net.URI.hash:(ILjava/lang/String;)I
            istore 1 /* h */
         4: .line 1548
            aload 0 /* this */
            invokevirtual java.net.URI.isOpaque:()Z
            ifeq 7
         5: .line 1549
            iload 1 /* h */
            aload 0 /* this */
            getfield java.net.URI.schemeSpecificPart:Ljava/lang/String;
            invokestatic java.net.URI.hash:(ILjava/lang/String;)I
            istore 1 /* h */
         6: .line 1550
            goto 15
         7: .line 1551
      StackMap locals: int
      StackMap stack:
            iload 1 /* h */
            aload 0 /* this */
            getfield java.net.URI.path:Ljava/lang/String;
            invokestatic java.net.URI.hash:(ILjava/lang/String;)I
            istore 1 /* h */
         8: .line 1552
            iload 1 /* h */
            aload 0 /* this */
            getfield java.net.URI.query:Ljava/lang/String;
            invokestatic java.net.URI.hash:(ILjava/lang/String;)I
            istore 1 /* h */
         9: .line 1553
            aload 0 /* this */
            getfield java.net.URI.host:Ljava/lang/String;
            ifnull 14
        10: .line 1554
            iload 1 /* h */
            aload 0 /* this */
            getfield java.net.URI.userInfo:Ljava/lang/String;
            invokestatic java.net.URI.hash:(ILjava/lang/String;)I
            istore 1 /* h */
        11: .line 1555
            iload 1 /* h */
            aload 0 /* this */
            getfield java.net.URI.host:Ljava/lang/String;
            invokestatic java.net.URI.hashIgnoringCase:(ILjava/lang/String;)I
            istore 1 /* h */
        12: .line 1556
            iload 1 /* h */
            sipush 1949
            aload 0 /* this */
            getfield java.net.URI.port:I
            imul
            iadd
            istore 1 /* h */
        13: .line 1557
            goto 15
        14: .line 1558
      StackMap locals:
      StackMap stack:
            iload 1 /* h */
            aload 0 /* this */
            getfield java.net.URI.authority:Ljava/lang/String;
            invokestatic java.net.URI.hash:(ILjava/lang/String;)I
            istore 1 /* h */
        15: .line 1561
      StackMap locals:
      StackMap stack:
            iload 1 /* h */
            ifeq 17
        16: .line 1562
            aload 0 /* this */
            iload 1 /* h */
            putfield java.net.URI.hash:I
        17: .line 1565
      StackMap locals:
      StackMap stack:
            iload 1 /* h */
            ireturn
        end local 1 // int h
        end local 0 // java.net.URI this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   18     0  this  Ljava/net/URI;
            1   18     1     h  I

  public int compareTo(java.net.URI);
    descriptor: (Ljava/net/URI;)I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // java.net.URI this
        start local 1 // java.net.URI that
         0: .line 1640
            aload 0 /* this */
            getfield java.net.URI.scheme:Ljava/lang/String;
            aload 1 /* that */
            getfield java.net.URI.scheme:Ljava/lang/String;
            invokestatic java.net.URI.compareIgnoringCase:(Ljava/lang/String;Ljava/lang/String;)I
            dup
            istore 2 /* c */
        start local 2 // int c
         1: ifeq 3
         2: .line 1641
            iload 2 /* c */
            ireturn
         3: .line 1643
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            invokevirtual java.net.URI.isOpaque:()Z
            ifeq 11
         4: .line 1644
            aload 1 /* that */
            invokevirtual java.net.URI.isOpaque:()Z
            ifeq 10
         5: .line 1646
            aload 0 /* this */
            getfield java.net.URI.schemeSpecificPart:Ljava/lang/String;
         6: .line 1647
            aload 1 /* that */
            getfield java.net.URI.schemeSpecificPart:Ljava/lang/String;
         7: .line 1646
            invokestatic java.net.URI.compare:(Ljava/lang/String;Ljava/lang/String;)I
            dup
            istore 2 /* c */
            ifeq 9
         8: .line 1648
            iload 2 /* c */
            ireturn
         9: .line 1649
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.net.URI.fragment:Ljava/lang/String;
            aload 1 /* that */
            getfield java.net.URI.fragment:Ljava/lang/String;
            invokestatic java.net.URI.compare:(Ljava/lang/String;Ljava/lang/String;)I
            ireturn
        10: .line 1651
      StackMap locals:
      StackMap stack:
            iconst_1
            ireturn
        11: .line 1652
      StackMap locals:
      StackMap stack:
            aload 1 /* that */
            invokevirtual java.net.URI.isOpaque:()Z
            ifeq 13
        12: .line 1653
            iconst_m1
            ireturn
        13: .line 1657
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.net.URI.host:Ljava/lang/String;
            ifnull 20
            aload 1 /* that */
            getfield java.net.URI.host:Ljava/lang/String;
            ifnull 20
        14: .line 1659
            aload 0 /* this */
            getfield java.net.URI.userInfo:Ljava/lang/String;
            aload 1 /* that */
            getfield java.net.URI.userInfo:Ljava/lang/String;
            invokestatic java.net.URI.compare:(Ljava/lang/String;Ljava/lang/String;)I
            dup
            istore 2 /* c */
            ifeq 16
        15: .line 1660
            iload 2 /* c */
            ireturn
        16: .line 1661
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.net.URI.host:Ljava/lang/String;
            aload 1 /* that */
            getfield java.net.URI.host:Ljava/lang/String;
            invokestatic java.net.URI.compareIgnoringCase:(Ljava/lang/String;Ljava/lang/String;)I
            dup
            istore 2 /* c */
            ifeq 18
        17: .line 1662
            iload 2 /* c */
            ireturn
        18: .line 1663
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.net.URI.port:I
            aload 1 /* that */
            getfield java.net.URI.port:I
            isub
            dup
            istore 2 /* c */
            ifeq 21
        19: .line 1664
            iload 2 /* c */
            ireturn
        20: .line 1672
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.net.URI.authority:Ljava/lang/String;
            aload 1 /* that */
            getfield java.net.URI.authority:Ljava/lang/String;
            invokestatic java.net.URI.compare:(Ljava/lang/String;Ljava/lang/String;)I
            dup
            istore 2 /* c */
            ifeq 21
            iload 2 /* c */
            ireturn
        21: .line 1675
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.net.URI.path:Ljava/lang/String;
            aload 1 /* that */
            getfield java.net.URI.path:Ljava/lang/String;
            invokestatic java.net.URI.compare:(Ljava/lang/String;Ljava/lang/String;)I
            dup
            istore 2 /* c */
            ifeq 22
            iload 2 /* c */
            ireturn
        22: .line 1676
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.net.URI.query:Ljava/lang/String;
            aload 1 /* that */
            getfield java.net.URI.query:Ljava/lang/String;
            invokestatic java.net.URI.compare:(Ljava/lang/String;Ljava/lang/String;)I
            dup
            istore 2 /* c */
            ifeq 23
            iload 2 /* c */
            ireturn
        23: .line 1677
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.net.URI.fragment:Ljava/lang/String;
            aload 1 /* that */
            getfield java.net.URI.fragment:Ljava/lang/String;
            invokestatic java.net.URI.compare:(Ljava/lang/String;Ljava/lang/String;)I
            ireturn
        end local 2 // int c
        end local 1 // java.net.URI that
        end local 0 // java.net.URI this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   24     0  this  Ljava/net/URI;
            0   24     1  that  Ljava/net/URI;
            1   24     2     c  I
    MethodParameters:
      Name  Flags
      that  

  public java.lang.String toString();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=2, args_size=1
        start local 0 // java.net.URI this
         0: .line 1695
            aload 0 /* this */
            getfield java.net.URI.string:Ljava/lang/String;
            astore 1 /* s */
        start local 1 // java.lang.String s
         1: .line 1696
            aload 1 /* s */
            ifnonnull 3
         2: .line 1697
            aload 0 /* this */
            invokevirtual java.net.URI.defineString:()Ljava/lang/String;
            astore 1 /* s */
         3: .line 1699
      StackMap locals: java.lang.String
      StackMap stack:
            aload 1 /* s */
            areturn
        end local 1 // java.lang.String s
        end local 0 // java.net.URI this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Ljava/net/URI;
            1    4     1     s  Ljava/lang/String;

  private java.lang.String defineString();
    descriptor: ()Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=4, args_size=1
        start local 0 // java.net.URI this
         0: .line 1703
            aload 0 /* this */
            getfield java.net.URI.string:Ljava/lang/String;
            astore 1 /* s */
        start local 1 // java.lang.String s
         1: .line 1704
            aload 1 /* s */
            ifnull 3
         2: .line 1705
            aload 1 /* s */
            areturn
         3: .line 1708
      StackMap locals: java.lang.String
      StackMap stack:
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            astore 2 /* sb */
        start local 2 // java.lang.StringBuilder sb
         4: .line 1709
            aload 0 /* this */
            getfield java.net.URI.scheme:Ljava/lang/String;
            ifnull 7
         5: .line 1710
            aload 2 /* sb */
            aload 0 /* this */
            getfield java.net.URI.scheme:Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
         6: .line 1711
            aload 2 /* sb */
            bipush 58
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
         7: .line 1713
      StackMap locals: java.lang.StringBuilder
      StackMap stack:
            aload 0 /* this */
            invokevirtual java.net.URI.isOpaque:()Z
            ifeq 10
         8: .line 1714
            aload 2 /* sb */
            aload 0 /* this */
            getfield java.net.URI.schemeSpecificPart:Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
         9: .line 1715
            goto 36
        10: .line 1716
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.net.URI.host:Ljava/lang/String;
            ifnull 28
        11: .line 1717
            aload 2 /* sb */
            ldc "//"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        12: .line 1718
            aload 0 /* this */
            getfield java.net.URI.userInfo:Ljava/lang/String;
            ifnull 15
        13: .line 1719
            aload 2 /* sb */
            aload 0 /* this */
            getfield java.net.URI.userInfo:Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        14: .line 1720
            aload 2 /* sb */
            bipush 64
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        15: .line 1722
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.net.URI.host:Ljava/lang/String;
            bipush 58
            invokevirtual java.lang.String.indexOf:(I)I
            iflt 19
        16: .line 1723
            aload 0 /* this */
            getfield java.net.URI.host:Ljava/lang/String;
            ldc "["
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifne 19
        17: .line 1724
            aload 0 /* this */
            getfield java.net.URI.host:Ljava/lang/String;
            ldc "]"
            invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
            ifne 19
        18: .line 1722
            iconst_1
            goto 20
      StackMap locals:
      StackMap stack:
        19: iconst_0
      StackMap locals:
      StackMap stack: int
        20: istore 3 /* needBrackets */
        start local 3 // boolean needBrackets
        21: .line 1725
            iload 3 /* needBrackets */
            ifeq 22
            aload 2 /* sb */
            bipush 91
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        22: .line 1726
      StackMap locals: int
      StackMap stack:
            aload 2 /* sb */
            aload 0 /* this */
            getfield java.net.URI.host:Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        23: .line 1727
            iload 3 /* needBrackets */
            ifeq 24
            aload 2 /* sb */
            bipush 93
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        24: .line 1728
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.net.URI.port:I
            iconst_m1
            if_icmpeq 31
        25: .line 1729
            aload 2 /* sb */
            bipush 58
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        26: .line 1730
            aload 2 /* sb */
            aload 0 /* this */
            getfield java.net.URI.port:I
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            pop
        end local 3 // boolean needBrackets
        27: .line 1732
            goto 31
      StackMap locals:
      StackMap stack:
        28: aload 0 /* this */
            getfield java.net.URI.authority:Ljava/lang/String;
            ifnull 31
        29: .line 1733
            aload 2 /* sb */
            ldc "//"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        30: .line 1734
            aload 2 /* sb */
            aload 0 /* this */
            getfield java.net.URI.authority:Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        31: .line 1736
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.net.URI.path:Ljava/lang/String;
            ifnull 33
        32: .line 1737
            aload 2 /* sb */
            aload 0 /* this */
            getfield java.net.URI.path:Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        33: .line 1738
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.net.URI.query:Ljava/lang/String;
            ifnull 36
        34: .line 1739
            aload 2 /* sb */
            bipush 63
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        35: .line 1740
            aload 2 /* sb */
            aload 0 /* this */
            getfield java.net.URI.query:Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        36: .line 1743
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.net.URI.fragment:Ljava/lang/String;
            ifnull 39
        37: .line 1744
            aload 2 /* sb */
            bipush 35
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        38: .line 1745
            aload 2 /* sb */
            aload 0 /* this */
            getfield java.net.URI.fragment:Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        39: .line 1747
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* sb */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            dup_x1
            putfield java.net.URI.string:Ljava/lang/String;
            areturn
        end local 2 // java.lang.StringBuilder sb
        end local 1 // java.lang.String s
        end local 0 // java.net.URI this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   40     0          this  Ljava/net/URI;
            1   40     1             s  Ljava/lang/String;
            4   40     2            sb  Ljava/lang/StringBuilder;
           21   27     3  needBrackets  Z

  public java.lang.String toASCIIString();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.net.URI this
         0: .line 1764
            aload 0 /* this */
            invokevirtual java.net.URI.toString:()Ljava/lang/String;
            invokestatic java.net.URI.encode:(Ljava/lang/String;)Ljava/lang/String;
            areturn
        end local 0 // java.net.URI this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljava/net/URI;

  private void writeObject(java.io.ObjectOutputStream);
    descriptor: (Ljava/io/ObjectOutputStream;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // java.net.URI this
        start local 1 // java.io.ObjectOutputStream os
         0: .line 1785
            aload 0 /* this */
            invokevirtual java.net.URI.defineString:()Ljava/lang/String;
            pop
         1: .line 1786
            aload 1 /* os */
            invokevirtual java.io.ObjectOutputStream.defaultWriteObject:()V
         2: .line 1787
            return
        end local 1 // java.io.ObjectOutputStream os
        end local 0 // java.net.URI this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Ljava/net/URI;
            0    3     1    os  Ljava/io/ObjectOutputStream;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      os    

  private void readObject(java.io.ObjectInputStream);
    descriptor: (Ljava/io/ObjectInputStream;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=4, args_size=2
        start local 0 // java.net.URI this
        start local 1 // java.io.ObjectInputStream is
         0: .line 1803
            aload 0 /* this */
            iconst_m1
            putfield java.net.URI.port:I
         1: .line 1804
            aload 1 /* is */
            invokevirtual java.io.ObjectInputStream.defaultReadObject:()V
         2: .line 1806
            new java.net.URI$Parser
            dup
            aload 0 /* this */
            aload 0 /* this */
            getfield java.net.URI.string:Ljava/lang/String;
            invokespecial java.net.URI$Parser.<init>:(Ljava/net/URI;Ljava/lang/String;)V
            iconst_0
            invokevirtual java.net.URI$Parser.parse:(Z)V
         3: .line 1807
            goto 8
      StackMap locals:
      StackMap stack: java.net.URISyntaxException
         4: astore 2 /* x */
        start local 2 // java.net.URISyntaxException x
         5: .line 1808
            new java.io.InvalidObjectException
            dup
            ldc "Invalid URI"
            invokespecial java.io.InvalidObjectException.<init>:(Ljava/lang/String;)V
            astore 3 /* y */
        start local 3 // java.io.IOException y
         6: .line 1809
            aload 3 /* y */
            aload 2 /* x */
            invokevirtual java.io.IOException.initCause:(Ljava/lang/Throwable;)Ljava/lang/Throwable;
            pop
         7: .line 1810
            aload 3 /* y */
            athrow
        end local 3 // java.io.IOException y
        end local 2 // java.net.URISyntaxException x
         8: .line 1812
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.io.ObjectInputStream is
        end local 0 // java.net.URI this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    9     0  this  Ljava/net/URI;
            0    9     1    is  Ljava/io/ObjectInputStream;
            5    8     2     x  Ljava/net/URISyntaxException;
            6    8     3     y  Ljava/io/IOException;
      Exception table:
        from    to  target  type
           2     3       4  Class java.net.URISyntaxException
    Exceptions:
      throws java.lang.ClassNotFoundException, java.io.IOException
    MethodParameters:
      Name  Flags
      is    

  private static int toLower(char);
    descriptor: (C)I
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // char c
         0: .line 1829
            iload 0 /* c */
            bipush 65
            if_icmplt 2
            iload 0 /* c */
            bipush 90
            if_icmpgt 2
         1: .line 1830
            iload 0 /* c */
            bipush 32
            iadd
            ireturn
         2: .line 1831
      StackMap locals:
      StackMap stack:
            iload 0 /* c */
            ireturn
        end local 0 // char c
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0     c  C
    MethodParameters:
      Name  Flags
      c     

  private static int toUpper(char);
    descriptor: (C)I
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // char c
         0: .line 1836
            iload 0 /* c */
            bipush 97
            if_icmplt 2
            iload 0 /* c */
            bipush 122
            if_icmpgt 2
         1: .line 1837
            iload 0 /* c */
            bipush 32
            isub
            ireturn
         2: .line 1838
      StackMap locals:
      StackMap stack:
            iload 0 /* c */
            ireturn
        end local 0 // char c
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0     c  C
    MethodParameters:
      Name  Flags
      c     

  private static boolean equal(java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;)Z
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=4, args_size=2
        start local 0 // java.lang.String s
        start local 1 // java.lang.String t
         0: .line 1842
            iconst_1
            istore 2 /* testForEquality */
        start local 2 // boolean testForEquality
         1: .line 1843
            aload 0 /* s */
            aload 1 /* t */
            iload 2 /* testForEquality */
            invokestatic java.net.URI.percentNormalizedComparison:(Ljava/lang/String;Ljava/lang/String;Z)I
            istore 3 /* result */
        start local 3 // int result
         2: .line 1844
            iload 3 /* result */
            ifne 3
            iconst_1
            ireturn
      StackMap locals: int int
      StackMap stack:
         3: iconst_0
            ireturn
        end local 3 // int result
        end local 2 // boolean testForEquality
        end local 1 // java.lang.String t
        end local 0 // java.lang.String s
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0    4     0                s  Ljava/lang/String;
            0    4     1                t  Ljava/lang/String;
            1    4     2  testForEquality  Z
            2    4     3           result  I
    MethodParameters:
      Name  Flags
      s     
      t     

  private static boolean equalIgnoringCase(java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;)Z
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=4, args_size=2
        start local 0 // java.lang.String s
        start local 1 // java.lang.String t
         0: .line 1849
            aload 0 /* s */
            aload 1 /* t */
            if_acmpne 1
            iconst_1
            ireturn
         1: .line 1850
      StackMap locals:
      StackMap stack:
            aload 0 /* s */
            ifnull 12
            aload 1 /* t */
            ifnull 12
         2: .line 1851
            aload 0 /* s */
            invokevirtual java.lang.String.length:()I
            istore 2 /* n */
        start local 2 // int n
         3: .line 1852
            aload 1 /* t */
            invokevirtual java.lang.String.length:()I
            iload 2 /* n */
            if_icmpeq 5
         4: .line 1853
            iconst_0
            ireturn
         5: .line 1854
      StackMap locals: int
      StackMap stack:
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         6: goto 10
         7: .line 1855
      StackMap locals: int
      StackMap stack:
            aload 0 /* s */
            iload 3 /* i */
            invokevirtual java.lang.String.charAt:(I)C
            invokestatic java.net.URI.toLower:(C)I
            aload 1 /* t */
            iload 3 /* i */
            invokevirtual java.lang.String.charAt:(I)C
            invokestatic java.net.URI.toLower:(C)I
            if_icmpeq 9
         8: .line 1856
            iconst_0
            ireturn
         9: .line 1854
      StackMap locals:
      StackMap stack:
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
        10: iload 3 /* i */
            iload 2 /* n */
            if_icmplt 7
        end local 3 // int i
        11: .line 1858
            iconst_1
            ireturn
        end local 2 // int n
        12: .line 1860
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 1 // java.lang.String t
        end local 0 // java.lang.String s
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   13     0     s  Ljava/lang/String;
            0   13     1     t  Ljava/lang/String;
            3   12     2     n  I
            6   11     3     i  I
    MethodParameters:
      Name  Flags
      s     
      t     

  private static int hash(int, java.lang.String);
    descriptor: (ILjava/lang/String;)I
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // int hash
        start local 1 // java.lang.String s
         0: .line 1864
            aload 1 /* s */
            ifnonnull 1
            iload 0 /* hash */
            ireturn
         1: .line 1865
      StackMap locals:
      StackMap stack:
            aload 1 /* s */
            bipush 37
            invokevirtual java.lang.String.indexOf:(I)I
            ifge 2
            iload 0 /* hash */
            bipush 127
            imul
            aload 1 /* s */
            invokevirtual java.lang.String.hashCode:()I
            iadd
            goto 3
         2: .line 1866
      StackMap locals:
      StackMap stack:
            iload 0 /* hash */
            aload 1 /* s */
            invokestatic java.net.URI.normalizedHash:(ILjava/lang/String;)I
         3: .line 1865
      StackMap locals:
      StackMap stack: int
            ireturn
        end local 1 // java.lang.String s
        end local 0 // int hash
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  hash  I
            0    4     1     s  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      hash  
      s     

  private static int normalizedHash(int, java.lang.String);
    descriptor: (ILjava/lang/String;)I
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=6, args_size=2
        start local 0 // int hash
        start local 1 // java.lang.String s
         0: .line 1871
            iconst_0
            istore 2 /* h */
        start local 2 // int h
         1: .line 1872
            iconst_0
            istore 3 /* index */
        start local 3 // int index
         2: goto 13
         3: .line 1873
      StackMap locals: int int
      StackMap stack:
            aload 1 /* s */
            iload 3 /* index */
            invokevirtual java.lang.String.charAt:(I)C
            istore 4 /* ch */
        start local 4 // char ch
         4: .line 1874
            bipush 31
            iload 2 /* h */
            imul
            iload 4 /* ch */
            iadd
            istore 2 /* h */
         5: .line 1875
            iload 4 /* ch */
            bipush 37
            if_icmpne 12
         6: .line 1879
            iload 3 /* index */
            iconst_1
            iadd
            istore 5 /* i */
        start local 5 // int i
         7: goto 10
         8: .line 1880
      StackMap locals: int int
      StackMap stack:
            bipush 31
            iload 2 /* h */
            imul
            aload 1 /* s */
            iload 5 /* i */
            invokevirtual java.lang.String.charAt:(I)C
            invokestatic java.net.URI.toUpper:(C)I
            iadd
            istore 2 /* h */
         9: .line 1879
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
        10: iload 5 /* i */
            iload 3 /* index */
            iconst_3
            iadd
            if_icmplt 8
        end local 5 // int i
        11: .line 1881
            iinc 3 /* index */ 2
        end local 4 // char ch
        12: .line 1872
      StackMap locals:
      StackMap stack:
            iinc 3 /* index */ 1
      StackMap locals:
      StackMap stack:
        13: iload 3 /* index */
            aload 1 /* s */
            invokevirtual java.lang.String.length:()I
            if_icmplt 3
        end local 3 // int index
        14: .line 1884
            iload 0 /* hash */
            bipush 127
            imul
            iload 2 /* h */
            iadd
            ireturn
        end local 2 // int h
        end local 1 // java.lang.String s
        end local 0 // int hash
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   15     0   hash  I
            0   15     1      s  Ljava/lang/String;
            1   15     2      h  I
            2   14     3  index  I
            4   12     4     ch  C
            7   11     5      i  I
    MethodParameters:
      Name  Flags
      hash  
      s     

  private static int hashIgnoringCase(int, java.lang.String);
    descriptor: (ILjava/lang/String;)I
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=5, args_size=2
        start local 0 // int hash
        start local 1 // java.lang.String s
         0: .line 1889
            aload 1 /* s */
            ifnonnull 1
            iload 0 /* hash */
            ireturn
         1: .line 1890
      StackMap locals:
      StackMap stack:
            iload 0 /* hash */
            istore 2 /* h */
        start local 2 // int h
         2: .line 1891
            aload 1 /* s */
            invokevirtual java.lang.String.length:()I
            istore 3 /* n */
        start local 3 // int n
         3: .line 1892
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         4: goto 7
         5: .line 1893
      StackMap locals: int int int
      StackMap stack:
            bipush 31
            iload 2 /* h */
            imul
            aload 1 /* s */
            iload 4 /* i */
            invokevirtual java.lang.String.charAt:(I)C
            invokestatic java.net.URI.toLower:(C)I
            iadd
            istore 2 /* h */
         6: .line 1892
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
         7: iload 4 /* i */
            iload 3 /* n */
            if_icmplt 5
        end local 4 // int i
         8: .line 1894
            iload 2 /* h */
            ireturn
        end local 3 // int n
        end local 2 // int h
        end local 1 // java.lang.String s
        end local 0 // int hash
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    9     0  hash  I
            0    9     1     s  Ljava/lang/String;
            2    9     2     h  I
            3    9     3     n  I
            4    8     4     i  I
    MethodParameters:
      Name  Flags
      hash  
      s     

  private static int compare(java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;)I
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=4, args_size=2
        start local 0 // java.lang.String s
        start local 1 // java.lang.String t
         0: .line 1898
            iconst_0
            istore 2 /* testForEquality */
        start local 2 // boolean testForEquality
         1: .line 1899
            aload 0 /* s */
            aload 1 /* t */
            iload 2 /* testForEquality */
            invokestatic java.net.URI.percentNormalizedComparison:(Ljava/lang/String;Ljava/lang/String;Z)I
            istore 3 /* result */
        start local 3 // int result
         2: .line 1900
            iload 3 /* result */
            ireturn
        end local 3 // int result
        end local 2 // boolean testForEquality
        end local 1 // java.lang.String t
        end local 0 // java.lang.String s
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0    3     0                s  Ljava/lang/String;
            0    3     1                t  Ljava/lang/String;
            1    3     2  testForEquality  Z
            2    3     3           result  I
    MethodParameters:
      Name  Flags
      s     
      t     

  private static int percentNormalizedComparison(java.lang.String, java.lang.String, boolean);
    descriptor: (Ljava/lang/String;Ljava/lang/String;Z)I
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=10, args_size=3
        start local 0 // java.lang.String s
        start local 1 // java.lang.String t
        start local 2 // boolean testForEquality
         0: .line 1915
            aload 0 /* s */
            aload 1 /* t */
            if_acmpne 1
            iconst_0
            ireturn
         1: .line 1916
      StackMap locals:
      StackMap stack:
            aload 0 /* s */
            ifnull 38
         2: .line 1917
            aload 1 /* t */
            ifnull 37
         3: .line 1918
            aload 0 /* s */
            bipush 37
            invokevirtual java.lang.String.indexOf:(I)I
            ifge 5
         4: .line 1919
            aload 0 /* s */
            aload 1 /* t */
            invokevirtual java.lang.String.compareTo:(Ljava/lang/String;)I
            ireturn
         5: .line 1921
      StackMap locals:
      StackMap stack:
            aload 0 /* s */
            invokevirtual java.lang.String.length:()I
            istore 3 /* sn */
        start local 3 // int sn
         6: .line 1922
            aload 1 /* t */
            invokevirtual java.lang.String.length:()I
            istore 4 /* tn */
        start local 4 // int tn
         7: .line 1923
            iload 3 /* sn */
            iload 4 /* tn */
            if_icmpeq 9
            iload 2 /* testForEquality */
            ifeq 9
         8: .line 1924
            iload 3 /* sn */
            iload 4 /* tn */
            isub
            ireturn
         9: .line 1925
      StackMap locals: int int
      StackMap stack:
            iconst_0
            istore 5 /* val */
        start local 5 // int val
        10: .line 1926
            iload 3 /* sn */
            iload 4 /* tn */
            if_icmpge 11
            iload 3 /* sn */
            goto 12
      StackMap locals: int
      StackMap stack:
        11: iload 4 /* tn */
      StackMap locals:
      StackMap stack: int
        12: istore 6 /* n */
        start local 6 // int n
        13: .line 1927
            iconst_0
            istore 7 /* i */
        start local 7 // int i
        14: goto 35
        15: .line 1928
      StackMap locals: int int
      StackMap stack:
            aload 0 /* s */
            iload 7 /* i */
            invokevirtual java.lang.String.charAt:(I)C
            istore 8 /* c */
        start local 8 // char c
        16: .line 1929
            aload 1 /* t */
            iload 7 /* i */
            invokevirtual java.lang.String.charAt:(I)C
            istore 9 /* d */
        start local 9 // char d
        17: .line 1930
            iload 8 /* c */
            iload 9 /* d */
            isub
            istore 5 /* val */
        18: .line 1931
            iload 8 /* c */
            bipush 37
            if_icmpeq 23
        19: .line 1932
            iload 5 /* val */
            ifeq 21
        20: .line 1933
            iload 5 /* val */
            ireturn
        21: .line 1934
      StackMap locals: int int
      StackMap stack:
            iinc 7 /* i */ 1
        22: .line 1935
            goto 35
        23: .line 1937
      StackMap locals:
      StackMap stack:
            iload 9 /* d */
            bipush 37
            if_icmpeq 26
        24: .line 1938
            iload 5 /* val */
            ifeq 26
        25: .line 1939
            iload 5 /* val */
            ireturn
        26: .line 1941
      StackMap locals:
      StackMap stack:
            iinc 7 /* i */ 1
        27: .line 1942
            aload 0 /* s */
            iload 7 /* i */
            invokevirtual java.lang.String.charAt:(I)C
            invokestatic java.net.URI.toLower:(C)I
            aload 1 /* t */
            iload 7 /* i */
            invokevirtual java.lang.String.charAt:(I)C
            invokestatic java.net.URI.toLower:(C)I
            isub
            istore 5 /* val */
        28: .line 1943
            iload 5 /* val */
            ifeq 30
        29: .line 1944
            iload 5 /* val */
            ireturn
        30: .line 1945
      StackMap locals:
      StackMap stack:
            iinc 7 /* i */ 1
        31: .line 1946
            aload 0 /* s */
            iload 7 /* i */
            invokevirtual java.lang.String.charAt:(I)C
            invokestatic java.net.URI.toLower:(C)I
            aload 1 /* t */
            iload 7 /* i */
            invokevirtual java.lang.String.charAt:(I)C
            invokestatic java.net.URI.toLower:(C)I
            isub
            istore 5 /* val */
        32: .line 1947
            iload 5 /* val */
            ifeq 34
        33: .line 1948
            iload 5 /* val */
            ireturn
        34: .line 1949
      StackMap locals:
      StackMap stack:
            iinc 7 /* i */ 1
        end local 9 // char d
        end local 8 // char c
        35: .line 1927
      StackMap locals:
      StackMap stack:
            iload 7 /* i */
            iload 6 /* n */
            if_icmplt 15
        end local 7 // int i
        36: .line 1951
            iload 3 /* sn */
            iload 4 /* tn */
            isub
            ireturn
        end local 6 // int n
        end local 5 // int val
        end local 4 // int tn
        end local 3 // int sn
        37: .line 1953
      StackMap locals: java.lang.String java.lang.String int
      StackMap stack:
            iconst_1
            ireturn
        38: .line 1955
      StackMap locals:
      StackMap stack:
            iconst_m1
            ireturn
        end local 2 // boolean testForEquality
        end local 1 // java.lang.String t
        end local 0 // java.lang.String s
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   39     0                s  Ljava/lang/String;
            0   39     1                t  Ljava/lang/String;
            0   39     2  testForEquality  Z
            6   37     3               sn  I
            7   37     4               tn  I
           10   37     5              val  I
           13   37     6                n  I
           14   36     7                i  I
           16   35     8                c  C
           17   35     9                d  C
    MethodParameters:
                 Name  Flags
      s                
      t                
      testForEquality  

  private static int compareIgnoringCase(java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;)I
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=7, args_size=2
        start local 0 // java.lang.String s
        start local 1 // java.lang.String t
         0: .line 1961
            aload 0 /* s */
            aload 1 /* t */
            if_acmpne 1
            iconst_0
            ireturn
         1: .line 1962
      StackMap locals:
      StackMap stack:
            aload 0 /* s */
            ifnull 17
         2: .line 1963
            aload 1 /* t */
            ifnull 16
         3: .line 1964
            aload 0 /* s */
            invokevirtual java.lang.String.length:()I
            istore 2 /* sn */
        start local 2 // int sn
         4: .line 1965
            aload 1 /* t */
            invokevirtual java.lang.String.length:()I
            istore 3 /* tn */
        start local 3 // int tn
         5: .line 1966
            iload 2 /* sn */
            iload 3 /* tn */
            if_icmpge 6
            iload 2 /* sn */
            goto 7
      StackMap locals: int int
      StackMap stack:
         6: iload 3 /* tn */
      StackMap locals:
      StackMap stack: int
         7: istore 4 /* n */
        start local 4 // int n
         8: .line 1967
            iconst_0
            istore 5 /* i */
        start local 5 // int i
         9: goto 14
        10: .line 1968
      StackMap locals: int int
      StackMap stack:
            aload 0 /* s */
            iload 5 /* i */
            invokevirtual java.lang.String.charAt:(I)C
            invokestatic java.net.URI.toLower:(C)I
            aload 1 /* t */
            iload 5 /* i */
            invokevirtual java.lang.String.charAt:(I)C
            invokestatic java.net.URI.toLower:(C)I
            isub
            istore 6 /* c */
        start local 6 // int c
        11: .line 1969
            iload 6 /* c */
            ifeq 13
        12: .line 1970
            iload 6 /* c */
            ireturn
        end local 6 // int c
        13: .line 1967
      StackMap locals:
      StackMap stack:
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
        14: iload 5 /* i */
            iload 4 /* n */
            if_icmplt 10
        end local 5 // int i
        15: .line 1972
            iload 2 /* sn */
            iload 3 /* tn */
            isub
            ireturn
        end local 4 // int n
        end local 3 // int tn
        end local 2 // int sn
        16: .line 1974
      StackMap locals: java.lang.String java.lang.String
      StackMap stack:
            iconst_1
            ireturn
        17: .line 1976
      StackMap locals:
      StackMap stack:
            iconst_m1
            ireturn
        end local 1 // java.lang.String t
        end local 0 // java.lang.String s
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   18     0     s  Ljava/lang/String;
            0   18     1     t  Ljava/lang/String;
            4   16     2    sn  I
            5   16     3    tn  I
            8   16     4     n  I
            9   15     5     i  I
           11   13     6     c  I
    MethodParameters:
      Name  Flags
      s     
      t     

  private static void checkPath(java.lang.String, java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // java.lang.String s
        start local 1 // java.lang.String scheme
        start local 2 // java.lang.String path
         0: .line 1988
            aload 1 /* scheme */
            ifnull 3
         1: .line 1989
            aload 2 /* path */
            ifnull 3
            aload 2 /* path */
            invokevirtual java.lang.String.isEmpty:()Z
            ifne 3
            aload 2 /* path */
            iconst_0
            invokevirtual java.lang.String.charAt:(I)C
            bipush 47
            if_icmpeq 3
         2: .line 1990
            new java.net.URISyntaxException
            dup
            aload 0 /* s */
            ldc "Relative path in absolute URI"
            invokespecial java.net.URISyntaxException.<init>:(Ljava/lang/String;Ljava/lang/String;)V
            athrow
         3: .line 1992
      StackMap locals:
      StackMap stack:
            return
        end local 2 // java.lang.String path
        end local 1 // java.lang.String scheme
        end local 0 // java.lang.String s
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    4     0       s  Ljava/lang/String;
            0    4     1  scheme  Ljava/lang/String;
            0    4     2    path  Ljava/lang/String;
    Exceptions:
      throws java.net.URISyntaxException
    MethodParameters:
        Name  Flags
      s       
      scheme  
      path    

  private void appendAuthority(java.lang.StringBuilder, java.lang.String, java.lang.String, java.lang.String, int);
    descriptor: (Ljava/lang/StringBuilder;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;I)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=9, args_size=6
        start local 0 // java.net.URI this
        start local 1 // java.lang.StringBuilder sb
        start local 2 // java.lang.String authority
        start local 3 // java.lang.String userInfo
        start local 4 // java.lang.String host
        start local 5 // int port
         0: .line 2000
            aload 4 /* host */
            ifnull 18
         1: .line 2001
            aload 1 /* sb */
            ldc "//"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
         2: .line 2002
            aload 3 /* userInfo */
            ifnull 5
         3: .line 2003
            aload 1 /* sb */
            aload 3 /* userInfo */
            ldc 3458623578763689985
            ldc 5188146764422578174
            invokestatic java.net.URI.quote:(Ljava/lang/String;JJ)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
         4: .line 2004
            aload 1 /* sb */
            bipush 64
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
         5: .line 2006
      StackMap locals:
      StackMap stack:
            aload 4 /* host */
            bipush 58
            invokevirtual java.lang.String.indexOf:(I)I
            iflt 9
         6: .line 2007
            aload 4 /* host */
            ldc "["
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifne 9
         7: .line 2008
            aload 4 /* host */
            ldc "]"
            invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
            ifne 9
         8: .line 2006
            iconst_1
            goto 10
      StackMap locals:
      StackMap stack:
         9: iconst_0
      StackMap locals:
      StackMap stack: int
        10: istore 6 /* needBrackets */
        start local 6 // boolean needBrackets
        11: .line 2009
            iload 6 /* needBrackets */
            ifeq 12
            aload 1 /* sb */
            bipush 91
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        12: .line 2010
      StackMap locals: int
      StackMap stack:
            aload 1 /* sb */
            aload 4 /* host */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        13: .line 2011
            iload 6 /* needBrackets */
            ifeq 14
            aload 1 /* sb */
            bipush 93
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        14: .line 2012
      StackMap locals:
      StackMap stack:
            iload 5 /* port */
            iconst_m1
            if_icmpeq 41
        15: .line 2013
            aload 1 /* sb */
            bipush 58
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        16: .line 2014
            aload 1 /* sb */
            iload 5 /* port */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            pop
        end local 6 // boolean needBrackets
        17: .line 2016
            goto 41
      StackMap locals:
      StackMap stack:
        18: aload 2 /* authority */
            ifnull 41
        19: .line 2017
            aload 1 /* sb */
            ldc "//"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        20: .line 2018
            aload 2 /* authority */
            ldc "["
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifeq 37
        21: .line 2020
            aload 2 /* authority */
            bipush 93
            invokevirtual java.lang.String.indexOf:(I)I
            istore 6 /* end */
        start local 6 // int end
        22: .line 2021
            aload 2 /* authority */
            astore 7 /* doquote */
        start local 7 // java.lang.String doquote
        23: ldc ""
            astore 8 /* dontquote */
        start local 8 // java.lang.String dontquote
        24: .line 2022
            iload 6 /* end */
            iconst_m1
            if_icmpeq 31
            aload 2 /* authority */
            bipush 58
            invokevirtual java.lang.String.indexOf:(I)I
            iconst_m1
            if_icmpeq 31
        25: .line 2024
            iload 6 /* end */
            aload 2 /* authority */
            invokevirtual java.lang.String.length:()I
            if_icmpne 29
        26: .line 2025
            aload 2 /* authority */
            astore 8 /* dontquote */
        27: .line 2026
            ldc ""
            astore 7 /* doquote */
        28: .line 2027
            goto 31
        29: .line 2028
      StackMap locals: int java.lang.String java.lang.String
      StackMap stack:
            aload 2 /* authority */
            iconst_0
            iload 6 /* end */
            iconst_1
            iadd
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            astore 8 /* dontquote */
        30: .line 2029
            aload 2 /* authority */
            iload 6 /* end */
            iconst_1
            iadd
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            astore 7 /* doquote */
        31: .line 2032
      StackMap locals:
      StackMap stack:
            aload 1 /* sb */
            aload 8 /* dontquote */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        32: .line 2033
            aload 1 /* sb */
            aload 7 /* doquote */
        33: .line 2034
            ldc 3458623578763689985
        34: .line 2035
            ldc 5188146765093666815
        35: .line 2033
            invokestatic java.net.URI.quote:(Ljava/lang/String;JJ)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        end local 8 // java.lang.String dontquote
        end local 7 // java.lang.String doquote
        end local 6 // int end
        36: .line 2036
            goto 41
        37: .line 2037
      StackMap locals:
      StackMap stack:
            aload 1 /* sb */
            aload 2 /* authority */
        38: .line 2038
            ldc 3458623578763689985
        39: .line 2039
            ldc 5188146765093666815
        40: .line 2037
            invokestatic java.net.URI.quote:(Ljava/lang/String;JJ)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        41: .line 2042
      StackMap locals:
      StackMap stack:
            return
        end local 5 // int port
        end local 4 // java.lang.String host
        end local 3 // java.lang.String userInfo
        end local 2 // java.lang.String authority
        end local 1 // java.lang.StringBuilder sb
        end local 0 // java.net.URI this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   42     0          this  Ljava/net/URI;
            0   42     1            sb  Ljava/lang/StringBuilder;
            0   42     2     authority  Ljava/lang/String;
            0   42     3      userInfo  Ljava/lang/String;
            0   42     4          host  Ljava/lang/String;
            0   42     5          port  I
           11   17     6  needBrackets  Z
           22   36     6           end  I
           23   36     7       doquote  Ljava/lang/String;
           24   36     8     dontquote  Ljava/lang/String;
    MethodParameters:
           Name  Flags
      sb         
      authority  
      userInfo   
      host       
      port       

  private void appendSchemeSpecificPart(java.lang.StringBuilder, java.lang.String, java.lang.String, java.lang.String, java.lang.String, int, java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/StringBuilder;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;ILjava/lang/String;Ljava/lang/String;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=12, args_size=9
        start local 0 // java.net.URI this
        start local 1 // java.lang.StringBuilder sb
        start local 2 // java.lang.String opaquePart
        start local 3 // java.lang.String authority
        start local 4 // java.lang.String userInfo
        start local 5 // java.lang.String host
        start local 6 // int port
        start local 7 // java.lang.String path
        start local 8 // java.lang.String query
         0: .line 2053
            aload 2 /* opaquePart */
            ifnull 15
         1: .line 2057
            aload 2 /* opaquePart */
            ldc "//["
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifeq 13
         2: .line 2058
            aload 2 /* opaquePart */
            bipush 93
            invokevirtual java.lang.String.indexOf:(I)I
            istore 9 /* end */
        start local 9 // int end
         3: .line 2059
            iload 9 /* end */
            iconst_m1
            if_icmpeq 21
            aload 2 /* opaquePart */
            bipush 58
            invokevirtual java.lang.String.indexOf:(I)I
            iconst_m1
            if_icmpeq 21
         4: .line 2061
            iload 9 /* end */
            aload 2 /* opaquePart */
            invokevirtual java.lang.String.length:()I
            if_icmpne 8
         5: .line 2062
            aload 2 /* opaquePart */
            astore 11 /* dontquote */
        start local 11 // java.lang.String dontquote
         6: .line 2063
            ldc ""
            astore 10 /* doquote */
        start local 10 // java.lang.String doquote
         7: .line 2064
            goto 10
        end local 11 // java.lang.String dontquote
        end local 10 // java.lang.String doquote
         8: .line 2065
      StackMap locals: int
      StackMap stack:
            aload 2 /* opaquePart */
            iconst_0
            iload 9 /* end */
            iconst_1
            iadd
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            astore 11 /* dontquote */
        start local 11 // java.lang.String dontquote
         9: .line 2066
            aload 2 /* opaquePart */
            iload 9 /* end */
            iconst_1
            iadd
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            astore 10 /* doquote */
        start local 10 // java.lang.String doquote
        10: .line 2068
      StackMap locals: java.lang.String java.lang.String
      StackMap stack:
            aload 1 /* sb */
            aload 11 /* dontquote */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        11: .line 2069
            aload 1 /* sb */
            aload 10 /* doquote */
            ldc -5764607720602730495
            ldc 5188146765093666815
            invokestatic java.net.URI.quote:(Ljava/lang/String;JJ)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        end local 11 // java.lang.String dontquote
        end local 10 // java.lang.String doquote
        end local 9 // int end
        12: .line 2071
            goto 21
        13: .line 2072
      StackMap locals:
      StackMap stack:
            aload 1 /* sb */
            aload 2 /* opaquePart */
            ldc -5764607720602730495
            ldc 5188146765093666815
            invokestatic java.net.URI.quote:(Ljava/lang/String;JJ)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        14: .line 2074
            goto 21
        15: .line 2075
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* sb */
            aload 3 /* authority */
            aload 4 /* userInfo */
            aload 5 /* host */
            iload 6 /* port */
            invokevirtual java.net.URI.appendAuthority:(Ljava/lang/StringBuilder;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;I)V
        16: .line 2076
            aload 7 /* path */
            ifnull 18
        17: .line 2077
            aload 1 /* sb */
            aload 7 /* path */
            ldc 3458764316252045313
            ldc 5188146764422578175
            invokestatic java.net.URI.quote:(Ljava/lang/String;JJ)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        18: .line 2078
      StackMap locals:
      StackMap stack:
            aload 8 /* query */
            ifnull 21
        19: .line 2079
            aload 1 /* sb */
            bipush 63
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        20: .line 2080
            aload 1 /* sb */
            aload 8 /* query */
            ldc -5764607720602730495
            ldc 5188146765093666815
            invokestatic java.net.URI.quote:(Ljava/lang/String;JJ)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        21: .line 2083
      StackMap locals:
      StackMap stack:
            return
        end local 8 // java.lang.String query
        end local 7 // java.lang.String path
        end local 6 // int port
        end local 5 // java.lang.String host
        end local 4 // java.lang.String userInfo
        end local 3 // java.lang.String authority
        end local 2 // java.lang.String opaquePart
        end local 1 // java.lang.StringBuilder sb
        end local 0 // java.net.URI this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   22     0        this  Ljava/net/URI;
            0   22     1          sb  Ljava/lang/StringBuilder;
            0   22     2  opaquePart  Ljava/lang/String;
            0   22     3   authority  Ljava/lang/String;
            0   22     4    userInfo  Ljava/lang/String;
            0   22     5        host  Ljava/lang/String;
            0   22     6        port  I
            0   22     7        path  Ljava/lang/String;
            0   22     8       query  Ljava/lang/String;
            3   12     9         end  I
            7    8    10     doquote  Ljava/lang/String;
           10   12    10     doquote  Ljava/lang/String;
            6    8    11   dontquote  Ljava/lang/String;
            9   12    11   dontquote  Ljava/lang/String;
    MethodParameters:
            Name  Flags
      sb          
      opaquePart  
      authority   
      userInfo    
      host        
      port        
      path        
      query       

  private void appendFragment(java.lang.StringBuilder, java.lang.String);
    descriptor: (Ljava/lang/StringBuilder;Ljava/lang/String;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=3, args_size=3
        start local 0 // java.net.URI this
        start local 1 // java.lang.StringBuilder sb
        start local 2 // java.lang.String fragment
         0: .line 2086
            aload 2 /* fragment */
            ifnull 3
         1: .line 2087
            aload 1 /* sb */
            bipush 35
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
         2: .line 2088
            aload 1 /* sb */
            aload 2 /* fragment */
            ldc -5764607720602730495
            ldc 5188146765093666815
            invokestatic java.net.URI.quote:(Ljava/lang/String;JJ)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
         3: .line 2090
      StackMap locals:
      StackMap stack:
            return
        end local 2 // java.lang.String fragment
        end local 1 // java.lang.StringBuilder sb
        end local 0 // java.net.URI this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    4     0      this  Ljava/net/URI;
            0    4     1        sb  Ljava/lang/StringBuilder;
            0    4     2  fragment  Ljava/lang/String;
    MethodParameters:
          Name  Flags
      sb        
      fragment  

  private java.lang.String toString(java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String, int, java.lang.String, java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=9, locals=11, args_size=10
        start local 0 // java.net.URI this
        start local 1 // java.lang.String scheme
        start local 2 // java.lang.String opaquePart
        start local 3 // java.lang.String authority
        start local 4 // java.lang.String userInfo
        start local 5 // java.lang.String host
        start local 6 // int port
        start local 7 // java.lang.String path
        start local 8 // java.lang.String query
        start local 9 // java.lang.String fragment
         0: .line 2102
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            astore 10 /* sb */
        start local 10 // java.lang.StringBuilder sb
         1: .line 2103
            aload 1 /* scheme */
            ifnull 4
         2: .line 2104
            aload 10 /* sb */
            aload 1 /* scheme */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
         3: .line 2105
            aload 10 /* sb */
            bipush 58
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
         4: .line 2107
      StackMap locals: java.lang.StringBuilder
      StackMap stack:
            aload 0 /* this */
            aload 10 /* sb */
            aload 2 /* opaquePart */
         5: .line 2108
            aload 3 /* authority */
            aload 4 /* userInfo */
            aload 5 /* host */
            iload 6 /* port */
         6: .line 2109
            aload 7 /* path */
            aload 8 /* query */
         7: .line 2107
            invokevirtual java.net.URI.appendSchemeSpecificPart:(Ljava/lang/StringBuilder;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;ILjava/lang/String;Ljava/lang/String;)V
         8: .line 2110
            aload 0 /* this */
            aload 10 /* sb */
            aload 9 /* fragment */
            invokevirtual java.net.URI.appendFragment:(Ljava/lang/StringBuilder;Ljava/lang/String;)V
         9: .line 2111
            aload 10 /* sb */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 10 // java.lang.StringBuilder sb
        end local 9 // java.lang.String fragment
        end local 8 // java.lang.String query
        end local 7 // java.lang.String path
        end local 6 // int port
        end local 5 // java.lang.String host
        end local 4 // java.lang.String userInfo
        end local 3 // java.lang.String authority
        end local 2 // java.lang.String opaquePart
        end local 1 // java.lang.String scheme
        end local 0 // java.net.URI this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   10     0        this  Ljava/net/URI;
            0   10     1      scheme  Ljava/lang/String;
            0   10     2  opaquePart  Ljava/lang/String;
            0   10     3   authority  Ljava/lang/String;
            0   10     4    userInfo  Ljava/lang/String;
            0   10     5        host  Ljava/lang/String;
            0   10     6        port  I
            0   10     7        path  Ljava/lang/String;
            0   10     8       query  Ljava/lang/String;
            0   10     9    fragment  Ljava/lang/String;
            1   10    10          sb  Ljava/lang/StringBuilder;
    MethodParameters:
            Name  Flags
      scheme      
      opaquePart  
      authority   
      userInfo    
      host        
      port        
      path        
      query       
      fragment    

  private static java.lang.String resolvePath(java.lang.String, java.lang.String, boolean);
    descriptor: (Ljava/lang/String;Ljava/lang/String;Z)Ljava/lang/String;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=5, locals=7, args_size=3
        start local 0 // java.lang.String base
        start local 1 // java.lang.String child
        start local 2 // boolean absolute
         0: .line 2120
            aload 0 /* base */
            bipush 47
            invokevirtual java.lang.String.lastIndexOf:(I)I
            istore 3 /* i */
        start local 3 // int i
         1: .line 2121
            aload 1 /* child */
            invokevirtual java.lang.String.length:()I
            istore 4 /* cn */
        start local 4 // int cn
         2: .line 2122
            ldc ""
            astore 5 /* path */
        start local 5 // java.lang.String path
         3: .line 2124
            iload 4 /* cn */
            ifne 7
         4: .line 2126
            iload 3 /* i */
            iflt 12
         5: .line 2127
            aload 0 /* base */
            iconst_0
            iload 3 /* i */
            iconst_1
            iadd
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            astore 5 /* path */
         6: .line 2128
            goto 12
         7: .line 2129
      StackMap locals: int int java.lang.String
      StackMap stack:
            new java.lang.StringBuilder
            dup
            aload 0 /* base */
            invokevirtual java.lang.String.length:()I
            iload 4 /* cn */
            iadd
            invokespecial java.lang.StringBuilder.<init>:(I)V
            astore 6 /* sb */
        start local 6 // java.lang.StringBuilder sb
         8: .line 2131
            iload 3 /* i */
            iflt 10
         9: .line 2132
            aload 6 /* sb */
            aload 0 /* base */
            iconst_0
            iload 3 /* i */
            iconst_1
            iadd
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/CharSequence;II)Ljava/lang/StringBuilder;
            pop
        10: .line 2134
      StackMap locals: java.lang.StringBuilder
      StackMap stack:
            aload 6 /* sb */
            aload 1 /* child */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        11: .line 2135
            aload 6 /* sb */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 5 /* path */
        end local 6 // java.lang.StringBuilder sb
        12: .line 2139
      StackMap locals:
      StackMap stack:
            aload 5 /* path */
            invokestatic java.net.URI.normalize:(Ljava/lang/String;)Ljava/lang/String;
            astore 6 /* np */
        start local 6 // java.lang.String np
        13: .line 2144
            aload 6 /* np */
            areturn
        end local 6 // java.lang.String np
        end local 5 // java.lang.String path
        end local 4 // int cn
        end local 3 // int i
        end local 2 // boolean absolute
        end local 1 // java.lang.String child
        end local 0 // java.lang.String base
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   14     0      base  Ljava/lang/String;
            0   14     1     child  Ljava/lang/String;
            0   14     2  absolute  Z
            1   14     3         i  I
            2   14     4        cn  I
            3   14     5      path  Ljava/lang/String;
            8   12     6        sb  Ljava/lang/StringBuilder;
           13   14     6        np  Ljava/lang/String;
    MethodParameters:
          Name  Flags
      base      
      child     
      absolute  

  private static java.net.URI resolve(java.net.URI, java.net.URI);
    descriptor: (Ljava/net/URI;Ljava/net/URI;)Ljava/net/URI;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=4, locals=4, args_size=2
        start local 0 // java.net.URI base
        start local 1 // java.net.URI child
         0: .line 2151
            aload 1 /* child */
            invokevirtual java.net.URI.isOpaque:()Z
            ifne 1
            aload 0 /* base */
            invokevirtual java.net.URI.isOpaque:()Z
            ifeq 2
         1: .line 2152
      StackMap locals:
      StackMap stack:
            aload 1 /* child */
            areturn
         2: .line 2155
      StackMap locals:
      StackMap stack:
            aload 1 /* child */
            getfield java.net.URI.scheme:Ljava/lang/String;
            ifnonnull 18
            aload 1 /* child */
            getfield java.net.URI.authority:Ljava/lang/String;
            ifnonnull 18
         3: .line 2156
            aload 1 /* child */
            getfield java.net.URI.path:Ljava/lang/String;
            invokevirtual java.lang.String.isEmpty:()Z
            ifeq 18
            aload 1 /* child */
            getfield java.net.URI.fragment:Ljava/lang/String;
            ifnull 18
         4: .line 2157
            aload 1 /* child */
            getfield java.net.URI.query:Ljava/lang/String;
            ifnonnull 18
         5: .line 2158
            aload 0 /* base */
            getfield java.net.URI.fragment:Ljava/lang/String;
            ifnull 8
         6: .line 2159
            aload 1 /* child */
            getfield java.net.URI.fragment:Ljava/lang/String;
            aload 0 /* base */
            getfield java.net.URI.fragment:Ljava/lang/String;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 8
         7: .line 2160
            aload 0 /* base */
            areturn
         8: .line 2162
      StackMap locals:
      StackMap stack:
            new java.net.URI
            dup
            invokespecial java.net.URI.<init>:()V
            astore 2 /* ru */
        start local 2 // java.net.URI ru
         9: .line 2163
            aload 2 /* ru */
            aload 0 /* base */
            getfield java.net.URI.scheme:Ljava/lang/String;
            putfield java.net.URI.scheme:Ljava/lang/String;
        10: .line 2164
            aload 2 /* ru */
            aload 0 /* base */
            getfield java.net.URI.authority:Ljava/lang/String;
            putfield java.net.URI.authority:Ljava/lang/String;
        11: .line 2165
            aload 2 /* ru */
            aload 0 /* base */
            getfield java.net.URI.userInfo:Ljava/lang/String;
            putfield java.net.URI.userInfo:Ljava/lang/String;
        12: .line 2166
            aload 2 /* ru */
            aload 0 /* base */
            getfield java.net.URI.host:Ljava/lang/String;
            putfield java.net.URI.host:Ljava/lang/String;
        13: .line 2167
            aload 2 /* ru */
            aload 0 /* base */
            getfield java.net.URI.port:I
            putfield java.net.URI.port:I
        14: .line 2168
            aload 2 /* ru */
            aload 0 /* base */
            getfield java.net.URI.path:Ljava/lang/String;
            putfield java.net.URI.path:Ljava/lang/String;
        15: .line 2169
            aload 2 /* ru */
            aload 1 /* child */
            getfield java.net.URI.fragment:Ljava/lang/String;
            putfield java.net.URI.fragment:Ljava/lang/String;
        16: .line 2170
            aload 2 /* ru */
            aload 0 /* base */
            getfield java.net.URI.query:Ljava/lang/String;
            putfield java.net.URI.query:Ljava/lang/String;
        17: .line 2171
            aload 2 /* ru */
            areturn
        end local 2 // java.net.URI ru
        18: .line 2175
      StackMap locals:
      StackMap stack:
            aload 1 /* child */
            getfield java.net.URI.scheme:Ljava/lang/String;
            ifnull 20
        19: .line 2176
            aload 1 /* child */
            areturn
        20: .line 2178
      StackMap locals:
      StackMap stack:
            new java.net.URI
            dup
            invokespecial java.net.URI.<init>:()V
            astore 2 /* ru */
        start local 2 // java.net.URI ru
        21: .line 2179
            aload 2 /* ru */
            aload 0 /* base */
            getfield java.net.URI.scheme:Ljava/lang/String;
            putfield java.net.URI.scheme:Ljava/lang/String;
        22: .line 2180
            aload 2 /* ru */
            aload 1 /* child */
            getfield java.net.URI.query:Ljava/lang/String;
            putfield java.net.URI.query:Ljava/lang/String;
        23: .line 2181
            aload 2 /* ru */
            aload 1 /* child */
            getfield java.net.URI.fragment:Ljava/lang/String;
            putfield java.net.URI.fragment:Ljava/lang/String;
        24: .line 2184
            aload 1 /* child */
            getfield java.net.URI.authority:Ljava/lang/String;
            ifnonnull 37
        25: .line 2185
            aload 2 /* ru */
            aload 0 /* base */
            getfield java.net.URI.authority:Ljava/lang/String;
            putfield java.net.URI.authority:Ljava/lang/String;
        26: .line 2186
            aload 2 /* ru */
            aload 0 /* base */
            getfield java.net.URI.host:Ljava/lang/String;
            putfield java.net.URI.host:Ljava/lang/String;
        27: .line 2187
            aload 2 /* ru */
            aload 0 /* base */
            getfield java.net.URI.userInfo:Ljava/lang/String;
            putfield java.net.URI.userInfo:Ljava/lang/String;
        28: .line 2188
            aload 2 /* ru */
            aload 0 /* base */
            getfield java.net.URI.port:I
            putfield java.net.URI.port:I
        29: .line 2190
            aload 1 /* child */
            getfield java.net.URI.path:Ljava/lang/String;
            ifnonnull 30
            ldc ""
            goto 31
      StackMap locals: java.net.URI
      StackMap stack:
        30: aload 1 /* child */
            getfield java.net.URI.path:Ljava/lang/String;
      StackMap locals:
      StackMap stack: java.lang.String
        31: astore 3 /* cp */
        start local 3 // java.lang.String cp
        32: .line 2191
            aload 3 /* cp */
            invokevirtual java.lang.String.isEmpty:()Z
            ifne 35
            aload 3 /* cp */
            iconst_0
            invokevirtual java.lang.String.charAt:(I)C
            bipush 47
            if_icmpne 35
        33: .line 2193
            aload 2 /* ru */
            aload 1 /* child */
            getfield java.net.URI.path:Ljava/lang/String;
            putfield java.net.URI.path:Ljava/lang/String;
        34: .line 2194
            goto 43
        35: .line 2196
      StackMap locals: java.lang.String
      StackMap stack:
            aload 2 /* ru */
            aload 0 /* base */
            getfield java.net.URI.path:Ljava/lang/String;
            aload 3 /* cp */
            aload 0 /* base */
            invokevirtual java.net.URI.isAbsolute:()Z
            invokestatic java.net.URI.resolvePath:(Ljava/lang/String;Ljava/lang/String;Z)Ljava/lang/String;
            putfield java.net.URI.path:Ljava/lang/String;
        end local 3 // java.lang.String cp
        36: .line 2198
            goto 43
        37: .line 2199
      StackMap locals:
      StackMap stack:
            aload 2 /* ru */
            aload 1 /* child */
            getfield java.net.URI.authority:Ljava/lang/String;
            putfield java.net.URI.authority:Ljava/lang/String;
        38: .line 2200
            aload 2 /* ru */
            aload 1 /* child */
            getfield java.net.URI.host:Ljava/lang/String;
            putfield java.net.URI.host:Ljava/lang/String;
        39: .line 2201
            aload 2 /* ru */
            aload 1 /* child */
            getfield java.net.URI.userInfo:Ljava/lang/String;
            putfield java.net.URI.userInfo:Ljava/lang/String;
        40: .line 2202
            aload 2 /* ru */
            aload 1 /* child */
            getfield java.net.URI.host:Ljava/lang/String;
            putfield java.net.URI.host:Ljava/lang/String;
        41: .line 2203
            aload 2 /* ru */
            aload 1 /* child */
            getfield java.net.URI.port:I
            putfield java.net.URI.port:I
        42: .line 2204
            aload 2 /* ru */
            aload 1 /* child */
            getfield java.net.URI.path:Ljava/lang/String;
            putfield java.net.URI.path:Ljava/lang/String;
        43: .line 2208
      StackMap locals:
      StackMap stack:
            aload 2 /* ru */
            areturn
        end local 2 // java.net.URI ru
        end local 1 // java.net.URI child
        end local 0 // java.net.URI base
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   44     0   base  Ljava/net/URI;
            0   44     1  child  Ljava/net/URI;
            9   18     2     ru  Ljava/net/URI;
           21   44     2     ru  Ljava/net/URI;
           32   36     3     cp  Ljava/lang/String;
    MethodParameters:
       Name  Flags
      base   
      child  

  private static java.net.URI normalize(java.net.URI);
    descriptor: (Ljava/net/URI;)Ljava/net/URI;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=3, args_size=1
        start local 0 // java.net.URI u
         0: .line 2215
            aload 0 /* u */
            invokevirtual java.net.URI.isOpaque:()Z
            ifne 1
            aload 0 /* u */
            getfield java.net.URI.path:Ljava/lang/String;
            ifnull 1
            aload 0 /* u */
            getfield java.net.URI.path:Ljava/lang/String;
            invokevirtual java.lang.String.isEmpty:()Z
            ifeq 2
         1: .line 2216
      StackMap locals:
      StackMap stack:
            aload 0 /* u */
            areturn
         2: .line 2218
      StackMap locals:
      StackMap stack:
            aload 0 /* u */
            getfield java.net.URI.path:Ljava/lang/String;
            invokestatic java.net.URI.normalize:(Ljava/lang/String;)Ljava/lang/String;
            astore 1 /* np */
        start local 1 // java.lang.String np
         3: .line 2219
            aload 1 /* np */
            aload 0 /* u */
            getfield java.net.URI.path:Ljava/lang/String;
            if_acmpne 5
         4: .line 2220
            aload 0 /* u */
            areturn
         5: .line 2222
      StackMap locals: java.lang.String
      StackMap stack:
            new java.net.URI
            dup
            invokespecial java.net.URI.<init>:()V
            astore 2 /* v */
        start local 2 // java.net.URI v
         6: .line 2223
            aload 2 /* v */
            aload 0 /* u */
            getfield java.net.URI.scheme:Ljava/lang/String;
            putfield java.net.URI.scheme:Ljava/lang/String;
         7: .line 2224
            aload 2 /* v */
            aload 0 /* u */
            getfield java.net.URI.fragment:Ljava/lang/String;
            putfield java.net.URI.fragment:Ljava/lang/String;
         8: .line 2225
            aload 2 /* v */
            aload 0 /* u */
            getfield java.net.URI.authority:Ljava/lang/String;
            putfield java.net.URI.authority:Ljava/lang/String;
         9: .line 2226
            aload 2 /* v */
            aload 0 /* u */
            getfield java.net.URI.userInfo:Ljava/lang/String;
            putfield java.net.URI.userInfo:Ljava/lang/String;
        10: .line 2227
            aload 2 /* v */
            aload 0 /* u */
            getfield java.net.URI.host:Ljava/lang/String;
            putfield java.net.URI.host:Ljava/lang/String;
        11: .line 2228
            aload 2 /* v */
            aload 0 /* u */
            getfield java.net.URI.port:I
            putfield java.net.URI.port:I
        12: .line 2229
            aload 2 /* v */
            aload 1 /* np */
            putfield java.net.URI.path:Ljava/lang/String;
        13: .line 2230
            aload 2 /* v */
            aload 0 /* u */
            getfield java.net.URI.query:Ljava/lang/String;
            putfield java.net.URI.query:Ljava/lang/String;
        14: .line 2231
            aload 2 /* v */
            areturn
        end local 2 // java.net.URI v
        end local 1 // java.lang.String np
        end local 0 // java.net.URI u
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   15     0     u  Ljava/net/URI;
            3   15     1    np  Ljava/lang/String;
            6   15     2     v  Ljava/net/URI;
    MethodParameters:
      Name  Flags
      u     

  private static java.net.URI relativize(java.net.URI, java.net.URI);
    descriptor: (Ljava/net/URI;Ljava/net/URI;)Ljava/net/URI;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=5, args_size=2
        start local 0 // java.net.URI base
        start local 1 // java.net.URI child
         0: .line 2242
            aload 1 /* child */
            invokevirtual java.net.URI.isOpaque:()Z
            ifne 1
            aload 0 /* base */
            invokevirtual java.net.URI.isOpaque:()Z
            ifeq 2
         1: .line 2243
      StackMap locals:
      StackMap stack:
            aload 1 /* child */
            areturn
         2: .line 2244
      StackMap locals:
      StackMap stack:
            aload 0 /* base */
            getfield java.net.URI.scheme:Ljava/lang/String;
            aload 1 /* child */
            getfield java.net.URI.scheme:Ljava/lang/String;
            invokestatic java.net.URI.equalIgnoringCase:(Ljava/lang/String;Ljava/lang/String;)Z
            ifeq 4
         3: .line 2245
            aload 0 /* base */
            getfield java.net.URI.authority:Ljava/lang/String;
            aload 1 /* child */
            getfield java.net.URI.authority:Ljava/lang/String;
            invokestatic java.net.URI.equal:(Ljava/lang/String;Ljava/lang/String;)Z
            ifne 5
         4: .line 2246
      StackMap locals:
      StackMap stack:
            aload 1 /* child */
            areturn
         5: .line 2248
      StackMap locals:
      StackMap stack:
            aload 0 /* base */
            getfield java.net.URI.path:Ljava/lang/String;
            invokestatic java.net.URI.normalize:(Ljava/lang/String;)Ljava/lang/String;
            astore 2 /* bp */
        start local 2 // java.lang.String bp
         6: .line 2249
            aload 1 /* child */
            getfield java.net.URI.path:Ljava/lang/String;
            invokestatic java.net.URI.normalize:(Ljava/lang/String;)Ljava/lang/String;
            astore 3 /* cp */
        start local 3 // java.lang.String cp
         7: .line 2250
            aload 2 /* bp */
            aload 3 /* cp */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 12
         8: .line 2251
            aload 2 /* bp */
            ldc "/"
            invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
            ifne 10
         9: .line 2252
            new java.lang.StringBuilder
            dup
            aload 2 /* bp */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc "/"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 2 /* bp */
        10: .line 2253
      StackMap locals: java.lang.String java.lang.String
      StackMap stack:
            aload 3 /* cp */
            aload 2 /* bp */
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifne 12
        11: .line 2254
            aload 1 /* child */
            areturn
        12: .line 2257
      StackMap locals:
      StackMap stack:
            new java.net.URI
            dup
            invokespecial java.net.URI.<init>:()V
            astore 4 /* v */
        start local 4 // java.net.URI v
        13: .line 2258
            aload 4 /* v */
            aload 3 /* cp */
            aload 2 /* bp */
            invokevirtual java.lang.String.length:()I
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            putfield java.net.URI.path:Ljava/lang/String;
        14: .line 2259
            aload 4 /* v */
            aload 1 /* child */
            getfield java.net.URI.query:Ljava/lang/String;
            putfield java.net.URI.query:Ljava/lang/String;
        15: .line 2260
            aload 4 /* v */
            aload 1 /* child */
            getfield java.net.URI.fragment:Ljava/lang/String;
            putfield java.net.URI.fragment:Ljava/lang/String;
        16: .line 2261
            aload 4 /* v */
            areturn
        end local 4 // java.net.URI v
        end local 3 // java.lang.String cp
        end local 2 // java.lang.String bp
        end local 1 // java.net.URI child
        end local 0 // java.net.URI base
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   17     0   base  Ljava/net/URI;
            0   17     1  child  Ljava/net/URI;
            6   17     2     bp  Ljava/lang/String;
            7   17     3     cp  Ljava/lang/String;
           13   17     4      v  Ljava/net/URI;
    MethodParameters:
       Name  Flags
      base   
      child  

  private static int needsNormalization(java.lang.String);
    descriptor: (Ljava/lang/String;)I
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=5, args_size=1
        start local 0 // java.lang.String path
         0: .line 2290
            iconst_1
            istore 1 /* normal */
        start local 1 // boolean normal
         1: .line 2291
            iconst_0
            istore 2 /* ns */
        start local 2 // int ns
         2: .line 2292
            aload 0 /* path */
            invokevirtual java.lang.String.length:()I
            iconst_1
            isub
            istore 3 /* end */
        start local 3 // int end
         3: .line 2293
            iconst_0
            istore 4 /* p */
        start local 4 // int p
         4: .line 2296
            goto 7
         5: .line 2297
      StackMap locals: java.lang.String int int int int
      StackMap stack:
            aload 0 /* path */
            iload 4 /* p */
            invokevirtual java.lang.String.charAt:(I)C
            bipush 47
            if_icmpeq 6
            goto 8
         6: .line 2298
      StackMap locals:
      StackMap stack:
            iinc 4 /* p */ 1
         7: .line 2296
      StackMap locals:
      StackMap stack:
            iload 4 /* p */
            iload 3 /* end */
            if_icmple 5
         8: .line 2300
      StackMap locals:
      StackMap stack:
            iload 4 /* p */
            iconst_1
            if_icmple 27
            iconst_0
            istore 1 /* normal */
         9: .line 2303
            goto 27
        10: .line 2306
      StackMap locals:
      StackMap stack:
            aload 0 /* path */
            iload 4 /* p */
            invokevirtual java.lang.String.charAt:(I)C
            bipush 46
            if_icmpne 17
        11: .line 2307
            iload 4 /* p */
            iload 3 /* end */
            if_icmpeq 16
        12: .line 2308
            aload 0 /* path */
            iload 4 /* p */
            iconst_1
            iadd
            invokevirtual java.lang.String.charAt:(I)C
            bipush 47
            if_icmpeq 16
        13: .line 2309
            aload 0 /* path */
            iload 4 /* p */
            iconst_1
            iadd
            invokevirtual java.lang.String.charAt:(I)C
            bipush 46
            if_icmpne 17
        14: .line 2310
            iload 4 /* p */
            iconst_1
            iadd
            iload 3 /* end */
            if_icmpeq 16
        15: .line 2311
            aload 0 /* path */
            iload 4 /* p */
            iconst_2
            iadd
            invokevirtual java.lang.String.charAt:(I)C
            bipush 47
            if_icmpne 17
        16: .line 2312
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 1 /* normal */
        17: .line 2314
      StackMap locals:
      StackMap stack:
            iinc 2 /* ns */ 1
        18: .line 2317
            goto 26
        19: .line 2318
      StackMap locals:
      StackMap stack:
            aload 0 /* path */
            iload 4 /* p */
            iinc 4 /* p */ 1
            invokevirtual java.lang.String.charAt:(I)C
            bipush 47
            if_icmpeq 24
        20: .line 2319
            goto 26
        21: .line 2323
      StackMap locals:
      StackMap stack:
            aload 0 /* path */
            iload 4 /* p */
            invokevirtual java.lang.String.charAt:(I)C
            bipush 47
            if_icmpeq 22
            goto 27
        22: .line 2324
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 1 /* normal */
        23: .line 2325
            iinc 4 /* p */ 1
        24: .line 2322
      StackMap locals:
      StackMap stack:
            iload 4 /* p */
            iload 3 /* end */
            if_icmple 21
        25: .line 2328
            goto 27
        26: .line 2317
      StackMap locals:
      StackMap stack:
            iload 4 /* p */
            iload 3 /* end */
            if_icmple 19
        27: .line 2303
      StackMap locals:
      StackMap stack:
            iload 4 /* p */
            iload 3 /* end */
            if_icmple 10
        28: .line 2332
            iload 1 /* normal */
            ifeq 29
            iconst_m1
            goto 30
      StackMap locals:
      StackMap stack:
        29: iload 2 /* ns */
      StackMap locals:
      StackMap stack: int
        30: ireturn
        end local 4 // int p
        end local 3 // int end
        end local 2 // int ns
        end local 1 // boolean normal
        end local 0 // java.lang.String path
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   31     0    path  Ljava/lang/String;
            1   31     1  normal  Z
            2   31     2      ns  I
            3   31     3     end  I
            4   31     4       p  I
    MethodParameters:
      Name  Flags
      path  

  private static void split(char[], int[]);
    descriptor: ([C[I)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=5, args_size=2
        start local 0 // char[] path
        start local 1 // int[] segs
         0: .line 2347
            aload 0 /* path */
            arraylength
            iconst_1
            isub
            istore 2 /* end */
        start local 2 // int end
         1: .line 2348
            iconst_0
            istore 3 /* p */
        start local 3 // int p
         2: .line 2349
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         3: .line 2352
            goto 7
         4: .line 2353
      StackMap locals: int int int
      StackMap stack:
            aload 0 /* path */
            iload 3 /* p */
            caload
            bipush 47
            if_icmpeq 5
            goto 20
         5: .line 2354
      StackMap locals:
      StackMap stack:
            aload 0 /* path */
            iload 3 /* p */
            iconst_0
            castore
         6: .line 2355
            iinc 3 /* p */ 1
         7: .line 2352
      StackMap locals:
      StackMap stack:
            iload 3 /* p */
            iload 2 /* end */
            if_icmple 4
         8: .line 2358
            goto 20
         9: .line 2361
      StackMap locals:
      StackMap stack:
            aload 1 /* segs */
            iload 4 /* i */
            iinc 4 /* i */ 1
            iload 3 /* p */
            iinc 3 /* p */ 1
            iastore
        10: .line 2364
            goto 19
        11: .line 2365
      StackMap locals:
      StackMap stack:
            aload 0 /* path */
            iload 3 /* p */
            iinc 3 /* p */ 1
            caload
            bipush 47
            if_icmpeq 13
        12: .line 2366
            goto 19
        13: .line 2367
      StackMap locals:
      StackMap stack:
            aload 0 /* path */
            iload 3 /* p */
            iconst_1
            isub
            iconst_0
            castore
        14: .line 2370
            goto 17
        15: .line 2371
      StackMap locals:
      StackMap stack:
            aload 0 /* path */
            iload 3 /* p */
            caload
            bipush 47
            if_icmpeq 16
            goto 20
        16: .line 2372
      StackMap locals:
      StackMap stack:
            aload 0 /* path */
            iload 3 /* p */
            iinc 3 /* p */ 1
            iconst_0
            castore
        17: .line 2370
      StackMap locals:
      StackMap stack:
            iload 3 /* p */
            iload 2 /* end */
            if_icmple 15
        18: .line 2374
            goto 20
        19: .line 2364
      StackMap locals:
      StackMap stack:
            iload 3 /* p */
            iload 2 /* end */
            if_icmple 11
        20: .line 2358
      StackMap locals:
      StackMap stack:
            iload 3 /* p */
            iload 2 /* end */
            if_icmple 9
        21: .line 2378
            iload 4 /* i */
            aload 1 /* segs */
            arraylength
            if_icmpeq 23
        22: .line 2379
            new java.lang.InternalError
            dup
            invokespecial java.lang.InternalError.<init>:()V
            athrow
        23: .line 2380
      StackMap locals:
      StackMap stack:
            return
        end local 4 // int i
        end local 3 // int p
        end local 2 // int end
        end local 1 // int[] segs
        end local 0 // char[] path
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   24     0  path  [C
            0   24     1  segs  [I
            1   24     2   end  I
            2   24     3     p  I
            3   24     4     i  I
    MethodParameters:
      Name  Flags
      path  
      segs  

  private static int join(char[], int[]);
    descriptor: ([C[I)I
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=4, locals=7, args_size=2
        start local 0 // char[] path
        start local 1 // int[] segs
         0: .line 2396
            aload 1 /* segs */
            arraylength
            istore 2 /* ns */
        start local 2 // int ns
         1: .line 2397
            aload 0 /* path */
            arraylength
            iconst_1
            isub
            istore 3 /* end */
        start local 3 // int end
         2: .line 2398
            iconst_0
            istore 4 /* p */
        start local 4 // int p
         3: .line 2400
            aload 0 /* path */
            iload 4 /* p */
            caload
            ifne 5
         4: .line 2402
            aload 0 /* path */
            iload 4 /* p */
            iinc 4 /* p */ 1
            bipush 47
            castore
         5: .line 2405
      StackMap locals: int int int
      StackMap stack:
            iconst_0
            istore 5 /* i */
        start local 5 // int i
         6: goto 26
         7: .line 2406
      StackMap locals: int
      StackMap stack:
            aload 1 /* segs */
            iload 5 /* i */
            iaload
            istore 6 /* q */
        start local 6 // int q
         8: .line 2407
            iload 6 /* q */
            iconst_m1
            if_icmpne 10
         9: .line 2409
            goto 25
        10: .line 2411
      StackMap locals: int
      StackMap stack:
            iload 4 /* p */
            iload 6 /* q */
            if_icmpne 17
        11: .line 2413
            goto 13
        12: .line 2414
      StackMap locals:
      StackMap stack:
            iinc 4 /* p */ 1
        13: .line 2413
      StackMap locals:
      StackMap stack:
            iload 4 /* p */
            iload 3 /* end */
            if_icmpgt 14
            aload 0 /* path */
            iload 4 /* p */
            caload
            ifne 12
        14: .line 2415
      StackMap locals:
      StackMap stack:
            iload 4 /* p */
            iload 3 /* end */
            if_icmpgt 25
        15: .line 2417
            aload 0 /* path */
            iload 4 /* p */
            iinc 4 /* p */ 1
            bipush 47
            castore
        16: .line 2419
            goto 25
      StackMap locals:
      StackMap stack:
        17: iload 4 /* p */
            iload 6 /* q */
            if_icmpge 24
        18: .line 2421
            goto 20
        19: .line 2422
      StackMap locals:
      StackMap stack:
            aload 0 /* path */
            iload 4 /* p */
            iinc 4 /* p */ 1
            aload 0 /* path */
            iload 6 /* q */
            iinc 6 /* q */ 1
            caload
            castore
        20: .line 2421
      StackMap locals:
      StackMap stack:
            iload 6 /* q */
            iload 3 /* end */
            if_icmpgt 21
            aload 0 /* path */
            iload 6 /* q */
            caload
            ifne 19
        21: .line 2423
      StackMap locals:
      StackMap stack:
            iload 6 /* q */
            iload 3 /* end */
            if_icmpgt 25
        22: .line 2425
            aload 0 /* path */
            iload 4 /* p */
            iinc 4 /* p */ 1
            bipush 47
            castore
        23: .line 2427
            goto 25
        24: .line 2428
      StackMap locals:
      StackMap stack:
            new java.lang.InternalError
            dup
            invokespecial java.lang.InternalError.<init>:()V
            athrow
        end local 6 // int q
        25: .line 2405
      StackMap locals:
      StackMap stack:
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
        26: iload 5 /* i */
            iload 2 /* ns */
            if_icmplt 7
        end local 5 // int i
        27: .line 2431
            iload 4 /* p */
            ireturn
        end local 4 // int p
        end local 3 // int end
        end local 2 // int ns
        end local 1 // int[] segs
        end local 0 // char[] path
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   28     0  path  [C
            0   28     1  segs  [I
            1   28     2    ns  I
            2   28     3   end  I
            3   28     4     p  I
            6   27     5     i  I
            8   25     6     q  I
    MethodParameters:
      Name  Flags
      path  
      segs  

  private static void removeDots(char[], int[]);
    descriptor: ([C[I)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=8, args_size=2
        start local 0 // char[] path
        start local 1 // int[] segs
         0: .line 2439
            aload 1 /* segs */
            arraylength
            istore 2 /* ns */
        start local 2 // int ns
         1: .line 2440
            aload 0 /* path */
            arraylength
            iconst_1
            isub
            istore 3 /* end */
        start local 3 // int end
         2: .line 2442
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         3: goto 39
         4: .line 2443
      StackMap locals: int int int
      StackMap stack:
            iconst_0
            istore 5 /* dots */
        start local 5 // int dots
         5: .line 2447
      StackMap locals: int
      StackMap stack:
            aload 1 /* segs */
            iload 4 /* i */
            iaload
            istore 6 /* p */
        start local 6 // int p
         6: .line 2448
            aload 0 /* path */
            iload 6 /* p */
            caload
            bipush 46
            if_icmpne 18
         7: .line 2449
            iload 6 /* p */
            iload 3 /* end */
            if_icmpne 10
         8: .line 2450
            iconst_1
            istore 5 /* dots */
         9: .line 2451
            goto 21
        10: .line 2452
      StackMap locals: int
      StackMap stack:
            aload 0 /* path */
            iload 6 /* p */
            iconst_1
            iadd
            caload
            ifne 13
        11: .line 2453
            iconst_1
            istore 5 /* dots */
        12: .line 2454
            goto 21
        13: .line 2455
      StackMap locals:
      StackMap stack:
            aload 0 /* path */
            iload 6 /* p */
            iconst_1
            iadd
            caload
            bipush 46
            if_icmpne 18
        14: .line 2456
            iload 6 /* p */
            iconst_1
            iadd
            iload 3 /* end */
            if_icmpeq 16
        15: .line 2457
            aload 0 /* path */
            iload 6 /* p */
            iconst_2
            iadd
            caload
            ifne 18
        16: .line 2458
      StackMap locals:
      StackMap stack:
            iconst_2
            istore 5 /* dots */
        17: .line 2459
            goto 21
        18: .line 2462
      StackMap locals:
      StackMap stack:
            iinc 4 /* i */ 1
        end local 6 // int p
        19: .line 2463
            iload 4 /* i */
            iload 2 /* ns */
        20: .line 2446
            if_icmplt 5
        21: .line 2464
      StackMap locals:
      StackMap stack:
            iload 4 /* i */
            iload 2 /* ns */
            if_icmpgt 40
            iload 5 /* dots */
            ifne 23
        22: .line 2465
            goto 40
        23: .line 2467
      StackMap locals:
      StackMap stack:
            iload 5 /* dots */
            iconst_1
            if_icmpne 26
        24: .line 2469
            aload 1 /* segs */
            iload 4 /* i */
            iconst_m1
            iastore
        25: .line 2470
            goto 38
        26: .line 2475
      StackMap locals:
      StackMap stack:
            iload 4 /* i */
            iconst_1
            isub
            istore 6 /* j */
        start local 6 // int j
        27: goto 30
        28: .line 2476
      StackMap locals: int
      StackMap stack:
            aload 1 /* segs */
            iload 6 /* j */
            iaload
            iconst_m1
            if_icmpeq 29
            goto 31
        29: .line 2475
      StackMap locals:
      StackMap stack:
            iinc 6 /* j */ -1
      StackMap locals:
      StackMap stack:
        30: iload 6 /* j */
            ifge 28
        31: .line 2478
      StackMap locals:
      StackMap stack:
            iload 6 /* j */
            iflt 38
        32: .line 2479
            aload 1 /* segs */
            iload 6 /* j */
            iaload
            istore 7 /* q */
        start local 7 // int q
        33: .line 2480
            aload 0 /* path */
            iload 7 /* q */
            caload
            bipush 46
            if_icmpne 36
        34: .line 2481
            aload 0 /* path */
            iload 7 /* q */
            iconst_1
            iadd
            caload
            bipush 46
            if_icmpne 36
        35: .line 2482
            aload 0 /* path */
            iload 7 /* q */
            iconst_2
            iadd
            caload
            ifeq 38
        36: .line 2483
      StackMap locals: int
      StackMap stack:
            aload 1 /* segs */
            iload 4 /* i */
            iconst_m1
            iastore
        37: .line 2484
            aload 1 /* segs */
            iload 6 /* j */
            iconst_m1
            iastore
        end local 7 // int q
        end local 6 // int j
        end local 5 // int dots
        38: .line 2442
      StackMap locals:
      StackMap stack:
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
        39: iload 4 /* i */
            iload 2 /* ns */
            if_icmplt 4
        end local 4 // int i
        40: .line 2489
      StackMap locals:
      StackMap stack:
            return
        end local 3 // int end
        end local 2 // int ns
        end local 1 // int[] segs
        end local 0 // char[] path
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   41     0  path  [C
            0   41     1  segs  [I
            1   41     2    ns  I
            2   41     3   end  I
            3   40     4     i  I
            5   38     5  dots  I
            6   19     6     p  I
           27   38     6     j  I
           33   38     7     q  I
    MethodParameters:
      Name  Flags
      path  
      segs  

  private static void maybeAddLeadingDot(char[], int[]);
    descriptor: ([C[I)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=5, args_size=2
        start local 0 // char[] path
        start local 1 // int[] segs
         0: .line 2497
            aload 0 /* path */
            iconst_0
            caload
            ifne 2
         1: .line 2499
            return
         2: .line 2501
      StackMap locals:
      StackMap stack:
            aload 1 /* segs */
            arraylength
            istore 2 /* ns */
        start local 2 // int ns
         3: .line 2502
            iconst_0
            istore 3 /* f */
        start local 3 // int f
         4: .line 2503
            goto 8
         5: .line 2504
      StackMap locals: int int
      StackMap stack:
            aload 1 /* segs */
            iload 3 /* f */
            iaload
            iflt 7
         6: .line 2505
            goto 9
         7: .line 2506
      StackMap locals:
      StackMap stack:
            iinc 3 /* f */ 1
         8: .line 2503
      StackMap locals:
      StackMap stack:
            iload 3 /* f */
            iload 2 /* ns */
            if_icmplt 5
         9: .line 2508
      StackMap locals:
      StackMap stack:
            iload 3 /* f */
            iload 2 /* ns */
            if_icmpge 10
            iload 3 /* f */
            ifne 11
        10: .line 2511
      StackMap locals:
      StackMap stack:
            return
        11: .line 2513
      StackMap locals:
      StackMap stack:
            aload 1 /* segs */
            iload 3 /* f */
            iaload
            istore 4 /* p */
        start local 4 // int p
        12: .line 2514
            goto 14
      StackMap locals: int
      StackMap stack:
        13: iinc 4 /* p */ 1
      StackMap locals:
      StackMap stack:
        14: iload 4 /* p */
            aload 0 /* path */
            arraylength
            if_icmpge 15
            aload 0 /* path */
            iload 4 /* p */
            caload
            bipush 58
            if_icmpeq 15
            aload 0 /* path */
            iload 4 /* p */
            caload
            ifne 13
        15: .line 2515
      StackMap locals:
      StackMap stack:
            iload 4 /* p */
            aload 0 /* path */
            arraylength
            if_icmpge 16
            aload 0 /* path */
            iload 4 /* p */
            caload
            ifne 17
        16: .line 2517
      StackMap locals:
      StackMap stack:
            return
        17: .line 2521
      StackMap locals:
      StackMap stack:
            aload 0 /* path */
            iconst_0
            bipush 46
            castore
        18: .line 2522
            aload 0 /* path */
            iconst_1
            iconst_0
            castore
        19: .line 2523
            aload 1 /* segs */
            iconst_0
            iconst_0
            iastore
        20: .line 2524
            return
        end local 4 // int p
        end local 3 // int f
        end local 2 // int ns
        end local 1 // int[] segs
        end local 0 // char[] path
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   21     0  path  [C
            0   21     1  segs  [I
            3   21     2    ns  I
            4   21     3     f  I
           12   21     4     p  I
    MethodParameters:
      Name  Flags
      path  
      segs  

  private static java.lang.String normalize(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/String;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=6, locals=5, args_size=1
        start local 0 // java.lang.String ps
         0: .line 2536
            aload 0 /* ps */
            invokestatic java.net.URI.needsNormalization:(Ljava/lang/String;)I
            istore 1 /* ns */
        start local 1 // int ns
         1: .line 2537
            iload 1 /* ns */
            ifge 3
         2: .line 2539
            aload 0 /* ps */
            areturn
         3: .line 2541
      StackMap locals: int
      StackMap stack:
            aload 0 /* ps */
            invokevirtual java.lang.String.toCharArray:()[C
            astore 2 /* path */
        start local 2 // char[] path
         4: .line 2544
            iload 1 /* ns */
            newarray 10
            astore 3 /* segs */
        start local 3 // int[] segs
         5: .line 2545
            aload 2 /* path */
            aload 3 /* segs */
            invokestatic java.net.URI.split:([C[I)V
         6: .line 2548
            aload 2 /* path */
            aload 3 /* segs */
            invokestatic java.net.URI.removeDots:([C[I)V
         7: .line 2551
            aload 2 /* path */
            aload 3 /* segs */
            invokestatic java.net.URI.maybeAddLeadingDot:([C[I)V
         8: .line 2554
            new java.lang.String
            dup
            aload 2 /* path */
            iconst_0
            aload 2 /* path */
            aload 3 /* segs */
            invokestatic java.net.URI.join:([C[I)I
            invokespecial java.lang.String.<init>:([CII)V
            astore 4 /* s */
        start local 4 // java.lang.String s
         9: .line 2555
            aload 4 /* s */
            aload 0 /* ps */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 11
        10: .line 2557
            aload 0 /* ps */
            areturn
        11: .line 2559
      StackMap locals: char[] int[] java.lang.String
      StackMap stack:
            aload 4 /* s */
            areturn
        end local 4 // java.lang.String s
        end local 3 // int[] segs
        end local 2 // char[] path
        end local 1 // int ns
        end local 0 // java.lang.String ps
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   12     0    ps  Ljava/lang/String;
            1   12     1    ns  I
            4   12     2  path  [C
            5   12     3  segs  [I
            9   12     4     s  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      ps    

  private static boolean match(char, long, long);
    descriptor: (CJJ)Z
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=4, locals=5, args_size=3
        start local 0 // char c
        start local 1 // long lowMask
        start local 3 // long highMask
         0: .line 2629
            iload 0 /* c */
            ifne 2
         1: .line 2630
            iconst_0
            ireturn
         2: .line 2631
      StackMap locals:
      StackMap stack:
            iload 0 /* c */
            bipush 64
            if_icmpge 5
         3: .line 2632
            lconst_1
            iload 0 /* c */
            lshl
            lload 1 /* lowMask */
            land
            lconst_0
            lcmp
            ifeq 4
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         4: iconst_0
            ireturn
         5: .line 2633
      StackMap locals:
      StackMap stack:
            iload 0 /* c */
            sipush 128
            if_icmpge 8
         6: .line 2634
            lconst_1
            iload 0 /* c */
            bipush 64
            isub
            lshl
            lload 3 /* highMask */
            land
            lconst_0
            lcmp
            ifeq 7
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         7: iconst_0
            ireturn
         8: .line 2635
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 3 // long highMask
        end local 1 // long lowMask
        end local 0 // char c
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    9     0         c  C
            0    9     1   lowMask  J
            0    9     3  highMask  J
    MethodParameters:
          Name  Flags
      c         
      lowMask   
      highMask  

  private static void appendEscape(java.lang.StringBuilder, byte);
    descriptor: (Ljava/lang/StringBuilder;B)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // java.lang.StringBuilder sb
        start local 1 // byte b
         0: .line 2759
            aload 0 /* sb */
            bipush 37
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
         1: .line 2760
            aload 0 /* sb */
            getstatic java.net.URI.hexDigits:[C
            iload 1 /* b */
            iconst_4
            ishr
            bipush 15
            iand
            caload
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
         2: .line 2761
            aload 0 /* sb */
            getstatic java.net.URI.hexDigits:[C
            iload 1 /* b */
            iconst_0
            ishr
            bipush 15
            iand
            caload
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
         3: .line 2762
            return
        end local 1 // byte b
        end local 0 // java.lang.StringBuilder sb
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0    sb  Ljava/lang/StringBuilder;
            0    4     1     b  B
    MethodParameters:
      Name  Flags
      sb    
      b     

  private static void appendEncoded(java.lang.StringBuilder, char);
    descriptor: (Ljava/lang/StringBuilder;C)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=4, args_size=2
        start local 0 // java.lang.StringBuilder sb
        start local 1 // char c
         0: .line 2765
            aconst_null
            astore 2 /* bb */
        start local 2 // java.nio.ByteBuffer bb
         1: .line 2767
            getstatic sun.nio.cs.UTF_8.INSTANCE:Lsun/nio/cs/UTF_8;
            invokestatic sun.nio.cs.ThreadLocalCoders.encoderFor:(Ljava/lang/Object;)Ljava/nio/charset/CharsetEncoder;
         2: .line 2768
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            iload 1 /* c */
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokestatic java.nio.CharBuffer.wrap:(Ljava/lang/CharSequence;)Ljava/nio/CharBuffer;
            invokevirtual java.nio.charset.CharsetEncoder.encode:(Ljava/nio/CharBuffer;)Ljava/nio/ByteBuffer;
         3: .line 2767
            astore 2 /* bb */
         4: .line 2769
            goto 11
      StackMap locals: java.lang.StringBuilder int java.nio.ByteBuffer
      StackMap stack: java.nio.charset.CharacterCodingException
         5: pop
         6: .line 2770
            getstatic java.net.URI.$assertionsDisabled:Z
            ifne 11
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         7: .line 2773
      StackMap locals:
      StackMap stack:
            aload 2 /* bb */
            invokevirtual java.nio.ByteBuffer.get:()B
            sipush 255
            iand
            istore 3 /* b */
        start local 3 // int b
         8: .line 2774
            iload 3 /* b */
            sipush 128
            if_icmplt 10
         9: .line 2775
            aload 0 /* sb */
            iload 3 /* b */
            i2b
            invokestatic java.net.URI.appendEscape:(Ljava/lang/StringBuilder;B)V
            goto 11
        10: .line 2777
      StackMap locals: int
      StackMap stack:
            aload 0 /* sb */
            iload 3 /* b */
            i2c
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        end local 3 // int b
        11: .line 2772
      StackMap locals:
      StackMap stack:
            aload 2 /* bb */
            invokevirtual java.nio.ByteBuffer.hasRemaining:()Z
            ifne 7
        12: .line 2779
            return
        end local 2 // java.nio.ByteBuffer bb
        end local 1 // char c
        end local 0 // java.lang.StringBuilder sb
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   13     0    sb  Ljava/lang/StringBuilder;
            0   13     1     c  C
            1   13     2    bb  Ljava/nio/ByteBuffer;
            8   11     3     b  I
      Exception table:
        from    to  target  type
           1     4       5  Class java.nio.charset.CharacterCodingException
    MethodParameters:
      Name  Flags
      sb    
      c     

  private static java.lang.String quote(java.lang.String, long, long);
    descriptor: (Ljava/lang/String;JJ)Ljava/lang/String;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=5, locals=9, args_size=3
        start local 0 // java.lang.String s
        start local 1 // long lowMask
        start local 3 // long highMask
         0: .line 2785
            aconst_null
            astore 5 /* sb */
        start local 5 // java.lang.StringBuilder sb
         1: .line 2786
            lload 1 /* lowMask */
            lconst_1
            land
            lconst_0
            lcmp
            ifeq 2
            iconst_1
            goto 3
      StackMap locals: java.lang.StringBuilder
      StackMap stack:
         2: iconst_0
      StackMap locals:
      StackMap stack: int
         3: istore 6 /* allowNonASCII */
        start local 6 // boolean allowNonASCII
         4: .line 2787
            iconst_0
            istore 7 /* i */
        start local 7 // int i
         5: goto 28
         6: .line 2788
      StackMap locals: int int
      StackMap stack:
            aload 0 /* s */
            iload 7 /* i */
            invokevirtual java.lang.String.charAt:(I)C
            istore 8 /* c */
        start local 8 // char c
         7: .line 2789
            iload 8 /* c */
            sipush 128
            if_icmpge 17
         8: .line 2790
            iload 8 /* c */
            lload 1 /* lowMask */
            lload 3 /* highMask */
            invokestatic java.net.URI.match:(CJJ)Z
            ifne 14
         9: .line 2791
            aload 5 /* sb */
            ifnonnull 12
        10: .line 2792
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            astore 5 /* sb */
        11: .line 2793
            aload 5 /* sb */
            aload 0 /* s */
            iconst_0
            iload 7 /* i */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/CharSequence;II)Ljava/lang/StringBuilder;
            pop
        12: .line 2795
      StackMap locals: int
      StackMap stack:
            aload 5 /* sb */
            iload 8 /* c */
            i2b
            invokestatic java.net.URI.appendEscape:(Ljava/lang/StringBuilder;B)V
        13: .line 2796
            goto 27
        14: .line 2797
      StackMap locals:
      StackMap stack:
            aload 5 /* sb */
            ifnull 27
        15: .line 2798
            aload 5 /* sb */
            iload 8 /* c */
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        16: .line 2800
            goto 27
      StackMap locals:
      StackMap stack:
        17: iload 6 /* allowNonASCII */
            ifeq 25
        18: .line 2801
            iload 8 /* c */
            invokestatic java.lang.Character.isSpaceChar:(C)Z
            ifne 20
        19: .line 2802
            iload 8 /* c */
            invokestatic java.lang.Character.isISOControl:(C)Z
            ifeq 25
        20: .line 2803
      StackMap locals:
      StackMap stack:
            aload 5 /* sb */
            ifnonnull 23
        21: .line 2804
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            astore 5 /* sb */
        22: .line 2805
            aload 5 /* sb */
            aload 0 /* s */
            iconst_0
            iload 7 /* i */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/CharSequence;II)Ljava/lang/StringBuilder;
            pop
        23: .line 2807
      StackMap locals:
      StackMap stack:
            aload 5 /* sb */
            iload 8 /* c */
            invokestatic java.net.URI.appendEncoded:(Ljava/lang/StringBuilder;C)V
        24: .line 2808
            goto 27
        25: .line 2809
      StackMap locals:
      StackMap stack:
            aload 5 /* sb */
            ifnull 27
        26: .line 2810
            aload 5 /* sb */
            iload 8 /* c */
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        end local 8 // char c
        27: .line 2787
      StackMap locals:
      StackMap stack:
            iinc 7 /* i */ 1
      StackMap locals:
      StackMap stack:
        28: iload 7 /* i */
            aload 0 /* s */
            invokevirtual java.lang.String.length:()I
            if_icmplt 6
        end local 7 // int i
        29: .line 2813
            aload 5 /* sb */
            ifnonnull 30
            aload 0 /* s */
            goto 31
      StackMap locals:
      StackMap stack:
        30: aload 5 /* sb */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
      StackMap locals:
      StackMap stack: java.lang.String
        31: areturn
        end local 6 // boolean allowNonASCII
        end local 5 // java.lang.StringBuilder sb
        end local 3 // long highMask
        end local 1 // long lowMask
        end local 0 // java.lang.String s
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   32     0              s  Ljava/lang/String;
            0   32     1        lowMask  J
            0   32     3       highMask  J
            1   32     5             sb  Ljava/lang/StringBuilder;
            4   32     6  allowNonASCII  Z
            5   29     7              i  I
            7   27     8              c  C
    MethodParameters:
          Name  Flags
      s         
      lowMask   
      highMask  

  private static java.lang.String encode(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/String;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=6, args_size=1
        start local 0 // java.lang.String s
         0: .line 2820
            aload 0 /* s */
            invokevirtual java.lang.String.length:()I
            istore 1 /* n */
        start local 1 // int n
         1: .line 2821
            iload 1 /* n */
            ifne 3
         2: .line 2822
            aload 0 /* s */
            areturn
         3: .line 2825
      StackMap locals: int
      StackMap stack:
            iconst_0
            istore 2 /* i */
        start local 2 // int i
         4: .line 2826
      StackMap locals: int
      StackMap stack:
            aload 0 /* s */
            iload 2 /* i */
            invokevirtual java.lang.String.charAt:(I)C
            sipush 128
            if_icmplt 6
         5: .line 2827
            goto 8
         6: .line 2828
      StackMap locals:
      StackMap stack:
            iinc 2 /* i */ 1
            iload 2 /* i */
            iload 1 /* n */
            if_icmplt 4
         7: .line 2829
            aload 0 /* s */
            areturn
        end local 2 // int i
         8: .line 2832
      StackMap locals:
      StackMap stack:
            aload 0 /* s */
            getstatic java.text.Normalizer$Form.NFC:Ljava/text/Normalizer$Form;
            invokestatic java.text.Normalizer.normalize:(Ljava/lang/CharSequence;Ljava/text/Normalizer$Form;)Ljava/lang/String;
            astore 2 /* ns */
        start local 2 // java.lang.String ns
         9: .line 2833
            aconst_null
            astore 3 /* bb */
        start local 3 // java.nio.ByteBuffer bb
        10: .line 2835
            getstatic sun.nio.cs.UTF_8.INSTANCE:Lsun/nio/cs/UTF_8;
            invokestatic sun.nio.cs.ThreadLocalCoders.encoderFor:(Ljava/lang/Object;)Ljava/nio/charset/CharsetEncoder;
        11: .line 2836
            aload 2 /* ns */
            invokestatic java.nio.CharBuffer.wrap:(Ljava/lang/CharSequence;)Ljava/nio/CharBuffer;
            invokevirtual java.nio.charset.CharsetEncoder.encode:(Ljava/nio/CharBuffer;)Ljava/nio/ByteBuffer;
        12: .line 2835
            astore 3 /* bb */
        13: .line 2837
            goto 16
      StackMap locals: java.lang.String int java.lang.String java.nio.ByteBuffer
      StackMap stack: java.nio.charset.CharacterCodingException
        14: pop
        15: .line 2838
            getstatic java.net.URI.$assertionsDisabled:Z
            ifne 16
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        16: .line 2841
      StackMap locals:
      StackMap stack:
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            astore 4 /* sb */
        start local 4 // java.lang.StringBuilder sb
        17: .line 2842
            goto 22
        18: .line 2843
      StackMap locals: java.lang.StringBuilder
      StackMap stack:
            aload 3 /* bb */
            invokevirtual java.nio.ByteBuffer.get:()B
            sipush 255
            iand
            istore 5 /* b */
        start local 5 // int b
        19: .line 2844
            iload 5 /* b */
            sipush 128
            if_icmplt 21
        20: .line 2845
            aload 4 /* sb */
            iload 5 /* b */
            i2b
            invokestatic java.net.URI.appendEscape:(Ljava/lang/StringBuilder;B)V
            goto 22
        21: .line 2847
      StackMap locals: int
      StackMap stack:
            aload 4 /* sb */
            iload 5 /* b */
            i2c
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        end local 5 // int b
        22: .line 2842
      StackMap locals:
      StackMap stack:
            aload 3 /* bb */
            invokevirtual java.nio.ByteBuffer.hasRemaining:()Z
            ifne 18
        23: .line 2849
            aload 4 /* sb */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 4 // java.lang.StringBuilder sb
        end local 3 // java.nio.ByteBuffer bb
        end local 2 // java.lang.String ns
        end local 1 // int n
        end local 0 // java.lang.String s
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   24     0     s  Ljava/lang/String;
            1   24     1     n  I
            4    8     2     i  I
            9   24     2    ns  Ljava/lang/String;
           10   24     3    bb  Ljava/nio/ByteBuffer;
           17   24     4    sb  Ljava/lang/StringBuilder;
           19   22     5     b  I
      Exception table:
        from    to  target  type
          10    13      14  Class java.nio.charset.CharacterCodingException
    MethodParameters:
      Name  Flags
      s     

  private static int decode(char);
    descriptor: (C)I
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // char c
         0: .line 2853
            iload 0 /* c */
            bipush 48
            if_icmplt 2
            iload 0 /* c */
            bipush 57
            if_icmpgt 2
         1: .line 2854
            iload 0 /* c */
            bipush 48
            isub
            ireturn
         2: .line 2855
      StackMap locals:
      StackMap stack:
            iload 0 /* c */
            bipush 97
            if_icmplt 4
            iload 0 /* c */
            bipush 102
            if_icmpgt 4
         3: .line 2856
            iload 0 /* c */
            bipush 97
            isub
            bipush 10
            iadd
            ireturn
         4: .line 2857
      StackMap locals:
      StackMap stack:
            iload 0 /* c */
            bipush 65
            if_icmplt 6
            iload 0 /* c */
            bipush 70
            if_icmpgt 6
         5: .line 2858
            iload 0 /* c */
            bipush 65
            isub
            bipush 10
            iadd
            ireturn
         6: .line 2859
      StackMap locals:
      StackMap stack:
            getstatic java.net.URI.$assertionsDisabled:Z
            ifne 7
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         7: .line 2860
      StackMap locals:
      StackMap stack:
            iconst_m1
            ireturn
        end local 0 // char c
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    8     0     c  C
    MethodParameters:
      Name  Flags
      c     

  private static byte decode(char, char);
    descriptor: (CC)B
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // char c1
        start local 1 // char c2
         0: .line 2864
            iload 0 /* c1 */
            invokestatic java.net.URI.decode:(C)I
            bipush 15
            iand
            iconst_4
            ishl
         1: .line 2865
            iload 1 /* c2 */
            invokestatic java.net.URI.decode:(C)I
            bipush 15
            iand
            iconst_0
            ishl
         2: .line 2864
            ior
            i2b
            ireturn
        end local 1 // char c2
        end local 0 // char c1
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0    c1  C
            0    3     1    c2  C
    MethodParameters:
      Name  Flags
      c1    
      c2    

  private static java.lang.String decode(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/String;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // java.lang.String s
         0: .line 2876
            aload 0 /* s */
            iconst_1
            invokestatic java.net.URI.decode:(Ljava/lang/String;Z)Ljava/lang/String;
            areturn
        end local 0 // java.lang.String s
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0     s  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      s     

  private static java.lang.String decode(java.lang.String, boolean);
    descriptor: (Ljava/lang/String;Z)Ljava/lang/String;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=4, locals=11, args_size=2
        start local 0 // java.lang.String s
        start local 1 // boolean ignorePercentInBrackets
         0: .line 2882
            aload 0 /* s */
            ifnonnull 2
         1: .line 2883
            aload 0 /* s */
            areturn
         2: .line 2884
      StackMap locals:
      StackMap stack:
            aload 0 /* s */
            invokevirtual java.lang.String.length:()I
            istore 2 /* n */
        start local 2 // int n
         3: .line 2885
            iload 2 /* n */
            ifne 5
         4: .line 2886
            aload 0 /* s */
            areturn
         5: .line 2887
      StackMap locals: int
      StackMap stack:
            aload 0 /* s */
            bipush 37
            invokevirtual java.lang.String.indexOf:(I)I
            ifge 7
         6: .line 2888
            aload 0 /* s */
            areturn
         7: .line 2890
      StackMap locals:
      StackMap stack:
            new java.lang.StringBuilder
            dup
            iload 2 /* n */
            invokespecial java.lang.StringBuilder.<init>:(I)V
            astore 3 /* sb */
        start local 3 // java.lang.StringBuilder sb
         8: .line 2891
            iload 2 /* n */
            invokestatic java.nio.ByteBuffer.allocate:(I)Ljava/nio/ByteBuffer;
            astore 4 /* bb */
        start local 4 // java.nio.ByteBuffer bb
         9: .line 2892
            iload 2 /* n */
            invokestatic java.nio.CharBuffer.allocate:(I)Ljava/nio/CharBuffer;
            astore 5 /* cb */
        start local 5 // java.nio.CharBuffer cb
        10: .line 2893
            getstatic sun.nio.cs.UTF_8.INSTANCE:Lsun/nio/cs/UTF_8;
            invokestatic sun.nio.cs.ThreadLocalCoders.decoderFor:(Ljava/lang/Object;)Ljava/nio/charset/CharsetDecoder;
        11: .line 2894
            getstatic java.nio.charset.CodingErrorAction.REPLACE:Ljava/nio/charset/CodingErrorAction;
            invokevirtual java.nio.charset.CharsetDecoder.onMalformedInput:(Ljava/nio/charset/CodingErrorAction;)Ljava/nio/charset/CharsetDecoder;
        12: .line 2895
            getstatic java.nio.charset.CodingErrorAction.REPLACE:Ljava/nio/charset/CodingErrorAction;
            invokevirtual java.nio.charset.CharsetDecoder.onUnmappableCharacter:(Ljava/nio/charset/CodingErrorAction;)Ljava/nio/charset/CharsetDecoder;
        13: .line 2893
            astore 6 /* dec */
        start local 6 // java.nio.charset.CharsetDecoder dec
        14: .line 2898
            aload 0 /* s */
            iconst_0
            invokevirtual java.lang.String.charAt:(I)C
            istore 7 /* c */
        start local 7 // char c
        15: .line 2899
            iconst_0
            istore 8 /* betweenBrackets */
        start local 8 // boolean betweenBrackets
        16: .line 2901
            iconst_0
            istore 9 /* i */
        start local 9 // int i
        17: goto 45
        18: .line 2902
      StackMap locals: java.lang.String int int java.lang.StringBuilder java.nio.ByteBuffer java.nio.CharBuffer java.nio.charset.CharsetDecoder int int int
      StackMap stack:
            getstatic java.net.URI.$assertionsDisabled:Z
            ifne 19
            iload 7 /* c */
            aload 0 /* s */
            iload 9 /* i */
            invokevirtual java.lang.String.charAt:(I)C
            if_icmpeq 19
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        19: .line 2903
      StackMap locals:
      StackMap stack:
            iload 7 /* c */
            bipush 91
            if_icmpne 22
        20: .line 2904
            iconst_1
            istore 8 /* betweenBrackets */
        21: .line 2905
            goto 24
      StackMap locals:
      StackMap stack:
        22: iload 8 /* betweenBrackets */
            ifeq 24
            iload 7 /* c */
            bipush 93
            if_icmpne 24
        23: .line 2906
            iconst_0
            istore 8 /* betweenBrackets */
        24: .line 2908
      StackMap locals:
      StackMap stack:
            iload 7 /* c */
            bipush 37
            if_icmpne 25
            iload 8 /* betweenBrackets */
            ifeq 30
            iload 1 /* ignorePercentInBrackets */
            ifeq 30
        25: .line 2909
      StackMap locals:
      StackMap stack:
            aload 3 /* sb */
            iload 7 /* c */
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        26: .line 2910
            iinc 9 /* i */ 1
            iload 9 /* i */
            iload 2 /* n */
            if_icmplt 28
        27: .line 2911
            goto 46
        28: .line 2912
      StackMap locals:
      StackMap stack:
            aload 0 /* s */
            iload 9 /* i */
            invokevirtual java.lang.String.charAt:(I)C
            istore 7 /* c */
        29: .line 2913
            goto 45
        30: .line 2915
      StackMap locals:
      StackMap stack:
            aload 4 /* bb */
            invokevirtual java.nio.ByteBuffer.clear:()Ljava/nio/ByteBuffer;
            pop
        31: .line 2918
      StackMap locals:
      StackMap stack:
            getstatic java.net.URI.$assertionsDisabled:Z
            ifne 32
            iload 2 /* n */
            iload 9 /* i */
            isub
            iconst_2
            if_icmpge 32
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        32: .line 2919
      StackMap locals:
      StackMap stack:
            aload 4 /* bb */
            aload 0 /* s */
            iinc 9 /* i */ 1
            iload 9 /* i */
            invokevirtual java.lang.String.charAt:(I)C
            aload 0 /* s */
            iinc 9 /* i */ 1
            iload 9 /* i */
            invokevirtual java.lang.String.charAt:(I)C
            invokestatic java.net.URI.decode:(CC)B
            invokevirtual java.nio.ByteBuffer.put:(B)Ljava/nio/ByteBuffer;
            pop
        33: .line 2920
            iinc 9 /* i */ 1
            iload 9 /* i */
            iload 2 /* n */
            if_icmplt 35
        34: .line 2921
            goto 37
        35: .line 2922
      StackMap locals:
      StackMap stack:
            aload 0 /* s */
            iload 9 /* i */
            invokevirtual java.lang.String.charAt:(I)C
            istore 7 /* c */
        36: .line 2923
            iload 7 /* c */
            bipush 37
            if_icmpeq 31
        37: .line 2926
      StackMap locals:
      StackMap stack:
            aload 4 /* bb */
            invokevirtual java.nio.ByteBuffer.flip:()Ljava/nio/ByteBuffer;
            pop
        38: .line 2927
            aload 5 /* cb */
            invokevirtual java.nio.CharBuffer.clear:()Ljava/nio/CharBuffer;
            pop
        39: .line 2928
            aload 6 /* dec */
            invokevirtual java.nio.charset.CharsetDecoder.reset:()Ljava/nio/charset/CharsetDecoder;
            pop
        40: .line 2929
            aload 6 /* dec */
            aload 4 /* bb */
            aload 5 /* cb */
            iconst_1
            invokevirtual java.nio.charset.CharsetDecoder.decode:(Ljava/nio/ByteBuffer;Ljava/nio/CharBuffer;Z)Ljava/nio/charset/CoderResult;
            astore 10 /* cr */
        start local 10 // java.nio.charset.CoderResult cr
        41: .line 2930
            getstatic java.net.URI.$assertionsDisabled:Z
            ifne 42
            aload 10 /* cr */
            invokevirtual java.nio.charset.CoderResult.isUnderflow:()Z
            ifne 42
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        42: .line 2931
      StackMap locals: java.nio.charset.CoderResult
      StackMap stack:
            aload 6 /* dec */
            aload 5 /* cb */
            invokevirtual java.nio.charset.CharsetDecoder.flush:(Ljava/nio/CharBuffer;)Ljava/nio/charset/CoderResult;
            astore 10 /* cr */
        43: .line 2932
            getstatic java.net.URI.$assertionsDisabled:Z
            ifne 44
            aload 10 /* cr */
            invokevirtual java.nio.charset.CoderResult.isUnderflow:()Z
            ifne 44
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        44: .line 2933
      StackMap locals:
      StackMap stack:
            aload 3 /* sb */
            aload 5 /* cb */
            invokevirtual java.nio.CharBuffer.flip:()Ljava/nio/CharBuffer;
            invokevirtual java.nio.CharBuffer.toString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        end local 10 // java.nio.charset.CoderResult cr
        45: .line 2901
      StackMap locals:
      StackMap stack:
            iload 9 /* i */
            iload 2 /* n */
            if_icmplt 18
        end local 9 // int i
        46: .line 2936
      StackMap locals:
      StackMap stack:
            aload 3 /* sb */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 8 // boolean betweenBrackets
        end local 7 // char c
        end local 6 // java.nio.charset.CharsetDecoder dec
        end local 5 // java.nio.CharBuffer cb
        end local 4 // java.nio.ByteBuffer bb
        end local 3 // java.lang.StringBuilder sb
        end local 2 // int n
        end local 1 // boolean ignorePercentInBrackets
        end local 0 // java.lang.String s
      LocalVariableTable:
        Start  End  Slot                     Name  Signature
            0   47     0                        s  Ljava/lang/String;
            0   47     1  ignorePercentInBrackets  Z
            3   47     2                        n  I
            8   47     3                       sb  Ljava/lang/StringBuilder;
            9   47     4                       bb  Ljava/nio/ByteBuffer;
           10   47     5                       cb  Ljava/nio/CharBuffer;
           14   47     6                      dec  Ljava/nio/charset/CharsetDecoder;
           15   47     7                        c  C
           16   47     8          betweenBrackets  Z
           17   46     9                        i  I
           41   45    10                       cr  Ljava/nio/charset/CoderResult;
    MethodParameters:
                         Name  Flags
      s                        
      ignorePercentInBrackets  

  public int compareTo(java.lang.Object);
    descriptor: (Ljava/lang/Object;)I
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
         0: .line 1
            aload 0
            aload 1
            checkcast java.net.URI
            invokevirtual java.net.URI.compareTo:(Ljava/net/URI;)I
            ireturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
}
Signature: Ljava/lang/Object;Ljava/lang/Comparable<Ljava/net/URI;>;Ljava/io/Serializable;
SourceFile: "URI.java"
NestMembers:
  java.net.URI$1  java.net.URI$Parser
InnerClasses:
  java.net.URI$1
  private Parser = java.net.URI$Parser of java.net.URI
  public final Form = java.text.Normalizer$Form of java.text.Normalizer