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<*>;*>;

  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=2, locals=1, args_size=1
        start local 0 // sun.rmi.server.UnicastServerRef this
         0: .line 135
            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 136
            aload 0 /* this */
            aconst_null
            putfield sun.rmi.server.UnicastServerRef.filter:Ljava/io/ObjectInputFilter;
         4: .line 137
            return
        end local 0 // sun.rmi.server.UnicastServerRef this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     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=2, locals=2, args_size=2
        start local 0 // sun.rmi.server.UnicastServerRef this
        start local 1 // sun.rmi.transport.LiveRef ref
         0: .line 145
            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 146
            aload 0 /* this */
            aconst_null
            putfield sun.rmi.server.UnicastServerRef.filter:Ljava/io/ObjectInputFilter;
         4: .line 147
            return
        end local 1 // sun.rmi.transport.LiveRef ref
        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   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=2, 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 154
            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 155
            aload 0 /* this */
            aload 2 /* filter */
            putfield sun.rmi.server.UnicastServerRef.filter:Ljava/io/ObjectInputFilter;
         4: .line 156
            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    5     0    this  Lsun/rmi/server/UnicastServerRef;
            0    5     1     ref  Lsun/rmi/transport/LiveRef;
            0    5     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 163
            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 164
            aload 0 /* this */
            aconst_null
            putfield sun.rmi.server.UnicastServerRef.filter:Ljava/io/ObjectInputFilter;
         4: .line 165
            return
        end local 1 // int port
        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  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 181
            aload 0 /* this */
            iconst_0
            invokespecial sun.rmi.server.UnicastServerRef.<init>:(I)V
         1: .line 182
            aload 0 /* this */
            iload 1 /* forceStubUse */
            putfield sun.rmi.server.UnicastServerRef.forceStubUse:Z
         2: .line 183
            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 202
            aload 0 /* this */
            iconst_1
            putfield sun.rmi.server.UnicastServerRef.forceStubUse:Z
         1: .line 203
            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 217
            aload 1 /* impl */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            astore 4 /* implClass */
        start local 4 // java.lang.Class implClass
         1: .line 221
            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 222
            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 223
            new java.rmi.server.ExportException
            dup
         5: .line 224
            ldc "remote object implements illegal remote interface"
            aload 6 /* e */
         6: .line 223
            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 226
      StackMap locals: java.rmi.Remote
      StackMap stack:
            aload 5 /* stub */
            instanceof java.rmi.server.RemoteStub
            ifeq 9
         8: .line 227
            aload 0 /* this */
            aload 1 /* impl */
            invokevirtual sun.rmi.server.UnicastServerRef.setSkeleton:(Ljava/rmi/Remote;)V
         9: .line 231
      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 230
            astore 6 /* target */
        start local 6 // sun.rmi.transport.Target target
        11: .line 232
            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 233
            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 234
            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 245
            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 252
            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 254
            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 255
            goto 5
      StackMap locals:
      StackMap stack: java.rmi.server.SkeletonNotFoundException
         3: pop
         4: .line 262
            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 265
      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 288
            aload 2 /* call */
            invokeinterface java.rmi.server.RemoteCall.getInputStream:()Ljava/io/ObjectInput;
            astore 6 /* in */
        start local 6 // java.io.ObjectInput in
         1: .line 289
            aload 6 /* in */
            invokeinterface java.io.ObjectInput.readInt:()I
            istore 3 /* num */
        start local 3 // int num
         2: .line 290
            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 291
            new java.rmi.UnmarshalException
            dup
            ldc "error unmarshalling call header"
         5: .line 292
            aload 7 /* readEx */
         6: .line 291
            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 294
      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 296
            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 404
            aload 2 /* call */
            invokeinterface java.rmi.server.RemoteCall.releaseInputStream:()V
        10: .line 405
            aload 2 /* call */
            invokeinterface java.rmi.server.RemoteCall.releaseOutputStream:()V
        11: .line 297
            return
        12: .line 299
      StackMap locals:
      StackMap stack:
            iload 3 /* num */
            iflt 16
        13: .line 300
            new java.rmi.UnmarshalException
            dup
        14: .line 301
            ldc "skeleton class not found but required for client version"
        15: .line 300
            invokespecial java.rmi.UnmarshalException.<init>:(Ljava/lang/String;)V
            athrow
        16: .line 304
      StackMap locals:
      StackMap stack:
            aload 6 /* in */
            invokeinterface java.io.ObjectInput.readLong:()J
            lstore 4 /* op */
        start local 4 // long op
        17: .line 305
            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 306
            new java.rmi.UnmarshalException
            dup
            ldc "error unmarshalling call header"
        20: .line 307
            aload 7 /* readEx */
        21: .line 306
            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 317
      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 318
            aload 7 /* marshalStream */
            invokevirtual sun.rmi.server.MarshalInputStream.skipDefaultResolveClass:()V
        24: .line 320
            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 321
            aload 8 /* method */
            ifnonnull 27
        26: .line 322
            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 327
      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 330
            aload 8 /* method */
            invokevirtual java.lang.reflect.Method.getParameterTypes:()[Ljava/lang/Class;
            astore 9 /* types */
        start local 9 // java.lang.Class[] types
        29: .line 331
            aload 9 /* types */
            arraylength
            anewarray java.lang.Object
            astore 10 /* params */
        start local 10 // java.lang.Object[] params
        30: .line 334
            aload 0 /* this */
            aload 6 /* in */
            invokevirtual sun.rmi.server.UnicastServerRef.unmarshalCustomCallData:(Ljava/io/ObjectInput;)V
        31: .line 336
            iconst_0
            istore 11 /* i */
        start local 11 // int i
        32: goto 35
        33: .line 337
      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 336
            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 340
            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 343
            aload 2 /* call */
            checkcast sun.rmi.transport.StreamRemoteCall
            invokevirtual sun.rmi.transport.StreamRemoteCall.discardPendingRefs:()V
        39: .line 344
            aload 11 /* aex */
            athrow
        end local 11 // java.rmi.AccessException aex
        40: .line 345
      StackMap locals:
      StackMap stack: java.lang.Exception
            astore 11 /* e */
        start local 11 // java.lang.Exception e
        41: .line 347
            aload 2 /* call */
            checkcast sun.rmi.transport.StreamRemoteCall
            invokevirtual sun.rmi.transport.StreamRemoteCall.discardPendingRefs:()V
        42: .line 348
            new java.rmi.UnmarshalException
            dup
        43: .line 349
            ldc "error unmarshalling arguments"
            aload 11 /* e */
        44: .line 348
            invokespecial java.rmi.UnmarshalException.<init>:(Ljava/lang/String;Ljava/lang/Exception;)V
            athrow
        end local 11 // java.lang.Exception e
        45: .line 350
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 12
        46: .line 351
            aload 2 /* call */
            invokeinterface java.rmi.server.RemoteCall.releaseInputStream:()V
        47: .line 352
            aload 12
            athrow
        48: .line 351
      StackMap locals:
      StackMap stack:
            aload 2 /* call */
            invokeinterface java.rmi.server.RemoteCall.releaseInputStream:()V
        49: .line 357
            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 358
            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 359
            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 364
      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 365
            aload 8 /* method */
            invokevirtual java.lang.reflect.Method.getReturnType:()Ljava/lang/Class;
            astore 13 /* rtype */
        start local 13 // java.lang.Class rtype
        55: .line 366
            aload 13 /* rtype */
            getstatic java.lang.Void.TYPE:Ljava/lang/Class;
            if_acmpeq 85
        56: .line 367
            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 369
            goto 85
      StackMap locals:
      StackMap stack: java.io.IOException
        58: astore 12 /* ex */
        start local 12 // java.io.IOException ex
        59: .line 370
            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 380
      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 381
            aload 6 /* e */
            astore 7 /* origEx */
        start local 7 // java.lang.Throwable origEx
        62: .line 382
            aload 0 /* this */
            aload 6 /* e */
            invokevirtual sun.rmi.server.UnicastServerRef.logCallException:(Ljava/lang/Throwable;)V
        63: .line 384
            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 385
            aload 6 /* e */
            instanceof java.lang.Error
            ifeq 69
        65: .line 386
            new java.rmi.ServerError
            dup
        66: .line 387
            ldc "Error occurred in server thread"
            aload 6 /* e */
            checkcast java.lang.Error
        67: .line 386
            invokespecial java.rmi.ServerError.<init>:(Ljava/lang/String;Ljava/lang/Error;)V
            astore 6 /* e */
        68: .line 388
            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 389
            new java.rmi.ServerException
            dup
        71: .line 390
            ldc "RemoteException occurred in server thread"
        72: .line 391
            aload 6 /* e */
            checkcast java.lang.Exception
        73: .line 389
            invokespecial java.rmi.ServerException.<init>:(Ljava/lang/String;Ljava/lang/Exception;)V
            astore 6 /* e */
        74: .line 393
      StackMap locals:
      StackMap stack:
            getstatic sun.rmi.server.UnicastServerRef.suppressStackTraces:Z
            ifeq 76
        75: .line 394
            aload 6 /* e */
            invokestatic sun.rmi.server.UnicastServerRef.clearStackTraces:(Ljava/lang/Throwable;)V
        76: .line 396
      StackMap locals:
      StackMap stack:
            aload 8 /* out */
            aload 6 /* e */
            invokeinterface java.io.ObjectOutput.writeObject:(Ljava/lang/Object;)V
        77: .line 400
            aload 7 /* origEx */
            instanceof java.rmi.AccessException
            ifeq 79
        78: .line 401
            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 404
      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 405
            aload 2 /* call */
            invokeinterface java.rmi.server.RemoteCall.releaseOutputStream:()V
            goto 87
        81: .line 403
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 14
        82: .line 404
            aload 2 /* call */
            invokeinterface java.rmi.server.RemoteCall.releaseInputStream:()V
        83: .line 405
            aload 2 /* call */
            invokeinterface java.rmi.server.RemoteCall.releaseOutputStream:()V
        84: .line 406
            aload 14
            athrow
        85: .line 404
      StackMap locals:
      StackMap stack:
            aload 2 /* call */
            invokeinterface java.rmi.server.RemoteCall.releaseInputStream:()V
        86: .line 405
            aload 2 /* call */
            invokeinterface java.rmi.server.RemoteCall.releaseOutputStream:()V
        87: .line 407
      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 415
            aload 0 /* this */
            getfield sun.rmi.server.UnicastServerRef.filter:Ljava/io/ObjectInputFilter;
            ifnull 4
         1: .line 416
            aload 1 /* in */
            instanceof java.io.ObjectInputStream
            ifeq 4
         2: .line 418
            aload 1 /* in */
            checkcast java.io.ObjectInputStream
            astore 2 /* ois */
        start local 2 // java.io.ObjectInputStream ois
         3: .line 420
            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 425
      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 447
            aload 2 /* call */
            invokeinterface java.rmi.server.RemoteCall.getInputStream:()Ljava/io/ObjectInput;
            astore 6 /* in */
        start local 6 // java.io.ObjectInput in
         1: .line 449
            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 450
            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 451
            aload 6 /* in */
            checkcast sun.rmi.server.MarshalInputStream
            invokevirtual sun.rmi.server.MarshalInputStream.useCodebaseOnly:()V
        end local 7 // java.lang.Class clazz
         4: .line 453
            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 456
      StackMap locals:
      StackMap stack:
            aload 6 /* in */
            invokeinterface java.io.ObjectInput.readLong:()J
            lstore 4 /* hash */
        start local 4 // long hash
         7: .line 457
            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 458
            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 462
      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 463
            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 464
            aload 0 /* this */
            aload 6 /* in */
            invokevirtual sun.rmi.server.UnicastServerRef.unmarshalCustomCallData:(Ljava/io/ObjectInput;)V
        15: .line 466
            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 467
            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 475
            iconst_0
            anewarray java.lang.StackTraceElement
            astore 1 /* empty */
        start local 1 // java.lang.StackTraceElement[] empty
         1: .line 476
            goto 4
         2: .line 477
      StackMap locals: java.lang.StackTraceElement[]
      StackMap stack:
            aload 0 /* t */
            aload 1 /* empty */
            invokevirtual java.lang.Throwable.setStackTrace:([Ljava/lang/StackTraceElement;)V
         3: .line 478
            aload 0 /* t */
            invokevirtual java.lang.Throwable.getCause:()Ljava/lang/Throwable;
            astore 0 /* t */
         4: .line 476
      StackMap locals:
      StackMap stack:
            aload 0 /* t */
            ifnonnull 2
         5: .line 480
            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 487
            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 490
            aload 0 /* this */
            invokevirtual sun.rmi.server.UnicastServerRef.getClientHost:()Ljava/lang/String;
            astore 3 /* clientHost */
        start local 3 // java.lang.String clientHost
         2: .line 491
            goto 5
        end local 3 // java.lang.String clientHost
      StackMap locals:
      StackMap stack: java.rmi.server.ServerNotActiveException
         3: pop
         4: .line 492
            ldc "(local)"
            astore 3 /* clientHost */
        start local 3 // java.lang.String clientHost
         5: .line 494
      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 495
            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 496
            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 497
            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 494
            invokevirtual sun.rmi.runtime.Log.log:(Ljava/util/logging/Level;Ljava/lang/String;)V
        end local 3 // java.lang.String clientHost
        10: .line 499
      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 506
            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 507
            ldc ""
            astore 2 /* clientHost */
        start local 2 // java.lang.String clientHost
         2: .line 509
            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 510
            goto 5
      StackMap locals: sun.rmi.server.UnicastServerRef java.lang.Throwable java.lang.String
      StackMap stack: java.rmi.server.ServerNotActiveException
         4: pop
         5: .line 512
      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 516
      StackMap locals:
      StackMap stack:
            getstatic sun.rmi.server.UnicastServerRef.wantExceptionLog:Z
            ifeq 20
         7: .line 517
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            astore 2 /* log */
        start local 2 // java.io.PrintStream log
         8: .line 518
            aload 2 /* log */
            dup
            astore 3
            monitorenter
         9: .line 519
            aload 2 /* log */
            invokevirtual java.io.PrintStream.println:()V
        10: .line 520
            aload 2 /* log */
            new java.lang.StringBuilder
            dup
            ldc "Exception dispatching call to "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        11: .line 521
            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 522
            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 523
            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 520
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
        15: .line 524
            aload 1 /* e */
            aload 2 /* log */
            invokevirtual java.lang.Throwable.printStackTrace:(Ljava/io/PrintStream;)V
        16: .line 518
            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 527
      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 533
            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 543
            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 550
            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 561
            aload 0 /* this */
            aconst_null
            putfield sun.rmi.server.UnicastServerRef.ref:Lsun/rmi/transport/LiveRef;
         1: .line 562
            aload 0 /* this */
            aconst_null
            putfield sun.rmi.server.UnicastServerRef.skel:Ljava/rmi/server/Skeleton;
         2: .line 563
            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 421
            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 422
            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