public final class java.rmi.server.ObjID implements java.io.Serializable
  minor version: 0
  major version: 59
  flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
  this_class: java.rmi.server.ObjID
  super_class: java.lang.Object
{
  public static final int REGISTRY_ID;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 0

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

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

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

  private static final java.util.concurrent.atomic.AtomicLong nextObjNum;
    descriptor: Ljava/util/concurrent/atomic/AtomicLong;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final java.rmi.server.UID mySpace;
    descriptor: Ljava/rmi/server/UID;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final java.security.SecureRandom secureRandom;
    descriptor: Ljava/security/SecureRandom;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private final long objNum;
    descriptor: J
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final java.rmi.server.UID space;
    descriptor: Ljava/rmi/server/UID;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=4, locals=0, args_size=0
         0: .line 87
            new java.util.concurrent.atomic.AtomicLong
            dup
            lconst_0
            invokespecial java.util.concurrent.atomic.AtomicLong.<init>:(J)V
            putstatic java.rmi.server.ObjID.nextObjNum:Ljava/util/concurrent/atomic/AtomicLong;
         1: .line 88
            new java.rmi.server.UID
            dup
            invokespecial java.rmi.server.UID.<init>:()V
            putstatic java.rmi.server.ObjID.mySpace:Ljava/rmi/server/UID;
         2: .line 89
            new java.security.SecureRandom
            dup
            invokespecial java.security.SecureRandom.<init>:()V
            putstatic java.rmi.server.ObjID.secureRandom:Ljava/security/SecureRandom;
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // java.rmi.server.ObjID this
         0: .line 111
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 117
            invokestatic java.rmi.server.ObjID.useRandomIDs:()Z
            ifeq 5
         2: .line 118
            aload 0 /* this */
            new java.rmi.server.UID
            dup
            invokespecial java.rmi.server.UID.<init>:()V
            putfield java.rmi.server.ObjID.space:Ljava/rmi/server/UID;
         3: .line 119
            aload 0 /* this */
            getstatic java.rmi.server.ObjID.secureRandom:Ljava/security/SecureRandom;
            invokevirtual java.security.SecureRandom.nextLong:()J
            putfield java.rmi.server.ObjID.objNum:J
         4: .line 120
            goto 7
         5: .line 121
      StackMap locals: java.rmi.server.ObjID
      StackMap stack:
            aload 0 /* this */
            getstatic java.rmi.server.ObjID.mySpace:Ljava/rmi/server/UID;
            putfield java.rmi.server.ObjID.space:Ljava/rmi/server/UID;
         6: .line 122
            aload 0 /* this */
            getstatic java.rmi.server.ObjID.nextObjNum:Ljava/util/concurrent/atomic/AtomicLong;
            invokevirtual java.util.concurrent.atomic.AtomicLong.getAndIncrement:()J
            putfield java.rmi.server.ObjID.objNum:J
         7: .line 124
      StackMap locals:
      StackMap stack:
            return
        end local 0 // java.rmi.server.ObjID this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    8     0  this  Ljava/rmi/server/ObjID;

  public void <init>(int);
    descriptor: (I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // java.rmi.server.ObjID this
        start local 1 // int objNum
         0: .line 135
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 136
            aload 0 /* this */
            new java.rmi.server.UID
            dup
            iconst_0
            invokespecial java.rmi.server.UID.<init>:(S)V
            putfield java.rmi.server.ObjID.space:Ljava/rmi/server/UID;
         2: .line 137
            aload 0 /* this */
            iload 1 /* objNum */
            i2l
            putfield java.rmi.server.ObjID.objNum:J
         3: .line 138
            return
        end local 1 // int objNum
        end local 0 // java.rmi.server.ObjID this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    4     0    this  Ljava/rmi/server/ObjID;
            0    4     1  objNum  I
    MethodParameters:
        Name  Flags
      objNum  

  private void <init>(long, java.rmi.server.UID);
    descriptor: (JLjava/rmi/server/UID;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=4, args_size=3
        start local 0 // java.rmi.server.ObjID this
        start local 1 // long objNum
        start local 3 // java.rmi.server.UID space
         0: .line 143
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 144
            aload 0 /* this */
            lload 1 /* objNum */
            putfield java.rmi.server.ObjID.objNum:J
         2: .line 145
            aload 0 /* this */
            aload 3 /* space */
            putfield java.rmi.server.ObjID.space:Ljava/rmi/server/UID;
         3: .line 146
            return
        end local 3 // java.rmi.server.UID space
        end local 1 // long objNum
        end local 0 // java.rmi.server.ObjID this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    4     0    this  Ljava/rmi/server/ObjID;
            0    4     1  objNum  J
            0    4     3   space  Ljava/rmi/server/UID;
    MethodParameters:
        Name  Flags
      objNum  
      space   

  public void write(java.io.ObjectOutput);
    descriptor: (Ljava/io/ObjectOutput;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // java.rmi.server.ObjID this
        start local 1 // java.io.ObjectOutput out
         0: .line 165
            aload 1 /* out */
            aload 0 /* this */
            getfield java.rmi.server.ObjID.objNum:J
            invokeinterface java.io.ObjectOutput.writeLong:(J)V
         1: .line 166
            aload 0 /* this */
            getfield java.rmi.server.ObjID.space:Ljava/rmi/server/UID;
            aload 1 /* out */
            invokevirtual java.rmi.server.UID.write:(Ljava/io/DataOutput;)V
         2: .line 167
            return
        end local 1 // java.io.ObjectOutput out
        end local 0 // java.rmi.server.ObjID this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Ljava/rmi/server/ObjID;
            0    3     1   out  Ljava/io/ObjectOutput;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      out   

  public static java.rmi.server.ObjID read(java.io.ObjectInput);
    descriptor: (Ljava/io/ObjectInput;)Ljava/rmi/server/ObjID;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=4, args_size=1
        start local 0 // java.io.ObjectInput in
         0: .line 191
            aload 0 /* in */
            invokeinterface java.io.ObjectInput.readLong:()J
            lstore 1 /* num */
        start local 1 // long num
         1: .line 192
            aload 0 /* in */
            invokestatic java.rmi.server.UID.read:(Ljava/io/DataInput;)Ljava/rmi/server/UID;
            astore 3 /* space */
        start local 3 // java.rmi.server.UID space
         2: .line 193
            new java.rmi.server.ObjID
            dup
            lload 1 /* num */
            aload 3 /* space */
            invokespecial java.rmi.server.ObjID.<init>:(JLjava/rmi/server/UID;)V
            areturn
        end local 3 // java.rmi.server.UID space
        end local 1 // long num
        end local 0 // java.io.ObjectInput in
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    3     0     in  Ljava/io/ObjectInput;
            1    3     1    num  J
            2    3     3  space  Ljava/rmi/server/UID;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      in    

  public int hashCode();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // java.rmi.server.ObjID this
         0: .line 203
            aload 0 /* this */
            getfield java.rmi.server.ObjID.objNum:J
            l2i
            ireturn
        end local 0 // java.rmi.server.ObjID this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljava/rmi/server/ObjID;

  public boolean equals(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=2
        start local 0 // java.rmi.server.ObjID this
        start local 1 // java.lang.Object obj
         0: .line 220
            aload 1 /* obj */
            instanceof java.rmi.server.ObjID
            ifeq 4
         1: .line 221
            aload 1 /* obj */
            checkcast java.rmi.server.ObjID
            astore 2 /* id */
        start local 2 // java.rmi.server.ObjID id
         2: .line 222
            aload 0 /* this */
            getfield java.rmi.server.ObjID.objNum:J
            aload 2 /* id */
            getfield java.rmi.server.ObjID.objNum:J
            lcmp
            ifne 3
            aload 0 /* this */
            getfield java.rmi.server.ObjID.space:Ljava/rmi/server/UID;
            aload 2 /* id */
            getfield java.rmi.server.ObjID.space:Ljava/rmi/server/UID;
            invokevirtual java.rmi.server.UID.equals:(Ljava/lang/Object;)Z
            ifeq 3
            iconst_1
            ireturn
      StackMap locals: java.rmi.server.ObjID
      StackMap stack:
         3: iconst_0
            ireturn
        end local 2 // java.rmi.server.ObjID id
         4: .line 224
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 1 // java.lang.Object obj
        end local 0 // java.rmi.server.ObjID this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Ljava/rmi/server/ObjID;
            0    5     1   obj  Ljava/lang/Object;
            2    4     2    id  Ljava/rmi/server/ObjID;
    MethodParameters:
      Name  Flags
      obj   

  public java.lang.String toString();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // java.rmi.server.ObjID this
         0: .line 239
            new java.lang.StringBuilder
            dup
            ldc "["
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            getfield java.rmi.server.ObjID.space:Ljava/rmi/server/UID;
            getstatic java.rmi.server.ObjID.mySpace:Ljava/rmi/server/UID;
            invokevirtual java.rmi.server.UID.equals:(Ljava/lang/Object;)Z
            ifeq 1
            ldc ""
            goto 2
      StackMap locals:
      StackMap stack: java.lang.StringBuilder
         1: new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            aload 0 /* this */
            getfield java.rmi.server.ObjID.space:Ljava/rmi/server/UID;
            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;
      StackMap locals: java.rmi.server.ObjID
      StackMap stack: java.lang.StringBuilder java.lang.String
         2: invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         3: .line 240
            aload 0 /* this */
            getfield java.rmi.server.ObjID.objNum:J
            invokevirtual java.lang.StringBuilder.append:(J)Ljava/lang/StringBuilder;
            ldc "]"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         4: .line 239
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 0 // java.rmi.server.ObjID this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Ljava/rmi/server/ObjID;

  private static boolean useRandomIDs();
    descriptor: ()Z
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=1, locals=1, args_size=0
         0: .line 245
            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;
                  java/rmi/server/ObjID.lambda$0()Ljava/lang/String; (6)
                  ()Ljava/lang/String;
         1: .line 244
            invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedAction;)Ljava/lang/Object;
            checkcast java.lang.String
            astore 0 /* value */
        start local 0 // java.lang.String value
         2: .line 246
            aload 0 /* value */
            ifnonnull 3
            iconst_1
            goto 4
      StackMap locals: java.lang.String
      StackMap stack:
         3: aload 0 /* value */
            invokestatic java.lang.Boolean.parseBoolean:(Ljava/lang/String;)Z
      StackMap locals:
      StackMap stack: int
         4: ireturn
        end local 0 // java.lang.String value
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            2    5     0  value  Ljava/lang/String;

  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 245
            ldc "java.rmi.server.randomIDs"
            invokestatic java.lang.System.getProperty:(Ljava/lang/String;)Ljava/lang/String;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
}
SourceFile: "ObjID.java"
InnerClasses:
  public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles