public abstract class com.google.crypto.tink.PrivateKeyTypeManager<KeyProtoT extends com.google.protobuf.MessageLite, PublicKeyProtoT extends com.google.protobuf.MessageLite> extends com.google.crypto.tink.KeyTypeManager<KeyProtoT>
  minor version: 0
  major version: 59
  flags: flags: (0x0421) ACC_PUBLIC, ACC_SUPER, ACC_ABSTRACT
  this_class: com.google.crypto.tink.PrivateKeyTypeManager
  super_class: com.google.crypto.tink.KeyTypeManager
{
  private final java.lang.Class<PublicKeyProtoT> publicKeyClazz;
    descriptor: Ljava/lang/Class;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/lang/Class<TPublicKeyProtoT;>;

  protected void <init>(java.lang.Class<KeyProtoT>, java.lang.Class<PublicKeyProtoT>, com.google.crypto.tink.KeyTypeManager$PrimitiveFactory<?, KeyProtoT>[]);
    descriptor: (Ljava/lang/Class;Ljava/lang/Class;[Lcom/google/crypto/tink/KeyTypeManager$PrimitiveFactory;)V
    flags: (0x0084) ACC_PROTECTED, ACC_VARARGS
    Code:
      stack=3, locals=4, args_size=4
        start local 0 // com.google.crypto.tink.PrivateKeyTypeManager this
        start local 1 // java.lang.Class clazz
        start local 2 // java.lang.Class publicKeyClazz
        start local 3 // com.google.crypto.tink.KeyTypeManager$PrimitiveFactory[] factories
         0: .line 35
            aload 0 /* this */
            aload 1 /* clazz */
            aload 3 /* factories */
            invokespecial com.google.crypto.tink.KeyTypeManager.<init>:(Ljava/lang/Class;[Lcom/google/crypto/tink/KeyTypeManager$PrimitiveFactory;)V
         1: .line 36
            aload 0 /* this */
            aload 2 /* publicKeyClazz */
            putfield com.google.crypto.tink.PrivateKeyTypeManager.publicKeyClazz:Ljava/lang/Class;
         2: .line 37
            return
        end local 3 // com.google.crypto.tink.KeyTypeManager$PrimitiveFactory[] factories
        end local 2 // java.lang.Class publicKeyClazz
        end local 1 // java.lang.Class clazz
        end local 0 // com.google.crypto.tink.PrivateKeyTypeManager this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    3     0            this  Lcom/google/crypto/tink/PrivateKeyTypeManager<TKeyProtoT;TPublicKeyProtoT;>;
            0    3     1           clazz  Ljava/lang/Class<TKeyProtoT;>;
            0    3     2  publicKeyClazz  Ljava/lang/Class<TPublicKeyProtoT;>;
            0    3     3       factories  [Lcom/google/crypto/tink/KeyTypeManager$PrimitiveFactory;
    Signature: (Ljava/lang/Class<TKeyProtoT;>;Ljava/lang/Class<TPublicKeyProtoT;>;[Lcom/google/crypto/tink/KeyTypeManager$PrimitiveFactory<*TKeyProtoT;>;)V
    RuntimeVisibleAnnotations: 
      java.lang.SafeVarargs()
    MethodParameters:
                Name  Flags
      clazz           
      publicKeyClazz  
      factories       

  public final java.lang.Class<PublicKeyProtoT> getPublicKeyClass();
    descriptor: ()Ljava/lang/Class;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.google.crypto.tink.PrivateKeyTypeManager this
         0: .line 43
            aload 0 /* this */
            getfield com.google.crypto.tink.PrivateKeyTypeManager.publicKeyClazz:Ljava/lang/Class;
            areturn
        end local 0 // com.google.crypto.tink.PrivateKeyTypeManager this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/google/crypto/tink/PrivateKeyTypeManager<TKeyProtoT;TPublicKeyProtoT;>;
    Signature: ()Ljava/lang/Class<TPublicKeyProtoT;>;

  public abstract PublicKeyProtoT getPublicKey();
    descriptor: (Lcom/google/protobuf/MessageLite;)Lcom/google/protobuf/MessageLite;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Exceptions:
      throws java.security.GeneralSecurityException
    Signature: (TKeyProtoT;)TPublicKeyProtoT;
    MethodParameters:
          Name  Flags
      keyProto  
}
Signature: <KeyProtoT::Lcom/google/protobuf/MessageLite;PublicKeyProtoT::Lcom/google/protobuf/MessageLite;>Lcom/google/crypto/tink/KeyTypeManager<TKeyProtoT;>;
SourceFile: "PrivateKeyTypeManager.java"
InnerClasses:
  protected abstract PrimitiveFactory = com.google.crypto.tink.KeyTypeManager$PrimitiveFactory of com.google.crypto.tink.KeyTypeManager
    RuntimeInvisibleAnnotations: 
      com.google.crypto.tink.annotations.Alpha()