public class sun.net.www.protocol.gopher.GopherClient extends sun.net.NetworkClient implements java.lang.Runnable
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: sun.net.www.protocol.gopher.GopherClient
  super_class: sun.net.NetworkClient
{
  public static boolean useGopherProxy;
    descriptor: Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()

  public static java.lang.String gopherProxyHost;
    descriptor: Ljava/lang/String;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()

  public static int gopherProxyPort;
    descriptor: I
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()

  java.io.PipedOutputStream os;
    descriptor: Ljava/io/PipedOutputStream;
    flags: (0x0000) 

  java.net.URL u;
    descriptor: Ljava/net/URL;
    flags: (0x0000) 

  int gtype;
    descriptor: I
    flags: (0x0000) 

  java.lang.String gkey;
    descriptor: Ljava/lang/String;
    flags: (0x0000) 

  sun.net.www.URLConnection connection;
    descriptor: Lsun/net/www/URLConnection;
    flags: (0x0000) 

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=4, locals=0, args_size=0
         0: .line 71
            new sun.security.action.GetBooleanAction
            dup
            ldc "gopherProxySet"
            invokespecial sun.security.action.GetBooleanAction.<init>:(Ljava/lang/String;)V
         1: .line 70
            invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedAction;)Ljava/lang/Object;
            checkcast java.lang.Boolean
         2: .line 72
            invokevirtual java.lang.Boolean.booleanValue:()Z
         3: .line 70
            putstatic sun.net.www.protocol.gopher.GopherClient.useGopherProxy:Z
         4: .line 75
            new sun.security.action.GetPropertyAction
            dup
            ldc "gopherProxyHost"
            invokespecial sun.security.action.GetPropertyAction.<init>:(Ljava/lang/String;)V
         5: .line 74
            invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedAction;)Ljava/lang/Object;
            checkcast java.lang.String
            putstatic sun.net.www.protocol.gopher.GopherClient.gopherProxyHost:Ljava/lang/String;
         6: .line 78
            new sun.security.action.GetIntegerAction
            dup
            ldc "gopherProxyPort"
            bipush 80
            invokespecial sun.security.action.GetIntegerAction.<init>:(Ljava/lang/String;I)V
         7: .line 77
            invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedAction;)Ljava/lang/Object;
            checkcast java.lang.Integer
         8: .line 79
            invokevirtual java.lang.Integer.intValue:()I
         9: .line 77
            putstatic sun.net.www.protocol.gopher.GopherClient.gopherProxyPort:I
        10: .line 80
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  void <init>(sun.net.www.URLConnection);
    descriptor: (Lsun/net/www/URLConnection;)V
    flags: (0x0000) 
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // sun.net.www.protocol.gopher.GopherClient this
        start local 1 // sun.net.www.URLConnection connection
         0: .line 88
            aload 0 /* this */
            invokespecial sun.net.NetworkClient.<init>:()V
         1: .line 89
            aload 0 /* this */
            aload 1 /* connection */
            putfield sun.net.www.protocol.gopher.GopherClient.connection:Lsun/net/www/URLConnection;
         2: .line 90
            return
        end local 1 // sun.net.www.URLConnection connection
        end local 0 // sun.net.www.protocol.gopher.GopherClient this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    3     0        this  Lsun/net/www/protocol/gopher/GopherClient;
            0    3     1  connection  Lsun/net/www/URLConnection;
    MethodParameters:
            Name  Flags
      connection  

  public static boolean getUseGopherProxy();
    descriptor: ()Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=0, args_size=0
         0: .line 98
            new sun.security.action.GetBooleanAction
            dup
            ldc "gopherProxySet"
            invokespecial sun.security.action.GetBooleanAction.<init>:(Ljava/lang/String;)V
         1: .line 97
            invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedAction;)Ljava/lang/Object;
            checkcast java.lang.Boolean
         2: .line 98
            invokevirtual java.lang.Boolean.booleanValue:()Z
         3: .line 97
            ireturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public static java.lang.String getGopherProxyHost();
    descriptor: ()Ljava/lang/String;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=1, args_size=0
         0: .line 106
            new sun.security.action.GetPropertyAction
            dup
            ldc "gopherProxyHost"
            invokespecial sun.security.action.GetPropertyAction.<init>:(Ljava/lang/String;)V
         1: .line 105
            invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedAction;)Ljava/lang/Object;
            checkcast java.lang.String
            astore 0 /* host */
        start local 0 // java.lang.String host
         2: .line 107
            ldc ""
            aload 0 /* host */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 4
         3: .line 108
            aconst_null
            astore 0 /* host */
         4: .line 110
      StackMap locals: java.lang.String
      StackMap stack:
            aload 0 /* host */
            areturn
        end local 0 // java.lang.String host
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            2    5     0  host  Ljava/lang/String;

  public static int getGopherProxyPort();
    descriptor: ()I
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=0, args_size=0
         0: .line 118
            new sun.security.action.GetIntegerAction
            dup
            ldc "gopherProxyPort"
            bipush 80
            invokespecial sun.security.action.GetIntegerAction.<init>:(Ljava/lang/String;I)V
         1: .line 117
            invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedAction;)Ljava/lang/Object;
            checkcast java.lang.Integer
         2: .line 119
            invokevirtual java.lang.Integer.intValue:()I
         3: .line 117
            ireturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  java.io.InputStream openStream(java.net.URL);
    descriptor: (Ljava/net/URL;)Ljava/io/InputStream;
    flags: (0x0000) 
    Code:
      stack=7, locals=8, args_size=2
        start local 0 // sun.net.www.protocol.gopher.GopherClient this
        start local 1 // java.net.URL u
         0: .line 124
            aload 0 /* this */
            aload 1 /* u */
            putfield sun.net.www.protocol.gopher.GopherClient.u:Ljava/net/URL;
         1: .line 125
            aload 0 /* this */
            aload 0 /* this */
            getfield sun.net.www.protocol.gopher.GopherClient.os:Ljava/io/PipedOutputStream;
            putfield sun.net.www.protocol.gopher.GopherClient.os:Ljava/io/PipedOutputStream;
         2: .line 126
            iconst_0
            istore 2 /* i */
        start local 2 // int i
         3: .line 127
            aload 1 /* u */
            invokevirtual java.net.URL.getFile:()Ljava/lang/String;
            astore 3 /* s */
        start local 3 // java.lang.String s
         4: .line 128
            aload 3 /* s */
            invokevirtual java.lang.String.length:()I
            istore 4 /* limit */
        start local 4 // int limit
         5: .line 129
            bipush 49
            istore 5 /* c */
        start local 5 // int c
         6: .line 130
            goto 8
         7: .line 131
      StackMap locals: sun.net.www.protocol.gopher.GopherClient java.net.URL int java.lang.String int int
      StackMap stack:
            iinc 2 /* i */ 1
         8: .line 130
      StackMap locals:
      StackMap stack:
            iload 2 /* i */
            iload 4 /* limit */
            if_icmpge 9
            aload 3 /* s */
            iload 2 /* i */
            invokevirtual java.lang.String.charAt:(I)C
            dup
            istore 5 /* c */
            bipush 47
            if_icmpeq 7
         9: .line 132
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 5 /* c */
            bipush 47
            if_icmpne 10
            bipush 49
            goto 11
      StackMap locals:
      StackMap stack: sun.net.www.protocol.gopher.GopherClient
        10: iload 5 /* c */
      StackMap locals: sun.net.www.protocol.gopher.GopherClient java.net.URL int java.lang.String int int
      StackMap stack: sun.net.www.protocol.gopher.GopherClient int
        11: putfield sun.net.www.protocol.gopher.GopherClient.gtype:I
        12: .line 133
            iload 2 /* i */
            iload 4 /* limit */
            if_icmpge 14
        13: .line 134
            iinc 2 /* i */ 1
        14: .line 135
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 3 /* s */
            iload 2 /* i */
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            putfield sun.net.www.protocol.gopher.GopherClient.gkey:Ljava/lang/String;
        15: .line 137
            aload 0 /* this */
            aload 1 /* u */
            invokevirtual java.net.URL.getHost:()Ljava/lang/String;
            aload 1 /* u */
            invokevirtual java.net.URL.getPort:()I
            ifgt 16
            bipush 70
            goto 17
      StackMap locals: sun.net.www.protocol.gopher.GopherClient java.net.URL int java.lang.String int int
      StackMap stack: sun.net.www.protocol.gopher.GopherClient java.lang.String
        16: aload 1 /* u */
            invokevirtual java.net.URL.getPort:()I
      StackMap locals: sun.net.www.protocol.gopher.GopherClient java.net.URL int java.lang.String int int
      StackMap stack: sun.net.www.protocol.gopher.GopherClient java.lang.String int
        17: invokevirtual sun.net.www.protocol.gopher.GopherClient.openServer:(Ljava/lang/String;I)V
        18: .line 139
            new sun.net.www.MessageHeader
            dup
            invokespecial sun.net.www.MessageHeader.<init>:()V
            astore 6 /* msgh */
        start local 6 // sun.net.www.MessageHeader msgh
        19: .line 141
            aload 0 /* this */
            getfield sun.net.www.protocol.gopher.GopherClient.gtype:I
            lookupswitch { // 5
                   48: 20
                   49: 22
                   55: 20
                   73: 24
                  103: 24
              default: 26
          }
        20: .line 144
      StackMap locals: sun.net.www.MessageHeader
      StackMap stack:
            aload 6 /* msgh */
            ldc "content-type"
            ldc "text/plain"
            invokevirtual sun.net.www.MessageHeader.add:(Ljava/lang/String;Ljava/lang/String;)V
        21: .line 145
            goto 27
        22: .line 147
      StackMap locals:
      StackMap stack:
            aload 6 /* msgh */
            ldc "content-type"
            ldc "text/html"
            invokevirtual sun.net.www.MessageHeader.add:(Ljava/lang/String;Ljava/lang/String;)V
        23: .line 148
            goto 27
        24: .line 151
      StackMap locals:
      StackMap stack:
            aload 6 /* msgh */
            ldc "content-type"
            ldc "image/gif"
            invokevirtual sun.net.www.MessageHeader.add:(Ljava/lang/String;Ljava/lang/String;)V
        25: .line 152
            goto 27
        26: .line 154
      StackMap locals:
      StackMap stack:
            aload 6 /* msgh */
            ldc "content-type"
            ldc "content/unknown"
            invokevirtual sun.net.www.MessageHeader.add:(Ljava/lang/String;Ljava/lang/String;)V
        27: .line 157
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.net.www.protocol.gopher.GopherClient.gtype:I
            bipush 55
            if_icmpeq 31
        28: .line 158
            aload 0 /* this */
            getfield sun.net.www.protocol.gopher.GopherClient.serverOutput:Ljava/io/PrintStream;
            new java.lang.StringBuilder
            dup
            aload 0 /* this */
            aload 0 /* this */
            getfield sun.net.www.protocol.gopher.GopherClient.gkey:Ljava/lang/String;
            invokevirtual sun.net.www.protocol.gopher.GopherClient.decodePercent:(Ljava/lang/String;)Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc "\r\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
        29: .line 159
            aload 0 /* this */
            getfield sun.net.www.protocol.gopher.GopherClient.serverOutput:Ljava/io/PrintStream;
            invokevirtual java.io.PrintStream.flush:()V
        30: .line 160
            goto 39
      StackMap locals:
      StackMap stack:
        31: aload 0 /* this */
            getfield sun.net.www.protocol.gopher.GopherClient.gkey:Ljava/lang/String;
            bipush 63
            invokevirtual java.lang.String.indexOf:(I)I
            dup
            istore 2 /* i */
            iflt 38
        32: .line 161
            aload 0 /* this */
            getfield sun.net.www.protocol.gopher.GopherClient.serverOutput:Ljava/io/PrintStream;
            aload 0 /* this */
            new java.lang.StringBuilder
            dup
            aload 0 /* this */
            getfield sun.net.www.protocol.gopher.GopherClient.gkey:Ljava/lang/String;
            iconst_0
            iload 2 /* i */
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc "\t"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        33: .line 162
            aload 0 /* this */
            getfield sun.net.www.protocol.gopher.GopherClient.gkey:Ljava/lang/String;
            iload 2 /* i */
            iconst_1
            iadd
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "\r\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        34: .line 161
            invokevirtual sun.net.www.protocol.gopher.GopherClient.decodePercent:(Ljava/lang/String;)Ljava/lang/String;
            invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
        35: .line 163
            aload 0 /* this */
            getfield sun.net.www.protocol.gopher.GopherClient.serverOutput:Ljava/io/PrintStream;
            invokevirtual java.io.PrintStream.flush:()V
        36: .line 164
            aload 6 /* msgh */
            ldc "content-type"
            ldc "text/html"
            invokevirtual sun.net.www.MessageHeader.add:(Ljava/lang/String;Ljava/lang/String;)V
        37: .line 165
            goto 39
        38: .line 166
      StackMap locals:
      StackMap stack:
            aload 6 /* msgh */
            ldc "content-type"
            ldc "text/html"
            invokevirtual sun.net.www.MessageHeader.add:(Ljava/lang/String;Ljava/lang/String;)V
        39: .line 168
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.net.www.protocol.gopher.GopherClient.connection:Lsun/net/www/URLConnection;
            aload 6 /* msgh */
            invokevirtual sun.net.www.URLConnection.setProperties:(Lsun/net/www/MessageHeader;)V
        40: .line 169
            aload 6 /* msgh */
            ldc "content-type"
            invokevirtual sun.net.www.MessageHeader.findValue:(Ljava/lang/String;)Ljava/lang/String;
            ldc "text/html"
            if_acmpne 46
        41: .line 170
            aload 0 /* this */
            new java.io.PipedOutputStream
            dup
            invokespecial java.io.PipedOutputStream.<init>:()V
            putfield sun.net.www.protocol.gopher.GopherClient.os:Ljava/io/PipedOutputStream;
        42: .line 171
            new java.io.PipedInputStream
            dup
            invokespecial java.io.PipedInputStream.<init>:()V
            astore 7 /* ret */
        start local 7 // java.io.PipedInputStream ret
        43: .line 172
            aload 7 /* ret */
            aload 0 /* this */
            getfield sun.net.www.protocol.gopher.GopherClient.os:Ljava/io/PipedOutputStream;
            invokevirtual java.io.PipedInputStream.connect:(Ljava/io/PipedOutputStream;)V
        44: .line 173
            new java.lang.Thread
            dup
            aload 0 /* this */
            invokespecial java.lang.Thread.<init>:(Ljava/lang/Runnable;)V
            invokevirtual java.lang.Thread.start:()V
        45: .line 174
            aload 7 /* ret */
            areturn
        end local 7 // java.io.PipedInputStream ret
        46: .line 176
      StackMap locals:
      StackMap stack:
            new sun.net.www.protocol.gopher.GopherInputStream
            dup
            aload 0 /* this */
            aload 0 /* this */
            getfield sun.net.www.protocol.gopher.GopherClient.serverInput:Ljava/io/InputStream;
            invokespecial sun.net.www.protocol.gopher.GopherInputStream.<init>:(Lsun/net/NetworkClient;Ljava/io/InputStream;)V
            areturn
        end local 6 // sun.net.www.MessageHeader msgh
        end local 5 // int c
        end local 4 // int limit
        end local 3 // java.lang.String s
        end local 2 // int i
        end local 1 // java.net.URL u
        end local 0 // sun.net.www.protocol.gopher.GopherClient this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   47     0   this  Lsun/net/www/protocol/gopher/GopherClient;
            0   47     1      u  Ljava/net/URL;
            3   47     2      i  I
            4   47     3      s  Ljava/lang/String;
            5   47     4  limit  I
            6   47     5      c  I
           19   47     6   msgh  Lsun/net/www/MessageHeader;
           43   46     7    ret  Ljava/io/PipedInputStream;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      u     

  private java.lang.String decodePercent(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=9, args_size=2
        start local 0 // sun.net.www.protocol.gopher.GopherClient this
        start local 1 // java.lang.String s
         0: .line 181
            aload 1 /* s */
            ifnull 1
            aload 1 /* s */
            bipush 37
            invokevirtual java.lang.String.indexOf:(I)I
            ifge 2
         1: .line 182
      StackMap locals:
      StackMap stack:
            aload 1 /* s */
            areturn
         2: .line 183
      StackMap locals:
      StackMap stack:
            aload 1 /* s */
            invokevirtual java.lang.String.length:()I
            istore 2 /* limit */
        start local 2 // int limit
         3: .line 184
            iload 2 /* limit */
            newarray 5
            astore 3 /* d */
        start local 3 // char[] d
         4: .line 185
            iconst_0
            istore 4 /* dp */
        start local 4 // int dp
         5: .line 186
            iconst_0
            istore 5 /* sp */
        start local 5 // int sp
         6: goto 30
         7: .line 187
      StackMap locals: sun.net.www.protocol.gopher.GopherClient java.lang.String int char[] int int
      StackMap stack:
            aload 1 /* s */
            iload 5 /* sp */
            invokevirtual java.lang.String.charAt:(I)C
            istore 6 /* c */
        start local 6 // int c
         8: .line 188
            iload 6 /* c */
            bipush 37
            if_icmpne 28
            iload 5 /* sp */
            iconst_2
            iadd
            iload 2 /* limit */
            if_icmpge 28
         9: .line 189
            aload 1 /* s */
            iload 5 /* sp */
            iconst_1
            iadd
            invokevirtual java.lang.String.charAt:(I)C
            istore 7 /* s1 */
        start local 7 // int s1
        10: .line 190
            aload 1 /* s */
            iload 5 /* sp */
            iconst_2
            iadd
            invokevirtual java.lang.String.charAt:(I)C
            istore 8 /* s2 */
        start local 8 // int s2
        11: .line 191
            bipush 48
            iload 7 /* s1 */
            if_icmpgt 13
            iload 7 /* s1 */
            bipush 57
            if_icmpgt 13
        12: .line 192
            iinc 7 /* s1 */ -48
            goto 18
        13: .line 193
      StackMap locals: int int int
      StackMap stack:
            bipush 97
            iload 7 /* s1 */
            if_icmpgt 15
            iload 7 /* s1 */
            bipush 102
            if_icmpgt 15
        14: .line 194
            iload 7 /* s1 */
            bipush 97
            isub
            bipush 10
            iadd
            istore 7 /* s1 */
            goto 18
        15: .line 195
      StackMap locals:
      StackMap stack:
            bipush 65
            iload 7 /* s1 */
            if_icmpgt 17
            iload 7 /* s1 */
            bipush 70
            if_icmpgt 17
        16: .line 196
            iload 7 /* s1 */
            bipush 65
            isub
            bipush 10
            iadd
            istore 7 /* s1 */
            goto 18
        17: .line 198
      StackMap locals:
      StackMap stack:
            iconst_m1
            istore 7 /* s1 */
        18: .line 199
      StackMap locals:
      StackMap stack:
            bipush 48
            iload 8 /* s2 */
            if_icmpgt 20
            iload 8 /* s2 */
            bipush 57
            if_icmpgt 20
        19: .line 200
            iinc 8 /* s2 */ -48
            goto 25
        20: .line 201
      StackMap locals:
      StackMap stack:
            bipush 97
            iload 8 /* s2 */
            if_icmpgt 22
            iload 8 /* s2 */
            bipush 102
            if_icmpgt 22
        21: .line 202
            iload 8 /* s2 */
            bipush 97
            isub
            bipush 10
            iadd
            istore 8 /* s2 */
            goto 25
        22: .line 203
      StackMap locals:
      StackMap stack:
            bipush 65
            iload 8 /* s2 */
            if_icmpgt 24
            iload 8 /* s2 */
            bipush 70
            if_icmpgt 24
        23: .line 204
            iload 8 /* s2 */
            bipush 65
            isub
            bipush 10
            iadd
            istore 8 /* s2 */
            goto 25
        24: .line 206
      StackMap locals:
      StackMap stack:
            iconst_m1
            istore 8 /* s2 */
        25: .line 207
      StackMap locals:
      StackMap stack:
            iload 7 /* s1 */
            iflt 28
            iload 8 /* s2 */
            iflt 28
        26: .line 208
            iload 7 /* s1 */
            iconst_4
            ishl
            iload 8 /* s2 */
            ior
            istore 6 /* c */
        27: .line 209
            iinc 5 /* sp */ 2
        end local 8 // int s2
        end local 7 // int s1
        28: .line 212
      StackMap locals:
      StackMap stack:
            aload 3 /* d */
            iload 4 /* dp */
            iinc 4 /* dp */ 1
            iload 6 /* c */
            i2c
            castore
        end local 6 // int c
        29: .line 186
            iinc 5 /* sp */ 1
      StackMap locals:
      StackMap stack:
        30: iload 5 /* sp */
            iload 2 /* limit */
            if_icmplt 7
        end local 5 // int sp
        31: .line 214
            new java.lang.String
            dup
            aload 3 /* d */
            iconst_0
            iload 4 /* dp */
            invokespecial java.lang.String.<init>:([CII)V
            areturn
        end local 4 // int dp
        end local 3 // char[] d
        end local 2 // int limit
        end local 1 // java.lang.String s
        end local 0 // sun.net.www.protocol.gopher.GopherClient this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   32     0   this  Lsun/net/www/protocol/gopher/GopherClient;
            0   32     1      s  Ljava/lang/String;
            3   32     2  limit  I
            4   32     3      d  [C
            5   32     4     dp  I
            6   31     5     sp  I
            8   29     6      c  I
           10   28     7     s1  I
           11   28     8     s2  I
    MethodParameters:
      Name  Flags
      s     

  private java.lang.String encodePercent(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=8, args_size=2
        start local 0 // sun.net.www.protocol.gopher.GopherClient this
        start local 1 // java.lang.String s
         0: .line 219
            aload 1 /* s */
            ifnonnull 2
         1: .line 220
            aload 1 /* s */
            areturn
         2: .line 221
      StackMap locals:
      StackMap stack:
            aload 1 /* s */
            invokevirtual java.lang.String.length:()I
            istore 2 /* limit */
        start local 2 // int limit
         3: .line 222
            aconst_null
            astore 3 /* d */
        start local 3 // char[] d
         4: .line 223
            iconst_0
            istore 4 /* dp */
        start local 4 // int dp
         5: .line 224
            iconst_0
            istore 5 /* sp */
        start local 5 // int sp
         6: goto 34
         7: .line 225
      StackMap locals: sun.net.www.protocol.gopher.GopherClient java.lang.String int char[] int int
      StackMap stack:
            aload 1 /* s */
            iload 5 /* sp */
            invokevirtual java.lang.String.charAt:(I)C
            istore 6 /* c */
        start local 6 // int c
         8: .line 226
            iload 6 /* c */
            bipush 32
            if_icmple 9
            iload 6 /* c */
            bipush 34
            if_icmpeq 9
            iload 6 /* c */
            bipush 37
            if_icmpne 26
         9: .line 227
      StackMap locals: int
      StackMap stack:
            aload 3 /* d */
            ifnonnull 11
        10: .line 228
            aload 1 /* s */
            invokevirtual java.lang.String.toCharArray:()[C
            astore 3 /* d */
        11: .line 229
      StackMap locals:
      StackMap stack:
            iload 4 /* dp */
            iconst_3
            iadd
            aload 3 /* d */
            arraylength
            if_icmplt 15
        12: .line 230
            iload 4 /* dp */
            bipush 10
            iadd
            newarray 5
            astore 7 /* nd */
        start local 7 // char[] nd
        13: .line 231
            aload 3 /* d */
            iconst_0
            aload 7 /* nd */
            iconst_0
            iload 4 /* dp */
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
        14: .line 232
            aload 7 /* nd */
            astore 3 /* d */
        end local 7 // char[] nd
        15: .line 234
      StackMap locals:
      StackMap stack:
            aload 3 /* d */
            iload 4 /* dp */
            bipush 37
            castore
        16: .line 235
            iload 6 /* c */
            iconst_4
            ishr
            bipush 15
            iand
            istore 7 /* dig */
        start local 7 // int dig
        17: .line 236
            aload 3 /* d */
            iload 4 /* dp */
            iconst_1
            iadd
            iload 7 /* dig */
            bipush 10
            if_icmpge 18
            bipush 48
            iload 7 /* dig */
            iadd
            goto 19
      StackMap locals: sun.net.www.protocol.gopher.GopherClient java.lang.String int char[] int int int int
      StackMap stack: char[] int
        18: bipush 55
            iload 7 /* dig */
            iadd
      StackMap locals: sun.net.www.protocol.gopher.GopherClient java.lang.String int char[] int int int int
      StackMap stack: char[] int int
        19: i2c
            castore
        20: .line 237
            iload 6 /* c */
            bipush 15
            iand
            istore 7 /* dig */
        21: .line 238
            aload 3 /* d */
            iload 4 /* dp */
            iconst_2
            iadd
            iload 7 /* dig */
            bipush 10
            if_icmpge 22
            bipush 48
            iload 7 /* dig */
            iadd
            goto 23
      StackMap locals: sun.net.www.protocol.gopher.GopherClient java.lang.String int char[] int int int int
      StackMap stack: char[] int
        22: bipush 55
            iload 7 /* dig */
            iadd
      StackMap locals: sun.net.www.protocol.gopher.GopherClient java.lang.String int char[] int int int int
      StackMap stack: char[] int int
        23: i2c
            castore
        24: .line 239
            iinc 4 /* dp */ 3
        end local 7 // int dig
        25: .line 240
            goto 33
        26: .line 241
      StackMap locals:
      StackMap stack:
            aload 3 /* d */
            ifnull 32
        27: .line 242
            iload 4 /* dp */
            aload 3 /* d */
            arraylength
            if_icmplt 31
        28: .line 243
            iload 4 /* dp */
            bipush 10
            iadd
            newarray 5
            astore 7 /* nd */
        start local 7 // char[] nd
        29: .line 244
            aload 3 /* d */
            iconst_0
            aload 7 /* nd */
            iconst_0
            iload 4 /* dp */
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
        30: .line 245
            aload 7 /* nd */
            astore 3 /* d */
        end local 7 // char[] nd
        31: .line 247
      StackMap locals:
      StackMap stack:
            aload 3 /* d */
            iload 4 /* dp */
            iload 6 /* c */
            i2c
            castore
        32: .line 249
      StackMap locals:
      StackMap stack:
            iinc 4 /* dp */ 1
        end local 6 // int c
        33: .line 224
      StackMap locals:
      StackMap stack:
            iinc 5 /* sp */ 1
      StackMap locals:
      StackMap stack:
        34: iload 5 /* sp */
            iload 2 /* limit */
            if_icmplt 7
        end local 5 // int sp
        35: .line 252
            aload 3 /* d */
            ifnonnull 36
            aload 1 /* s */
            goto 37
      StackMap locals:
      StackMap stack:
        36: new java.lang.String
            dup
            aload 3 /* d */
            iconst_0
            iload 4 /* dp */
            invokespecial java.lang.String.<init>:([CII)V
      StackMap locals:
      StackMap stack: java.lang.String
        37: areturn
        end local 4 // int dp
        end local 3 // char[] d
        end local 2 // int limit
        end local 1 // java.lang.String s
        end local 0 // sun.net.www.protocol.gopher.GopherClient this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   38     0   this  Lsun/net/www/protocol/gopher/GopherClient;
            0   38     1      s  Ljava/lang/String;
            3   38     2  limit  I
            4   38     3      d  [C
            5   38     4     dp  I
            6   35     5     sp  I
            8   33     6      c  I
           13   15     7     nd  [C
           17   25     7    dig  I
           29   31     7     nd  [C
    MethodParameters:
      Name  Flags
      s     

  public void run();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=14, args_size=1
        start local 0 // sun.net.www.protocol.gopher.GopherClient this
         0: .line 258
            iconst_m1
            istore 1 /* qpos */
        start local 1 // int qpos
         1: .line 260
            aload 0 /* this */
            getfield sun.net.www.protocol.gopher.GopherClient.gtype:I
            bipush 55
            if_icmpne 5
            aload 0 /* this */
            getfield sun.net.www.protocol.gopher.GopherClient.gkey:Ljava/lang/String;
            bipush 63
            invokevirtual java.lang.String.indexOf:(I)I
            dup
            istore 1 /* qpos */
            ifge 5
         2: .line 261
            new java.io.PrintStream
            dup
            aload 0 /* this */
            getfield sun.net.www.protocol.gopher.GopherClient.os:Ljava/io/PipedOutputStream;
            iconst_0
            getstatic sun.net.www.protocol.gopher.GopherClient.encoding:Ljava/lang/String;
            invokespecial java.io.PrintStream.<init>:(Ljava/io/OutputStream;ZLjava/lang/String;)V
            astore 2 /* ps */
        start local 2 // java.io.PrintStream ps
         3: .line 262
            aload 2 /* ps */
            ldc "<html><head><title>Searchable Gopher Index</title></head>\n<body><h1>Searchable Gopher Index</h1><isindex>\n</body></html>\n"
            invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
        end local 2 // java.io.PrintStream ps
         4: .line 263
            goto 83
      StackMap locals: int
      StackMap stack:
         5: aload 0 /* this */
            getfield sun.net.www.protocol.gopher.GopherClient.gtype:I
            bipush 49
            if_icmpeq 14
            aload 0 /* this */
            getfield sun.net.www.protocol.gopher.GopherClient.gtype:I
            bipush 55
            if_icmpeq 14
         6: .line 264
            sipush 2048
            newarray 8
            astore 2 /* buf */
        start local 2 // byte[] buf
         7: .line 267
            goto 9
        start local 3 // int n
         8: .line 268
      StackMap locals: byte[] int
      StackMap stack:
            aload 0 /* this */
            getfield sun.net.www.protocol.gopher.GopherClient.os:Ljava/io/PipedOutputStream;
            aload 2 /* buf */
            iconst_0
            iload 3 /* n */
            invokevirtual java.io.PipedOutputStream.write:([BII)V
        end local 3 // int n
         9: .line 267
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.net.www.protocol.gopher.GopherClient.serverInput:Ljava/io/InputStream;
            aload 2 /* buf */
            invokevirtual java.io.InputStream.read:([B)I
            dup
            istore 3 /* n */
        start local 3 // int n
        10: ifge 8
        end local 3 // int n
        11: .line 269
            goto 83
      StackMap locals:
      StackMap stack: java.lang.Exception
        12: pop
        end local 2 // byte[] buf
        13: .line 271
            goto 83
        14: .line 272
      StackMap locals:
      StackMap stack:
            new java.io.PrintStream
            dup
            aload 0 /* this */
            getfield sun.net.www.protocol.gopher.GopherClient.os:Ljava/io/PipedOutputStream;
            iconst_0
            getstatic sun.net.www.protocol.gopher.GopherClient.encoding:Ljava/lang/String;
            invokespecial java.io.PrintStream.<init>:(Ljava/io/OutputStream;ZLjava/lang/String;)V
            astore 2 /* ps */
        start local 2 // java.io.PrintStream ps
        15: .line 273
            aconst_null
            astore 3 /* title */
        start local 3 // java.lang.String title
        16: .line 274
            aload 0 /* this */
            getfield sun.net.www.protocol.gopher.GopherClient.gtype:I
            bipush 55
            if_icmpne 21
        17: .line 275
            new java.lang.StringBuilder
            dup
            ldc "Results of searching for \""
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            getfield sun.net.www.protocol.gopher.GopherClient.gkey:Ljava/lang/String;
            iload 1 /* qpos */
            iconst_1
            iadd
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        18: .line 276
            ldc "\" on "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield sun.net.www.protocol.gopher.GopherClient.u:Ljava/net/URL;
            invokevirtual java.net.URL.getHost:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        19: .line 275
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 3 /* title */
        20: .line 276
            goto 22
        21: .line 278
      StackMap locals: java.io.PrintStream java.lang.String
      StackMap stack:
            new java.lang.StringBuilder
            dup
            ldc "Gopher directory "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            getfield sun.net.www.protocol.gopher.GopherClient.gkey:Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc " from "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield sun.net.www.protocol.gopher.GopherClient.u:Ljava/net/URL;
            invokevirtual java.net.URL.getHost:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 3 /* title */
        22: .line 279
      StackMap locals:
      StackMap stack:
            aload 2 /* ps */
            ldc "<html><head><title>"
            invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
        23: .line 280
            aload 2 /* ps */
            aload 3 /* title */
            invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
        24: .line 281
            aload 2 /* ps */
            ldc "</title></head>\n<body>\n<H1>"
            invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
        25: .line 282
            aload 2 /* ps */
            aload 3 /* title */
            invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
        26: .line 283
            aload 2 /* ps */
            ldc "</h1><dl compact>\n"
            invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
        27: .line 284
            new java.io.BufferedReader
            dup
            new java.io.InputStreamReader
            dup
            aload 0 /* this */
            getfield sun.net.www.protocol.gopher.GopherClient.serverInput:Ljava/io/InputStream;
            invokespecial java.io.InputStreamReader.<init>:(Ljava/io/InputStream;)V
            invokespecial java.io.BufferedReader.<init>:(Ljava/io/Reader;)V
            astore 4 /* ds */
        start local 4 // java.io.BufferedReader ds
        28: .line 286
            goto 65
        start local 5 // java.lang.String s
        29: .line 287
      StackMap locals: java.io.BufferedReader java.lang.String
      StackMap stack:
            aload 5 /* s */
            invokevirtual java.lang.String.length:()I
            istore 6 /* len */
        start local 6 // int len
        30: .line 288
            goto 32
        31: .line 289
      StackMap locals: int
      StackMap stack:
            iinc 6 /* len */ -1
        32: .line 288
      StackMap locals:
      StackMap stack:
            iload 6 /* len */
            ifle 33
            aload 5 /* s */
            iload 6 /* len */
            iconst_1
            isub
            invokevirtual java.lang.String.charAt:(I)C
            bipush 32
            if_icmple 31
        33: .line 290
      StackMap locals:
      StackMap stack:
            iload 6 /* len */
            ifgt 35
        34: .line 291
            goto 65
        35: .line 292
      StackMap locals:
      StackMap stack:
            aload 5 /* s */
            iconst_0
            invokevirtual java.lang.String.charAt:(I)C
            istore 7 /* key */
        start local 7 // int key
        36: .line 293
            aload 5 /* s */
            bipush 9
            invokevirtual java.lang.String.indexOf:(I)I
            istore 8 /* t1 */
        start local 8 // int t1
        37: .line 294
            iload 8 /* t1 */
            ifle 38
            aload 5 /* s */
            bipush 9
            iload 8 /* t1 */
            iconst_1
            iadd
            invokevirtual java.lang.String.indexOf:(II)I
            goto 39
      StackMap locals: int int
      StackMap stack:
        38: iconst_m1
      StackMap locals:
      StackMap stack: int
        39: istore 9 /* t2 */
        start local 9 // int t2
        40: .line 295
            iload 9 /* t2 */
            ifle 41
            aload 5 /* s */
            bipush 9
            iload 9 /* t2 */
            iconst_1
            iadd
            invokevirtual java.lang.String.indexOf:(II)I
            goto 42
      StackMap locals: int
      StackMap stack:
        41: iconst_m1
      StackMap locals:
      StackMap stack: int
        42: istore 10 /* t3 */
        start local 10 // int t3
        43: .line 296
            iload 10 /* t3 */
            ifge 45
        44: .line 298
            goto 65
        45: .line 300
      StackMap locals: int
      StackMap stack:
            iload 10 /* t3 */
            iconst_1
            iadd
            iload 6 /* len */
            if_icmpge 46
            new java.lang.StringBuilder
            dup
            ldc ":"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 5 /* s */
            iload 10 /* t3 */
            iconst_1
            iadd
            iload 6 /* len */
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            goto 47
      StackMap locals:
      StackMap stack:
        46: ldc ""
      StackMap locals:
      StackMap stack: java.lang.String
        47: astore 11 /* port */
        start local 11 // java.lang.String port
        48: .line 301
            iload 9 /* t2 */
            iconst_1
            iadd
            iload 10 /* t3 */
            if_icmpge 49
            aload 5 /* s */
            iload 9 /* t2 */
            iconst_1
            iadd
            iload 10 /* t3 */
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            goto 50
      StackMap locals: java.lang.String
      StackMap stack:
        49: aload 0 /* this */
            getfield sun.net.www.protocol.gopher.GopherClient.u:Ljava/net/URL;
            invokevirtual java.net.URL.getHost:()Ljava/lang/String;
      StackMap locals:
      StackMap stack: java.lang.String
        50: astore 12 /* host */
        start local 12 // java.lang.String host
        51: .line 302
            aload 2 /* ps */
            new java.lang.StringBuilder
            dup
            ldc "<dt><a href=\"gopher://"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 12 /* host */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 11 /* port */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "/"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        52: .line 303
            aload 5 /* s */
            iconst_0
            iconst_1
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            aload 5 /* s */
            iload 8 /* t1 */
            iconst_1
            iadd
            iload 9 /* t2 */
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            invokevirtual sun.net.www.protocol.gopher.GopherClient.encodePercent:(Ljava/lang/String;)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "\">\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        53: .line 302
            invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
        54: .line 304
            aload 2 /* ps */
            ldc "<img align=middle border=0 width=25 height=32 src="
            invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
        55: .line 305
            iload 7 /* key */
            lookupswitch { // 3
                   48: 58
                   49: 60
                  103: 62
              default: 56
          }
        56: .line 307
      StackMap locals: java.lang.String
      StackMap stack:
            aload 2 /* ps */
            ldc "java.net.ftp.imagepath.file"
            invokestatic java.lang.System.getProperty:(Ljava/lang/String;)Ljava/lang/String;
            invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
        57: .line 308
            goto 63
        58: .line 310
      StackMap locals:
      StackMap stack:
            aload 2 /* ps */
            ldc "java.net.ftp.imagepath.text"
            invokestatic java.lang.System.getProperty:(Ljava/lang/String;)Ljava/lang/String;
            invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
        59: .line 311
            goto 63
        60: .line 313
      StackMap locals:
      StackMap stack:
            aload 2 /* ps */
            ldc "java.net.ftp.imagepath.directory"
            invokestatic java.lang.System.getProperty:(Ljava/lang/String;)Ljava/lang/String;
            invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
        61: .line 314
            goto 63
        62: .line 316
      StackMap locals:
      StackMap stack:
            aload 2 /* ps */
            ldc "java.net.ftp.imagepath.gif"
            invokestatic java.lang.System.getProperty:(Ljava/lang/String;)Ljava/lang/String;
            invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
        63: .line 319
      StackMap locals:
      StackMap stack:
            aload 2 /* ps */
            ldc ".gif align=middle><dd>\n"
            invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
        64: .line 320
            aload 2 /* ps */
            new java.lang.StringBuilder
            dup
            aload 5 /* s */
            iconst_1
            iload 8 /* t1 */
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc "</a>\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
        end local 12 // java.lang.String host
        end local 11 // java.lang.String port
        end local 10 // int t3
        end local 9 // int t2
        end local 8 // int t1
        end local 7 // int key
        end local 6 // int len
        end local 5 // java.lang.String s
        65: .line 286
      StackMap locals: sun.net.www.protocol.gopher.GopherClient int java.io.PrintStream java.lang.String java.io.BufferedReader
      StackMap stack:
            aload 4 /* ds */
            invokevirtual java.io.BufferedReader.readLine:()Ljava/lang/String;
            dup
            astore 5 /* s */
        start local 5 // java.lang.String s
        66: ifnonnull 29
        67: .line 322
            aload 2 /* ps */
            ldc "</dl></body>\n"
            invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
        68: .line 323
            aload 2 /* ps */
            invokevirtual java.io.PrintStream.close:()V
        end local 5 // java.lang.String s
        end local 4 // java.io.BufferedReader ds
        end local 3 // java.lang.String title
        end local 2 // java.io.PrintStream ps
        69: .line 326
            goto 83
      StackMap locals: sun.net.www.protocol.gopher.GopherClient int
      StackMap stack: java.io.UnsupportedEncodingException
        70: pop
        71: .line 327
            new java.lang.InternalError
            dup
            new java.lang.StringBuilder
            dup
            getstatic sun.net.www.protocol.gopher.GopherClient.encoding:Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc " encoding not found"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.InternalError.<init>:(Ljava/lang/String;)V
            athrow
        72: .line 328
      StackMap locals:
      StackMap stack: java.io.IOException
            pop
        73: .line 331
            aload 0 /* this */
            invokevirtual sun.net.www.protocol.gopher.GopherClient.closeServer:()V
        74: .line 332
            aload 0 /* this */
            getfield sun.net.www.protocol.gopher.GopherClient.os:Ljava/io/PipedOutputStream;
            invokevirtual java.io.PipedOutputStream.close:()V
        75: .line 333
            goto 87
      StackMap locals:
      StackMap stack: java.io.IOException
        76: pop
            goto 87
        77: .line 329
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 13
        78: .line 331
            aload 0 /* this */
            invokevirtual sun.net.www.protocol.gopher.GopherClient.closeServer:()V
        79: .line 332
            aload 0 /* this */
            getfield sun.net.www.protocol.gopher.GopherClient.os:Ljava/io/PipedOutputStream;
            invokevirtual java.io.PipedOutputStream.close:()V
        80: .line 333
            goto 82
      StackMap locals: sun.net.www.protocol.gopher.GopherClient int top top top top top top top top top top top java.lang.Throwable
      StackMap stack: java.io.IOException
        81: pop
        82: .line 335
      StackMap locals:
      StackMap stack:
            aload 13
            athrow
        83: .line 331
      StackMap locals: sun.net.www.protocol.gopher.GopherClient int
      StackMap stack:
            aload 0 /* this */
            invokevirtual sun.net.www.protocol.gopher.GopherClient.closeServer:()V
        84: .line 332
            aload 0 /* this */
            getfield sun.net.www.protocol.gopher.GopherClient.os:Ljava/io/PipedOutputStream;
            invokevirtual java.io.PipedOutputStream.close:()V
        85: .line 333
            goto 87
      StackMap locals:
      StackMap stack: java.io.IOException
        86: pop
        87: .line 336
      StackMap locals:
      StackMap stack:
            return
        end local 1 // int qpos
        end local 0 // sun.net.www.protocol.gopher.GopherClient this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   88     0   this  Lsun/net/www/protocol/gopher/GopherClient;
            1   88     1   qpos  I
            3    4     2     ps  Ljava/io/PrintStream;
            7   13     2    buf  [B
            8    9     3      n  I
           10   11     3      n  I
           15   69     2     ps  Ljava/io/PrintStream;
           16   69     3  title  Ljava/lang/String;
           28   69     4     ds  Ljava/io/BufferedReader;
           29   65     5      s  Ljava/lang/String;
           66   69     5      s  Ljava/lang/String;
           30   65     6    len  I
           36   65     7    key  I
           37   65     8     t1  I
           40   65     9     t2  I
           43   65    10     t3  I
           48   65    11   port  Ljava/lang/String;
           51   65    12   host  Ljava/lang/String;
      Exception table:
        from    to  target  type
           7    11      12  Class java.lang.Exception
           1    69      70  Class java.io.UnsupportedEncodingException
           1    69      72  Class java.io.IOException
          73    75      76  Class java.io.IOException
           1    73      77  any
          78    80      81  Class java.io.IOException
          83    85      86  Class java.io.IOException
}
SourceFile: "GopherClient.java"