public class sun.nio.ch.Net
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: sun.nio.ch.Net
  super_class: java.lang.Object
{
  static final java.net.ProtocolFamily UNSPEC;
    descriptor: Ljava/net/ProtocolFamily;
    flags: (0x0018) ACC_STATIC, ACC_FINAL

  private static final boolean exclusiveBind;
    descriptor: Z
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final boolean fastLoopback;
    descriptor: Z
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static volatile boolean checkedIPv6;
    descriptor: Z
    flags: (0x004a) ACC_PRIVATE, ACC_STATIC, ACC_VOLATILE

  private static volatile boolean isIPv6Available;
    descriptor: Z
    flags: (0x004a) ACC_PRIVATE, ACC_STATIC, ACC_VOLATILE

  private static volatile boolean checkedReusePort;
    descriptor: Z
    flags: (0x004a) ACC_PRIVATE, ACC_STATIC, ACC_VOLATILE

  private static volatile boolean isReusePortAvailable;
    descriptor: Z
    flags: (0x004a) ACC_PRIVATE, ACC_STATIC, ACC_VOLATILE

  static final sun.net.ext.ExtendedSocketOptions extendedOptions;
    descriptor: Lsun/net/ext/ExtendedSocketOptions;
    flags: (0x0018) ACC_STATIC, ACC_FINAL

  public static final int SHUT_RD;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 0

  public static final int SHUT_WR;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 1

  public static final int SHUT_RDWR;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 2

  public static final short POLLIN;
    descriptor: S
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  public static final short POLLOUT;
    descriptor: S
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  public static final short POLLERR;
    descriptor: S
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  public static final short POLLHUP;
    descriptor: S
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  public static final short POLLNVAL;
    descriptor: S
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  public static final short POLLCONN;
    descriptor: S
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=2, args_size=0
         0: .line 60
            new sun.nio.ch.Net$1
            dup
            invokespecial sun.nio.ch.Net$1.<init>:()V
            putstatic sun.nio.ch.Net.UNSPEC:Ljava/net/ProtocolFamily;
         1: .line 311
            invokestatic sun.net.ext.ExtendedSocketOptions.getInstance:()Lsun/net/ext/ExtendedSocketOptions;
         2: .line 310
            putstatic sun.nio.ch.Net.extendedOptions:Lsun/net/ext/ExtendedSocketOptions;
         3: .line 644
            invokestatic sun.nio.ch.IOUtil.load:()V
         4: .line 645
            invokestatic sun.nio.ch.Net.initIDs:()V
         5: .line 647
            invokestatic sun.nio.ch.Net.pollinValue:()S
            putstatic sun.nio.ch.Net.POLLIN:S
         6: .line 648
            invokestatic sun.nio.ch.Net.polloutValue:()S
            putstatic sun.nio.ch.Net.POLLOUT:S
         7: .line 649
            invokestatic sun.nio.ch.Net.pollerrValue:()S
            putstatic sun.nio.ch.Net.POLLERR:S
         8: .line 650
            invokestatic sun.nio.ch.Net.pollhupValue:()S
            putstatic sun.nio.ch.Net.POLLHUP:S
         9: .line 651
            invokestatic sun.nio.ch.Net.pollnvalValue:()S
            putstatic sun.nio.ch.Net.POLLNVAL:S
        10: .line 652
            invokestatic sun.nio.ch.Net.pollconnValue:()S
            putstatic sun.nio.ch.Net.POLLCONN:S
        11: .line 656
            invokestatic sun.nio.ch.Net.isExclusiveBindAvailable:()I
            istore 0 /* availLevel */
        start local 0 // int availLevel
        12: .line 657
            iload 0 /* availLevel */
            iflt 26
        13: .line 659
            ldc "sun.net.useExclusiveBind"
            invokestatic sun.security.action.GetPropertyAction.privilegedGetProperty:(Ljava/lang/String;)Ljava/lang/String;
        14: .line 658
            astore 1 /* exclBindProp */
        start local 1 // java.lang.String exclBindProp
        15: .line 660
            aload 1 /* exclBindProp */
            ifnull 21
        16: .line 661
            aload 1 /* exclBindProp */
            invokevirtual java.lang.String.isEmpty:()Z
            ifeq 18
        17: .line 662
            iconst_1
            goto 19
      StackMap locals: int java.lang.String
      StackMap stack:
        18: aload 1 /* exclBindProp */
            invokestatic java.lang.Boolean.parseBoolean:(Ljava/lang/String;)Z
        19: .line 661
      StackMap locals:
      StackMap stack: int
            putstatic sun.nio.ch.Net.exclusiveBind:Z
        20: .line 663
            goto 27
      StackMap locals:
      StackMap stack:
        21: iload 0 /* availLevel */
            iconst_1
            if_icmpne 24
        22: .line 664
            iconst_1
            putstatic sun.nio.ch.Net.exclusiveBind:Z
        23: .line 665
            goto 27
        24: .line 666
      StackMap locals:
      StackMap stack:
            iconst_0
            putstatic sun.nio.ch.Net.exclusiveBind:Z
        end local 1 // java.lang.String exclBindProp
        25: .line 668
            goto 27
        26: .line 669
      StackMap locals:
      StackMap stack:
            iconst_0
            putstatic sun.nio.ch.Net.exclusiveBind:Z
        27: .line 672
      StackMap locals:
      StackMap stack:
            invokestatic sun.nio.ch.Net.isFastTcpLoopbackRequested:()Z
            putstatic sun.nio.ch.Net.fastLoopback:Z
        end local 0 // int availLevel
        28: .line 673
            return
      LocalVariableTable:
        Start  End  Slot          Name  Signature
           12   28     0    availLevel  I
           15   25     1  exclBindProp  Ljava/lang/String;

  private void <init>();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.nio.ch.Net this
         0: .line 57
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
            return
        end local 0 // sun.nio.ch.Net this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/nio/ch/Net;

  static boolean isIPv6Available();
    descriptor: ()Z
    flags: (0x0008) ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 83
            getstatic sun.nio.ch.Net.checkedIPv6:Z
            ifne 3
         1: .line 84
            invokestatic sun.nio.ch.Net.isIPv6Available0:()Z
            putstatic sun.nio.ch.Net.isIPv6Available:Z
         2: .line 85
            iconst_1
            putstatic sun.nio.ch.Net.checkedIPv6:Z
         3: .line 87
      StackMap locals:
      StackMap stack:
            getstatic sun.nio.ch.Net.isIPv6Available:Z
            ireturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  static boolean isReusePortAvailable();
    descriptor: ()Z
    flags: (0x0008) ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 94
            getstatic sun.nio.ch.Net.checkedReusePort:Z
            ifne 3
         1: .line 95
            invokestatic sun.nio.ch.Net.isReusePortAvailable0:()Z
            putstatic sun.nio.ch.Net.isReusePortAvailable:Z
         2: .line 96
            iconst_1
            putstatic sun.nio.ch.Net.checkedReusePort:Z
         3: .line 98
      StackMap locals:
      StackMap stack:
            getstatic sun.nio.ch.Net.isReusePortAvailable:Z
            ireturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  static boolean useExclusiveBind();
    descriptor: ()Z
    flags: (0x0008) ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 105
            getstatic sun.nio.ch.Net.exclusiveBind:Z
            ireturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  static boolean canIPv6SocketJoinIPv4Group();
    descriptor: ()Z
    flags: (0x0008) ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 112
            invokestatic sun.nio.ch.Net.canIPv6SocketJoinIPv4Group0:()Z
            ireturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  static boolean canJoin6WithIPv4Group();
    descriptor: ()Z
    flags: (0x0008) ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 120
            invokestatic sun.nio.ch.Net.canJoin6WithIPv4Group0:()Z
            ireturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public static java.net.InetSocketAddress checkAddress(java.net.SocketAddress);
    descriptor: (Ljava/net/SocketAddress;)Ljava/net/InetSocketAddress;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=3, args_size=1
        start local 0 // java.net.SocketAddress sa
         0: .line 124
            aload 0 /* sa */
            ifnonnull 2
         1: .line 125
            new java.lang.NullPointerException
            dup
            invokespecial java.lang.NullPointerException.<init>:()V
            athrow
         2: .line 126
      StackMap locals:
      StackMap stack:
            aload 0 /* sa */
            instanceof java.net.InetSocketAddress
            ifne 4
         3: .line 127
            new java.nio.channels.UnsupportedAddressTypeException
            dup
            invokespecial java.nio.channels.UnsupportedAddressTypeException.<init>:()V
            athrow
         4: .line 128
      StackMap locals:
      StackMap stack:
            aload 0 /* sa */
            checkcast java.net.InetSocketAddress
            astore 1 /* isa */
        start local 1 // java.net.InetSocketAddress isa
         5: .line 129
            aload 1 /* isa */
            invokevirtual java.net.InetSocketAddress.isUnresolved:()Z
            ifeq 7
         6: .line 130
            new java.nio.channels.UnresolvedAddressException
            dup
            invokespecial java.nio.channels.UnresolvedAddressException.<init>:()V
            athrow
         7: .line 131
      StackMap locals: java.net.InetSocketAddress
      StackMap stack:
            aload 1 /* isa */
            invokevirtual java.net.InetSocketAddress.getAddress:()Ljava/net/InetAddress;
            astore 2 /* addr */
        start local 2 // java.net.InetAddress addr
         8: .line 132
            aload 2 /* addr */
            instanceof java.net.Inet4Address
            ifne 10
            aload 2 /* addr */
            instanceof java.net.Inet6Address
            ifne 10
         9: .line 133
            new java.lang.IllegalArgumentException
            dup
            ldc "Invalid address type"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        10: .line 134
      StackMap locals: java.net.InetAddress
      StackMap stack:
            aload 1 /* isa */
            areturn
        end local 2 // java.net.InetAddress addr
        end local 1 // java.net.InetSocketAddress isa
        end local 0 // java.net.SocketAddress sa
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   11     0    sa  Ljava/net/SocketAddress;
            5   11     1   isa  Ljava/net/InetSocketAddress;
            8   11     2  addr  Ljava/net/InetAddress;
    MethodParameters:
      Name  Flags
      sa    

  static java.net.InetSocketAddress checkAddress(java.net.SocketAddress, java.net.ProtocolFamily);
    descriptor: (Ljava/net/SocketAddress;Ljava/net/ProtocolFamily;)Ljava/net/InetSocketAddress;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=4, args_size=2
        start local 0 // java.net.SocketAddress sa
        start local 1 // java.net.ProtocolFamily family
         0: .line 138
            aload 0 /* sa */
            invokestatic sun.nio.ch.Net.checkAddress:(Ljava/net/SocketAddress;)Ljava/net/InetSocketAddress;
            astore 2 /* isa */
        start local 2 // java.net.InetSocketAddress isa
         1: .line 139
            aload 1 /* family */
            getstatic java.net.StandardProtocolFamily.INET:Ljava/net/StandardProtocolFamily;
            if_acmpne 5
         2: .line 140
            aload 2 /* isa */
            invokevirtual java.net.InetSocketAddress.getAddress:()Ljava/net/InetAddress;
            astore 3 /* addr */
        start local 3 // java.net.InetAddress addr
         3: .line 141
            aload 3 /* addr */
            instanceof java.net.Inet4Address
            ifne 5
         4: .line 142
            new java.nio.channels.UnsupportedAddressTypeException
            dup
            invokespecial java.nio.channels.UnsupportedAddressTypeException.<init>:()V
            athrow
        end local 3 // java.net.InetAddress addr
         5: .line 144
      StackMap locals: java.net.InetSocketAddress
      StackMap stack:
            aload 2 /* isa */
            areturn
        end local 2 // java.net.InetSocketAddress isa
        end local 1 // java.net.ProtocolFamily family
        end local 0 // java.net.SocketAddress sa
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    6     0      sa  Ljava/net/SocketAddress;
            0    6     1  family  Ljava/net/ProtocolFamily;
            1    6     2     isa  Ljava/net/InetSocketAddress;
            3    5     3    addr  Ljava/net/InetAddress;
    MethodParameters:
        Name  Flags
      sa      
      family  

  static java.net.InetSocketAddress asInetSocketAddress(java.net.SocketAddress);
    descriptor: (Ljava/net/SocketAddress;)Ljava/net/InetSocketAddress;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // java.net.SocketAddress sa
         0: .line 148
            aload 0 /* sa */
            instanceof java.net.InetSocketAddress
            ifne 2
         1: .line 149
            new java.nio.channels.UnsupportedAddressTypeException
            dup
            invokespecial java.nio.channels.UnsupportedAddressTypeException.<init>:()V
            athrow
         2: .line 150
      StackMap locals:
      StackMap stack:
            aload 0 /* sa */
            checkcast java.net.InetSocketAddress
            areturn
        end local 0 // java.net.SocketAddress sa
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0    sa  Ljava/net/SocketAddress;
    MethodParameters:
      Name  Flags
      sa    

  static void translateToSocketException(java.lang.Exception);
    descriptor: (Ljava/lang/Exception;)V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=4, locals=2, args_size=1
        start local 0 // java.lang.Exception x
         0: .line 156
            aload 0 /* x */
            instanceof java.net.SocketException
            ifeq 2
         1: .line 157
            aload 0 /* x */
            checkcast java.net.SocketException
            athrow
         2: .line 158
      StackMap locals:
      StackMap stack:
            aload 0 /* x */
            astore 1 /* nx */
        start local 1 // java.lang.Exception nx
         3: .line 159
            aload 0 /* x */
            instanceof java.nio.channels.ClosedChannelException
            ifeq 5
         4: .line 160
            new java.net.SocketException
            dup
            ldc "Socket is closed"
            invokespecial java.net.SocketException.<init>:(Ljava/lang/String;)V
            astore 1 /* nx */
            goto 15
         5: .line 161
      StackMap locals: java.lang.Exception
      StackMap stack:
            aload 0 /* x */
            instanceof java.nio.channels.NotYetConnectedException
            ifeq 7
         6: .line 162
            new java.net.SocketException
            dup
            ldc "Socket is not connected"
            invokespecial java.net.SocketException.<init>:(Ljava/lang/String;)V
            astore 1 /* nx */
            goto 15
         7: .line 163
      StackMap locals:
      StackMap stack:
            aload 0 /* x */
            instanceof java.nio.channels.AlreadyBoundException
            ifeq 9
         8: .line 164
            new java.net.SocketException
            dup
            ldc "Already bound"
            invokespecial java.net.SocketException.<init>:(Ljava/lang/String;)V
            astore 1 /* nx */
            goto 15
         9: .line 165
      StackMap locals:
      StackMap stack:
            aload 0 /* x */
            instanceof java.nio.channels.NotYetBoundException
            ifeq 11
        10: .line 166
            new java.net.SocketException
            dup
            ldc "Socket is not bound yet"
            invokespecial java.net.SocketException.<init>:(Ljava/lang/String;)V
            astore 1 /* nx */
            goto 15
        11: .line 167
      StackMap locals:
      StackMap stack:
            aload 0 /* x */
            instanceof java.nio.channels.UnsupportedAddressTypeException
            ifeq 13
        12: .line 168
            new java.net.SocketException
            dup
            ldc "Unsupported address type"
            invokespecial java.net.SocketException.<init>:(Ljava/lang/String;)V
            astore 1 /* nx */
            goto 15
        13: .line 169
      StackMap locals:
      StackMap stack:
            aload 0 /* x */
            instanceof java.nio.channels.UnresolvedAddressException
            ifeq 15
        14: .line 170
            new java.net.SocketException
            dup
            ldc "Unresolved address"
            invokespecial java.net.SocketException.<init>:(Ljava/lang/String;)V
            astore 1 /* nx */
        15: .line 172
      StackMap locals:
      StackMap stack:
            aload 1 /* nx */
            aload 0 /* x */
            if_acmpeq 17
        16: .line 173
            aload 1 /* nx */
            aload 0 /* x */
            invokevirtual java.lang.Exception.initCause:(Ljava/lang/Throwable;)Ljava/lang/Throwable;
            pop
        17: .line 175
      StackMap locals:
      StackMap stack:
            aload 1 /* nx */
            instanceof java.net.SocketException
            ifeq 19
        18: .line 176
            aload 1 /* nx */
            checkcast java.net.SocketException
            athrow
        19: .line 177
      StackMap locals:
      StackMap stack:
            aload 1 /* nx */
            instanceof java.lang.RuntimeException
            ifeq 21
        20: .line 178
            aload 1 /* nx */
            checkcast java.lang.RuntimeException
            athrow
        21: .line 180
      StackMap locals:
      StackMap stack:
            new java.lang.Error
            dup
            ldc "Untranslated exception"
            aload 1 /* nx */
            invokespecial java.lang.Error.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
            athrow
        end local 1 // java.lang.Exception nx
        end local 0 // java.lang.Exception x
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   22     0     x  Ljava/lang/Exception;
            3   22     1    nx  Ljava/lang/Exception;
    Exceptions:
      throws java.net.SocketException
    MethodParameters:
      Name  Flags
      x     

  static void translateException(java.lang.Exception, boolean);
    descriptor: (Ljava/lang/Exception;Z)V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // java.lang.Exception x
        start local 1 // boolean unknownHostForUnresolved
         0: .line 187
            aload 0 /* x */
            instanceof java.io.IOException
            ifeq 2
         1: .line 188
            aload 0 /* x */
            checkcast java.io.IOException
            athrow
         2: .line 191
      StackMap locals:
      StackMap stack:
            iload 1 /* unknownHostForUnresolved */
            ifeq 5
         3: .line 192
            aload 0 /* x */
            instanceof java.nio.channels.UnresolvedAddressException
            ifeq 5
         4: .line 194
            new java.net.UnknownHostException
            dup
            invokespecial java.net.UnknownHostException.<init>:()V
            athrow
         5: .line 196
      StackMap locals:
      StackMap stack:
            aload 0 /* x */
            invokestatic sun.nio.ch.Net.translateToSocketException:(Ljava/lang/Exception;)V
         6: .line 197
            return
        end local 1 // boolean unknownHostForUnresolved
        end local 0 // java.lang.Exception x
      LocalVariableTable:
        Start  End  Slot                      Name  Signature
            0    7     0                         x  Ljava/lang/Exception;
            0    7     1  unknownHostForUnresolved  Z
    Exceptions:
      throws java.io.IOException
    MethodParameters:
                          Name  Flags
      x                         
      unknownHostForUnresolved  

  static void translateException(java.lang.Exception);
    descriptor: (Ljava/lang/Exception;)V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // java.lang.Exception x
         0: .line 202
            aload 0 /* x */
            iconst_0
            invokestatic sun.nio.ch.Net.translateException:(Ljava/lang/Exception;Z)V
         1: .line 203
            return
        end local 0 // java.lang.Exception x
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0     x  Ljava/lang/Exception;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      x     

  static java.net.InetSocketAddress getRevealedLocalAddress(java.net.InetSocketAddress);
    descriptor: (Ljava/net/InetSocketAddress;)Ljava/net/InetSocketAddress;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=3, locals=2, args_size=1
        start local 0 // java.net.InetSocketAddress addr
         0: .line 209
            invokestatic java.lang.System.getSecurityManager:()Ljava/lang/SecurityManager;
            astore 1 /* sm */
        start local 1 // java.lang.SecurityManager sm
         1: .line 210
            aload 0 /* addr */
            ifnull 2
            aload 1 /* sm */
            ifnonnull 3
         2: .line 211
      StackMap locals: java.lang.SecurityManager
      StackMap stack:
            aload 0 /* addr */
            areturn
         3: .line 214
      StackMap locals:
      StackMap stack:
            aload 1 /* sm */
            aload 0 /* addr */
            invokevirtual java.net.InetSocketAddress.getAddress:()Ljava/net/InetAddress;
            invokevirtual java.net.InetAddress.getHostAddress:()Ljava/lang/String;
            iconst_m1
            invokevirtual java.lang.SecurityManager.checkConnect:(Ljava/lang/String;I)V
         4: .line 216
            goto 7
      StackMap locals:
      StackMap stack: java.lang.SecurityException
         5: pop
         6: .line 218
            aload 0 /* addr */
            invokevirtual java.net.InetSocketAddress.getPort:()I
            invokestatic sun.nio.ch.Net.getLoopbackAddress:(I)Ljava/net/InetSocketAddress;
            astore 0 /* addr */
         7: .line 220
      StackMap locals:
      StackMap stack:
            aload 0 /* addr */
            areturn
        end local 1 // java.lang.SecurityManager sm
        end local 0 // java.net.InetSocketAddress addr
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    8     0  addr  Ljava/net/InetSocketAddress;
            1    8     1    sm  Ljava/lang/SecurityManager;
      Exception table:
        from    to  target  type
           3     4       5  Class java.lang.SecurityException
    MethodParameters:
      Name  Flags
      addr  

  static java.lang.String getRevealedLocalAddressAsString(java.net.InetSocketAddress);
    descriptor: (Ljava/net/InetSocketAddress;)Ljava/lang/String;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.net.InetSocketAddress addr
         0: .line 224
            invokestatic java.lang.System.getSecurityManager:()Ljava/lang/SecurityManager;
            ifnonnull 1
            aload 0 /* addr */
            invokevirtual java.net.InetSocketAddress.toString:()Ljava/lang/String;
            goto 2
         1: .line 225
      StackMap locals:
      StackMap stack:
            aload 0 /* addr */
            invokevirtual java.net.InetSocketAddress.getPort:()I
            invokestatic sun.nio.ch.Net.getLoopbackAddress:(I)Ljava/net/InetSocketAddress;
            invokevirtual java.net.InetSocketAddress.toString:()Ljava/lang/String;
         2: .line 224
      StackMap locals:
      StackMap stack: java.lang.String
            areturn
        end local 0 // java.net.InetSocketAddress addr
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  addr  Ljava/net/InetSocketAddress;
    MethodParameters:
      Name  Flags
      addr  

  private static java.net.InetSocketAddress getLoopbackAddress(int);
    descriptor: (I)Ljava/net/InetSocketAddress;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // int port
         0: .line 229
            new java.net.InetSocketAddress
            dup
            invokestatic java.net.InetAddress.getLoopbackAddress:()Ljava/net/InetAddress;
         1: .line 230
            iload 0 /* port */
         2: .line 229
            invokespecial java.net.InetSocketAddress.<init>:(Ljava/net/InetAddress;I)V
            areturn
        end local 0 // int port
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  port  I
    MethodParameters:
      Name  Flags
      port  

  static java.net.Inet4Address anyInet4Address(java.net.NetworkInterface);
    descriptor: (Ljava/net/NetworkInterface;)Ljava/net/Inet4Address;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // java.net.NetworkInterface interf
         0: .line 238
            new sun.nio.ch.Net$2
            dup
            aload 0 /* interf */
            invokespecial sun.nio.ch.Net$2.<init>:(Ljava/net/NetworkInterface;)V
            invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedAction;)Ljava/lang/Object;
            checkcast java.net.Inet4Address
            areturn
        end local 0 // java.net.NetworkInterface interf
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0  interf  Ljava/net/NetworkInterface;
    MethodParameters:
        Name  Flags
      interf  final

  static int inet4AsInt(java.net.InetAddress);
    descriptor: (Ljava/net/InetAddress;)I
    flags: (0x0008) ACC_STATIC
    Code:
      stack=3, locals=3, args_size=1
        start local 0 // java.net.InetAddress ia
         0: .line 256
            aload 0 /* ia */
            instanceof java.net.Inet4Address
            ifeq 7
         1: .line 257
            aload 0 /* ia */
            invokevirtual java.net.InetAddress.getAddress:()[B
            astore 1 /* addr */
        start local 1 // byte[] addr
         2: .line 258
            aload 1 /* addr */
            iconst_3
            baload
            sipush 255
            iand
            istore 2 /* address */
        start local 2 // int address
         3: .line 259
            iload 2 /* address */
            aload 1 /* addr */
            iconst_2
            baload
            bipush 8
            ishl
            ldc 65280
            iand
            ior
            istore 2 /* address */
         4: .line 260
            iload 2 /* address */
            aload 1 /* addr */
            iconst_1
            baload
            bipush 16
            ishl
            ldc 16711680
            iand
            ior
            istore 2 /* address */
         5: .line 261
            iload 2 /* address */
            aload 1 /* addr */
            iconst_0
            baload
            bipush 24
            ishl
            ldc -16777216
            iand
            ior
            istore 2 /* address */
         6: .line 262
            iload 2 /* address */
            ireturn
        end local 2 // int address
        end local 1 // byte[] addr
         7: .line 264
      StackMap locals:
      StackMap stack:
            new java.lang.AssertionError
            dup
            ldc "Should not reach here"
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
        end local 0 // java.net.InetAddress ia
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    8     0       ia  Ljava/net/InetAddress;
            2    7     1     addr  [B
            3    7     2  address  I
    MethodParameters:
      Name  Flags
      ia    

  static java.net.InetAddress inet4FromInt(int);
    descriptor: (I)Ljava/net/InetAddress;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=4, locals=2, args_size=1
        start local 0 // int address
         0: .line 272
            iconst_4
            newarray 8
            astore 1 /* addr */
        start local 1 // byte[] addr
         1: .line 273
            aload 1 /* addr */
            iconst_0
            iload 0 /* address */
            bipush 24
            iushr
            sipush 255
            iand
            i2b
            bastore
         2: .line 274
            aload 1 /* addr */
            iconst_1
            iload 0 /* address */
            bipush 16
            iushr
            sipush 255
            iand
            i2b
            bastore
         3: .line 275
            aload 1 /* addr */
            iconst_2
            iload 0 /* address */
            bipush 8
            iushr
            sipush 255
            iand
            i2b
            bastore
         4: .line 276
            aload 1 /* addr */
            iconst_3
            iload 0 /* address */
            sipush 255
            iand
            i2b
            bastore
         5: .line 278
            aload 1 /* addr */
            invokestatic java.net.InetAddress.getByAddress:([B)Ljava/net/InetAddress;
         6: areturn
         7: .line 279
      StackMap locals: int byte[]
      StackMap stack: java.net.UnknownHostException
            pop
         8: .line 280
            new java.lang.AssertionError
            dup
            ldc "Should not reach here"
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
        end local 1 // byte[] addr
        end local 0 // int address
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    9     0  address  I
            1    9     1     addr  [B
      Exception table:
        from    to  target  type
           5     6       7  Class java.net.UnknownHostException
    MethodParameters:
         Name  Flags
      address  

  static byte[] inet6AsByteArray(java.net.InetAddress);
    descriptor: (Ljava/net/InetAddress;)[B
    flags: (0x0008) ACC_STATIC
    Code:
      stack=4, locals=3, args_size=1
        start local 0 // java.net.InetAddress ia
         0: .line 288
            aload 0 /* ia */
            instanceof java.net.Inet6Address
            ifeq 2
         1: .line 289
            aload 0 /* ia */
            invokevirtual java.net.InetAddress.getAddress:()[B
            areturn
         2: .line 293
      StackMap locals:
      StackMap stack:
            aload 0 /* ia */
            instanceof java.net.Inet4Address
            ifeq 12
         3: .line 294
            aload 0 /* ia */
            invokevirtual java.net.InetAddress.getAddress:()[B
            astore 1 /* ip4address */
        start local 1 // byte[] ip4address
         4: .line 295
            bipush 16
            newarray 8
            astore 2 /* address */
        start local 2 // byte[] address
         5: .line 296
            aload 2 /* address */
            bipush 10
            iconst_m1
            bastore
         6: .line 297
            aload 2 /* address */
            bipush 11
            iconst_m1
            bastore
         7: .line 298
            aload 2 /* address */
            bipush 12
            aload 1 /* ip4address */
            iconst_0
            baload
            bastore
         8: .line 299
            aload 2 /* address */
            bipush 13
            aload 1 /* ip4address */
            iconst_1
            baload
            bastore
         9: .line 300
            aload 2 /* address */
            bipush 14
            aload 1 /* ip4address */
            iconst_2
            baload
            bastore
        10: .line 301
            aload 2 /* address */
            bipush 15
            aload 1 /* ip4address */
            iconst_3
            baload
            bastore
        11: .line 302
            aload 2 /* address */
            areturn
        end local 2 // byte[] address
        end local 1 // byte[] ip4address
        12: .line 305
      StackMap locals:
      StackMap stack:
            new java.lang.AssertionError
            dup
            ldc "Should not reach here"
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
        end local 0 // java.net.InetAddress ia
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   13     0          ia  Ljava/net/InetAddress;
            4   12     1  ip4address  [B
            5   12     2     address  [B
    MethodParameters:
      Name  Flags
      ia    

  static void setSocketOption(java.io.FileDescriptor, java.net.ProtocolFamily, java.net.SocketOption<?>, );
    descriptor: (Ljava/io/FileDescriptor;Ljava/net/ProtocolFamily;Ljava/net/SocketOption;Ljava/lang/Object;)V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=6, locals=9, args_size=4
        start local 0 // java.io.FileDescriptor fd
        start local 1 // java.net.ProtocolFamily family
        start local 2 // java.net.SocketOption name
        start local 3 // java.lang.Object value
         0: .line 317
            aload 3 /* value */
            ifnonnull 2
         1: .line 318
            new java.lang.IllegalArgumentException
            dup
            ldc "Invalid option value"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 321
      StackMap locals:
      StackMap stack:
            aload 2 /* name */
            invokeinterface java.net.SocketOption.type:()Ljava/lang/Class;
            astore 4 /* type */
        start local 4 // java.lang.Class type
         3: .line 323
            getstatic sun.nio.ch.Net.extendedOptions:Lsun/net/ext/ExtendedSocketOptions;
            aload 2 /* name */
            invokevirtual sun.net.ext.ExtendedSocketOptions.isOptionSupported:(Ljava/net/SocketOption;)Z
            ifeq 6
         4: .line 324
            getstatic sun.nio.ch.Net.extendedOptions:Lsun/net/ext/ExtendedSocketOptions;
            aload 0 /* fd */
            aload 2 /* name */
            aload 3 /* value */
            invokevirtual sun.net.ext.ExtendedSocketOptions.setOption:(Ljava/io/FileDescriptor;Ljava/net/SocketOption;Ljava/lang/Object;)V
         5: .line 325
            return
         6: .line 328
      StackMap locals: java.lang.Class
      StackMap stack:
            aload 4 /* type */
            ldc Ljava/lang/Integer;
            if_acmpeq 8
            aload 4 /* type */
            ldc Ljava/lang/Boolean;
            if_acmpeq 8
         7: .line 329
            new java.lang.AssertionError
            dup
            ldc "Should not reach here"
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
         8: .line 332
      StackMap locals:
      StackMap stack:
            aload 2 /* name */
            getstatic java.net.StandardSocketOptions.SO_RCVBUF:Ljava/net/SocketOption;
            if_acmpeq 10
         9: .line 333
            aload 2 /* name */
            getstatic java.net.StandardSocketOptions.SO_SNDBUF:Ljava/net/SocketOption;
            if_acmpne 13
        10: .line 335
      StackMap locals:
      StackMap stack:
            aload 3 /* value */
            checkcast java.lang.Integer
            invokevirtual java.lang.Integer.intValue:()I
            istore 5 /* i */
        start local 5 // int i
        11: .line 336
            iload 5 /* i */
            ifge 13
        12: .line 337
            new java.lang.IllegalArgumentException
            dup
            ldc "Invalid send/receive buffer size"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        end local 5 // int i
        13: .line 339
      StackMap locals:
      StackMap stack:
            aload 2 /* name */
            getstatic java.net.StandardSocketOptions.SO_LINGER:Ljava/net/SocketOption;
            if_acmpne 19
        14: .line 340
            aload 3 /* value */
            checkcast java.lang.Integer
            invokevirtual java.lang.Integer.intValue:()I
            istore 5 /* i */
        start local 5 // int i
        15: .line 341
            iload 5 /* i */
            ifge 17
        16: .line 342
            iconst_m1
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            astore 3 /* value */
        17: .line 343
      StackMap locals: int
      StackMap stack:
            iload 5 /* i */
            ldc 65535
            if_icmple 19
        18: .line 344
            ldc 65535
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            astore 3 /* value */
        end local 5 // int i
        19: .line 346
      StackMap locals:
      StackMap stack:
            aload 2 /* name */
            getstatic java.net.StandardSocketOptions.IP_TOS:Ljava/net/SocketOption;
            if_acmpne 23
        20: .line 347
            aload 3 /* value */
            checkcast java.lang.Integer
            invokevirtual java.lang.Integer.intValue:()I
            istore 5 /* i */
        start local 5 // int i
        21: .line 348
            iload 5 /* i */
            iflt 22
            iload 5 /* i */
            sipush 255
            if_icmple 23
        22: .line 349
      StackMap locals: int
      StackMap stack:
            new java.lang.IllegalArgumentException
            dup
            ldc "Invalid IP_TOS value"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        end local 5 // int i
        23: .line 351
      StackMap locals:
      StackMap stack:
            aload 2 /* name */
            getstatic java.net.StandardSocketOptions.IP_MULTICAST_TTL:Ljava/net/SocketOption;
            if_acmpne 27
        24: .line 352
            aload 3 /* value */
            checkcast java.lang.Integer
            invokevirtual java.lang.Integer.intValue:()I
            istore 5 /* i */
        start local 5 // int i
        25: .line 353
            iload 5 /* i */
            iflt 26
            iload 5 /* i */
            sipush 255
            if_icmple 27
        26: .line 354
      StackMap locals: int
      StackMap stack:
            new java.lang.IllegalArgumentException
            dup
            ldc "Invalid TTL/hop value"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        end local 5 // int i
        27: .line 358
      StackMap locals:
      StackMap stack:
            aload 2 /* name */
            aload 1 /* family */
            invokestatic sun.nio.ch.SocketOptionRegistry.findOption:(Ljava/net/SocketOption;Ljava/net/ProtocolFamily;)Lsun/nio/ch/OptionKey;
            astore 5 /* key */
        start local 5 // sun.nio.ch.OptionKey key
        28: .line 359
            aload 5 /* key */
            ifnonnull 30
        29: .line 360
            new java.lang.AssertionError
            dup
            ldc "Option not found"
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
        30: .line 363
      StackMap locals: sun.nio.ch.OptionKey
      StackMap stack:
            aload 4 /* type */
            ldc Ljava/lang/Integer;
            if_acmpne 33
        31: .line 364
            aload 3 /* value */
            checkcast java.lang.Integer
            invokevirtual java.lang.Integer.intValue:()I
            istore 6 /* arg */
        start local 6 // int arg
        32: .line 365
            goto 37
        end local 6 // int arg
        33: .line 366
      StackMap locals:
      StackMap stack:
            aload 3 /* value */
            checkcast java.lang.Boolean
            invokevirtual java.lang.Boolean.booleanValue:()Z
            istore 7 /* b */
        start local 7 // boolean b
        34: .line 367
            iload 7 /* b */
            ifeq 35
            iconst_1
            goto 36
      StackMap locals: java.io.FileDescriptor java.net.ProtocolFamily java.net.SocketOption java.lang.Object java.lang.Class sun.nio.ch.OptionKey top int
      StackMap stack:
        35: iconst_0
      StackMap locals:
      StackMap stack: int
        36: istore 6 /* arg */
        end local 7 // boolean b
        start local 6 // int arg
        37: .line 370
      StackMap locals: java.io.FileDescriptor java.net.ProtocolFamily java.net.SocketOption java.lang.Object java.lang.Class sun.nio.ch.OptionKey int
      StackMap stack:
            aload 1 /* family */
            getstatic sun.nio.ch.Net.UNSPEC:Ljava/net/ProtocolFamily;
            if_acmpne 38
            iconst_1
            goto 39
      StackMap locals:
      StackMap stack:
        38: iconst_0
      StackMap locals:
      StackMap stack: int
        39: istore 7 /* mayNeedConversion */
        start local 7 // boolean mayNeedConversion
        40: .line 371
            aload 1 /* family */
            getstatic java.net.StandardProtocolFamily.INET6:Ljava/net/StandardProtocolFamily;
            if_acmpne 41
            iconst_1
            goto 42
      StackMap locals: int
      StackMap stack:
        41: iconst_0
      StackMap locals:
      StackMap stack: int
        42: istore 8 /* isIPv6 */
        start local 8 // boolean isIPv6
        43: .line 372
            aload 0 /* fd */
            iload 7 /* mayNeedConversion */
            aload 5 /* key */
            invokevirtual sun.nio.ch.OptionKey.level:()I
            aload 5 /* key */
            invokevirtual sun.nio.ch.OptionKey.name:()I
            iload 6 /* arg */
            iload 8 /* isIPv6 */
            invokestatic sun.nio.ch.Net.setIntOption0:(Ljava/io/FileDescriptor;ZIIIZ)V
        44: .line 373
            return
        end local 8 // boolean isIPv6
        end local 7 // boolean mayNeedConversion
        end local 6 // int arg
        end local 5 // sun.nio.ch.OptionKey key
        end local 4 // java.lang.Class type
        end local 3 // java.lang.Object value
        end local 2 // java.net.SocketOption name
        end local 1 // java.net.ProtocolFamily family
        end local 0 // java.io.FileDescriptor fd
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0   45     0                 fd  Ljava/io/FileDescriptor;
            0   45     1             family  Ljava/net/ProtocolFamily;
            0   45     2               name  Ljava/net/SocketOption<*>;
            0   45     3              value  Ljava/lang/Object;
            3   45     4               type  Ljava/lang/Class<*>;
           11   13     5                  i  I
           15   19     5                  i  I
           21   23     5                  i  I
           25   27     5                  i  I
           28   45     5                key  Lsun/nio/ch/OptionKey;
           32   33     6                arg  I
           37   45     6                arg  I
           34   37     7                  b  Z
           40   45     7  mayNeedConversion  Z
           43   45     8             isIPv6  Z
    Exceptions:
      throws java.io.IOException
    Signature: (Ljava/io/FileDescriptor;Ljava/net/ProtocolFamily;Ljava/net/SocketOption<*>;Ljava/lang/Object;)V
    MethodParameters:
        Name  Flags
      fd      
      family  
      name    
      value   

  static  getSocketOption(java.io.FileDescriptor, java.net.ProtocolFamily, java.net.SocketOption<?>);
    descriptor: (Ljava/io/FileDescriptor;Ljava/net/ProtocolFamily;Ljava/net/SocketOption;)Ljava/lang/Object;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=4, locals=7, args_size=3
        start local 0 // java.io.FileDescriptor fd
        start local 1 // java.net.ProtocolFamily family
        start local 2 // java.net.SocketOption name
         0: .line 379
            aload 2 /* name */
            invokeinterface java.net.SocketOption.type:()Ljava/lang/Class;
            astore 3 /* type */
        start local 3 // java.lang.Class type
         1: .line 381
            getstatic sun.nio.ch.Net.extendedOptions:Lsun/net/ext/ExtendedSocketOptions;
            aload 2 /* name */
            invokevirtual sun.net.ext.ExtendedSocketOptions.isOptionSupported:(Ljava/net/SocketOption;)Z
            ifeq 3
         2: .line 382
            getstatic sun.nio.ch.Net.extendedOptions:Lsun/net/ext/ExtendedSocketOptions;
            aload 0 /* fd */
            aload 2 /* name */
            invokevirtual sun.net.ext.ExtendedSocketOptions.getOption:(Ljava/io/FileDescriptor;Ljava/net/SocketOption;)Ljava/lang/Object;
            areturn
         3: .line 386
      StackMap locals: java.lang.Class
      StackMap stack:
            aload 3 /* type */
            ldc Ljava/lang/Integer;
            if_acmpeq 5
            aload 3 /* type */
            ldc Ljava/lang/Boolean;
            if_acmpeq 5
         4: .line 387
            new java.lang.AssertionError
            dup
            ldc "Should not reach here"
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
         5: .line 390
      StackMap locals:
      StackMap stack:
            aload 2 /* name */
            aload 1 /* family */
            invokestatic sun.nio.ch.SocketOptionRegistry.findOption:(Ljava/net/SocketOption;Ljava/net/ProtocolFamily;)Lsun/nio/ch/OptionKey;
            astore 4 /* key */
        start local 4 // sun.nio.ch.OptionKey key
         6: .line 391
            aload 4 /* key */
            ifnonnull 8
         7: .line 392
            new java.lang.AssertionError
            dup
            ldc "Option not found"
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
         8: .line 394
      StackMap locals: sun.nio.ch.OptionKey
      StackMap stack:
            aload 1 /* family */
            getstatic sun.nio.ch.Net.UNSPEC:Ljava/net/ProtocolFamily;
            if_acmpne 9
            iconst_1
            goto 10
      StackMap locals:
      StackMap stack:
         9: iconst_0
      StackMap locals:
      StackMap stack: int
        10: istore 5 /* mayNeedConversion */
        start local 5 // boolean mayNeedConversion
        11: .line 395
            aload 0 /* fd */
            iload 5 /* mayNeedConversion */
            aload 4 /* key */
            invokevirtual sun.nio.ch.OptionKey.level:()I
            aload 4 /* key */
            invokevirtual sun.nio.ch.OptionKey.name:()I
            invokestatic sun.nio.ch.Net.getIntOption0:(Ljava/io/FileDescriptor;ZII)I
            istore 6 /* value */
        start local 6 // int value
        12: .line 397
            aload 3 /* type */
            ldc Ljava/lang/Integer;
            if_acmpne 14
        13: .line 398
            iload 6 /* value */
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            areturn
        14: .line 400
      StackMap locals: int int
      StackMap stack:
            iload 6 /* value */
            ifne 15
            getstatic java.lang.Boolean.FALSE:Ljava/lang/Boolean;
            goto 16
      StackMap locals:
      StackMap stack:
        15: getstatic java.lang.Boolean.TRUE:Ljava/lang/Boolean;
      StackMap locals:
      StackMap stack: java.lang.Boolean
        16: areturn
        end local 6 // int value
        end local 5 // boolean mayNeedConversion
        end local 4 // sun.nio.ch.OptionKey key
        end local 3 // java.lang.Class type
        end local 2 // java.net.SocketOption name
        end local 1 // java.net.ProtocolFamily family
        end local 0 // java.io.FileDescriptor fd
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0   17     0                 fd  Ljava/io/FileDescriptor;
            0   17     1             family  Ljava/net/ProtocolFamily;
            0   17     2               name  Ljava/net/SocketOption<*>;
            1   17     3               type  Ljava/lang/Class<*>;
            6   17     4                key  Lsun/nio/ch/OptionKey;
           11   17     5  mayNeedConversion  Z
           12   17     6              value  I
    Exceptions:
      throws java.io.IOException
    Signature: (Ljava/io/FileDescriptor;Ljava/net/ProtocolFamily;Ljava/net/SocketOption<*>;)Ljava/lang/Object;
    MethodParameters:
        Name  Flags
      fd      
      family  
      name    

  public static boolean isFastTcpLoopbackRequested();
    descriptor: ()Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=0
         0: .line 406
            ldc "jdk.net.useFastTcpLoopback"
            ldc "false"
            invokestatic sun.security.action.GetPropertyAction.privilegedGetProperty:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
         1: .line 405
            astore 0 /* loopbackProp */
        start local 0 // java.lang.String loopbackProp
         2: .line 407
            aload 0 /* loopbackProp */
            invokevirtual java.lang.String.isEmpty:()Z
            ifeq 3
            iconst_1
            goto 4
      StackMap locals: java.lang.String
      StackMap stack:
         3: aload 0 /* loopbackProp */
            invokestatic java.lang.Boolean.parseBoolean:(Ljava/lang/String;)Z
      StackMap locals:
      StackMap stack: int
         4: ireturn
        end local 0 // java.lang.String loopbackProp
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            2    5     0  loopbackProp  Ljava/lang/String;

  private static native boolean isIPv6Available0();
    descriptor: ()Z
    flags: (0x010a) ACC_PRIVATE, ACC_STATIC, ACC_NATIVE

  private static native boolean isReusePortAvailable0();
    descriptor: ()Z
    flags: (0x010a) ACC_PRIVATE, ACC_STATIC, ACC_NATIVE

  private static native int isExclusiveBindAvailable();
    descriptor: ()I
    flags: (0x010a) ACC_PRIVATE, ACC_STATIC, ACC_NATIVE

  private static native boolean canIPv6SocketJoinIPv4Group0();
    descriptor: ()Z
    flags: (0x010a) ACC_PRIVATE, ACC_STATIC, ACC_NATIVE

  private static native boolean canJoin6WithIPv4Group0();
    descriptor: ()Z
    flags: (0x010a) ACC_PRIVATE, ACC_STATIC, ACC_NATIVE

  static java.io.FileDescriptor socket(boolean);
    descriptor: (Z)Ljava/io/FileDescriptor;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // boolean stream
         0: .line 426
            getstatic sun.nio.ch.Net.UNSPEC:Ljava/net/ProtocolFamily;
            iload 0 /* stream */
            invokestatic sun.nio.ch.Net.socket:(Ljava/net/ProtocolFamily;Z)Ljava/io/FileDescriptor;
            areturn
        end local 0 // boolean stream
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0  stream  Z
    Exceptions:
      throws java.io.IOException
    MethodParameters:
        Name  Flags
      stream  

  static java.io.FileDescriptor socket(java.net.ProtocolFamily, boolean);
    descriptor: (Ljava/net/ProtocolFamily;Z)Ljava/io/FileDescriptor;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=4, locals=3, args_size=2
        start local 0 // java.net.ProtocolFamily family
        start local 1 // boolean stream
         0: .line 431
            invokestatic sun.nio.ch.Net.isIPv6Available:()Z
            ifeq 3
         1: .line 432
            aload 0 /* family */
            getstatic java.net.StandardProtocolFamily.INET:Ljava/net/StandardProtocolFamily;
            if_acmpeq 3
         2: .line 431
            iconst_1
            goto 4
      StackMap locals:
      StackMap stack:
         3: iconst_0
      StackMap locals:
      StackMap stack: int
         4: istore 2 /* preferIPv6 */
        start local 2 // boolean preferIPv6
         5: .line 433
            iload 2 /* preferIPv6 */
            iload 1 /* stream */
            iconst_0
            getstatic sun.nio.ch.Net.fastLoopback:Z
            invokestatic sun.nio.ch.Net.socket0:(ZZZZ)I
            invokestatic sun.nio.ch.IOUtil.newFD:(I)Ljava/io/FileDescriptor;
            areturn
        end local 2 // boolean preferIPv6
        end local 1 // boolean stream
        end local 0 // java.net.ProtocolFamily family
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    6     0      family  Ljava/net/ProtocolFamily;
            0    6     1      stream  Z
            5    6     2  preferIPv6  Z
    Exceptions:
      throws java.io.IOException
    MethodParameters:
        Name  Flags
      family  
      stream  

  static java.io.FileDescriptor serverSocket(boolean);
    descriptor: (Z)Ljava/io/FileDescriptor;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // boolean stream
         0: .line 437
            invokestatic sun.nio.ch.Net.isIPv6Available:()Z
            iload 0 /* stream */
            iconst_1
            getstatic sun.nio.ch.Net.fastLoopback:Z
            invokestatic sun.nio.ch.Net.socket0:(ZZZZ)I
            invokestatic sun.nio.ch.IOUtil.newFD:(I)Ljava/io/FileDescriptor;
            areturn
        end local 0 // boolean stream
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0  stream  Z
    MethodParameters:
        Name  Flags
      stream  

  private static native int socket0(boolean, boolean, boolean, boolean);
    descriptor: (ZZZZ)I
    flags: (0x010a) ACC_PRIVATE, ACC_STATIC, ACC_NATIVE
    MethodParameters:
              Name  Flags
      preferIPv6    
      stream        
      reuse         
      fastLoopback  

  public static void bind(java.io.FileDescriptor, java.net.InetAddress, int);
    descriptor: (Ljava/io/FileDescriptor;Ljava/net/InetAddress;I)V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // java.io.FileDescriptor fd
        start local 1 // java.net.InetAddress addr
        start local 2 // int port
         0: .line 447
            getstatic sun.nio.ch.Net.UNSPEC:Ljava/net/ProtocolFamily;
            aload 0 /* fd */
            aload 1 /* addr */
            iload 2 /* port */
            invokestatic sun.nio.ch.Net.bind:(Ljava/net/ProtocolFamily;Ljava/io/FileDescriptor;Ljava/net/InetAddress;I)V
         1: .line 448
            return
        end local 2 // int port
        end local 1 // java.net.InetAddress addr
        end local 0 // java.io.FileDescriptor fd
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0    fd  Ljava/io/FileDescriptor;
            0    2     1  addr  Ljava/net/InetAddress;
            0    2     2  port  I
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      fd    
      addr  
      port  

  static void bind(java.net.ProtocolFamily, java.io.FileDescriptor, java.net.InetAddress, int);
    descriptor: (Ljava/net/ProtocolFamily;Ljava/io/FileDescriptor;Ljava/net/InetAddress;I)V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=5, locals=5, args_size=4
        start local 0 // java.net.ProtocolFamily family
        start local 1 // java.io.FileDescriptor fd
        start local 2 // java.net.InetAddress addr
        start local 3 // int port
         0: .line 453
            invokestatic sun.nio.ch.Net.isIPv6Available:()Z
            ifeq 3
         1: .line 454
            aload 0 /* family */
            getstatic java.net.StandardProtocolFamily.INET:Ljava/net/StandardProtocolFamily;
            if_acmpeq 3
         2: .line 453
            iconst_1
            goto 4
      StackMap locals:
      StackMap stack:
         3: iconst_0
      StackMap locals:
      StackMap stack: int
         4: istore 4 /* preferIPv6 */
        start local 4 // boolean preferIPv6
         5: .line 455
            aload 1 /* fd */
            iload 4 /* preferIPv6 */
            getstatic sun.nio.ch.Net.exclusiveBind:Z
            aload 2 /* addr */
            iload 3 /* port */
            invokestatic sun.nio.ch.Net.bind0:(Ljava/io/FileDescriptor;ZZLjava/net/InetAddress;I)V
         6: .line 456
            return
        end local 4 // boolean preferIPv6
        end local 3 // int port
        end local 2 // java.net.InetAddress addr
        end local 1 // java.io.FileDescriptor fd
        end local 0 // java.net.ProtocolFamily family
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    7     0      family  Ljava/net/ProtocolFamily;
            0    7     1          fd  Ljava/io/FileDescriptor;
            0    7     2        addr  Ljava/net/InetAddress;
            0    7     3        port  I
            5    7     4  preferIPv6  Z
    Exceptions:
      throws java.io.IOException
    MethodParameters:
        Name  Flags
      family  
      fd      
      addr    
      port    

  private static native void bind0(java.io.FileDescriptor, boolean, boolean, java.net.InetAddress, int);
    descriptor: (Ljava/io/FileDescriptor;ZZLjava/net/InetAddress;I)V
    flags: (0x010a) ACC_PRIVATE, ACC_STATIC, ACC_NATIVE
    Exceptions:
      throws java.io.IOException
    MethodParameters:
             Name  Flags
      fd           
      preferIPv6   
      useExclBind  
      addr         
      port         

  static native void listen(java.io.FileDescriptor, int);
    descriptor: (Ljava/io/FileDescriptor;I)V
    flags: (0x0108) ACC_STATIC, ACC_NATIVE
    Exceptions:
      throws java.io.IOException
    MethodParameters:
         Name  Flags
      fd       
      backlog  

  static int connect(java.io.FileDescriptor, java.net.InetAddress, int);
    descriptor: (Ljava/io/FileDescriptor;Ljava/net/InetAddress;I)I
    flags: (0x0008) ACC_STATIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // java.io.FileDescriptor fd
        start local 1 // java.net.InetAddress remote
        start local 2 // int remotePort
         0: .line 468
            getstatic sun.nio.ch.Net.UNSPEC:Ljava/net/ProtocolFamily;
            aload 0 /* fd */
            aload 1 /* remote */
            iload 2 /* remotePort */
            invokestatic sun.nio.ch.Net.connect:(Ljava/net/ProtocolFamily;Ljava/io/FileDescriptor;Ljava/net/InetAddress;I)I
            ireturn
        end local 2 // int remotePort
        end local 1 // java.net.InetAddress remote
        end local 0 // java.io.FileDescriptor fd
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    1     0          fd  Ljava/io/FileDescriptor;
            0    1     1      remote  Ljava/net/InetAddress;
            0    1     2  remotePort  I
    Exceptions:
      throws java.io.IOException
    MethodParameters:
            Name  Flags
      fd          
      remote      
      remotePort  

  static int connect(java.net.ProtocolFamily, java.io.FileDescriptor, java.net.InetAddress, int);
    descriptor: (Ljava/net/ProtocolFamily;Ljava/io/FileDescriptor;Ljava/net/InetAddress;I)I
    flags: (0x0008) ACC_STATIC
    Code:
      stack=4, locals=5, args_size=4
        start local 0 // java.net.ProtocolFamily family
        start local 1 // java.io.FileDescriptor fd
        start local 2 // java.net.InetAddress remote
        start local 3 // int remotePort
         0: .line 474
            invokestatic sun.nio.ch.Net.isIPv6Available:()Z
            ifeq 3
         1: .line 475
            aload 0 /* family */
            getstatic java.net.StandardProtocolFamily.INET:Ljava/net/StandardProtocolFamily;
            if_acmpeq 3
         2: .line 474
            iconst_1
            goto 4
      StackMap locals:
      StackMap stack:
         3: iconst_0
      StackMap locals:
      StackMap stack: int
         4: istore 4 /* preferIPv6 */
        start local 4 // boolean preferIPv6
         5: .line 476
            iload 4 /* preferIPv6 */
            aload 1 /* fd */
            aload 2 /* remote */
            iload 3 /* remotePort */
            invokestatic sun.nio.ch.Net.connect0:(ZLjava/io/FileDescriptor;Ljava/net/InetAddress;I)I
            ireturn
        end local 4 // boolean preferIPv6
        end local 3 // int remotePort
        end local 2 // java.net.InetAddress remote
        end local 1 // java.io.FileDescriptor fd
        end local 0 // java.net.ProtocolFamily family
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    6     0      family  Ljava/net/ProtocolFamily;
            0    6     1          fd  Ljava/io/FileDescriptor;
            0    6     2      remote  Ljava/net/InetAddress;
            0    6     3  remotePort  I
            5    6     4  preferIPv6  Z
    Exceptions:
      throws java.io.IOException
    MethodParameters:
            Name  Flags
      family      
      fd          
      remote      
      remotePort  

  private static native int connect0(boolean, java.io.FileDescriptor, java.net.InetAddress, int);
    descriptor: (ZLjava/io/FileDescriptor;Ljava/net/InetAddress;I)I
    flags: (0x010a) ACC_PRIVATE, ACC_STATIC, ACC_NATIVE
    Exceptions:
      throws java.io.IOException
    MethodParameters:
            Name  Flags
      preferIPv6  
      fd          
      remote      
      remotePort  

  static native void shutdown(java.io.FileDescriptor, int);
    descriptor: (Ljava/io/FileDescriptor;I)V
    flags: (0x0108) ACC_STATIC, ACC_NATIVE
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      fd    
      how   

  private static native int localPort(java.io.FileDescriptor);
    descriptor: (Ljava/io/FileDescriptor;)I
    flags: (0x010a) ACC_PRIVATE, ACC_STATIC, ACC_NATIVE
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      fd    

  private static native java.net.InetAddress localInetAddress(java.io.FileDescriptor);
    descriptor: (Ljava/io/FileDescriptor;)Ljava/net/InetAddress;
    flags: (0x010a) ACC_PRIVATE, ACC_STATIC, ACC_NATIVE
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      fd    

  public static java.net.InetSocketAddress localAddress(java.io.FileDescriptor);
    descriptor: (Ljava/io/FileDescriptor;)Ljava/net/InetSocketAddress;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // java.io.FileDescriptor fd
         0: .line 501
            new java.net.InetSocketAddress
            dup
            aload 0 /* fd */
            invokestatic sun.nio.ch.Net.localInetAddress:(Ljava/io/FileDescriptor;)Ljava/net/InetAddress;
            aload 0 /* fd */
            invokestatic sun.nio.ch.Net.localPort:(Ljava/io/FileDescriptor;)I
            invokespecial java.net.InetSocketAddress.<init>:(Ljava/net/InetAddress;I)V
            areturn
        end local 0 // java.io.FileDescriptor fd
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0    fd  Ljava/io/FileDescriptor;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      fd    

  private static native int remotePort(java.io.FileDescriptor);
    descriptor: (Ljava/io/FileDescriptor;)I
    flags: (0x010a) ACC_PRIVATE, ACC_STATIC, ACC_NATIVE
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      fd    

  private static native java.net.InetAddress remoteInetAddress(java.io.FileDescriptor);
    descriptor: (Ljava/io/FileDescriptor;)Ljava/net/InetAddress;
    flags: (0x010a) ACC_PRIVATE, ACC_STATIC, ACC_NATIVE
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      fd    

  static java.net.InetSocketAddress remoteAddress(java.io.FileDescriptor);
    descriptor: (Ljava/io/FileDescriptor;)Ljava/net/InetSocketAddress;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // java.io.FileDescriptor fd
         0: .line 513
            new java.net.InetSocketAddress
            dup
            aload 0 /* fd */
            invokestatic sun.nio.ch.Net.remoteInetAddress:(Ljava/io/FileDescriptor;)Ljava/net/InetAddress;
            aload 0 /* fd */
            invokestatic sun.nio.ch.Net.remotePort:(Ljava/io/FileDescriptor;)I
            invokespecial java.net.InetSocketAddress.<init>:(Ljava/net/InetAddress;I)V
            areturn
        end local 0 // java.io.FileDescriptor fd
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0    fd  Ljava/io/FileDescriptor;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      fd    

  private static native int getIntOption0(java.io.FileDescriptor, boolean, int, int);
    descriptor: (Ljava/io/FileDescriptor;ZII)I
    flags: (0x010a) ACC_PRIVATE, ACC_STATIC, ACC_NATIVE
    Exceptions:
      throws java.io.IOException
    MethodParameters:
                   Name  Flags
      fd                 
      mayNeedConversion  
      level              
      opt                

  private static native void setIntOption0(java.io.FileDescriptor, boolean, int, int, int, boolean);
    descriptor: (Ljava/io/FileDescriptor;ZIIIZ)V
    flags: (0x010a) ACC_PRIVATE, ACC_STATIC, ACC_NATIVE
    Exceptions:
      throws java.io.IOException
    MethodParameters:
                   Name  Flags
      fd                 
      mayNeedConversion  
      level              
      opt                
      arg                
      isIPv6             

  static native int poll(java.io.FileDescriptor, int, long);
    descriptor: (Ljava/io/FileDescriptor;IJ)I
    flags: (0x0108) ACC_STATIC, ACC_NATIVE
    Exceptions:
      throws java.io.IOException
    MethodParameters:
         Name  Flags
      fd       
      events   
      timeout  

  static int join4(java.io.FileDescriptor, int, int, int);
    descriptor: (Ljava/io/FileDescriptor;III)I
    flags: (0x0008) ACC_STATIC
    Code:
      stack=5, locals=4, args_size=4
        start local 0 // java.io.FileDescriptor fd
        start local 1 // int group
        start local 2 // int interf
        start local 3 // int source
         0: .line 536
            iconst_1
            aload 0 /* fd */
            iload 1 /* group */
            iload 2 /* interf */
            iload 3 /* source */
            invokestatic sun.nio.ch.Net.joinOrDrop4:(ZLjava/io/FileDescriptor;III)I
            ireturn
        end local 3 // int source
        end local 2 // int interf
        end local 1 // int group
        end local 0 // java.io.FileDescriptor fd
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0      fd  Ljava/io/FileDescriptor;
            0    1     1   group  I
            0    1     2  interf  I
            0    1     3  source  I
    Exceptions:
      throws java.io.IOException
    MethodParameters:
        Name  Flags
      fd      
      group   
      interf  
      source  

  static void drop4(java.io.FileDescriptor, int, int, int);
    descriptor: (Ljava/io/FileDescriptor;III)V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=5, locals=4, args_size=4
        start local 0 // java.io.FileDescriptor fd
        start local 1 // int group
        start local 2 // int interf
        start local 3 // int source
         0: .line 545
            iconst_0
            aload 0 /* fd */
            iload 1 /* group */
            iload 2 /* interf */
            iload 3 /* source */
            invokestatic sun.nio.ch.Net.joinOrDrop4:(ZLjava/io/FileDescriptor;III)I
            pop
         1: .line 546
            return
        end local 3 // int source
        end local 2 // int interf
        end local 1 // int group
        end local 0 // java.io.FileDescriptor fd
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    2     0      fd  Ljava/io/FileDescriptor;
            0    2     1   group  I
            0    2     2  interf  I
            0    2     3  source  I
    Exceptions:
      throws java.io.IOException
    MethodParameters:
        Name  Flags
      fd      
      group   
      interf  
      source  

  private static native int joinOrDrop4(boolean, java.io.FileDescriptor, int, int, int);
    descriptor: (ZLjava/io/FileDescriptor;III)I
    flags: (0x010a) ACC_PRIVATE, ACC_STATIC, ACC_NATIVE
    Exceptions:
      throws java.io.IOException
    MethodParameters:
        Name  Flags
      join    
      fd      
      group   
      interf  
      source  

  static int block4(java.io.FileDescriptor, int, int, int);
    descriptor: (Ljava/io/FileDescriptor;III)I
    flags: (0x0008) ACC_STATIC
    Code:
      stack=5, locals=4, args_size=4
        start local 0 // java.io.FileDescriptor fd
        start local 1 // int group
        start local 2 // int interf
        start local 3 // int source
         0: .line 557
            iconst_1
            aload 0 /* fd */
            iload 1 /* group */
            iload 2 /* interf */
            iload 3 /* source */
            invokestatic sun.nio.ch.Net.blockOrUnblock4:(ZLjava/io/FileDescriptor;III)I
            ireturn
        end local 3 // int source
        end local 2 // int interf
        end local 1 // int group
        end local 0 // java.io.FileDescriptor fd
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0      fd  Ljava/io/FileDescriptor;
            0    1     1   group  I
            0    1     2  interf  I
            0    1     3  source  I
    Exceptions:
      throws java.io.IOException
    MethodParameters:
        Name  Flags
      fd      
      group   
      interf  
      source  

  static void unblock4(java.io.FileDescriptor, int, int, int);
    descriptor: (Ljava/io/FileDescriptor;III)V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=5, locals=4, args_size=4
        start local 0 // java.io.FileDescriptor fd
        start local 1 // int group
        start local 2 // int interf
        start local 3 // int source
         0: .line 566
            iconst_0
            aload 0 /* fd */
            iload 1 /* group */
            iload 2 /* interf */
            iload 3 /* source */
            invokestatic sun.nio.ch.Net.blockOrUnblock4:(ZLjava/io/FileDescriptor;III)I
            pop
         1: .line 567
            return
        end local 3 // int source
        end local 2 // int interf
        end local 1 // int group
        end local 0 // java.io.FileDescriptor fd
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    2     0      fd  Ljava/io/FileDescriptor;
            0    2     1   group  I
            0    2     2  interf  I
            0    2     3  source  I
    Exceptions:
      throws java.io.IOException
    MethodParameters:
        Name  Flags
      fd      
      group   
      interf  
      source  

  private static native int blockOrUnblock4(boolean, java.io.FileDescriptor, int, int, int);
    descriptor: (ZLjava/io/FileDescriptor;III)I
    flags: (0x010a) ACC_PRIVATE, ACC_STATIC, ACC_NATIVE
    Exceptions:
      throws java.io.IOException
    MethodParameters:
        Name  Flags
      block   
      fd      
      group   
      interf  
      source  

  static int join6(java.io.FileDescriptor, byte[], int, byte[]);
    descriptor: (Ljava/io/FileDescriptor;[BI[B)I
    flags: (0x0008) ACC_STATIC
    Code:
      stack=5, locals=4, args_size=4
        start local 0 // java.io.FileDescriptor fd
        start local 1 // byte[] group
        start local 2 // int index
        start local 3 // byte[] source
         0: .line 579
            iconst_1
            aload 0 /* fd */
            aload 1 /* group */
            iload 2 /* index */
            aload 3 /* source */
            invokestatic sun.nio.ch.Net.joinOrDrop6:(ZLjava/io/FileDescriptor;[BI[B)I
            ireturn
        end local 3 // byte[] source
        end local 2 // int index
        end local 1 // byte[] group
        end local 0 // java.io.FileDescriptor fd
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0      fd  Ljava/io/FileDescriptor;
            0    1     1   group  [B
            0    1     2   index  I
            0    1     3  source  [B
    Exceptions:
      throws java.io.IOException
    MethodParameters:
        Name  Flags
      fd      
      group   
      index   
      source  

  static void drop6(java.io.FileDescriptor, byte[], int, byte[]);
    descriptor: (Ljava/io/FileDescriptor;[BI[B)V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=5, locals=4, args_size=4
        start local 0 // java.io.FileDescriptor fd
        start local 1 // byte[] group
        start local 2 // int index
        start local 3 // byte[] source
         0: .line 588
            iconst_0
            aload 0 /* fd */
            aload 1 /* group */
            iload 2 /* index */
            aload 3 /* source */
            invokestatic sun.nio.ch.Net.joinOrDrop6:(ZLjava/io/FileDescriptor;[BI[B)I
            pop
         1: .line 589
            return
        end local 3 // byte[] source
        end local 2 // int index
        end local 1 // byte[] group
        end local 0 // java.io.FileDescriptor fd
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    2     0      fd  Ljava/io/FileDescriptor;
            0    2     1   group  [B
            0    2     2   index  I
            0    2     3  source  [B
    Exceptions:
      throws java.io.IOException
    MethodParameters:
        Name  Flags
      fd      
      group   
      index   
      source  

  private static native int joinOrDrop6(boolean, java.io.FileDescriptor, byte[], int, byte[]);
    descriptor: (ZLjava/io/FileDescriptor;[BI[B)I
    flags: (0x010a) ACC_PRIVATE, ACC_STATIC, ACC_NATIVE
    Exceptions:
      throws java.io.IOException
    MethodParameters:
        Name  Flags
      join    
      fd      
      group   
      index   
      source  

  static int block6(java.io.FileDescriptor, byte[], int, byte[]);
    descriptor: (Ljava/io/FileDescriptor;[BI[B)I
    flags: (0x0008) ACC_STATIC
    Code:
      stack=5, locals=4, args_size=4
        start local 0 // java.io.FileDescriptor fd
        start local 1 // byte[] group
        start local 2 // int index
        start local 3 // byte[] source
         0: .line 600
            iconst_1
            aload 0 /* fd */
            aload 1 /* group */
            iload 2 /* index */
            aload 3 /* source */
            invokestatic sun.nio.ch.Net.blockOrUnblock6:(ZLjava/io/FileDescriptor;[BI[B)I
            ireturn
        end local 3 // byte[] source
        end local 2 // int index
        end local 1 // byte[] group
        end local 0 // java.io.FileDescriptor fd
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0      fd  Ljava/io/FileDescriptor;
            0    1     1   group  [B
            0    1     2   index  I
            0    1     3  source  [B
    Exceptions:
      throws java.io.IOException
    MethodParameters:
        Name  Flags
      fd      
      group   
      index   
      source  

  static void unblock6(java.io.FileDescriptor, byte[], int, byte[]);
    descriptor: (Ljava/io/FileDescriptor;[BI[B)V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=5, locals=4, args_size=4
        start local 0 // java.io.FileDescriptor fd
        start local 1 // byte[] group
        start local 2 // int index
        start local 3 // byte[] source
         0: .line 609
            iconst_0
            aload 0 /* fd */
            aload 1 /* group */
            iload 2 /* index */
            aload 3 /* source */
            invokestatic sun.nio.ch.Net.blockOrUnblock6:(ZLjava/io/FileDescriptor;[BI[B)I
            pop
         1: .line 610
            return
        end local 3 // byte[] source
        end local 2 // int index
        end local 1 // byte[] group
        end local 0 // java.io.FileDescriptor fd
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    2     0      fd  Ljava/io/FileDescriptor;
            0    2     1   group  [B
            0    2     2   index  I
            0    2     3  source  [B
    Exceptions:
      throws java.io.IOException
    MethodParameters:
        Name  Flags
      fd      
      group   
      index   
      source  

  static native int blockOrUnblock6(boolean, java.io.FileDescriptor, byte[], int, byte[]);
    descriptor: (ZLjava/io/FileDescriptor;[BI[B)I
    flags: (0x0108) ACC_STATIC, ACC_NATIVE
    Exceptions:
      throws java.io.IOException
    MethodParameters:
        Name  Flags
      block   
      fd      
      group   
      index   
      source  

  static native void setInterface4(java.io.FileDescriptor, int);
    descriptor: (Ljava/io/FileDescriptor;I)V
    flags: (0x0108) ACC_STATIC, ACC_NATIVE
    Exceptions:
      throws java.io.IOException
    MethodParameters:
        Name  Flags
      fd      
      interf  

  static native int getInterface4(java.io.FileDescriptor);
    descriptor: (Ljava/io/FileDescriptor;)I
    flags: (0x0108) ACC_STATIC, ACC_NATIVE
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      fd    

  static native void setInterface6(java.io.FileDescriptor, int);
    descriptor: (Ljava/io/FileDescriptor;I)V
    flags: (0x0108) ACC_STATIC, ACC_NATIVE
    Exceptions:
      throws java.io.IOException
    MethodParameters:
       Name  Flags
      fd     
      index  

  static native int getInterface6(java.io.FileDescriptor);
    descriptor: (Ljava/io/FileDescriptor;)I
    flags: (0x0108) ACC_STATIC, ACC_NATIVE
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      fd    

  private static native void initIDs();
    descriptor: ()V
    flags: (0x010a) ACC_PRIVATE, ACC_STATIC, ACC_NATIVE

  static native short pollinValue();
    descriptor: ()S
    flags: (0x0108) ACC_STATIC, ACC_NATIVE

  static native short polloutValue();
    descriptor: ()S
    flags: (0x0108) ACC_STATIC, ACC_NATIVE

  static native short pollerrValue();
    descriptor: ()S
    flags: (0x0108) ACC_STATIC, ACC_NATIVE

  static native short pollhupValue();
    descriptor: ()S
    flags: (0x0108) ACC_STATIC, ACC_NATIVE

  static native short pollnvalValue();
    descriptor: ()S
    flags: (0x0108) ACC_STATIC, ACC_NATIVE

  static native short pollconnValue();
    descriptor: ()S
    flags: (0x0108) ACC_STATIC, ACC_NATIVE
}
SourceFile: "Net.java"
NestMembers:
  sun.nio.ch.Net$1  sun.nio.ch.Net$2
InnerClasses:
  sun.nio.ch.Net$1
  sun.nio.ch.Net$2