public final class sun.rmi.server.Util
  minor version: 0
  major version: 59
  flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
  this_class: sun.rmi.server.Util
  super_class: java.lang.Object
{
  static final int logLevel;
    descriptor: I
    flags: (0x0018) ACC_STATIC, ACC_FINAL

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

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

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

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

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=4, locals=0, args_size=0
         0: .line 71
            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/Util.lambda$0()Ljava/lang/String; (6)
                  ()Ljava/lang/String;
         1: .line 70
            invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedAction;)Ljava/lang/Object;
            checkcast java.lang.String
         2: .line 69
            invokestatic java.rmi.server.LogStream.parseLevel:(Ljava/lang/String;)I
            putstatic sun.rmi.server.Util.logLevel:I
         3: .line 75
            ldc "sun.rmi.server.ref"
            ldc "transport"
            getstatic sun.rmi.server.Util.logLevel:I
            invokestatic sun.rmi.runtime.Log.getLog:(Ljava/lang/String;Ljava/lang/String;I)Lsun/rmi/runtime/Log;
         4: .line 74
            putstatic sun.rmi.server.Util.serverRefLog:Lsun/rmi/runtime/Log;
         5: .line 80
            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/Util.lambda$1()Ljava/lang/Boolean; (6)
                  ()Ljava/lang/Boolean;
         6: .line 79
            invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedAction;)Ljava/lang/Object;
            checkcast java.lang.Boolean
            invokevirtual java.lang.Boolean.booleanValue:()Z
         7: .line 78
            putstatic sun.rmi.server.Util.ignoreStubClasses:Z
         8: .line 84
            new java.util.WeakHashMap
            dup
            bipush 11
            invokespecial java.util.WeakHashMap.<init>:(I)V
            invokestatic java.util.Collections.synchronizedMap:(Ljava/util/Map;)Ljava/util/Map;
         9: .line 83
            putstatic sun.rmi.server.Util.withoutStubs:Ljava/util/Map;
        10: .line 87
            iconst_1
            anewarray java.lang.Class
            dup
            iconst_0
            ldc Ljava/rmi/server/RemoteRef;
            aastore
            putstatic sun.rmi.server.Util.stubConsParamTypes:[Ljava/lang/Class;
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

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

  public static java.rmi.Remote createProxy(java.lang.Class<?>, java.rmi.server.RemoteRef, boolean);
    descriptor: (Ljava/lang/Class;Ljava/rmi/server/RemoteRef;Z)Ljava/rmi/Remote;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=8, args_size=3
        start local 0 // java.lang.Class implClass
        start local 1 // java.rmi.server.RemoteRef clientRef
        start local 2 // boolean forceStubUse
         0: .line 129
            aload 0 /* implClass */
            invokestatic sun.rmi.server.Util.getRemoteClass:(Ljava/lang/Class;)Ljava/lang/Class;
            astore 3 /* remoteClass */
        start local 3 // java.lang.Class remoteClass
         1: .line 130
            goto 8
        end local 3 // java.lang.Class remoteClass
      StackMap locals:
      StackMap stack: java.lang.ClassNotFoundException
         2: pop
         3: .line 131
            new java.rmi.StubNotFoundException
            dup
         4: .line 132
            new java.lang.StringBuilder
            dup
            ldc "object does not implement a remote interface: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
         5: .line 133
            aload 0 /* implClass */
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         6: .line 132
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         7: .line 131
            invokespecial java.rmi.StubNotFoundException.<init>:(Ljava/lang/String;)V
            athrow
        start local 3 // java.lang.Class remoteClass
         8: .line 136
      StackMap locals: java.lang.Class
      StackMap stack:
            iload 2 /* forceStubUse */
            ifne 10
         9: .line 137
            getstatic sun.rmi.server.Util.ignoreStubClasses:Z
            ifne 11
            aload 3 /* remoteClass */
            invokestatic sun.rmi.server.Util.stubClassExists:(Ljava/lang/Class;)Z
            ifeq 11
        10: .line 139
      StackMap locals:
      StackMap stack:
            aload 3 /* remoteClass */
            aload 1 /* clientRef */
            invokestatic sun.rmi.server.Util.createStub:(Ljava/lang/Class;Ljava/rmi/server/RemoteRef;)Ljava/rmi/server/RemoteStub;
            areturn
        11: .line 142
      StackMap locals:
      StackMap stack:
            aload 0 /* implClass */
            invokevirtual java.lang.Class.getClassLoader:()Ljava/lang/ClassLoader;
            astore 4 /* loader */
        start local 4 // java.lang.ClassLoader loader
        12: .line 143
            aload 0 /* implClass */
            invokestatic sun.rmi.server.Util.getRemoteInterfaces:(Ljava/lang/Class;)[Ljava/lang/Class;
            astore 5 /* interfaces */
        start local 5 // java.lang.Class[] interfaces
        13: .line 145
            new java.rmi.server.RemoteObjectInvocationHandler
            dup
            aload 1 /* clientRef */
            invokespecial java.rmi.server.RemoteObjectInvocationHandler.<init>:(Ljava/rmi/server/RemoteRef;)V
        14: .line 144
            astore 6 /* handler */
        start local 6 // java.lang.reflect.InvocationHandler handler
        15: .line 150
            new sun.rmi.server.Util$1
            dup
            aload 4 /* loader */
            aload 5 /* interfaces */
            aload 6 /* handler */
            invokespecial sun.rmi.server.Util$1.<init>:(Ljava/lang/ClassLoader;[Ljava/lang/Class;Ljava/lang/reflect/InvocationHandler;)V
            invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedAction;)Ljava/lang/Object;
            checkcast java.rmi.Remote
        16: areturn
        17: .line 156
      StackMap locals: java.lang.Class java.rmi.server.RemoteRef int java.lang.Class java.lang.ClassLoader java.lang.Class[] java.lang.reflect.InvocationHandler
      StackMap stack: java.lang.IllegalArgumentException
            astore 7 /* e */
        start local 7 // java.lang.IllegalArgumentException e
        18: .line 157
            new java.rmi.StubNotFoundException
            dup
            ldc "unable to create proxy"
            aload 7 /* e */
            invokespecial java.rmi.StubNotFoundException.<init>:(Ljava/lang/String;Ljava/lang/Exception;)V
            athrow
        end local 7 // java.lang.IllegalArgumentException e
        end local 6 // java.lang.reflect.InvocationHandler handler
        end local 5 // java.lang.Class[] interfaces
        end local 4 // java.lang.ClassLoader loader
        end local 3 // java.lang.Class remoteClass
        end local 2 // boolean forceStubUse
        end local 1 // java.rmi.server.RemoteRef clientRef
        end local 0 // java.lang.Class implClass
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   19     0     implClass  Ljava/lang/Class<*>;
            0   19     1     clientRef  Ljava/rmi/server/RemoteRef;
            0   19     2  forceStubUse  Z
            1    2     3   remoteClass  Ljava/lang/Class<*>;
            8   19     3   remoteClass  Ljava/lang/Class<*>;
           12   19     4        loader  Ljava/lang/ClassLoader;
           13   19     5    interfaces  [Ljava/lang/Class;
           15   19     6       handler  Ljava/lang/reflect/InvocationHandler;
           18   19     7             e  Ljava/lang/IllegalArgumentException;
      Exception table:
        from    to  target  type
           0     1       2  Class java.lang.ClassNotFoundException
          15    16      17  Class java.lang.IllegalArgumentException
    Exceptions:
      throws java.rmi.StubNotFoundException
    Signature: (Ljava/lang/Class<*>;Ljava/rmi/server/RemoteRef;Z)Ljava/rmi/Remote;
    MethodParameters:
              Name  Flags
      implClass     
      clientRef     
      forceStubUse  

  private static boolean stubClassExists(java.lang.Class<?>);
    descriptor: (Ljava/lang/Class;)Z
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // java.lang.Class remoteClass
         0: .line 168
            getstatic sun.rmi.server.Util.withoutStubs:Ljava/util/Map;
            aload 0 /* remoteClass */
            invokeinterface java.util.Map.containsKey:(Ljava/lang/Object;)Z
            ifne 8
         1: .line 170
            new java.lang.StringBuilder
            dup
            aload 0 /* remoteClass */
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc "_Stub"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         2: .line 171
            iconst_0
         3: .line 172
            aload 0 /* remoteClass */
            invokevirtual java.lang.Class.getClassLoader:()Ljava/lang/ClassLoader;
         4: .line 170
            invokestatic java.lang.Class.forName:(Ljava/lang/String;ZLjava/lang/ClassLoader;)Ljava/lang/Class;
            pop
         5: .line 173
            iconst_1
            ireturn
         6: .line 175
      StackMap locals:
      StackMap stack: java.lang.ClassNotFoundException
            pop
         7: .line 176
            getstatic sun.rmi.server.Util.withoutStubs:Ljava/util/Map;
            aload 0 /* remoteClass */
            aconst_null
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         8: .line 179
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 0 // java.lang.Class remoteClass
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    9     0  remoteClass  Ljava/lang/Class<*>;
      Exception table:
        from    to  target  type
           1     5       6  Class java.lang.ClassNotFoundException
    Signature: (Ljava/lang/Class<*>;)Z
    MethodParameters:
             Name  Flags
      remoteClass  

  private static java.lang.Class<?> getRemoteClass(java.lang.Class<?>);
    descriptor: (Ljava/lang/Class;)Ljava/lang/Class;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=3, args_size=1
        start local 0 // java.lang.Class cl
         0: .line 190
            goto 9
         1: .line 191
      StackMap locals:
      StackMap stack:
            aload 0 /* cl */
            invokevirtual java.lang.Class.getInterfaces:()[Ljava/lang/Class;
            astore 1 /* interfaces */
        start local 1 // java.lang.Class[] interfaces
         2: .line 192
            aload 1 /* interfaces */
            arraylength
            iconst_1
            isub
            istore 2 /* i */
        start local 2 // int i
         3: goto 7
         4: .line 193
      StackMap locals: java.lang.Class[] int
      StackMap stack:
            ldc Ljava/rmi/Remote;
            aload 1 /* interfaces */
            iload 2 /* i */
            aaload
            invokevirtual java.lang.Class.isAssignableFrom:(Ljava/lang/Class;)Z
            ifeq 6
         5: .line 194
            aload 0 /* cl */
            areturn
         6: .line 192
      StackMap locals:
      StackMap stack:
            iinc 2 /* i */ -1
      StackMap locals:
      StackMap stack:
         7: iload 2 /* i */
            ifge 4
        end local 2 // int i
         8: .line 196
            aload 0 /* cl */
            invokevirtual java.lang.Class.getSuperclass:()Ljava/lang/Class;
            astore 0 /* cl */
        end local 1 // java.lang.Class[] interfaces
         9: .line 190
      StackMap locals:
      StackMap stack:
            aload 0 /* cl */
            ifnonnull 1
        10: .line 198
            new java.lang.ClassNotFoundException
            dup
        11: .line 199
            ldc "class does not implement java.rmi.Remote"
        12: .line 198
            invokespecial java.lang.ClassNotFoundException.<init>:(Ljava/lang/String;)V
            athrow
        end local 0 // java.lang.Class cl
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   13     0          cl  Ljava/lang/Class<*>;
            2    9     1  interfaces  [Ljava/lang/Class;
            3    8     2           i  I
    Exceptions:
      throws java.lang.ClassNotFoundException
    Signature: (Ljava/lang/Class<*>;)Ljava/lang/Class<*>;
    MethodParameters:
      Name  Flags
      cl    

  private static java.lang.Class<?>[] getRemoteInterfaces(java.lang.Class<?>);
    descriptor: (Ljava/lang/Class;)[Ljava/lang/Class;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // java.lang.Class remoteClass
         0: .line 212
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 1 /* list */
        start local 1 // java.util.ArrayList list
         1: .line 213
            aload 1 /* list */
            aload 0 /* remoteClass */
            invokestatic sun.rmi.server.Util.getRemoteInterfaces:(Ljava/util/ArrayList;Ljava/lang/Class;)V
         2: .line 214
            aload 1 /* list */
            aload 1 /* list */
            invokevirtual java.util.ArrayList.size:()I
            anewarray java.lang.Class
            invokevirtual java.util.ArrayList.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
            checkcast java.lang.Class[]
            areturn
        end local 1 // java.util.ArrayList list
        end local 0 // java.lang.Class remoteClass
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    3     0  remoteClass  Ljava/lang/Class<*>;
            1    3     1         list  Ljava/util/ArrayList<Ljava/lang/Class<*>;>;
    Signature: (Ljava/lang/Class<*>;)[Ljava/lang/Class<*>;
    MethodParameters:
             Name  Flags
      remoteClass  

  private static void getRemoteInterfaces(java.util.ArrayList<java.lang.Class<?>>, java.lang.Class<?>);
    descriptor: (Ljava/util/ArrayList;Ljava/lang/Class;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=8, args_size=2
        start local 0 // java.util.ArrayList list
        start local 1 // java.lang.Class cl
         0: .line 226
            aload 1 /* cl */
            invokevirtual java.lang.Class.getSuperclass:()Ljava/lang/Class;
            astore 2 /* superclass */
        start local 2 // java.lang.Class superclass
         1: .line 227
            aload 2 /* superclass */
            ifnull 3
         2: .line 228
            aload 0 /* list */
            aload 2 /* superclass */
            invokestatic sun.rmi.server.Util.getRemoteInterfaces:(Ljava/util/ArrayList;Ljava/lang/Class;)V
         3: .line 231
      StackMap locals: java.lang.Class
      StackMap stack:
            aload 1 /* cl */
            invokevirtual java.lang.Class.getInterfaces:()[Ljava/lang/Class;
            astore 3 /* interfaces */
        start local 3 // java.lang.Class[] interfaces
         4: .line 232
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         5: goto 17
         6: .line 233
      StackMap locals: java.lang.Class[] int
      StackMap stack:
            aload 3 /* interfaces */
            iload 4 /* i */
            aaload
            astore 5 /* intf */
        start local 5 // java.lang.Class intf
         7: .line 239
            ldc Ljava/rmi/Remote;
            aload 5 /* intf */
            invokevirtual java.lang.Class.isAssignableFrom:(Ljava/lang/Class;)Z
            ifeq 16
         8: .line 240
            aload 0 /* list */
            aload 5 /* intf */
            invokevirtual java.util.ArrayList.contains:(Ljava/lang/Object;)Z
            ifne 16
         9: .line 241
            aload 5 /* intf */
            invokevirtual java.lang.Class.getMethods:()[Ljava/lang/reflect/Method;
            astore 6 /* methods */
        start local 6 // java.lang.reflect.Method[] methods
        10: .line 242
            iconst_0
            istore 7 /* j */
        start local 7 // int j
        11: goto 14
        12: .line 243
      StackMap locals: java.lang.Class java.lang.reflect.Method[] int
      StackMap stack:
            aload 6 /* methods */
            iload 7 /* j */
            aaload
            invokestatic sun.rmi.server.Util.checkMethod:(Ljava/lang/reflect/Method;)V
        13: .line 242
            iinc 7 /* j */ 1
      StackMap locals:
      StackMap stack:
        14: iload 7 /* j */
            aload 6 /* methods */
            arraylength
            if_icmplt 12
        end local 7 // int j
        15: .line 245
            aload 0 /* list */
            aload 5 /* intf */
            invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
            pop
        end local 6 // java.lang.reflect.Method[] methods
        end local 5 // java.lang.Class intf
        16: .line 232
      StackMap locals:
      StackMap stack:
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
        17: iload 4 /* i */
            aload 3 /* interfaces */
            arraylength
            if_icmplt 6
        end local 4 // int i
        18: .line 249
            return
        end local 3 // java.lang.Class[] interfaces
        end local 2 // java.lang.Class superclass
        end local 1 // java.lang.Class cl
        end local 0 // java.util.ArrayList list
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   19     0        list  Ljava/util/ArrayList<Ljava/lang/Class<*>;>;
            0   19     1          cl  Ljava/lang/Class<*>;
            1   19     2  superclass  Ljava/lang/Class<*>;
            4   19     3  interfaces  [Ljava/lang/Class;
            5   18     4           i  I
            7   16     5        intf  Ljava/lang/Class<*>;
           10   16     6     methods  [Ljava/lang/reflect/Method;
           11   15     7           j  I
    Signature: (Ljava/util/ArrayList<Ljava/lang/Class<*>;>;Ljava/lang/Class<*>;)V
    MethodParameters:
      Name  Flags
      list  
      cl    

  private static void checkMethod(java.lang.reflect.Method);
    descriptor: (Ljava/lang/reflect/Method;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=5, locals=3, args_size=1
        start local 0 // java.lang.reflect.Method m
         0: .line 259
            aload 0 /* m */
            invokevirtual java.lang.reflect.Method.getExceptionTypes:()[Ljava/lang/Class;
            astore 1 /* ex */
        start local 1 // java.lang.Class[] ex
         1: .line 260
            iconst_0
            istore 2 /* i */
        start local 2 // int i
         2: goto 6
         3: .line 261
      StackMap locals: java.lang.Class[] int
      StackMap stack:
            aload 1 /* ex */
            iload 2 /* i */
            aaload
            ldc Ljava/rmi/RemoteException;
            invokevirtual java.lang.Class.isAssignableFrom:(Ljava/lang/Class;)Z
            ifeq 5
         4: .line 262
            return
         5: .line 260
      StackMap locals:
      StackMap stack:
            iinc 2 /* i */ 1
      StackMap locals:
      StackMap stack:
         6: iload 2 /* i */
            aload 1 /* ex */
            arraylength
            if_icmplt 3
        end local 2 // int i
         7: .line 264
            new java.lang.IllegalArgumentException
            dup
         8: .line 265
            new java.lang.StringBuilder
            dup
            ldc "illegal remote method encountered: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* m */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         9: .line 264
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        end local 1 // java.lang.Class[] ex
        end local 0 // java.lang.reflect.Method m
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   10     0     m  Ljava/lang/reflect/Method;
            1   10     1    ex  [Ljava/lang/Class;
            2    7     2     i  I
    MethodParameters:
      Name  Flags
      m     

  private static java.rmi.server.RemoteStub createStub(java.lang.Class<?>, java.rmi.server.RemoteRef);
    descriptor: (Ljava/lang/Class;Ljava/rmi/server/RemoteRef;)Ljava/rmi/server/RemoteStub;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=5, locals=5, args_size=2
        start local 0 // java.lang.Class remoteClass
        start local 1 // java.rmi.server.RemoteRef ref
         0: .line 280
            new java.lang.StringBuilder
            dup
            aload 0 /* remoteClass */
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc "_Stub"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 2 /* stubname */
        start local 2 // java.lang.String stubname
         1: .line 289
            aload 2 /* stubname */
            iconst_0
            aload 0 /* remoteClass */
            invokevirtual java.lang.Class.getClassLoader:()Ljava/lang/ClassLoader;
            invokestatic java.lang.Class.forName:(Ljava/lang/String;ZLjava/lang/ClassLoader;)Ljava/lang/Class;
         2: .line 288
            astore 3 /* stubcl */
        start local 3 // java.lang.Class stubcl
         3: .line 290
            aload 3 /* stubcl */
            getstatic sun.rmi.server.Util.stubConsParamTypes:[Ljava/lang/Class;
            invokevirtual java.lang.Class.getConstructor:([Ljava/lang/Class;)Ljava/lang/reflect/Constructor;
            astore 4 /* cons */
        start local 4 // java.lang.reflect.Constructor cons
         4: .line 291
            aload 4 /* cons */
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 1 /* ref */
            aastore
            invokevirtual java.lang.reflect.Constructor.newInstance:([Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.rmi.server.RemoteStub
         5: areturn
        end local 4 // java.lang.reflect.Constructor cons
        end local 3 // java.lang.Class stubcl
         6: .line 293
      StackMap locals: java.lang.Class java.rmi.server.RemoteRef java.lang.String
      StackMap stack: java.lang.ClassNotFoundException
            astore 3 /* e */
        start local 3 // java.lang.ClassNotFoundException e
         7: .line 294
            new java.rmi.StubNotFoundException
            dup
         8: .line 295
            new java.lang.StringBuilder
            dup
            ldc "Stub class not found: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 2 /* stubname */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            aload 3 /* e */
         9: .line 294
            invokespecial java.rmi.StubNotFoundException.<init>:(Ljava/lang/String;Ljava/lang/Exception;)V
            athrow
        end local 3 // java.lang.ClassNotFoundException e
        10: .line 296
      StackMap locals:
      StackMap stack: java.lang.NoSuchMethodException
            astore 3 /* e */
        start local 3 // java.lang.NoSuchMethodException e
        11: .line 297
            new java.rmi.StubNotFoundException
            dup
        12: .line 298
            new java.lang.StringBuilder
            dup
            ldc "Stub class missing constructor: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 2 /* stubname */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            aload 3 /* e */
        13: .line 297
            invokespecial java.rmi.StubNotFoundException.<init>:(Ljava/lang/String;Ljava/lang/Exception;)V
            athrow
        end local 3 // java.lang.NoSuchMethodException e
        14: .line 299
      StackMap locals:
      StackMap stack: java.lang.InstantiationException
            astore 3 /* e */
        start local 3 // java.lang.InstantiationException e
        15: .line 300
            new java.rmi.StubNotFoundException
            dup
        16: .line 301
            new java.lang.StringBuilder
            dup
            ldc "Can't create instance of stub class: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 2 /* stubname */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            aload 3 /* e */
        17: .line 300
            invokespecial java.rmi.StubNotFoundException.<init>:(Ljava/lang/String;Ljava/lang/Exception;)V
            athrow
        end local 3 // java.lang.InstantiationException e
        18: .line 302
      StackMap locals:
      StackMap stack: java.lang.IllegalAccessException
            astore 3 /* e */
        start local 3 // java.lang.IllegalAccessException e
        19: .line 303
            new java.rmi.StubNotFoundException
            dup
        20: .line 304
            new java.lang.StringBuilder
            dup
            ldc "Stub class constructor not public: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 2 /* stubname */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            aload 3 /* e */
        21: .line 303
            invokespecial java.rmi.StubNotFoundException.<init>:(Ljava/lang/String;Ljava/lang/Exception;)V
            athrow
        end local 3 // java.lang.IllegalAccessException e
        22: .line 305
      StackMap locals:
      StackMap stack: java.lang.reflect.InvocationTargetException
            astore 3 /* e */
        start local 3 // java.lang.reflect.InvocationTargetException e
        23: .line 306
            new java.rmi.StubNotFoundException
            dup
        24: .line 307
            new java.lang.StringBuilder
            dup
            ldc "Exception creating instance of stub class: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 2 /* stubname */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            aload 3 /* e */
        25: .line 306
            invokespecial java.rmi.StubNotFoundException.<init>:(Ljava/lang/String;Ljava/lang/Exception;)V
            athrow
        end local 3 // java.lang.reflect.InvocationTargetException e
        26: .line 308
      StackMap locals:
      StackMap stack: java.lang.ClassCastException
            astore 3 /* e */
        start local 3 // java.lang.ClassCastException e
        27: .line 309
            new java.rmi.StubNotFoundException
            dup
        28: .line 310
            new java.lang.StringBuilder
            dup
            ldc "Stub class not instance of RemoteStub: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 2 /* stubname */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            aload 3 /* e */
        29: .line 309
            invokespecial java.rmi.StubNotFoundException.<init>:(Ljava/lang/String;Ljava/lang/Exception;)V
            athrow
        end local 3 // java.lang.ClassCastException e
        end local 2 // java.lang.String stubname
        end local 1 // java.rmi.server.RemoteRef ref
        end local 0 // java.lang.Class remoteClass
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   30     0  remoteClass  Ljava/lang/Class<*>;
            0   30     1          ref  Ljava/rmi/server/RemoteRef;
            1   30     2     stubname  Ljava/lang/String;
            3    6     3       stubcl  Ljava/lang/Class<*>;
            4    6     4         cons  Ljava/lang/reflect/Constructor<*>;
            7   10     3            e  Ljava/lang/ClassNotFoundException;
           11   14     3            e  Ljava/lang/NoSuchMethodException;
           15   18     3            e  Ljava/lang/InstantiationException;
           19   22     3            e  Ljava/lang/IllegalAccessException;
           23   26     3            e  Ljava/lang/reflect/InvocationTargetException;
           27   30     3            e  Ljava/lang/ClassCastException;
      Exception table:
        from    to  target  type
           1     5       6  Class java.lang.ClassNotFoundException
           1     5      10  Class java.lang.NoSuchMethodException
           1     5      14  Class java.lang.InstantiationException
           1     5      18  Class java.lang.IllegalAccessException
           1     5      22  Class java.lang.reflect.InvocationTargetException
           1     5      26  Class java.lang.ClassCastException
    Exceptions:
      throws java.rmi.StubNotFoundException
    Signature: (Ljava/lang/Class<*>;Ljava/rmi/server/RemoteRef;)Ljava/rmi/server/RemoteStub;
    MethodParameters:
             Name  Flags
      remoteClass  
      ref          

  static java.rmi.server.Skeleton createSkeleton(java.rmi.Remote);
    descriptor: (Ljava/rmi/Remote;)Ljava/rmi/server/Skeleton;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=5, locals=4, args_size=1
        start local 0 // java.rmi.Remote object
         0: .line 322
            aload 0 /* object */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            invokestatic sun.rmi.server.Util.getRemoteClass:(Ljava/lang/Class;)Ljava/lang/Class;
            astore 1 /* cl */
        start local 1 // java.lang.Class cl
         1: .line 323
            goto 8
        end local 1 // java.lang.Class cl
      StackMap locals:
      StackMap stack: java.lang.ClassNotFoundException
         2: pop
         3: .line 324
            new java.rmi.server.SkeletonNotFoundException
            dup
         4: .line 325
            new java.lang.StringBuilder
            dup
            ldc "object does not implement a remote interface: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
         5: .line 326
            aload 0 /* object */
            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;
         6: .line 325
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         7: .line 324
            invokespecial java.rmi.server.SkeletonNotFoundException.<init>:(Ljava/lang/String;)V
            athrow
        start local 1 // java.lang.Class cl
         8: .line 330
      StackMap locals: java.lang.Class
      StackMap stack:
            new java.lang.StringBuilder
            dup
            aload 1 /* cl */
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc "_Skel"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 2 /* skelname */
        start local 2 // java.lang.String skelname
         9: .line 332
            aload 2 /* skelname */
            iconst_0
            aload 1 /* cl */
            invokevirtual java.lang.Class.getClassLoader:()Ljava/lang/ClassLoader;
            invokestatic java.lang.Class.forName:(Ljava/lang/String;ZLjava/lang/ClassLoader;)Ljava/lang/Class;
            astore 3 /* skelcl */
        start local 3 // java.lang.Class skelcl
        10: .line 334
            aload 3 /* skelcl */
            invokevirtual java.lang.Class.newInstance:()Ljava/lang/Object;
            checkcast java.rmi.server.Skeleton
        11: areturn
        end local 3 // java.lang.Class skelcl
        12: .line 335
      StackMap locals: java.rmi.Remote java.lang.Class java.lang.String
      StackMap stack: java.lang.ClassNotFoundException
            astore 3 /* ex */
        start local 3 // java.lang.ClassNotFoundException ex
        13: .line 336
            new java.rmi.server.SkeletonNotFoundException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Skeleton class not found: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        14: .line 337
            aload 2 /* skelname */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            aload 3 /* ex */
        15: .line 336
            invokespecial java.rmi.server.SkeletonNotFoundException.<init>:(Ljava/lang/String;Ljava/lang/Exception;)V
            athrow
        end local 3 // java.lang.ClassNotFoundException ex
        16: .line 338
      StackMap locals:
      StackMap stack: java.lang.InstantiationException
            astore 3 /* ex */
        start local 3 // java.lang.InstantiationException ex
        17: .line 339
            new java.rmi.server.SkeletonNotFoundException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Can't create skeleton: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        18: .line 340
            aload 2 /* skelname */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            aload 3 /* ex */
        19: .line 339
            invokespecial java.rmi.server.SkeletonNotFoundException.<init>:(Ljava/lang/String;Ljava/lang/Exception;)V
            athrow
        end local 3 // java.lang.InstantiationException ex
        20: .line 341
      StackMap locals:
      StackMap stack: java.lang.IllegalAccessException
            astore 3 /* ex */
        start local 3 // java.lang.IllegalAccessException ex
        21: .line 342
            new java.rmi.server.SkeletonNotFoundException
            dup
            new java.lang.StringBuilder
            dup
            ldc "No public constructor: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        22: .line 343
            aload 2 /* skelname */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            aload 3 /* ex */
        23: .line 342
            invokespecial java.rmi.server.SkeletonNotFoundException.<init>:(Ljava/lang/String;Ljava/lang/Exception;)V
            athrow
        end local 3 // java.lang.IllegalAccessException ex
        24: .line 344
      StackMap locals:
      StackMap stack: java.lang.ClassCastException
            astore 3 /* ex */
        start local 3 // java.lang.ClassCastException ex
        25: .line 345
            new java.rmi.server.SkeletonNotFoundException
            dup
        26: .line 346
            new java.lang.StringBuilder
            dup
            ldc "Skeleton not of correct class: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 2 /* skelname */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            aload 3 /* ex */
        27: .line 345
            invokespecial java.rmi.server.SkeletonNotFoundException.<init>:(Ljava/lang/String;Ljava/lang/Exception;)V
            athrow
        end local 3 // java.lang.ClassCastException ex
        end local 2 // java.lang.String skelname
        end local 1 // java.lang.Class cl
        end local 0 // java.rmi.Remote object
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   28     0    object  Ljava/rmi/Remote;
            1    2     1        cl  Ljava/lang/Class<*>;
            8   28     1        cl  Ljava/lang/Class<*>;
            9   28     2  skelname  Ljava/lang/String;
           10   12     3    skelcl  Ljava/lang/Class<*>;
           13   16     3        ex  Ljava/lang/ClassNotFoundException;
           17   20     3        ex  Ljava/lang/InstantiationException;
           21   24     3        ex  Ljava/lang/IllegalAccessException;
           25   28     3        ex  Ljava/lang/ClassCastException;
      Exception table:
        from    to  target  type
           0     1       2  Class java.lang.ClassNotFoundException
           9    11      12  Class java.lang.ClassNotFoundException
           9    11      16  Class java.lang.InstantiationException
           9    11      20  Class java.lang.IllegalAccessException
           9    11      24  Class java.lang.ClassCastException
    Exceptions:
      throws java.rmi.server.SkeletonNotFoundException
    MethodParameters:
        Name  Flags
      object  

  public static long computeMethodHash(java.lang.reflect.Method);
    descriptor: (Ljava/lang/reflect/Method;)J
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=6, locals=9, args_size=1
        start local 0 // java.lang.reflect.Method m
         0: .line 356
            lconst_0
            lstore 1 /* hash */
        start local 1 // long hash
         1: .line 357
            new java.io.ByteArrayOutputStream
            dup
            bipush 127
            invokespecial java.io.ByteArrayOutputStream.<init>:(I)V
            astore 3 /* sink */
        start local 3 // java.io.ByteArrayOutputStream sink
         2: .line 359
            ldc "SHA"
            invokestatic java.security.MessageDigest.getInstance:(Ljava/lang/String;)Ljava/security/MessageDigest;
            astore 4 /* md */
        start local 4 // java.security.MessageDigest md
         3: .line 360
            new java.io.DataOutputStream
            dup
         4: .line 361
            new java.security.DigestOutputStream
            dup
            aload 3 /* sink */
            aload 4 /* md */
            invokespecial java.security.DigestOutputStream.<init>:(Ljava/io/OutputStream;Ljava/security/MessageDigest;)V
         5: .line 360
            invokespecial java.io.DataOutputStream.<init>:(Ljava/io/OutputStream;)V
            astore 5 /* out */
        start local 5 // java.io.DataOutputStream out
         6: .line 363
            aload 0 /* m */
            invokestatic sun.rmi.server.Util.getMethodNameAndDescriptor:(Ljava/lang/reflect/Method;)Ljava/lang/String;
            astore 6 /* s */
        start local 6 // java.lang.String s
         7: .line 364
            getstatic sun.rmi.server.Util.serverRefLog: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 11
         8: .line 365
            getstatic sun.rmi.server.Util.serverRefLog:Lsun/rmi/runtime/Log;
            getstatic sun.rmi.runtime.Log.VERBOSE:Ljava/util/logging/Level;
         9: .line 366
            new java.lang.StringBuilder
            dup
            ldc "string used for method hash: \""
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 6 /* s */
            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;
        10: .line 365
            invokevirtual sun.rmi.runtime.Log.log:(Ljava/util/logging/Level;Ljava/lang/String;)V
        11: .line 368
      StackMap locals: java.lang.reflect.Method long java.io.ByteArrayOutputStream java.security.MessageDigest java.io.DataOutputStream java.lang.String
      StackMap stack:
            aload 5 /* out */
            aload 6 /* s */
            invokevirtual java.io.DataOutputStream.writeUTF:(Ljava/lang/String;)V
        12: .line 371
            aload 5 /* out */
            invokevirtual java.io.DataOutputStream.flush:()V
        13: .line 372
            aload 4 /* md */
            invokevirtual java.security.MessageDigest.digest:()[B
            astore 7 /* hasharray */
        start local 7 // byte[] hasharray
        14: .line 373
            iconst_0
            istore 8 /* i */
        start local 8 // int i
        15: goto 18
        16: .line 374
      StackMap locals: byte[] int
      StackMap stack:
            lload 1 /* hash */
            aload 7 /* hasharray */
            iload 8 /* i */
            baload
            sipush 255
            iand
            i2l
            iload 8 /* i */
            bipush 8
            imul
            lshl
            ladd
            lstore 1 /* hash */
        17: .line 373
            iinc 8 /* i */ 1
      StackMap locals:
      StackMap stack:
        18: iload 8 /* i */
            bipush 8
            aload 7 /* hasharray */
            arraylength
            invokestatic java.lang.Math.min:(II)I
            if_icmplt 16
        end local 8 // int i
        end local 7 // byte[] hasharray
        end local 6 // java.lang.String s
        end local 5 // java.io.DataOutputStream out
        end local 4 // java.security.MessageDigest md
        19: .line 376
            goto 24
      StackMap locals: java.lang.reflect.Method long java.io.ByteArrayOutputStream
      StackMap stack: java.io.IOException
        20: pop
        21: .line 378
            ldc -1
            lstore 1 /* hash */
            goto 24
        22: .line 379
      StackMap locals:
      StackMap stack: java.security.NoSuchAlgorithmException
            astore 4 /* complain */
        start local 4 // java.security.NoSuchAlgorithmException complain
        23: .line 380
            new java.lang.SecurityException
            dup
            aload 4 /* complain */
            invokevirtual java.security.NoSuchAlgorithmException.getMessage:()Ljava/lang/String;
            invokespecial java.lang.SecurityException.<init>:(Ljava/lang/String;)V
            athrow
        end local 4 // java.security.NoSuchAlgorithmException complain
        24: .line 382
      StackMap locals:
      StackMap stack:
            lload 1 /* hash */
            lreturn
        end local 3 // java.io.ByteArrayOutputStream sink
        end local 1 // long hash
        end local 0 // java.lang.reflect.Method m
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   25     0          m  Ljava/lang/reflect/Method;
            1   25     1       hash  J
            2   25     3       sink  Ljava/io/ByteArrayOutputStream;
            3   19     4         md  Ljava/security/MessageDigest;
            6   19     5        out  Ljava/io/DataOutputStream;
            7   19     6          s  Ljava/lang/String;
           14   19     7  hasharray  [B
           15   19     8          i  I
           23   24     4   complain  Ljava/security/NoSuchAlgorithmException;
      Exception table:
        from    to  target  type
           2    19      20  Class java.io.IOException
           2    19      22  Class java.security.NoSuchAlgorithmException
    MethodParameters:
      Name  Flags
      m     

  private static java.lang.String getMethodNameAndDescriptor(java.lang.reflect.Method);
    descriptor: (Ljava/lang/reflect/Method;)Ljava/lang/String;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=4, args_size=1
        start local 0 // java.lang.reflect.Method m
         0: .line 394
            new java.lang.StringBuilder
            dup
            aload 0 /* m */
            invokevirtual java.lang.reflect.Method.getName:()Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            astore 1 /* desc */
        start local 1 // java.lang.StringBuilder desc
         1: .line 395
            aload 1 /* desc */
            bipush 40
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
         2: .line 396
            aload 0 /* m */
            invokevirtual java.lang.reflect.Method.getParameterTypes:()[Ljava/lang/Class;
            astore 2 /* paramTypes */
        start local 2 // java.lang.Class[] paramTypes
         3: .line 397
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         4: goto 7
         5: .line 398
      StackMap locals: java.lang.StringBuilder java.lang.Class[] int
      StackMap stack:
            aload 1 /* desc */
            aload 2 /* paramTypes */
            iload 3 /* i */
            aaload
            invokestatic sun.rmi.server.Util.getTypeDescriptor:(Ljava/lang/Class;)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
         6: .line 397
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
         7: iload 3 /* i */
            aload 2 /* paramTypes */
            arraylength
            if_icmplt 5
        end local 3 // int i
         8: .line 400
            aload 1 /* desc */
            bipush 41
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
         9: .line 401
            aload 0 /* m */
            invokevirtual java.lang.reflect.Method.getReturnType:()Ljava/lang/Class;
            astore 3 /* returnType */
        start local 3 // java.lang.Class returnType
        10: .line 402
            aload 3 /* returnType */
            getstatic java.lang.Void.TYPE:Ljava/lang/Class;
            if_acmpne 13
        11: .line 403
            aload 1 /* desc */
            bipush 86
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        12: .line 404
            goto 14
        13: .line 405
      StackMap locals: java.lang.reflect.Method java.lang.StringBuilder java.lang.Class[] java.lang.Class
      StackMap stack:
            aload 1 /* desc */
            aload 3 /* returnType */
            invokestatic sun.rmi.server.Util.getTypeDescriptor:(Ljava/lang/Class;)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        14: .line 407
      StackMap locals:
      StackMap stack:
            aload 1 /* desc */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 3 // java.lang.Class returnType
        end local 2 // java.lang.Class[] paramTypes
        end local 1 // java.lang.StringBuilder desc
        end local 0 // java.lang.reflect.Method m
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   15     0           m  Ljava/lang/reflect/Method;
            1   15     1        desc  Ljava/lang/StringBuilder;
            3   15     2  paramTypes  [Ljava/lang/Class;
            4    8     3           i  I
           10   15     3  returnType  Ljava/lang/Class<*>;
    MethodParameters:
      Name  Flags
      m     

  private static java.lang.String getTypeDescriptor(java.lang.Class<?>);
    descriptor: (Ljava/lang/Class;)Ljava/lang/String;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=5, locals=1, args_size=1
        start local 0 // java.lang.Class type
         0: .line 415
            aload 0 /* type */
            invokevirtual java.lang.Class.isPrimitive:()Z
            ifeq 20
         1: .line 416
            aload 0 /* type */
            getstatic java.lang.Integer.TYPE:Ljava/lang/Class;
            if_acmpne 3
         2: .line 417
            ldc "I"
            areturn
         3: .line 418
      StackMap locals:
      StackMap stack:
            aload 0 /* type */
            getstatic java.lang.Boolean.TYPE:Ljava/lang/Class;
            if_acmpne 5
         4: .line 419
            ldc "Z"
            areturn
         5: .line 420
      StackMap locals:
      StackMap stack:
            aload 0 /* type */
            getstatic java.lang.Byte.TYPE:Ljava/lang/Class;
            if_acmpne 7
         6: .line 421
            ldc "B"
            areturn
         7: .line 422
      StackMap locals:
      StackMap stack:
            aload 0 /* type */
            getstatic java.lang.Character.TYPE:Ljava/lang/Class;
            if_acmpne 9
         8: .line 423
            ldc "C"
            areturn
         9: .line 424
      StackMap locals:
      StackMap stack:
            aload 0 /* type */
            getstatic java.lang.Short.TYPE:Ljava/lang/Class;
            if_acmpne 11
        10: .line 425
            ldc "S"
            areturn
        11: .line 426
      StackMap locals:
      StackMap stack:
            aload 0 /* type */
            getstatic java.lang.Long.TYPE:Ljava/lang/Class;
            if_acmpne 13
        12: .line 427
            ldc "J"
            areturn
        13: .line 428
      StackMap locals:
      StackMap stack:
            aload 0 /* type */
            getstatic java.lang.Float.TYPE:Ljava/lang/Class;
            if_acmpne 15
        14: .line 429
            ldc "F"
            areturn
        15: .line 430
      StackMap locals:
      StackMap stack:
            aload 0 /* type */
            getstatic java.lang.Double.TYPE:Ljava/lang/Class;
            if_acmpne 17
        16: .line 431
            ldc "D"
            areturn
        17: .line 432
      StackMap locals:
      StackMap stack:
            aload 0 /* type */
            getstatic java.lang.Void.TYPE:Ljava/lang/Class;
            if_acmpne 19
        18: .line 433
            ldc "V"
            areturn
        19: .line 435
      StackMap locals:
      StackMap stack:
            new java.lang.Error
            dup
            new java.lang.StringBuilder
            dup
            ldc "unrecognized primitive type: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* type */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
            athrow
        20: .line 437
      StackMap locals:
      StackMap stack:
            aload 0 /* type */
            invokevirtual java.lang.Class.isArray:()Z
            ifeq 22
        21: .line 445
            aload 0 /* type */
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            bipush 46
            bipush 47
            invokevirtual java.lang.String.replace:(CC)Ljava/lang/String;
            areturn
        22: .line 447
      StackMap locals:
      StackMap stack:
            new java.lang.StringBuilder
            dup
            ldc "L"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* type */
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            bipush 46
            bipush 47
            invokevirtual java.lang.String.replace:(CC)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;
            areturn
        end local 0 // java.lang.Class type
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   23     0  type  Ljava/lang/Class<*>;
    Signature: (Ljava/lang/Class<*>;)Ljava/lang/String;
    MethodParameters:
      Name  Flags
      type  

  public static java.lang.String getUnqualifiedName(java.lang.Class<?>);
    descriptor: (Ljava/lang/Class;)Ljava/lang/String;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=2, args_size=1
        start local 0 // java.lang.Class c
         0: .line 460
            aload 0 /* c */
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            astore 1 /* binaryName */
        start local 1 // java.lang.String binaryName
         1: .line 461
            aload 1 /* binaryName */
            aload 1 /* binaryName */
            bipush 46
            invokevirtual java.lang.String.lastIndexOf:(I)I
            iconst_1
            iadd
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            areturn
        end local 1 // java.lang.String binaryName
        end local 0 // java.lang.Class c
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    2     0           c  Ljava/lang/Class<*>;
            1    2     1  binaryName  Ljava/lang/String;
    Signature: (Ljava/lang/Class<*>;)Ljava/lang/String;
    MethodParameters:
      Name  Flags
      c     

  private static java.lang.String lambda$0();
    descriptor: ()Ljava/lang/String;
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 71
            ldc "sun.rmi.server.logLevel"
            invokestatic java.lang.System.getProperty:(Ljava/lang/String;)Ljava/lang/String;
            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 80
            ldc "java.rmi.server.ignoreStubClasses"
            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
}
SourceFile: "Util.java"
NestMembers:
  sun.rmi.server.Util$1
InnerClasses:
  public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles
  sun.rmi.server.Util$1