public final class com.google.common.net.HostAndPort implements java.io.Serializable
  minor version: 0
  major version: 59
  flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
  this_class: com.google.common.net.HostAndPort
  super_class: java.lang.Object
{
  private static final int NO_PORT;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: -1

  private final java.lang.String host;
    descriptor: Ljava/lang/String;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final int port;
    descriptor: I
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final boolean hasBracketlessColons;
    descriptor: Z
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

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

  private void <init>(java.lang.String, int, boolean);
    descriptor: (Ljava/lang/String;IZ)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=4, args_size=4
        start local 0 // com.google.common.net.HostAndPort this
        start local 1 // java.lang.String host
        start local 2 // int port
        start local 3 // boolean hasBracketlessColons
         0: .line 78
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 79
            aload 0 /* this */
            aload 1 /* host */
            putfield com.google.common.net.HostAndPort.host:Ljava/lang/String;
         2: .line 80
            aload 0 /* this */
            iload 2 /* port */
            putfield com.google.common.net.HostAndPort.port:I
         3: .line 81
            aload 0 /* this */
            iload 3 /* hasBracketlessColons */
            putfield com.google.common.net.HostAndPort.hasBracketlessColons:Z
         4: .line 82
            return
        end local 3 // boolean hasBracketlessColons
        end local 2 // int port
        end local 1 // java.lang.String host
        end local 0 // com.google.common.net.HostAndPort this
      LocalVariableTable:
        Start  End  Slot                  Name  Signature
            0    5     0                  this  Lcom/google/common/net/HostAndPort;
            0    5     1                  host  Ljava/lang/String;
            0    5     2                  port  I
            0    5     3  hasBracketlessColons  Z
    MethodParameters:
                      Name  Flags
      host                  
      port                  
      hasBracketlessColons  

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

  public boolean hasPort();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.google.common.net.HostAndPort this
         0: .line 99
            aload 0 /* this */
            getfield com.google.common.net.HostAndPort.port:I
            iflt 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // com.google.common.net.HostAndPort this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/google/common/net/HostAndPort;

  public int getPort();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.google.common.net.HostAndPort this
         0: .line 110
            aload 0 /* this */
            invokevirtual com.google.common.net.HostAndPort.hasPort:()Z
            invokestatic com.google.common.base.Preconditions.checkState:(Z)V
         1: .line 111
            aload 0 /* this */
            getfield com.google.common.net.HostAndPort.port:I
            ireturn
        end local 0 // com.google.common.net.HostAndPort this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/google/common/net/HostAndPort;

  public int getPortOrDefault(int);
    descriptor: (I)I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // com.google.common.net.HostAndPort this
        start local 1 // int defaultPort
         0: .line 116
            aload 0 /* this */
            invokevirtual com.google.common.net.HostAndPort.hasPort:()Z
            ifeq 1
            aload 0 /* this */
            getfield com.google.common.net.HostAndPort.port:I
            goto 2
      StackMap locals:
      StackMap stack:
         1: iload 1 /* defaultPort */
      StackMap locals:
      StackMap stack: int
         2: ireturn
        end local 1 // int defaultPort
        end local 0 // com.google.common.net.HostAndPort this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    3     0         this  Lcom/google/common/net/HostAndPort;
            0    3     1  defaultPort  I
    MethodParameters:
             Name  Flags
      defaultPort  

  public static com.google.common.net.HostAndPort fromParts(java.lang.String, int);
    descriptor: (Ljava/lang/String;I)Lcom/google/common/net/HostAndPort;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=3, args_size=2
        start local 0 // java.lang.String host
        start local 1 // int port
         0: .line 132
            iload 1 /* port */
            invokestatic com.google.common.net.HostAndPort.isValidPort:(I)Z
            ldc "Port out of range: %s"
            iload 1 /* port */
            invokestatic com.google.common.base.Preconditions.checkArgument:(ZLjava/lang/String;I)V
         1: .line 133
            aload 0 /* host */
            invokestatic com.google.common.net.HostAndPort.fromString:(Ljava/lang/String;)Lcom/google/common/net/HostAndPort;
            astore 2 /* parsedHost */
        start local 2 // com.google.common.net.HostAndPort parsedHost
         2: .line 134
            aload 2 /* parsedHost */
            invokevirtual com.google.common.net.HostAndPort.hasPort:()Z
            ifeq 3
            iconst_0
            goto 4
      StackMap locals: com.google.common.net.HostAndPort
      StackMap stack:
         3: iconst_1
      StackMap locals:
      StackMap stack: int
         4: ldc "Host has a port: %s"
            aload 0 /* host */
            invokestatic com.google.common.base.Preconditions.checkArgument:(ZLjava/lang/String;Ljava/lang/Object;)V
         5: .line 135
            new com.google.common.net.HostAndPort
            dup
            aload 2 /* parsedHost */
            getfield com.google.common.net.HostAndPort.host:Ljava/lang/String;
            iload 1 /* port */
            aload 2 /* parsedHost */
            getfield com.google.common.net.HostAndPort.hasBracketlessColons:Z
            invokespecial com.google.common.net.HostAndPort.<init>:(Ljava/lang/String;IZ)V
            areturn
        end local 2 // com.google.common.net.HostAndPort parsedHost
        end local 1 // int port
        end local 0 // java.lang.String host
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    6     0        host  Ljava/lang/String;
            0    6     1        port  I
            2    6     2  parsedHost  Lcom/google/common/net/HostAndPort;
    MethodParameters:
      Name  Flags
      host  
      port  

  public static com.google.common.net.HostAndPort fromHost(java.lang.String);
    descriptor: (Ljava/lang/String;)Lcom/google/common/net/HostAndPort;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=2, args_size=1
        start local 0 // java.lang.String host
         0: .line 150
            aload 0 /* host */
            invokestatic com.google.common.net.HostAndPort.fromString:(Ljava/lang/String;)Lcom/google/common/net/HostAndPort;
            astore 1 /* parsedHost */
        start local 1 // com.google.common.net.HostAndPort parsedHost
         1: .line 151
            aload 1 /* parsedHost */
            invokevirtual com.google.common.net.HostAndPort.hasPort:()Z
            ifeq 2
            iconst_0
            goto 3
      StackMap locals: com.google.common.net.HostAndPort
      StackMap stack:
         2: iconst_1
      StackMap locals:
      StackMap stack: int
         3: ldc "Host has a port: %s"
            aload 0 /* host */
            invokestatic com.google.common.base.Preconditions.checkArgument:(ZLjava/lang/String;Ljava/lang/Object;)V
         4: .line 152
            aload 1 /* parsedHost */
            areturn
        end local 1 // com.google.common.net.HostAndPort parsedHost
        end local 0 // java.lang.String host
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    5     0        host  Ljava/lang/String;
            1    5     1  parsedHost  Lcom/google/common/net/HostAndPort;
    MethodParameters:
      Name  Flags
      host  

  public static com.google.common.net.HostAndPort fromString(java.lang.String);
    descriptor: (Ljava/lang/String;)Lcom/google/common/net/HostAndPort;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=5, args_size=1
        start local 0 // java.lang.String hostPortString
         0: .line 166
            aload 0 /* hostPortString */
            invokestatic com.google.common.base.Preconditions.checkNotNull:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
         1: .line 168
            aconst_null
            astore 2 /* portString */
        start local 2 // java.lang.String portString
         2: .line 169
            iconst_0
            istore 3 /* hasBracketlessColons */
        start local 3 // boolean hasBracketlessColons
         3: .line 171
            aload 0 /* hostPortString */
            ldc "["
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifeq 8
         4: .line 172
            aload 0 /* hostPortString */
            invokestatic com.google.common.net.HostAndPort.getHostAndPortFromBracketedHost:(Ljava/lang/String;)[Ljava/lang/String;
            astore 4 /* hostAndPort */
        start local 4 // java.lang.String[] hostAndPort
         5: .line 173
            aload 4 /* hostAndPort */
            iconst_0
            aaload
            astore 1 /* host */
        start local 1 // java.lang.String host
         6: .line 174
            aload 4 /* hostAndPort */
            iconst_1
            aaload
            astore 2 /* portString */
        end local 4 // java.lang.String[] hostAndPort
         7: .line 175
            goto 17
        end local 1 // java.lang.String host
         8: .line 176
      StackMap locals: java.lang.String top java.lang.String int
      StackMap stack:
            aload 0 /* hostPortString */
            bipush 58
            invokevirtual java.lang.String.indexOf:(I)I
            istore 4 /* colonPos */
        start local 4 // int colonPos
         9: .line 177
            iload 4 /* colonPos */
            iflt 13
            aload 0 /* hostPortString */
            bipush 58
            iload 4 /* colonPos */
            iconst_1
            iadd
            invokevirtual java.lang.String.indexOf:(II)I
            iconst_m1
            if_icmpne 13
        10: .line 179
            aload 0 /* hostPortString */
            iconst_0
            iload 4 /* colonPos */
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            astore 1 /* host */
        start local 1 // java.lang.String host
        11: .line 180
            aload 0 /* hostPortString */
            iload 4 /* colonPos */
            iconst_1
            iadd
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            astore 2 /* portString */
        12: .line 181
            goto 17
        end local 1 // java.lang.String host
        13: .line 183
      StackMap locals: int
      StackMap stack:
            aload 0 /* hostPortString */
            astore 1 /* host */
        start local 1 // java.lang.String host
        14: .line 184
            iload 4 /* colonPos */
            iflt 15
            iconst_1
            goto 16
      StackMap locals: java.lang.String java.lang.String java.lang.String int int
      StackMap stack:
        15: iconst_0
      StackMap locals:
      StackMap stack: int
        16: istore 3 /* hasBracketlessColons */
        end local 4 // int colonPos
        17: .line 188
      StackMap locals:
      StackMap stack:
            iconst_m1
            istore 4 /* port */
        start local 4 // int port
        18: .line 189
            aload 2 /* portString */
            invokestatic com.google.common.base.Strings.isNullOrEmpty:(Ljava/lang/String;)Z
            ifne 27
        19: .line 192
            aload 2 /* portString */
            ldc "+"
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifeq 20
            iconst_0
            goto 21
      StackMap locals: int
      StackMap stack:
        20: iconst_1
      StackMap locals:
      StackMap stack: int
        21: ldc "Unparseable port number: %s"
            aload 0 /* hostPortString */
            invokestatic com.google.common.base.Preconditions.checkArgument:(ZLjava/lang/String;Ljava/lang/Object;)V
        22: .line 194
            aload 2 /* portString */
            invokestatic java.lang.Integer.parseInt:(Ljava/lang/String;)I
            istore 4 /* port */
        23: .line 195
            goto 26
      StackMap locals:
      StackMap stack: java.lang.NumberFormatException
        24: pop
        25: .line 196
            new java.lang.IllegalArgumentException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Unparseable port number: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* hostPortString */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        26: .line 198
      StackMap locals:
      StackMap stack:
            iload 4 /* port */
            invokestatic com.google.common.net.HostAndPort.isValidPort:(I)Z
            ldc "Port number out of range: %s"
            aload 0 /* hostPortString */
            invokestatic com.google.common.base.Preconditions.checkArgument:(ZLjava/lang/String;Ljava/lang/Object;)V
        27: .line 201
      StackMap locals:
      StackMap stack:
            new com.google.common.net.HostAndPort
            dup
            aload 1 /* host */
            iload 4 /* port */
            iload 3 /* hasBracketlessColons */
            invokespecial com.google.common.net.HostAndPort.<init>:(Ljava/lang/String;IZ)V
            areturn
        end local 4 // int port
        end local 3 // boolean hasBracketlessColons
        end local 2 // java.lang.String portString
        end local 1 // java.lang.String host
        end local 0 // java.lang.String hostPortString
      LocalVariableTable:
        Start  End  Slot                  Name  Signature
            0   28     0        hostPortString  Ljava/lang/String;
            6    8     1                  host  Ljava/lang/String;
           11   13     1                  host  Ljava/lang/String;
           14   28     1                  host  Ljava/lang/String;
            2   28     2            portString  Ljava/lang/String;
            3   28     3  hasBracketlessColons  Z
            5    7     4           hostAndPort  [Ljava/lang/String;
            9   17     4              colonPos  I
           18   28     4                  port  I
      Exception table:
        from    to  target  type
          22    23      24  Class java.lang.NumberFormatException
    MethodParameters:
                Name  Flags
      hostPortString  

  private static java.lang.String[] getHostAndPortFromBracketedHost(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 hostPortString
         0: .line 212
            iconst_0
            istore 1 /* colonIndex */
        start local 1 // int colonIndex
         1: .line 213
            iconst_0
            istore 2 /* closeBracketIndex */
        start local 2 // int closeBracketIndex
         2: .line 215
            aload 0 /* hostPortString */
            iconst_0
            invokevirtual java.lang.String.charAt:(I)C
            bipush 91
            if_icmpne 3
            iconst_1
            goto 4
      StackMap locals: int int
      StackMap stack:
         3: iconst_0
         4: .line 216
      StackMap locals:
      StackMap stack: int
            ldc "Bracketed host-port string must start with a bracket: %s"
         5: .line 217
            aload 0 /* hostPortString */
         6: .line 214
            invokestatic com.google.common.base.Preconditions.checkArgument:(ZLjava/lang/String;Ljava/lang/Object;)V
         7: .line 218
            aload 0 /* hostPortString */
            bipush 58
            invokevirtual java.lang.String.indexOf:(I)I
            istore 1 /* colonIndex */
         8: .line 219
            aload 0 /* hostPortString */
            bipush 93
            invokevirtual java.lang.String.lastIndexOf:(I)I
            istore 2 /* closeBracketIndex */
         9: .line 221
            iload 1 /* colonIndex */
            iconst_m1
            if_icmple 10
            iload 2 /* closeBracketIndex */
            iload 1 /* colonIndex */
            if_icmple 10
            iconst_1
            goto 11
      StackMap locals:
      StackMap stack:
        10: iconst_0
        11: .line 222
      StackMap locals:
      StackMap stack: int
            ldc "Invalid bracketed host/port: %s"
        12: .line 223
            aload 0 /* hostPortString */
        13: .line 220
            invokestatic com.google.common.base.Preconditions.checkArgument:(ZLjava/lang/String;Ljava/lang/Object;)V
        14: .line 225
            aload 0 /* hostPortString */
            iconst_1
            iload 2 /* closeBracketIndex */
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            astore 3 /* host */
        start local 3 // java.lang.String host
        15: .line 226
            iload 2 /* closeBracketIndex */
            iconst_1
            iadd
            aload 0 /* hostPortString */
            invokevirtual java.lang.String.length:()I
            if_icmpne 17
        16: .line 227
            iconst_2
            anewarray java.lang.String
            dup
            iconst_0
            aload 3 /* host */
            aastore
            dup
            iconst_1
            ldc ""
            aastore
            areturn
        17: .line 230
      StackMap locals: java.lang.String
      StackMap stack:
            aload 0 /* hostPortString */
            iload 2 /* closeBracketIndex */
            iconst_1
            iadd
            invokevirtual java.lang.String.charAt:(I)C
            bipush 58
            if_icmpne 18
            iconst_1
            goto 19
      StackMap locals:
      StackMap stack:
        18: iconst_0
        19: .line 231
      StackMap locals:
      StackMap stack: int
            ldc "Only a colon may follow a close bracket: %s"
        20: .line 232
            aload 0 /* hostPortString */
        21: .line 229
            invokestatic com.google.common.base.Preconditions.checkArgument:(ZLjava/lang/String;Ljava/lang/Object;)V
        22: .line 233
            iload 2 /* closeBracketIndex */
            iconst_2
            iadd
            istore 4 /* i */
        start local 4 // int i
        23: goto 29
        24: .line 235
      StackMap locals: int
      StackMap stack:
            aload 0 /* hostPortString */
            iload 4 /* i */
            invokevirtual java.lang.String.charAt:(I)C
            invokestatic java.lang.Character.isDigit:(C)Z
        25: .line 236
            ldc "Port must be numeric: %s"
        26: .line 237
            aload 0 /* hostPortString */
        27: .line 234
            invokestatic com.google.common.base.Preconditions.checkArgument:(ZLjava/lang/String;Ljava/lang/Object;)V
        28: .line 233
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
        29: iload 4 /* i */
            aload 0 /* hostPortString */
            invokevirtual java.lang.String.length:()I
            if_icmplt 24
        end local 4 // int i
        30: .line 239
            iconst_2
            anewarray java.lang.String
            dup
            iconst_0
            aload 3 /* host */
            aastore
            dup
            iconst_1
            aload 0 /* hostPortString */
            iload 2 /* closeBracketIndex */
            iconst_2
            iadd
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            aastore
            areturn
        end local 3 // java.lang.String host
        end local 2 // int closeBracketIndex
        end local 1 // int colonIndex
        end local 0 // java.lang.String hostPortString
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0   31     0     hostPortString  Ljava/lang/String;
            1   31     1         colonIndex  I
            2   31     2  closeBracketIndex  I
           15   31     3               host  Ljava/lang/String;
           23   30     4                  i  I
    MethodParameters:
                Name  Flags
      hostPortString  

  public com.google.common.net.HostAndPort withDefaultPort(int);
    descriptor: (I)Lcom/google/common/net/HostAndPort;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=2, args_size=2
        start local 0 // com.google.common.net.HostAndPort this
        start local 1 // int defaultPort
         0: .line 253
            iload 1 /* defaultPort */
            invokestatic com.google.common.net.HostAndPort.isValidPort:(I)Z
            invokestatic com.google.common.base.Preconditions.checkArgument:(Z)V
         1: .line 254
            aload 0 /* this */
            invokevirtual com.google.common.net.HostAndPort.hasPort:()Z
            ifeq 3
         2: .line 255
            aload 0 /* this */
            areturn
         3: .line 257
      StackMap locals:
      StackMap stack:
            new com.google.common.net.HostAndPort
            dup
            aload 0 /* this */
            getfield com.google.common.net.HostAndPort.host:Ljava/lang/String;
            iload 1 /* defaultPort */
            aload 0 /* this */
            getfield com.google.common.net.HostAndPort.hasBracketlessColons:Z
            invokespecial com.google.common.net.HostAndPort.<init>:(Ljava/lang/String;IZ)V
            areturn
        end local 1 // int defaultPort
        end local 0 // com.google.common.net.HostAndPort this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    4     0         this  Lcom/google/common/net/HostAndPort;
            0    4     1  defaultPort  I
    MethodParameters:
             Name  Flags
      defaultPort  

  public com.google.common.net.HostAndPort requireBracketsForIPv6();
    descriptor: ()Lcom/google/common/net/HostAndPort;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // com.google.common.net.HostAndPort this
         0: .line 275
            aload 0 /* this */
            getfield com.google.common.net.HostAndPort.hasBracketlessColons:Z
            ifeq 1
            iconst_0
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_1
      StackMap locals:
      StackMap stack: int
         2: ldc "Possible bracketless IPv6 literal: %s"
            aload 0 /* this */
            getfield com.google.common.net.HostAndPort.host:Ljava/lang/String;
            invokestatic com.google.common.base.Preconditions.checkArgument:(ZLjava/lang/String;Ljava/lang/Object;)V
         3: .line 276
            aload 0 /* this */
            areturn
        end local 0 // com.google.common.net.HostAndPort this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lcom/google/common/net/HostAndPort;

  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 // com.google.common.net.HostAndPort this
        start local 1 // java.lang.Object other
         0: .line 281
            aload 0 /* this */
            aload 1 /* other */
            if_acmpne 2
         1: .line 282
            iconst_1
            ireturn
         2: .line 284
      StackMap locals:
      StackMap stack:
            aload 1 /* other */
            instanceof com.google.common.net.HostAndPort
            ifeq 9
         3: .line 285
            aload 1 /* other */
            checkcast com.google.common.net.HostAndPort
            astore 2 /* that */
        start local 2 // com.google.common.net.HostAndPort that
         4: .line 286
            aload 0 /* this */
            getfield com.google.common.net.HostAndPort.host:Ljava/lang/String;
            aload 2 /* that */
            getfield com.google.common.net.HostAndPort.host:Ljava/lang/String;
            invokestatic com.google.common.base.Objects.equal:(Ljava/lang/Object;Ljava/lang/Object;)Z
            ifeq 8
         5: .line 287
            aload 0 /* this */
            getfield com.google.common.net.HostAndPort.port:I
            aload 2 /* that */
            getfield com.google.common.net.HostAndPort.port:I
            if_icmpne 8
         6: .line 288
            aload 0 /* this */
            getfield com.google.common.net.HostAndPort.hasBracketlessColons:Z
            aload 2 /* that */
            getfield com.google.common.net.HostAndPort.hasBracketlessColons:Z
            if_icmpne 8
         7: .line 286
            iconst_1
            ireturn
      StackMap locals: com.google.common.net.HostAndPort
      StackMap stack:
         8: iconst_0
            ireturn
        end local 2 // com.google.common.net.HostAndPort that
         9: .line 290
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 1 // java.lang.Object other
        end local 0 // com.google.common.net.HostAndPort this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   10     0   this  Lcom/google/common/net/HostAndPort;
            0   10     1  other  Ljava/lang/Object;
            4    9     2   that  Lcom/google/common/net/HostAndPort;
    RuntimeVisibleTypeAnnotations: 
      METHOD_FORMAL_PARAMETER
        org.checkerframework.checker.nullness.qual.Nullable()
    MethodParameters:
       Name  Flags
      other  

  public int hashCode();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // com.google.common.net.HostAndPort this
         0: .line 295
            iconst_3
            anewarray java.lang.Object
            dup
            iconst_0
            aload 0 /* this */
            getfield com.google.common.net.HostAndPort.host:Ljava/lang/String;
            aastore
            dup
            iconst_1
            aload 0 /* this */
            getfield com.google.common.net.HostAndPort.port:I
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            dup
            iconst_2
            aload 0 /* this */
            getfield com.google.common.net.HostAndPort.hasBracketlessColons:Z
            invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
            aastore
            invokestatic com.google.common.base.Objects.hashCode:([Ljava/lang/Object;)I
            ireturn
        end local 0 // com.google.common.net.HostAndPort this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/google/common/net/HostAndPort;

  public java.lang.String toString();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=1
        start local 0 // com.google.common.net.HostAndPort this
         0: .line 302
            new java.lang.StringBuilder
            dup
            aload 0 /* this */
            getfield com.google.common.net.HostAndPort.host:Ljava/lang/String;
            invokevirtual java.lang.String.length:()I
            bipush 8
            iadd
            invokespecial java.lang.StringBuilder.<init>:(I)V
            astore 1 /* builder */
        start local 1 // java.lang.StringBuilder builder
         1: .line 303
            aload 0 /* this */
            getfield com.google.common.net.HostAndPort.host:Ljava/lang/String;
            bipush 58
            invokevirtual java.lang.String.indexOf:(I)I
            iflt 4
         2: .line 304
            aload 1 /* builder */
            bipush 91
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield com.google.common.net.HostAndPort.host:Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            bipush 93
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
         3: .line 305
            goto 5
         4: .line 306
      StackMap locals: java.lang.StringBuilder
      StackMap stack:
            aload 1 /* builder */
            aload 0 /* this */
            getfield com.google.common.net.HostAndPort.host:Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
         5: .line 308
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual com.google.common.net.HostAndPort.hasPort:()Z
            ifeq 7
         6: .line 309
            aload 1 /* builder */
            bipush 58
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield com.google.common.net.HostAndPort.port:I
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            pop
         7: .line 311
      StackMap locals:
      StackMap stack:
            aload 1 /* builder */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 1 // java.lang.StringBuilder builder
        end local 0 // com.google.common.net.HostAndPort this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    8     0     this  Lcom/google/common/net/HostAndPort;
            1    8     1  builder  Ljava/lang/StringBuilder;

  private static boolean isValidPort(int);
    descriptor: (I)Z
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // int port
         0: .line 316
            iload 0 /* port */
            iflt 1
            iload 0 /* port */
            ldc 65535
            if_icmpgt 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // int port
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  port  I
    MethodParameters:
      Name  Flags
      port  
}
SourceFile: "HostAndPort.java"
    RuntimeVisibleAnnotations: 
      com.google.errorprone.annotations.Immutable()
    RuntimeInvisibleAnnotations: 
      com.google.common.annotations.Beta()
      com.google.common.annotations.GwtCompatible()