public final class com.google.gson.internal.Primitives
  minor version: 0
  major version: 59
  flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
  this_class: com.google.gson.internal.Primitives
  super_class: java.lang.Object
{
  private static final java.util.Map<java.lang.Class<?>, java.lang.Class<?>> PRIMITIVE_TO_WRAPPER_TYPE;
    descriptor: Ljava/util/Map;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    Signature: Ljava/util/Map<Ljava/lang/Class<*>;Ljava/lang/Class<*>;>;

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

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=4, locals=2, args_size=0
         0: .line 45
            new java.util.HashMap
            dup
            bipush 16
            invokespecial java.util.HashMap.<init>:(I)V
            astore 0 /* primToWrap */
        start local 0 // java.util.Map primToWrap
         1: .line 46
            new java.util.HashMap
            dup
            bipush 16
            invokespecial java.util.HashMap.<init>:(I)V
            astore 1 /* wrapToPrim */
        start local 1 // java.util.Map wrapToPrim
         2: .line 48
            aload 0 /* primToWrap */
            aload 1 /* wrapToPrim */
            getstatic java.lang.Boolean.TYPE:Ljava/lang/Class;
            ldc Ljava/lang/Boolean;
            invokestatic com.google.gson.internal.Primitives.add:(Ljava/util/Map;Ljava/util/Map;Ljava/lang/Class;Ljava/lang/Class;)V
         3: .line 49
            aload 0 /* primToWrap */
            aload 1 /* wrapToPrim */
            getstatic java.lang.Byte.TYPE:Ljava/lang/Class;
            ldc Ljava/lang/Byte;
            invokestatic com.google.gson.internal.Primitives.add:(Ljava/util/Map;Ljava/util/Map;Ljava/lang/Class;Ljava/lang/Class;)V
         4: .line 50
            aload 0 /* primToWrap */
            aload 1 /* wrapToPrim */
            getstatic java.lang.Character.TYPE:Ljava/lang/Class;
            ldc Ljava/lang/Character;
            invokestatic com.google.gson.internal.Primitives.add:(Ljava/util/Map;Ljava/util/Map;Ljava/lang/Class;Ljava/lang/Class;)V
         5: .line 51
            aload 0 /* primToWrap */
            aload 1 /* wrapToPrim */
            getstatic java.lang.Double.TYPE:Ljava/lang/Class;
            ldc Ljava/lang/Double;
            invokestatic com.google.gson.internal.Primitives.add:(Ljava/util/Map;Ljava/util/Map;Ljava/lang/Class;Ljava/lang/Class;)V
         6: .line 52
            aload 0 /* primToWrap */
            aload 1 /* wrapToPrim */
            getstatic java.lang.Float.TYPE:Ljava/lang/Class;
            ldc Ljava/lang/Float;
            invokestatic com.google.gson.internal.Primitives.add:(Ljava/util/Map;Ljava/util/Map;Ljava/lang/Class;Ljava/lang/Class;)V
         7: .line 53
            aload 0 /* primToWrap */
            aload 1 /* wrapToPrim */
            getstatic java.lang.Integer.TYPE:Ljava/lang/Class;
            ldc Ljava/lang/Integer;
            invokestatic com.google.gson.internal.Primitives.add:(Ljava/util/Map;Ljava/util/Map;Ljava/lang/Class;Ljava/lang/Class;)V
         8: .line 54
            aload 0 /* primToWrap */
            aload 1 /* wrapToPrim */
            getstatic java.lang.Long.TYPE:Ljava/lang/Class;
            ldc Ljava/lang/Long;
            invokestatic com.google.gson.internal.Primitives.add:(Ljava/util/Map;Ljava/util/Map;Ljava/lang/Class;Ljava/lang/Class;)V
         9: .line 55
            aload 0 /* primToWrap */
            aload 1 /* wrapToPrim */
            getstatic java.lang.Short.TYPE:Ljava/lang/Class;
            ldc Ljava/lang/Short;
            invokestatic com.google.gson.internal.Primitives.add:(Ljava/util/Map;Ljava/util/Map;Ljava/lang/Class;Ljava/lang/Class;)V
        10: .line 56
            aload 0 /* primToWrap */
            aload 1 /* wrapToPrim */
            getstatic java.lang.Void.TYPE:Ljava/lang/Class;
            ldc Ljava/lang/Void;
            invokestatic com.google.gson.internal.Primitives.add:(Ljava/util/Map;Ljava/util/Map;Ljava/lang/Class;Ljava/lang/Class;)V
        11: .line 58
            aload 0 /* primToWrap */
            invokestatic java.util.Collections.unmodifiableMap:(Ljava/util/Map;)Ljava/util/Map;
            putstatic com.google.gson.internal.Primitives.PRIMITIVE_TO_WRAPPER_TYPE:Ljava/util/Map;
        12: .line 59
            aload 1 /* wrapToPrim */
            invokestatic java.util.Collections.unmodifiableMap:(Ljava/util/Map;)Ljava/util/Map;
            putstatic com.google.gson.internal.Primitives.WRAPPER_TO_PRIMITIVE_TYPE:Ljava/util/Map;
        end local 1 // java.util.Map wrapToPrim
        end local 0 // java.util.Map primToWrap
        13: .line 60
            return
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            1   13     0  primToWrap  Ljava/util/Map<Ljava/lang/Class<*>;Ljava/lang/Class<*>;>;
            2   13     1  wrapToPrim  Ljava/util/Map<Ljava/lang/Class<*>;Ljava/lang/Class<*>;>;

  private void <init>();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // com.google.gson.internal.Primitives this
         0: .line 32
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 33
            new java.lang.UnsupportedOperationException
            dup
            invokespecial java.lang.UnsupportedOperationException.<init>:()V
            athrow
        end local 0 // com.google.gson.internal.Primitives this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/google/gson/internal/Primitives;

  private static void add(java.util.Map<java.lang.Class<?>, java.lang.Class<?>>, java.util.Map<java.lang.Class<?>, java.lang.Class<?>>, java.lang.Class<?>, java.lang.Class<?>);
    descriptor: (Ljava/util/Map;Ljava/util/Map;Ljava/lang/Class;Ljava/lang/Class;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=4, args_size=4
        start local 0 // java.util.Map forward
        start local 1 // java.util.Map backward
        start local 2 // java.lang.Class key
        start local 3 // java.lang.Class value
         0: .line 64
            aload 0 /* forward */
            aload 2 /* key */
            aload 3 /* value */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         1: .line 65
            aload 1 /* backward */
            aload 3 /* value */
            aload 2 /* key */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         2: .line 66
            return
        end local 3 // java.lang.Class value
        end local 2 // java.lang.Class key
        end local 1 // java.util.Map backward
        end local 0 // java.util.Map forward
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    3     0   forward  Ljava/util/Map<Ljava/lang/Class<*>;Ljava/lang/Class<*>;>;
            0    3     1  backward  Ljava/util/Map<Ljava/lang/Class<*>;Ljava/lang/Class<*>;>;
            0    3     2       key  Ljava/lang/Class<*>;
            0    3     3     value  Ljava/lang/Class<*>;
    Signature: (Ljava/util/Map<Ljava/lang/Class<*>;Ljava/lang/Class<*>;>;Ljava/util/Map<Ljava/lang/Class<*>;Ljava/lang/Class<*>;>;Ljava/lang/Class<*>;Ljava/lang/Class<*>;)V
    MethodParameters:
          Name  Flags
      forward   
      backward  
      key       
      value     

  public static boolean isPrimitive(java.lang.reflect.Type);
    descriptor: (Ljava/lang/reflect/Type;)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // java.lang.reflect.Type type
         0: .line 72
            getstatic com.google.gson.internal.Primitives.PRIMITIVE_TO_WRAPPER_TYPE:Ljava/util/Map;
            aload 0 /* type */
            invokeinterface java.util.Map.containsKey:(Ljava/lang/Object;)Z
            ireturn
        end local 0 // java.lang.reflect.Type type
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  type  Ljava/lang/reflect/Type;
    MethodParameters:
      Name  Flags
      type  

  public static boolean isWrapperType(java.lang.reflect.Type);
    descriptor: (Ljava/lang/reflect/Type;)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // java.lang.reflect.Type type
         0: .line 82
            getstatic com.google.gson.internal.Primitives.WRAPPER_TO_PRIMITIVE_TYPE:Ljava/util/Map;
         1: .line 83
            aload 0 /* type */
            invokestatic com.google.gson.internal.$Gson$Preconditions.checkNotNull:(Ljava/lang/Object;)Ljava/lang/Object;
         2: .line 82
            invokeinterface java.util.Map.containsKey:(Ljava/lang/Object;)Z
            ireturn
        end local 0 // java.lang.reflect.Type type
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  type  Ljava/lang/reflect/Type;
    MethodParameters:
      Name  Flags
      type  

  public static <T> java.lang.Class<T> wrap(java.lang.Class<T>);
    descriptor: (Ljava/lang/Class;)Ljava/lang/Class;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // java.lang.Class type
         0: .line 98
            getstatic com.google.gson.internal.Primitives.PRIMITIVE_TO_WRAPPER_TYPE:Ljava/util/Map;
         1: .line 99
            aload 0 /* type */
            invokestatic com.google.gson.internal.$Gson$Preconditions.checkNotNull:(Ljava/lang/Object;)Ljava/lang/Object;
         2: .line 98
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.Class
            astore 1 /* wrapped */
        start local 1 // java.lang.Class wrapped
         3: .line 100
            aload 1 /* wrapped */
            ifnonnull 4
            aload 0 /* type */
            goto 5
      StackMap locals: java.lang.Class
      StackMap stack:
         4: aload 1 /* wrapped */
      StackMap locals:
      StackMap stack: java.lang.Class
         5: areturn
        end local 1 // java.lang.Class wrapped
        end local 0 // java.lang.Class type
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    6     0     type  Ljava/lang/Class<TT;>;
            3    6     1  wrapped  Ljava/lang/Class<TT;>;
    Signature: <T:Ljava/lang/Object;>(Ljava/lang/Class<TT;>;)Ljava/lang/Class<TT;>;
    MethodParameters:
      Name  Flags
      type  

  public static <T> java.lang.Class<T> unwrap(java.lang.Class<T>);
    descriptor: (Ljava/lang/Class;)Ljava/lang/Class;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // java.lang.Class type
         0: .line 115
            getstatic com.google.gson.internal.Primitives.WRAPPER_TO_PRIMITIVE_TYPE:Ljava/util/Map;
         1: .line 116
            aload 0 /* type */
            invokestatic com.google.gson.internal.$Gson$Preconditions.checkNotNull:(Ljava/lang/Object;)Ljava/lang/Object;
         2: .line 115
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.Class
            astore 1 /* unwrapped */
        start local 1 // java.lang.Class unwrapped
         3: .line 117
            aload 1 /* unwrapped */
            ifnonnull 4
            aload 0 /* type */
            goto 5
      StackMap locals: java.lang.Class
      StackMap stack:
         4: aload 1 /* unwrapped */
      StackMap locals:
      StackMap stack: java.lang.Class
         5: areturn
        end local 1 // java.lang.Class unwrapped
        end local 0 // java.lang.Class type
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    6     0       type  Ljava/lang/Class<TT;>;
            3    6     1  unwrapped  Ljava/lang/Class<TT;>;
    Signature: <T:Ljava/lang/Object;>(Ljava/lang/Class<TT;>;)Ljava/lang/Class<TT;>;
    MethodParameters:
      Name  Flags
      type  
}
SourceFile: "Primitives.java"