public class sun.rmi.server.UnicastServerRef extends sun.rmi.server.UnicastRef implements java.rmi.server.ServerRef, sun.rmi.server.Dispatcher
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: sun.rmi.server.UnicastServerRef
  super_class: sun.rmi.server.UnicastRef
{
  public static final boolean logCalls;
    descriptor: Z
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  public static final sun.rmi.runtime.Log callLog;
    descriptor: Lsun/rmi/runtime/Log;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

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

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

  private boolean forceStubUse;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

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

  private transient java.rmi.server.Skeleton skel;
    descriptor: Ljava/rmi/server/Skeleton;
    flags: (0x0082) ACC_PRIVATE, ACC_TRANSIENT

  private final transient java.io.ObjectInputFilter filter;
    descriptor: Ljava/io/ObjectInputFilter;
    flags: (0x0092) ACC_PRIVATE, ACC_FINAL, ACC_TRANSIENT

  private transient java.util.Map<java.lang.Long, java.lang.reflect.Method> hashToMethod_Map;
    descriptor: Ljava/util/Map;
    flags: (0x0082) ACC_PRIVATE, ACC_TRANSIENT
    Signature: Ljava/util/Map<Ljava/lang/Long;Ljava/lang/reflect/Method;>;

  private static final sun.rmi.server.WeakClassHashMap<java.util.Map<java.lang.Long, java.lang.reflect.Method>> hashToMethod_Maps;
    descriptor: Lsun/rmi/server/WeakClassHashMap;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    Signature: Lsun/rmi/server/WeakClassHashMap<Ljava/util/Map<Ljava/lang/Long;Ljava/lang/reflect/Method;>;>;

  private static final java.util.Map<java.lang.Class<?>, ?> withoutSkeletons;
    descriptor: Ljava/util/Map;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    Signature: Ljava/util/Map<Ljava/lang/Class<*>;*>;

  private final java.util.concurrent.atomic.AtomicInteger methodCallIDCount;
    descriptor: Ljava/util/concurrent/atomic/AtomicInteger;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=3, locals=0, args_size=0
         0: .line 84
            invokedynamic run()Ljava/security/PrivilegedAction;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  ()Ljava/lang/Object;
                  sun/rmi/server/UnicastServerRef.lambda$0()Ljava/lang/Boolean; (6)
                  ()Ljava/lang/Boolean;
         1: .line 83
            invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedAction;)Ljava/lang/Object;
            checkcast java.lang.Boolean
            invokevirtual java.lang.Boolean.booleanValue:()Z
            putstatic sun.rmi.server.UnicastServerRef.logCalls:Z
         2: .line 88
            ldc "sun.rmi.server.call"
            ldc "RMI"
            getstatic sun.rmi.server.UnicastServerRef.logCalls:Z
            invokestatic sun.rmi.runtime.Log.getLog:(Ljava/lang/String;Ljava/lang/String;Z)Lsun/rmi/runtime/Log;
         3: .line 87
            putstatic sun.rmi.server.UnicastServerRef.callLog:Lsun/rmi/runtime/Log;
         4: .line 95
            invokedynamic run()Ljava/security/PrivilegedAction;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  ()Ljava/lang/Object;
                  sun/rmi/server/UnicastServerRef.lambda$1()Ljava/lang/Boolean; (6)
                  ()Ljava/lang/Boolean;
            invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedAction;)Ljava/lang/Object;
            checkcast java.lang.Boolean
            invokevirtual java.lang.Boolean.booleanValue:()Z
         5: .line 94
            putstatic sun.rmi.server.UnicastServerRef.wantExceptionLog:Z
         6: .line 105
            invokedynamic run()Ljava/security/PrivilegedAction;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  ()Ljava/lang/Object;
                  sun/rmi/server/UnicastServerRef.lambda$2()Ljava/lang/Boolean; (6)
                  ()Ljava/lang/Boolean;
            invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedAction;)Ljava/lang/Object;
            checkcast java.lang.Boolean
            invokevirtual java.lang.Boolean.booleanValue:()Z
         7: .line 104
            putstatic sun.rmi.server.UnicastServerRef.suppressStackTraces:Z
         8: .line 125
            new sun.rmi.server.UnicastServerRef$HashToMethod_Maps
            dup
            invokespecial sun.rmi.server.UnicastServerRef$HashToMethod_Maps.<init>:()V
         9: .line 124
            putstatic sun.rmi.server.UnicastServerRef.hashToMethod_Maps:Lsun/rmi/server/WeakClassHashMap;
        10: .line 129
            new java.util.WeakHashMap
            dup
            invokespecial java.util.WeakHashMap.<init>:()V
            invokestatic java.util.Collections.synchronizedMap:(Ljava/util/Map;)Ljava/util/Map;
        11: .line 128
            putstatic sun.rmi.server.UnicastServerRef.withoutSkeletons:Ljava/util/Map;
        12: .line 129
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // sun.rmi.server.UnicastServerRef this
         0: .line 137
            aload 0 /* this */
            invokespecial sun.rmi.server.UnicastRef.<init>:()V
         1: .line 98
            aload 0 /* this */
            iconst_0
            putfield sun.rmi.server.UnicastServerRef.forceStubUse:Z
         2: .line 118
            aload 0 /* this */
            aconst_null
            putfield sun.rmi.server.UnicastServerRef.hashToMethod_Map:Ljava/util/Map;
         3: .line 131
            aload 0 /* this */
            new java.util.concurrent.atomic.AtomicInteger
            dup
            iconst_0
            invokespecial java.util.concurrent.atomic.AtomicInteger.<init>:(I)V
            putfield sun.rmi.server.UnicastServerRef.methodCallIDCount:Ljava/util/concurrent/atomic/AtomicInteger;
         4: .line 138
            aload 0 /* this */
            aconst_null
            putfield sun.rmi.server.UnicastServerRef.filter:Ljava/io/ObjectInputFilter;
         5: .line 139
            return
        end local 0 // sun.rmi.server.UnicastServerRef this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0  this  Lsun/rmi/server/UnicastServerRef;

  public void <init>(sun.rmi.transport.LiveRef);
    descriptor: (Lsun/rmi/transport/LiveRef;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // sun.rmi.server.UnicastServerRef this
        start local 1 // sun.rmi.transport.LiveRef ref
         0: .line 147
            aload 0 /* this */
            aload 1 /* ref */
            invokespecial sun.rmi.server.UnicastRef.<init>:(Lsun/rmi/transport/LiveRef;)V
         1: .line 98
            aload 0 /* this */
            iconst_0
            putfield sun.rmi.server.UnicastServerRef.forceStubUse:Z
         2: .line 118
            aload 0 /* this */
            aconst_null
            putfield sun.rmi.server.UnicastServerRef.hashToMethod_Map:Ljava/util/Map;
         3: .line 131
            aload 0 /* this */
            new java.util.concurrent.atomic.AtomicInteger
            dup
            iconst_0
            invokespecial java.util.concurrent.atomic.AtomicInteger.<init>:(I)V
            putfield sun.rmi.server.UnicastServerRef.methodCallIDCount:Ljava/util/concurrent/atomic/AtomicInteger;
         4: .line 148
            aload 0 /* this */
            aconst_null
            putfield sun.rmi.server.UnicastServerRef.filter:Ljava/io/ObjectInputFilter;
         5: .line 149
            return
        end local 1 // sun.rmi.transport.LiveRef ref
        end local 0 // sun.rmi.server.UnicastServerRef this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0  this  Lsun/rmi/server/UnicastServerRef;
            0    6     1   ref  Lsun/rmi/transport/LiveRef;
    MethodParameters:
      Name  Flags
      ref   

  public void <init>(sun.rmi.transport.LiveRef, java.io.ObjectInputFilter);
    descriptor: (Lsun/rmi/transport/LiveRef;Ljava/io/ObjectInputFilter;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // sun.rmi.server.UnicastServerRef this
        start local 1 // sun.rmi.transport.LiveRef ref
        start local 2 // java.io.ObjectInputFilter filter
         0: .line 156
            aload 0 /* this */
            aload 1 /* ref */
            invokespecial sun.rmi.server.UnicastRef.<init>:(Lsun/rmi/transport/LiveRef;)V
         1: .line 98
            aload 0 /* this */
            iconst_0
            putfield sun.rmi.server.UnicastServerRef.forceStubUse:Z
         2: .line 118
            aload 0 /* this */
            aconst_null
            putfield sun.rmi.server.UnicastServerRef.hashToMethod_Map:Ljava/util/Map;
         3: .line 131
            aload 0 /* this */
            new java.util.concurrent.atomic.AtomicInteger
            dup
            iconst_0
            invokespecial java.util.concurrent.atomic.AtomicInteger.<init>:(I)V
            putfield sun.rmi.server.UnicastServerRef.methodCallIDCount:Ljava/util/concurrent/atomic/AtomicInteger;
         4: .line 157
            aload 0 /* this */
            aload 2 /* filter */
            putfield sun.rmi.server.UnicastServerRef.filter:Ljava/io/ObjectInputFilter;
         5: .line 158
            return
        end local 2 // java.io.ObjectInputFilter filter
        end local 1 // sun.rmi.transport.LiveRef ref
        end local 0 // sun.rmi.server.UnicastServerRef this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    6     0    this  Lsun/rmi/server/UnicastServerRef;
            0    6     1     ref  Lsun/rmi/transport/LiveRef;
            0    6     2  filter  Ljava/io/ObjectInputFilter;
    MethodParameters:
        Name  Flags
      ref     
      filter  

  public void <init>(int);
    descriptor: (I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // sun.rmi.server.UnicastServerRef this
        start local 1 // int port
         0: .line 165
            aload 0 /* this */
            new sun.rmi.transport.LiveRef
            dup
            iload 1 /* port */
            invokespecial sun.rmi.transport.LiveRef.<init>:(I)V
            invokespecial sun.rmi.server.UnicastRef.<init>:(Lsun/rmi/transport/LiveRef;)V
         1: .line 98
            aload 0 /* this */
            iconst_0
            putfield sun.rmi.server.UnicastServerRef.forceStubUse:Z
         2: .line 118
            aload 0 /* this */
            aconst_null
            putfield sun.rmi.server.UnicastServerRef.hashToMethod_Map:Ljava/util/Map;
         3: .line 131
            aload 0 /* this */
            new java.util.concurrent.atomic.AtomicInteger
            dup
            iconst_0
            invokespecial java.util.concurrent.atomic.AtomicInteger.<init>:(I)V
            putfield sun.rmi.server.UnicastServerRef.methodCallIDCount:Ljava/util/concurrent/atomic/AtomicInteger;
         4: .line 166
            aload 0 /* this */
            aconst_null
            putfield sun.rmi.server.UnicastServerRef.filter:Ljava/io/ObjectInputFilter;
         5: .line 167
            return
        end local 1 // int port
        end local 0 // sun.rmi.server.UnicastServerRef this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0  this  Lsun/rmi/server/UnicastServerRef;
            0    6     1  port  I
    MethodParameters:
      Name  Flags
      port  

  public void <init>(boolean);
    descriptor: (Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // sun.rmi.server.UnicastServerRef this
        start local 1 // boolean forceStubUse
         0: .line 183
            aload 0 /* this */
            iconst_0
            invokespecial sun.rmi.server.UnicastServerRef.<init>:(I)V
         1: .line 184
            aload 0 /* this */
            iload 1 /* forceStubUse */
            putfield sun.rmi.server.UnicastServerRef.forceStubUse:Z
         2: .line 185
            return
        end local 1 // boolean forceStubUse
        end local 0 // sun.rmi.server.UnicastServerRef this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    3     0          this  Lsun/rmi/server/UnicastServerRef;
            0    3     1  forceStubUse  Z
    MethodParameters:
              Name  Flags
      forceStubUse  

  public java.rmi.server.RemoteStub exportObject(java.rmi.Remote, java.lang.Object);
    descriptor: (Ljava/rmi/Remote;Ljava/lang/Object;)Ljava/rmi/server/RemoteStub;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // sun.rmi.server.UnicastServerRef this
        start local 1 // java.rmi.Remote impl
        start local 2 // java.lang.Object data
         0: .line 204
            aload 0 /* this */
            iconst_1
            putfield sun.rmi.server.UnicastServerRef.forceStubUse:Z
         1: .line 205
            aload 0 /* this */
            aload 1 /* impl */
            aload 2 /* data */
            iconst_0
            invokevirtual sun.rmi.server.UnicastServerRef.exportObject:(Ljava/rmi/Remote;Ljava/lang/Object;Z)Ljava/rmi/Remote;
            checkcast java.rmi.server.RemoteStub
            areturn
        end local 2 // java.lang.Object data
        end local 1 // java.rmi.Remote impl
        end local 0 // sun.rmi.server.UnicastServerRef this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lsun/rmi/server/UnicastServerRef;
            0    2     1  impl  Ljava/rmi/Remote;
            0    2     2  data  Ljava/lang/Object;
    Exceptions:
      throws java.rmi.RemoteException
    MethodParameters:
      Name  Flags
      impl  
      data  

  public java.rmi.Remote exportObject(java.rmi.Remote, java.lang.Object, boolean);
    descriptor: (Ljava/rmi/Remote;Ljava/lang/Object;Z)Ljava/rmi/Remote;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=7, args_size=4
        start local 0 // sun.rmi.server.UnicastServerRef this
        start local 1 // java.rmi.Remote impl
        start local 2 // java.lang.Object data
        start local 3 // boolean permanent
         0: .line 219
            aload 1 /* impl */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            astore 4 /* implClass */
        start local 4 // java.lang.Class implClass
         1: .line 223
            aload 4 /* implClass */
            aload 0 /* this */
            invokevirtual sun.rmi.server.UnicastServerRef.getClientRef:()Ljava/rmi/server/RemoteRef;
            aload 0 /* this */
            getfield sun.rmi.server.UnicastServerRef.forceStubUse:Z
            invokestatic sun.rmi.server.Util.createProxy:(Ljava/lang/Class;Ljava/rmi/server/RemoteRef;Z)Ljava/rmi/Remote;
            astore 5 /* stub */
        start local 5 // java.rmi.Remote stub
         2: .line 224
            goto 7
        end local 5 // java.rmi.Remote stub
      StackMap locals: sun.rmi.server.UnicastServerRef java.rmi.Remote java.lang.Object int java.lang.Class
      StackMap stack: java.lang.IllegalArgumentException
         3: astore 6 /* e */
        start local 6 // java.lang.IllegalArgumentException e
         4: .line 225
            new java.rmi.server.ExportException
            dup
         5: .line 226
            ldc "remote object implements illegal remote interface"
            aload 6 /* e */
         6: .line 225
            invokespecial java.rmi.server.ExportException.<init>:(Ljava/lang/String;Ljava/lang/Exception;)V
            athrow
        end local 6 // java.lang.IllegalArgumentException e
        start local 5 // java.rmi.Remote stub
         7: .line 228
      StackMap locals: java.rmi.Remote
      StackMap stack:
            aload 5 /* stub */
            instanceof java.rmi.server.RemoteStub
            ifeq 9
         8: .line 229
            aload 0 /* this */
            aload 1 /* impl */
            invokevirtual sun.rmi.server.UnicastServerRef.setSkeleton:(Ljava/rmi/Remote;)V
         9: .line 233
      StackMap locals:
      StackMap stack:
            new sun.rmi.transport.Target
            dup
            aload 1 /* impl */
            aload 0 /* this */
            aload 5 /* stub */
            aload 0 /* this */
            getfield sun.rmi.server.UnicastServerRef.ref:Lsun/rmi/transport/LiveRef;
            invokevirtual sun.rmi.transport.LiveRef.getObjID:()Ljava/rmi/server/ObjID;
            iload 3 /* permanent */
            invokespecial sun.rmi.transport.Target.<init>:(Ljava/rmi/Remote;Lsun/rmi/server/Dispatcher;Ljava/rmi/Remote;Ljava/rmi/server/ObjID;Z)V
        10: .line 232
            astore 6 /* target */
        start local 6 // sun.rmi.transport.Target target
        11: .line 234
            aload 0 /* this */
            getfield sun.rmi.server.UnicastServerRef.ref:Lsun/rmi/transport/LiveRef;
            aload 6 /* target */
            invokevirtual sun.rmi.transport.LiveRef.exportObject:(Lsun/rmi/transport/Target;)V
        12: .line 235
            aload 0 /* this */
            getstatic sun.rmi.server.UnicastServerRef.hashToMethod_Maps:Lsun/rmi/server/WeakClassHashMap;
            aload 4 /* implClass */
            invokevirtual sun.rmi.server.WeakClassHashMap.get:(Ljava/lang/Class;)Ljava/lang/Object;
            checkcast java.util.Map
            putfield sun.rmi.server.UnicastServerRef.hashToMethod_Map:Ljava/util/Map;
        13: .line 236
            aload 5 /* stub */
            areturn
        end local 6 // sun.rmi.transport.Target target
        end local 5 // java.rmi.Remote stub
        end local 4 // java.lang.Class implClass
        end local 3 // boolean permanent
        end local 2 // java.lang.Object data
        end local 1 // java.rmi.Remote impl
        end local 0 // sun.rmi.server.UnicastServerRef this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   14     0       this  Lsun/rmi/server/UnicastServerRef;
            0   14     1       impl  Ljava/rmi/Remote;
            0   14     2       data  Ljava/lang/Object;
            0   14     3  permanent  Z
            1   14     4  implClass  Ljava/lang/Class<*>;
            2    3     5       stub  Ljava/rmi/Remote;
            7   14     5       stub  Ljava/rmi/Remote;
            4    7     6          e  Ljava/lang/IllegalArgumentException;
           11   14     6     target  Lsun/rmi/transport/Target;
      Exception table:
        from    to  target  type
           1     2       3  Class java.lang.IllegalArgumentException
    Exceptions:
      throws java.rmi.RemoteException
    MethodParameters:
           Name  Flags
      impl       
      data       
      permanent  

  public java.lang.String getClientHost();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.rmi.server.UnicastServerRef this
         0: .line 247
            invokestatic sun.rmi.transport.tcp.TCPTransport.getClientHost:()Ljava/lang/String;
            areturn
        end local 0 // sun.rmi.server.UnicastServerRef this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/rmi/server/UnicastServerRef;
    Exceptions:
      throws java.rmi.server.ServerNotActiveException

  public void setSkeleton(java.rmi.Remote);
    descriptor: (Ljava/rmi/Remote;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // sun.rmi.server.UnicastServerRef this
        start local 1 // java.rmi.Remote impl
         0: .line 254
            getstatic sun.rmi.server.UnicastServerRef.withoutSkeletons:Ljava/util/Map;
            aload 1 /* impl */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            invokeinterface java.util.Map.containsKey:(Ljava/lang/Object;)Z
            ifne 5
         1: .line 256
            aload 0 /* this */
            aload 1 /* impl */
            invokestatic sun.rmi.server.Util.createSkeleton:(Ljava/rmi/Remote;)Ljava/rmi/server/Skeleton;
            putfield sun.rmi.server.UnicastServerRef.skel:Ljava/rmi/server/Skeleton;
         2: .line 257
            goto 5
      StackMap locals:
      StackMap stack: java.rmi.server.SkeletonNotFoundException
         3: pop
         4: .line 264
            getstatic sun.rmi.server.UnicastServerRef.withoutSkeletons:Ljava/util/Map;
            aload 1 /* impl */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            aconst_null
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         5: .line 267
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.rmi.Remote impl
        end local 0 // sun.rmi.server.UnicastServerRef this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0  this  Lsun/rmi/server/UnicastServerRef;
            0    6     1  impl  Ljava/rmi/Remote;
      Exception table:
        from    to  target  type
           1     2       3  Class java.rmi.server.SkeletonNotFoundException
    Exceptions:
      throws java.rmi.RemoteException
    MethodParameters:
      Name  Flags
      impl  

  public void dispatch(java.rmi.Remote, java.rmi.server.RemoteCall);
    descriptor: (Ljava/rmi/Remote;Ljava/rmi/server/RemoteCall;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=15, args_size=3
        start local 0 // sun.rmi.server.UnicastServerRef this
        start local 1 // java.rmi.Remote obj
        start local 2 // java.rmi.server.RemoteCall call
         0: .line 290
            aload 2 /* call */
            invokeinterface java.rmi.server.RemoteCall.getInputStream:()Ljava/io/ObjectInput;
            astore 6 /* in */
        start local 6 // java.io.ObjectInput in
         1: .line 291
            aload 6 /* in */
            invokeinterface java.io.ObjectInput.readInt:()I
            istore 3 /* num */
        start local 3 // int num
         2: .line 292
            goto 7
        end local 6 // java.io.ObjectInput in
        end local 3 // int num
      StackMap locals:
      StackMap stack: java.lang.Exception
         3: astore 7 /* readEx */
        start local 7 // java.lang.Exception readEx
         4: .line 293
            new java.rmi.UnmarshalException
            dup
            ldc "error unmarshalling call header"
         5: .line 294
            aload 7 /* readEx */
         6: .line 293
            invokespecial java.rmi.UnmarshalException.<init>:(Ljava/lang/String;Ljava/lang/Exception;)V
            athrow
        end local 7 // java.lang.Exception readEx
        start local 3 // int num
        start local 6 // java.io.ObjectInput in
         7: .line 296
      StackMap locals: sun.rmi.server.UnicastServerRef java.rmi.Remote java.rmi.server.RemoteCall int top top java.io.ObjectInput
      StackMap stack:
            aload 0 /* this */
            getfield sun.rmi.server.UnicastServerRef.skel:Ljava/rmi/server/Skeleton;
            ifnull 12
         8: .line 298
            aload 0 /* this */
            aload 1 /* obj */
            aload 2 /* call */
            iload 3 /* num */
            invokevirtual sun.rmi.server.UnicastServerRef.oldDispatch:(Ljava/rmi/Remote;Ljava/rmi/server/RemoteCall;I)V
         9: .line 406
            aload 2 /* call */
            invokeinterface java.rmi.server.RemoteCall.releaseInputStream:()V
        10: .line 407
            aload 2 /* call */
            invokeinterface java.rmi.server.RemoteCall.releaseOutputStream:()V
        11: .line 299
            return
        12: .line 301
      StackMap locals:
      StackMap stack:
            iload 3 /* num */
            iflt 16
        13: .line 302
            new java.rmi.UnmarshalException
            dup
        14: .line 303
            ldc "skeleton class not found but required for client version"
        15: .line 302
            invokespecial java.rmi.UnmarshalException.<init>:(Ljava/lang/String;)V
            athrow
        16: .line 306
      StackMap locals:
      StackMap stack:
            aload 6 /* in */
            invokeinterface java.io.ObjectInput.readLong:()J
            lstore 4 /* op */
        start local 4 // long op
        17: .line 307
            goto 22
        end local 4 // long op
      StackMap locals:
      StackMap stack: java.lang.Exception
        18: astore 7 /* readEx */
        start local 7 // java.lang.Exception readEx
        19: .line 308
            new java.rmi.UnmarshalException
            dup
            ldc "error unmarshalling call header"
        20: .line 309
            aload 7 /* readEx */
        21: .line 308
            invokespecial java.rmi.UnmarshalException.<init>:(Ljava/lang/String;Ljava/lang/Exception;)V
            athrow
        end local 7 // java.lang.Exception readEx
        start local 4 // long op
        22: .line 319
      StackMap locals: sun.rmi.server.UnicastServerRef java.rmi.Remote java.rmi.server.RemoteCall int long java.io.ObjectInput
      StackMap stack:
            aload 6 /* in */
            checkcast sun.rmi.server.MarshalInputStream
            astore 7 /* marshalStream */
        start local 7 // sun.rmi.server.MarshalInputStream marshalStream
        23: .line 320
            aload 7 /* marshalStream */
            invokevirtual sun.rmi.server.MarshalInputStream.skipDefaultResolveClass:()V
        24: .line 322
            aload 0 /* this */
            getfield sun.rmi.server.UnicastServerRef.hashToMethod_Map:Ljava/util/Map;
            lload 4 /* op */
            invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.reflect.Method
            astore 8 /* method */
        start local 8 // java.lang.reflect.Method method
        25: .line 323
            aload 8 /* method */
            ifnonnull 27
        26: .line 324
            new java.rmi.UnmarshalException
            dup
            ldc "unrecognized method hash: method not supported by remote object"
            invokespecial java.rmi.UnmarshalException.<init>:(Ljava/lang/String;)V
            athrow
        27: .line 329
      StackMap locals: sun.rmi.server.MarshalInputStream java.lang.reflect.Method
      StackMap stack:
            aload 0 /* this */
            aload 1 /* obj */
            aload 8 /* method */
            invokevirtual sun.rmi.server.UnicastServerRef.logCall:(Ljava/rmi/Remote;Ljava/lang/Object;)V
        28: .line 332
            aload 8 /* method */
            invokevirtual java.lang.reflect.Method.getParameterTypes:()[Ljava/lang/Class;
            astore 9 /* types */
        start local 9 // java.lang.Class[] types
        29: .line 333
            aload 9 /* types */
            arraylength
            anewarray java.lang.Object
            astore 10 /* params */
        start local 10 // java.lang.Object[] params
        30: .line 336
            aload 0 /* this */
            aload 6 /* in */
            invokevirtual sun.rmi.server.UnicastServerRef.unmarshalCustomCallData:(Ljava/io/ObjectInput;)V
        31: .line 338
            iconst_0
            istore 11 /* i */
        start local 11 // int i
        32: goto 35
        33: .line 339
      StackMap locals: java.lang.Class[] java.lang.Object[] int
      StackMap stack:
            aload 10 /* params */
            iload 11 /* i */
            aload 9 /* types */
            iload 11 /* i */
            aaload
            aload 6 /* in */
            invokestatic sun.rmi.server.UnicastServerRef.unmarshalValue:(Ljava/lang/Class;Ljava/io/ObjectInput;)Ljava/lang/Object;
            aastore
        34: .line 338
            iinc 11 /* i */ 1
      StackMap locals:
      StackMap stack:
        35: iload 11 /* i */
            aload 9 /* types */
            arraylength
            if_icmplt 33
        end local 11 // int i
        36: .line 342
            goto 48
      StackMap locals: sun.rmi.server.UnicastServerRef java.rmi.Remote java.rmi.server.RemoteCall int long java.io.ObjectInput sun.rmi.server.MarshalInputStream java.lang.reflect.Method java.lang.Class[] java.lang.Object[]
      StackMap stack: java.rmi.AccessException
        37: astore 11 /* aex */
        start local 11 // java.rmi.AccessException aex
        38: .line 345
            aload 2 /* call */
            checkcast sun.rmi.transport.StreamRemoteCall
            invokevirtual sun.rmi.transport.StreamRemoteCall.discardPendingRefs:()V
        39: .line 346
            aload 11 /* aex */
            athrow
        end local 11 // java.rmi.AccessException aex
        40: .line 347
      StackMap locals:
      StackMap stack: java.lang.Exception
            astore 11 /* e */
        start local 11 // java.lang.Exception e
        41: .line 349
            aload 2 /* call */
            checkcast sun.rmi.transport.StreamRemoteCall
            invokevirtual sun.rmi.transport.StreamRemoteCall.discardPendingRefs:()V
        42: .line 350
            new java.rmi.UnmarshalException
            dup
        43: .line 351
            ldc "error unmarshalling arguments"
            aload 11 /* e */
        44: .line 350
            invokespecial java.rmi.UnmarshalException.<init>:(Ljava/lang/String;Ljava/lang/Exception;)V
            athrow
        end local 11 // java.lang.Exception e
        45: .line 352
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 12
        46: .line 353
            aload 2 /* call */
            invokeinterface java.rmi.server.RemoteCall.releaseInputStream:()V
        47: .line 354
            aload 12
            athrow
        48: .line 353
      StackMap locals:
      StackMap stack:
            aload 2 /* call */
            invokeinterface java.rmi.server.RemoteCall.releaseInputStream:()V
        49: .line 359
            aload 8 /* method */
            aload 1 /* obj */
            aload 10 /* params */
            invokevirtual java.lang.reflect.Method.invoke:(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;
            astore 11 /* result */
        start local 11 // java.lang.Object result
        50: .line 360
            goto 53
        end local 11 // java.lang.Object result
      StackMap locals:
      StackMap stack: java.lang.reflect.InvocationTargetException
        51: astore 12 /* e */
        start local 12 // java.lang.reflect.InvocationTargetException e
        52: .line 361
            aload 12 /* e */
            invokevirtual java.lang.reflect.InvocationTargetException.getTargetException:()Ljava/lang/Throwable;
            athrow
        end local 12 // java.lang.reflect.InvocationTargetException e
        start local 11 // java.lang.Object result
        53: .line 366
      StackMap locals: java.lang.Object
      StackMap stack:
            aload 2 /* call */
            iconst_1
            invokeinterface java.rmi.server.RemoteCall.getResultStream:(Z)Ljava/io/ObjectOutput;
            astore 12 /* out */
        start local 12 // java.io.ObjectOutput out
        54: .line 367
            aload 8 /* method */
            invokevirtual java.lang.reflect.Method.getReturnType:()Ljava/lang/Class;
            astore 13 /* rtype */
        start local 13 // java.lang.Class rtype
        55: .line 368
            aload 13 /* rtype */
            getstatic java.lang.Void.TYPE:Ljava/lang/Class;
            if_acmpeq 85
        56: .line 369
            aload 13 /* rtype */
            aload 11 /* result */
            aload 12 /* out */
            invokestatic sun.rmi.server.UnicastServerRef.marshalValue:(Ljava/lang/Class;Ljava/lang/Object;Ljava/io/ObjectOutput;)V
        end local 13 // java.lang.Class rtype
        end local 12 // java.io.ObjectOutput out
        57: .line 371
            goto 85
      StackMap locals:
      StackMap stack: java.io.IOException
        58: astore 12 /* ex */
        start local 12 // java.io.IOException ex
        59: .line 372
            new java.rmi.MarshalException
            dup
            ldc "error marshalling return"
            aload 12 /* ex */
            invokespecial java.rmi.MarshalException.<init>:(Ljava/lang/String;Ljava/lang/Exception;)V
            athrow
        end local 12 // java.io.IOException ex
        end local 11 // java.lang.Object result
        end local 10 // java.lang.Object[] params
        end local 9 // java.lang.Class[] types
        end local 8 // java.lang.reflect.Method method
        end local 7 // sun.rmi.server.MarshalInputStream marshalStream
        end local 6 // java.io.ObjectInput in
        end local 4 // long op
        end local 3 // int num
        60: .line 382
      StackMap locals: sun.rmi.server.UnicastServerRef java.rmi.Remote java.rmi.server.RemoteCall
      StackMap stack: java.lang.Throwable
            astore 6 /* e */
        start local 6 // java.lang.Throwable e
        61: .line 383
            aload 6 /* e */
            astore 7 /* origEx */
        start local 7 // java.lang.Throwable origEx
        62: .line 384
            aload 0 /* this */
            aload 6 /* e */
            invokevirtual sun.rmi.server.UnicastServerRef.logCallException:(Ljava/lang/Throwable;)V
        63: .line 386
            aload 2 /* call */
            iconst_0
            invokeinterface java.rmi.server.RemoteCall.getResultStream:(Z)Ljava/io/ObjectOutput;
            astore 8 /* out */
        start local 8 // java.io.ObjectOutput out
        64: .line 387
            aload 6 /* e */
            instanceof java.lang.Error
            ifeq 69
        65: .line 388
            new java.rmi.ServerError
            dup
        66: .line 389
            ldc "Error occurred in server thread"
            aload 6 /* e */
            checkcast java.lang.Error
        67: .line 388
            invokespecial java.rmi.ServerError.<init>:(Ljava/lang/String;Ljava/lang/Error;)V
            astore 6 /* e */
        68: .line 390
            goto 74
      StackMap locals: sun.rmi.server.UnicastServerRef java.rmi.Remote java.rmi.server.RemoteCall top top top java.lang.Throwable java.lang.Throwable java.io.ObjectOutput
      StackMap stack:
        69: aload 6 /* e */
            instanceof java.rmi.RemoteException
            ifeq 74
        70: .line 391
            new java.rmi.ServerException
            dup
        71: .line 392
            ldc "RemoteException occurred in server thread"
        72: .line 393
            aload 6 /* e */
            checkcast java.lang.Exception
        73: .line 391
            invokespecial java.rmi.ServerException.<init>:(Ljava/lang/String;Ljava/lang/Exception;)V
            astore 6 /* e */
        74: .line 395
      StackMap locals:
      StackMap stack:
            getstatic sun.rmi.server.UnicastServerRef.suppressStackTraces:Z
            ifeq 76
        75: .line 396
            aload 6 /* e */
            invokestatic sun.rmi.server.UnicastServerRef.clearStackTraces:(Ljava/lang/Throwable;)V
        76: .line 398
      StackMap locals:
      StackMap stack:
            aload 8 /* out */
            aload 6 /* e */
            invokeinterface java.io.ObjectOutput.writeObject:(Ljava/lang/Object;)V
        77: .line 402
            aload 7 /* origEx */
            instanceof java.rmi.AccessException
            ifeq 79
        78: .line 403
            new java.io.IOException
            dup
            ldc "Connection is not reusable"
            aload 7 /* origEx */
            invokespecial java.io.IOException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
            athrow
        end local 8 // java.io.ObjectOutput out
        end local 7 // java.lang.Throwable origEx
        end local 6 // java.lang.Throwable e
        79: .line 406
      StackMap locals: sun.rmi.server.UnicastServerRef java.rmi.Remote java.rmi.server.RemoteCall
      StackMap stack:
            aload 2 /* call */
            invokeinterface java.rmi.server.RemoteCall.releaseInputStream:()V
        80: .line 407
            aload 2 /* call */
            invokeinterface java.rmi.server.RemoteCall.releaseOutputStream:()V
            goto 87
        81: .line 405
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 14
        82: .line 406
            aload 2 /* call */
            invokeinterface java.rmi.server.RemoteCall.releaseInputStream:()V
        83: .line 407
            aload 2 /* call */
            invokeinterface java.rmi.server.RemoteCall.releaseOutputStream:()V
        84: .line 408
            aload 14
            athrow
        85: .line 406
      StackMap locals:
      StackMap stack:
            aload 2 /* call */
            invokeinterface java.rmi.server.RemoteCall.releaseInputStream:()V
        86: .line 407
            aload 2 /* call */
            invokeinterface java.rmi.server.RemoteCall.releaseOutputStream:()V
        87: .line 409
      StackMap locals:
      StackMap stack:
            return
        end local 2 // java.rmi.server.RemoteCall call
        end local 1 // java.rmi.Remote obj
        end local 0 // sun.rmi.server.UnicastServerRef this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   88     0           this  Lsun/rmi/server/UnicastServerRef;
            0   88     1            obj  Ljava/rmi/Remote;
            0   88     2           call  Ljava/rmi/server/RemoteCall;
            2    3     3            num  I
            7   60     3            num  I
           17   18     4             op  J
           22   60     4             op  J
            1    3     6             in  Ljava/io/ObjectInput;
            7   60     6             in  Ljava/io/ObjectInput;
            4    7     7         readEx  Ljava/lang/Exception;
           19   22     7         readEx  Ljava/lang/Exception;
           23   60     7  marshalStream  Lsun/rmi/server/MarshalInputStream;
           25   60     8         method  Ljava/lang/reflect/Method;
           29   60     9          types  [Ljava/lang/Class;
           30   60    10         params  [Ljava/lang/Object;
           32   36    11              i  I
           38   40    11            aex  Ljava/rmi/AccessException;
           41   45    11              e  Ljava/lang/Exception;
           50   51    11         result  Ljava/lang/Object;
           53   60    11         result  Ljava/lang/Object;
           52   53    12              e  Ljava/lang/reflect/InvocationTargetException;
           54   57    12            out  Ljava/io/ObjectOutput;
           55   57    13          rtype  Ljava/lang/Class<*>;
           59   60    12             ex  Ljava/io/IOException;
           61   79     6              e  Ljava/lang/Throwable;
           62   79     7         origEx  Ljava/lang/Throwable;
           64   79     8            out  Ljava/io/ObjectOutput;
      Exception table:
        from    to  target  type
           0     2       3  Class java.lang.Exception
          16    17      18  Class java.lang.Exception
          30    36      37  Class java.rmi.AccessException
          30    36      40  Class java.io.IOException
          30    36      40  Class java.lang.ClassNotFoundException
          30    45      45  any
          49    50      51  Class java.lang.reflect.InvocationTargetException
          53    57      58  Class java.io.IOException
           0     9      60  Class java.lang.Throwable
          12    60      60  Class java.lang.Throwable
           0     9      81  any
          12    79      81  any
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      obj   
      call  

  protected void unmarshalCustomCallData(java.io.ObjectInput);
    descriptor: (Ljava/io/ObjectInput;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // sun.rmi.server.UnicastServerRef this
        start local 1 // java.io.ObjectInput in
         0: .line 417
            aload 0 /* this */
            getfield sun.rmi.server.UnicastServerRef.filter:Ljava/io/ObjectInputFilter;
            ifnull 4
         1: .line 418
            aload 1 /* in */
            instanceof java.io.ObjectInputStream
            ifeq 4
         2: .line 420
            aload 1 /* in */
            checkcast java.io.ObjectInputStream
            astore 2 /* ois */
        start local 2 // java.io.ObjectInputStream ois
         3: .line 422
            aload 0 /* this */
            aload 2 /* ois */
            invokedynamic run(Lsun/rmi/server/UnicastServerRef;Ljava/io/ObjectInputStream;)Ljava/security/PrivilegedAction;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  ()Ljava/lang/Object;
                  sun/rmi/server/UnicastServerRef.lambda$3(Ljava/io/ObjectInputStream;)Ljava/lang/Void; (7)
                  ()Ljava/lang/Void;
            invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedAction;)Ljava/lang/Object;
            pop
        end local 2 // java.io.ObjectInputStream ois
         4: .line 427
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.io.ObjectInput in
        end local 0 // sun.rmi.server.UnicastServerRef this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lsun/rmi/server/UnicastServerRef;
            0    5     1    in  Ljava/io/ObjectInput;
            3    4     2   ois  Ljava/io/ObjectInputStream;
    Exceptions:
      throws java.io.IOException, java.lang.ClassNotFoundException
    MethodParameters:
      Name  Flags
      in    

  private void oldDispatch(java.rmi.Remote, java.rmi.server.RemoteCall, int);
    descriptor: (Ljava/rmi/Remote;Ljava/rmi/server/RemoteCall;I)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=8, args_size=4
        start local 0 // sun.rmi.server.UnicastServerRef this
        start local 1 // java.rmi.Remote obj
        start local 2 // java.rmi.server.RemoteCall call
        start local 3 // int op
         0: .line 449
            aload 2 /* call */
            invokeinterface java.rmi.server.RemoteCall.getInputStream:()Ljava/io/ObjectInput;
            astore 6 /* in */
        start local 6 // java.io.ObjectInput in
         1: .line 451
            ldc "sun.rmi.transport.DGCImpl_Skel"
            invokestatic java.lang.Class.forName:(Ljava/lang/String;)Ljava/lang/Class;
            astore 7 /* clazz */
        start local 7 // java.lang.Class clazz
         2: .line 452
            aload 7 /* clazz */
            aload 0 /* this */
            getfield sun.rmi.server.UnicastServerRef.skel:Ljava/rmi/server/Skeleton;
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            invokevirtual java.lang.Class.isAssignableFrom:(Ljava/lang/Class;)Z
            ifeq 6
         3: .line 453
            aload 6 /* in */
            checkcast sun.rmi.server.MarshalInputStream
            invokevirtual sun.rmi.server.MarshalInputStream.useCodebaseOnly:()V
        end local 7 // java.lang.Class clazz
         4: .line 455
            goto 6
      StackMap locals: sun.rmi.server.UnicastServerRef java.rmi.Remote java.rmi.server.RemoteCall int top top java.io.ObjectInput
      StackMap stack: java.lang.ClassNotFoundException
         5: pop
         6: .line 458
      StackMap locals:
      StackMap stack:
            aload 6 /* in */
            invokeinterface java.io.ObjectInput.readLong:()J
            lstore 4 /* hash */
        start local 4 // long hash
         7: .line 459
            goto 10
        end local 4 // long hash
      StackMap locals:
      StackMap stack: java.lang.Exception
         8: astore 7 /* ioe */
        start local 7 // java.lang.Exception ioe
         9: .line 460
            new java.rmi.UnmarshalException
            dup
            ldc "error unmarshalling call header"
            aload 7 /* ioe */
            invokespecial java.rmi.UnmarshalException.<init>:(Ljava/lang/String;Ljava/lang/Exception;)V
            athrow
        end local 7 // java.lang.Exception ioe
        start local 4 // long hash
        10: .line 464
      StackMap locals: sun.rmi.server.UnicastServerRef java.rmi.Remote java.rmi.server.RemoteCall int long java.io.ObjectInput
      StackMap stack:
            aload 0 /* this */
            getfield sun.rmi.server.UnicastServerRef.skel:Ljava/rmi/server/Skeleton;
            invokeinterface java.rmi.server.Skeleton.getOperations:()[Ljava/rmi/server/Operation;
            astore 7 /* operations */
        start local 7 // java.rmi.server.Operation[] operations
        11: .line 465
            aload 0 /* this */
            aload 1 /* obj */
            iload 3 /* op */
            iflt 12
            iload 3 /* op */
            aload 7 /* operations */
            arraylength
            if_icmpge 12
            aload 7 /* operations */
            iload 3 /* op */
            aaload
            goto 13
      StackMap locals: sun.rmi.server.UnicastServerRef java.rmi.Remote java.rmi.server.RemoteCall int long java.io.ObjectInput java.rmi.server.Operation[]
      StackMap stack: sun.rmi.server.UnicastServerRef java.rmi.Remote
        12: new java.lang.StringBuilder
            dup
            ldc "op: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 3 /* op */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
      StackMap locals: sun.rmi.server.UnicastServerRef java.rmi.Remote java.rmi.server.RemoteCall int long java.io.ObjectInput java.rmi.server.Operation[]
      StackMap stack: sun.rmi.server.UnicastServerRef java.rmi.Remote java.lang.Object
        13: invokevirtual sun.rmi.server.UnicastServerRef.logCall:(Ljava/rmi/Remote;Ljava/lang/Object;)V
        14: .line 466
            aload 0 /* this */
            aload 6 /* in */
            invokevirtual sun.rmi.server.UnicastServerRef.unmarshalCustomCallData:(Ljava/io/ObjectInput;)V
        15: .line 468
            aload 0 /* this */
            getfield sun.rmi.server.UnicastServerRef.skel:Ljava/rmi/server/Skeleton;
            aload 1 /* obj */
            aload 2 /* call */
            iload 3 /* op */
            lload 4 /* hash */
            invokeinterface java.rmi.server.Skeleton.dispatch:(Ljava/rmi/Remote;Ljava/rmi/server/RemoteCall;IJ)V
        16: .line 469
            return
        end local 7 // java.rmi.server.Operation[] operations
        end local 6 // java.io.ObjectInput in
        end local 4 // long hash
        end local 3 // int op
        end local 2 // java.rmi.server.RemoteCall call
        end local 1 // java.rmi.Remote obj
        end local 0 // sun.rmi.server.UnicastServerRef this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   17     0        this  Lsun/rmi/server/UnicastServerRef;
            0   17     1         obj  Ljava/rmi/Remote;
            0   17     2        call  Ljava/rmi/server/RemoteCall;
            0   17     3          op  I
            7    8     4        hash  J
           10   17     4        hash  J
            1   17     6          in  Ljava/io/ObjectInput;
            2    4     7       clazz  Ljava/lang/Class<*>;
            9   10     7         ioe  Ljava/lang/Exception;
           11   17     7  operations  [Ljava/rmi/server/Operation;
      Exception table:
        from    to  target  type
           1     4       5  Class java.lang.ClassNotFoundException
           6     7       8  Class java.lang.Exception
    Exceptions:
      throws java.lang.Exception
    MethodParameters:
      Name  Flags
      obj   
      call  
      op    

  public static void clearStackTraces(java.lang.Throwable);
    descriptor: (Ljava/lang/Throwable;)V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // java.lang.Throwable t
         0: .line 477
            iconst_0
            anewarray java.lang.StackTraceElement
            astore 1 /* empty */
        start local 1 // java.lang.StackTraceElement[] empty
         1: .line 478
            goto 4
         2: .line 479
      StackMap locals: java.lang.StackTraceElement[]
      StackMap stack:
            aload 0 /* t */
            aload 1 /* empty */
            invokevirtual java.lang.Throwable.setStackTrace:([Ljava/lang/StackTraceElement;)V
         3: .line 480
            aload 0 /* t */
            invokevirtual java.lang.Throwable.getCause:()Ljava/lang/Throwable;
            astore 0 /* t */
         4: .line 478
      StackMap locals:
      StackMap stack:
            aload 0 /* t */
            ifnonnull 2
         5: .line 482
            return
        end local 1 // java.lang.StackTraceElement[] empty
        end local 0 // java.lang.Throwable t
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    6     0      t  Ljava/lang/Throwable;
            1    6     1  empty  [Ljava/lang/StackTraceElement;
    MethodParameters:
      Name  Flags
      t     

  private void logCall(java.rmi.Remote, java.lang.Object);
    descriptor: (Ljava/rmi/Remote;Ljava/lang/Object;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=4, args_size=3
        start local 0 // sun.rmi.server.UnicastServerRef this
        start local 1 // java.rmi.Remote obj
        start local 2 // java.lang.Object method
         0: .line 489
            getstatic sun.rmi.server.UnicastServerRef.callLog:Lsun/rmi/runtime/Log;
            getstatic sun.rmi.runtime.Log.VERBOSE:Ljava/util/logging/Level;
            invokevirtual sun.rmi.runtime.Log.isLoggable:(Ljava/util/logging/Level;)Z
            ifeq 10
         1: .line 492
            aload 0 /* this */
            invokevirtual sun.rmi.server.UnicastServerRef.getClientHost:()Ljava/lang/String;
            astore 3 /* clientHost */
        start local 3 // java.lang.String clientHost
         2: .line 493
            goto 5
        end local 3 // java.lang.String clientHost
      StackMap locals:
      StackMap stack: java.rmi.server.ServerNotActiveException
         3: pop
         4: .line 494
            ldc "(local)"
            astore 3 /* clientHost */
        start local 3 // java.lang.String clientHost
         5: .line 496
      StackMap locals: java.lang.String
      StackMap stack:
            getstatic sun.rmi.server.UnicastServerRef.callLog:Lsun/rmi/runtime/Log;
            getstatic sun.rmi.runtime.Log.VERBOSE:Ljava/util/logging/Level;
            new java.lang.StringBuilder
            dup
            ldc "["
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 3 /* clientHost */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc ": "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         6: .line 497
            aload 1 /* obj */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         7: .line 498
            aload 0 /* this */
            getfield sun.rmi.server.UnicastServerRef.ref:Lsun/rmi/transport/LiveRef;
            invokevirtual sun.rmi.transport.LiveRef.getObjID:()Ljava/rmi/server/ObjID;
            invokevirtual java.rmi.server.ObjID.toString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc ": "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         8: .line 499
            aload 2 /* method */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc "]"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         9: .line 496
            invokevirtual sun.rmi.runtime.Log.log:(Ljava/util/logging/Level;Ljava/lang/String;)V
        end local 3 // java.lang.String clientHost
        10: .line 501
      StackMap locals:
      StackMap stack:
            return
        end local 2 // java.lang.Object method
        end local 1 // java.rmi.Remote obj
        end local 0 // sun.rmi.server.UnicastServerRef this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   11     0        this  Lsun/rmi/server/UnicastServerRef;
            0   11     1         obj  Ljava/rmi/Remote;
            0   11     2      method  Ljava/lang/Object;
            2    3     3  clientHost  Ljava/lang/String;
            5   10     3  clientHost  Ljava/lang/String;
      Exception table:
        from    to  target  type
           1     2       3  Class java.rmi.server.ServerNotActiveException
    MethodParameters:
        Name  Flags
      obj     
      method  

  private void logCallException(java.lang.Throwable);
    descriptor: (Ljava/lang/Throwable;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=4, args_size=2
        start local 0 // sun.rmi.server.UnicastServerRef this
        start local 1 // java.lang.Throwable e
         0: .line 508
            getstatic sun.rmi.server.UnicastServerRef.callLog:Lsun/rmi/runtime/Log;
            getstatic sun.rmi.runtime.Log.BRIEF:Ljava/util/logging/Level;
            invokevirtual sun.rmi.runtime.Log.isLoggable:(Ljava/util/logging/Level;)Z
            ifeq 6
         1: .line 509
            ldc ""
            astore 2 /* clientHost */
        start local 2 // java.lang.String clientHost
         2: .line 511
            new java.lang.StringBuilder
            dup
            ldc "["
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            invokevirtual sun.rmi.server.UnicastServerRef.getClientHost:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "] "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 2 /* clientHost */
         3: .line 512
            goto 5
      StackMap locals: sun.rmi.server.UnicastServerRef java.lang.Throwable java.lang.String
      StackMap stack: java.rmi.server.ServerNotActiveException
         4: pop
         5: .line 514
      StackMap locals:
      StackMap stack:
            getstatic sun.rmi.server.UnicastServerRef.callLog:Lsun/rmi/runtime/Log;
            getstatic sun.rmi.runtime.Log.BRIEF:Ljava/util/logging/Level;
            new java.lang.StringBuilder
            dup
            aload 2 /* clientHost */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc "exception: "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            aload 1 /* e */
            invokevirtual sun.rmi.runtime.Log.log:(Ljava/util/logging/Level;Ljava/lang/String;Ljava/lang/Throwable;)V
        end local 2 // java.lang.String clientHost
         6: .line 518
      StackMap locals:
      StackMap stack:
            getstatic sun.rmi.server.UnicastServerRef.wantExceptionLog:Z
            ifeq 20
         7: .line 519
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            astore 2 /* log */
        start local 2 // java.io.PrintStream log
         8: .line 520
            aload 2 /* log */
            dup
            astore 3
            monitorenter
         9: .line 521
            aload 2 /* log */
            invokevirtual java.io.PrintStream.println:()V
        10: .line 522
            aload 2 /* log */
            new java.lang.StringBuilder
            dup
            ldc "Exception dispatching call to "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        11: .line 523
            aload 0 /* this */
            getfield sun.rmi.server.UnicastServerRef.ref:Lsun/rmi/transport/LiveRef;
            invokevirtual sun.rmi.transport.LiveRef.getObjID:()Ljava/rmi/server/ObjID;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc " in thread \""
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        12: .line 524
            invokestatic java.lang.Thread.currentThread:()Ljava/lang/Thread;
            invokevirtual java.lang.Thread.getName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        13: .line 525
            ldc "\" at "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            new java.util.Date
            dup
            invokespecial java.util.Date.<init>:()V
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc ":"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        14: .line 522
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
        15: .line 526
            aload 1 /* e */
            aload 2 /* log */
            invokevirtual java.lang.Throwable.printStackTrace:(Ljava/io/PrintStream;)V
        16: .line 520
            aload 3
            monitorexit
        17: goto 20
      StackMap locals: sun.rmi.server.UnicastServerRef java.lang.Throwable java.io.PrintStream java.io.PrintStream
      StackMap stack: java.lang.Throwable
        18: aload 3
            monitorexit
        19: athrow
        end local 2 // java.io.PrintStream log
        20: .line 529
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.lang.Throwable e
        end local 0 // sun.rmi.server.UnicastServerRef this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   21     0        this  Lsun/rmi/server/UnicastServerRef;
            0   21     1           e  Ljava/lang/Throwable;
            2    6     2  clientHost  Ljava/lang/String;
            8   20     2         log  Ljava/io/PrintStream;
      Exception table:
        from    to  target  type
           2     3       4  Class java.rmi.server.ServerNotActiveException
           9    17      18  any
          18    19      18  any
    MethodParameters:
      Name  Flags
      e     

  public java.lang.String getRefClass(java.io.ObjectOutput);
    descriptor: (Ljava/io/ObjectOutput;)Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // sun.rmi.server.UnicastServerRef this
        start local 1 // java.io.ObjectOutput out
         0: .line 535
            ldc "UnicastServerRef"
            areturn
        end local 1 // java.io.ObjectOutput out
        end local 0 // sun.rmi.server.UnicastServerRef this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/rmi/server/UnicastServerRef;
            0    1     1   out  Ljava/io/ObjectOutput;
    MethodParameters:
      Name  Flags
      out   

  protected java.rmi.server.RemoteRef getClientRef();
    descriptor: ()Ljava/rmi/server/RemoteRef;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // sun.rmi.server.UnicastServerRef this
         0: .line 545
            new sun.rmi.server.UnicastRef
            dup
            aload 0 /* this */
            getfield sun.rmi.server.UnicastServerRef.ref:Lsun/rmi/transport/LiveRef;
            invokespecial sun.rmi.server.UnicastRef.<init>:(Lsun/rmi/transport/LiveRef;)V
            areturn
        end local 0 // sun.rmi.server.UnicastServerRef this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/rmi/server/UnicastServerRef;

  public void writeExternal(java.io.ObjectOutput);
    descriptor: (Ljava/io/ObjectOutput;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=0, locals=2, args_size=2
        start local 0 // sun.rmi.server.UnicastServerRef this
        start local 1 // java.io.ObjectOutput out
         0: .line 552
            return
        end local 1 // java.io.ObjectOutput out
        end local 0 // sun.rmi.server.UnicastServerRef this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/rmi/server/UnicastServerRef;
            0    1     1   out  Ljava/io/ObjectOutput;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      out   

  public void readExternal(java.io.ObjectInput);
    descriptor: (Ljava/io/ObjectInput;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // sun.rmi.server.UnicastServerRef this
        start local 1 // java.io.ObjectInput in
         0: .line 563
            aload 0 /* this */
            aconst_null
            putfield sun.rmi.server.UnicastServerRef.ref:Lsun/rmi/transport/LiveRef;
         1: .line 564
            aload 0 /* this */
            aconst_null
            putfield sun.rmi.server.UnicastServerRef.skel:Ljava/rmi/server/Skeleton;
         2: .line 565
            return
        end local 1 // java.io.ObjectInput in
        end local 0 // sun.rmi.server.UnicastServerRef this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lsun/rmi/server/UnicastServerRef;
            0    3     1    in  Ljava/io/ObjectInput;
    Exceptions:
      throws java.io.IOException, java.lang.ClassNotFoundException
    MethodParameters:
      Name  Flags
      in    

  private static java.lang.Boolean lambda$0();
    descriptor: ()Ljava/lang/Boolean;
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 84
            ldc "java.rmi.server.logCalls"
            invokestatic java.lang.Boolean.getBoolean:(Ljava/lang/String;)Z
            invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  private static java.lang.Boolean lambda$1();
    descriptor: ()Ljava/lang/Boolean;
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 96
            ldc "sun.rmi.server.exceptionTrace"
            invokestatic java.lang.Boolean.getBoolean:(Ljava/lang/String;)Z
            invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  private static java.lang.Boolean lambda$2();
    descriptor: ()Ljava/lang/Boolean;
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 106
            ldc "sun.rmi.server.suppressStackTraces"
            invokestatic java.lang.Boolean.getBoolean:(Ljava/lang/String;)Z
            invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  private java.lang.Void lambda$3(java.io.ObjectInputStream);
    descriptor: (Ljava/io/ObjectInputStream;)Ljava/lang/Void;
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // sun.rmi.server.UnicastServerRef this
         0: .line 423
            aload 1
            aload 0 /* this */
            getfield sun.rmi.server.UnicastServerRef.filter:Ljava/io/ObjectInputFilter;
            invokevirtual java.io.ObjectInputStream.setObjectInputFilter:(Ljava/io/ObjectInputFilter;)V
         1: .line 424
            aconst_null
            areturn
        end local 0 // sun.rmi.server.UnicastServerRef this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lsun/rmi/server/UnicastServerRef;
}
SourceFile: "UnicastServerRef.java"
NestMembers:
  sun.rmi.server.UnicastServerRef$HashToMethod_Maps  sun.rmi.server.UnicastServerRef$HashToMethod_Maps$1
InnerClasses:
  public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles
  private HashToMethod_Maps = sun.rmi.server.UnicastServerRef$HashToMethod_Maps of sun.rmi.server.UnicastServerRef