public class org.postgresql.jdbc.TypeInfoCache implements org.postgresql.core.TypeInfo
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.postgresql.jdbc.TypeInfoCache
  super_class: java.lang.Object
{
  private java.util.Map<java.lang.String, java.lang.Integer> pgNameToSQLType;
    descriptor: Ljava/util/Map;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/util/Map<Ljava/lang/String;Ljava/lang/Integer;>;

  private java.util.Map<java.lang.String, java.lang.String> pgNameToJavaClass;
    descriptor: Ljava/util/Map;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;

  private java.util.Map<java.lang.Integer, java.lang.String> oidToPgName;
    descriptor: Ljava/util/Map;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/util/Map<Ljava/lang/Integer;Ljava/lang/String;>;

  private java.util.Map<java.lang.String, java.lang.Integer> pgNameToOid;
    descriptor: Ljava/util/Map;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/util/Map<Ljava/lang/String;Ljava/lang/Integer;>;

  private java.util.Map<java.lang.String, java.lang.Class<? extends org.postgresql.util.PGobject>> pgNameToPgObject;
    descriptor: Ljava/util/Map;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/util/Map<Ljava/lang/String;Ljava/lang/Class<+Lorg/postgresql/util/PGobject;>;>;

  private java.util.Map<java.lang.Integer, java.lang.Integer> pgArrayToPgType;
    descriptor: Ljava/util/Map;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/util/Map<Ljava/lang/Integer;Ljava/lang/Integer;>;

  private java.util.Map<java.lang.Integer, java.lang.Character> arrayOidToDelimiter;
    descriptor: Ljava/util/Map;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/util/Map<Ljava/lang/Integer;Ljava/lang/Character;>;

  private org.postgresql.core.BaseConnection conn;
    descriptor: Lorg/postgresql/core/BaseConnection;
    flags: (0x0002) ACC_PRIVATE

  private final int unknownLength;
    descriptor: I
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private java.sql.PreparedStatement getOidStatementSimple;
    descriptor: Ljava/sql/PreparedStatement;
    flags: (0x0002) ACC_PRIVATE

  private java.sql.PreparedStatement getOidStatementComplexNonArray;
    descriptor: Ljava/sql/PreparedStatement;
    flags: (0x0002) ACC_PRIVATE

  private java.sql.PreparedStatement getOidStatementComplexArray;
    descriptor: Ljava/sql/PreparedStatement;
    flags: (0x0002) ACC_PRIVATE

  private java.sql.PreparedStatement getNameStatement;
    descriptor: Ljava/sql/PreparedStatement;
    flags: (0x0002) ACC_PRIVATE

  private java.sql.PreparedStatement getArrayElementOidStatement;
    descriptor: Ljava/sql/PreparedStatement;
    flags: (0x0002) ACC_PRIVATE

  private java.sql.PreparedStatement getArrayDelimiterStatement;
    descriptor: Ljava/sql/PreparedStatement;
    flags: (0x0002) ACC_PRIVATE

  private java.sql.PreparedStatement getTypeInfoStatement;
    descriptor: Ljava/sql/PreparedStatement;
    flags: (0x0002) ACC_PRIVATE

  private static final java.lang.Object[][] types;
    descriptor: [[Ljava/lang/Object;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final java.util.HashMap<java.lang.String, java.lang.String> typeAliases;
    descriptor: Ljava/util/HashMap;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    Signature: Ljava/util/HashMap<Ljava/lang/String;Ljava/lang/String;>;

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=7, locals=0, args_size=0
         0: .line 67
            bipush 24
            anewarray java.lang.Object[]
            dup
            iconst_0
         1: .line 68
            iconst_5
            anewarray java.lang.Object
            dup
            iconst_0
            ldc "int2"
            aastore
            dup
            iconst_1
            bipush 21
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            dup
            iconst_2
            iconst_5
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            dup
            iconst_3
            ldc "java.lang.Integer"
            aastore
            dup
            iconst_4
            sipush 1005
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            aastore
            dup
            iconst_1
         2: .line 69
            iconst_5
            anewarray java.lang.Object
            dup
            iconst_0
            ldc "int4"
            aastore
            dup
            iconst_1
            bipush 23
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            dup
            iconst_2
            iconst_4
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            dup
            iconst_3
            ldc "java.lang.Integer"
            aastore
            dup
            iconst_4
            sipush 1007
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            aastore
            dup
            iconst_2
         3: .line 70
            iconst_5
            anewarray java.lang.Object
            dup
            iconst_0
            ldc "oid"
            aastore
            dup
            iconst_1
            bipush 26
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            dup
            iconst_2
            bipush -5
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            dup
            iconst_3
            ldc "java.lang.Long"
            aastore
            dup
            iconst_4
            sipush 1028
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            aastore
            dup
            iconst_3
         4: .line 71
            iconst_5
            anewarray java.lang.Object
            dup
            iconst_0
            ldc "int8"
            aastore
            dup
            iconst_1
            bipush 20
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            dup
            iconst_2
            bipush -5
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            dup
            iconst_3
            ldc "java.lang.Long"
            aastore
            dup
            iconst_4
            sipush 1016
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            aastore
            dup
            iconst_4
         5: .line 72
            iconst_5
            anewarray java.lang.Object
            dup
            iconst_0
            ldc "money"
            aastore
            dup
            iconst_1
            sipush 790
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            dup
            iconst_2
            bipush 8
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            dup
            iconst_3
            ldc "java.lang.Double"
            aastore
            dup
            iconst_4
            sipush 791
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            aastore
            dup
            iconst_5
         6: .line 73
            iconst_5
            anewarray java.lang.Object
            dup
            iconst_0
            ldc "numeric"
            aastore
            dup
            iconst_1
            sipush 1700
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            dup
            iconst_2
            iconst_2
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            dup
            iconst_3
            ldc "java.math.BigDecimal"
            aastore
            dup
            iconst_4
            sipush 1231
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            aastore
            dup
            bipush 6
         7: .line 74
            iconst_5
            anewarray java.lang.Object
            dup
            iconst_0
            ldc "float4"
            aastore
            dup
            iconst_1
            sipush 700
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            dup
            iconst_2
            bipush 7
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            dup
            iconst_3
            ldc "java.lang.Float"
            aastore
            dup
            iconst_4
            sipush 1021
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            aastore
            dup
            bipush 7
         8: .line 75
            iconst_5
            anewarray java.lang.Object
            dup
            iconst_0
            ldc "float8"
            aastore
            dup
            iconst_1
            sipush 701
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            dup
            iconst_2
            bipush 8
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            dup
            iconst_3
            ldc "java.lang.Double"
            aastore
            dup
            iconst_4
            sipush 1022
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            aastore
            dup
            bipush 8
         9: .line 76
            iconst_5
            anewarray java.lang.Object
            dup
            iconst_0
            ldc "char"
            aastore
            dup
            iconst_1
            bipush 18
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            dup
            iconst_2
            iconst_1
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            dup
            iconst_3
            ldc "java.lang.String"
            aastore
            dup
            iconst_4
            sipush 1002
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            aastore
            dup
            bipush 9
        10: .line 77
            iconst_5
            anewarray java.lang.Object
            dup
            iconst_0
            ldc "bpchar"
            aastore
            dup
            iconst_1
            sipush 1042
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            dup
            iconst_2
            iconst_1
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            dup
            iconst_3
            ldc "java.lang.String"
            aastore
            dup
            iconst_4
            sipush 1014
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            aastore
            dup
            bipush 10
        11: .line 78
            iconst_5
            anewarray java.lang.Object
            dup
            iconst_0
            ldc "varchar"
            aastore
            dup
            iconst_1
            sipush 1043
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            dup
            iconst_2
            bipush 12
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            dup
            iconst_3
            ldc "java.lang.String"
            aastore
            dup
            iconst_4
            sipush 1015
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            aastore
            dup
            bipush 11
        12: .line 79
            iconst_5
            anewarray java.lang.Object
            dup
            iconst_0
            ldc "text"
            aastore
            dup
            iconst_1
            bipush 25
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            dup
            iconst_2
            bipush 12
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            dup
            iconst_3
            ldc "java.lang.String"
            aastore
            dup
            iconst_4
            sipush 1009
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            aastore
            dup
            bipush 12
        13: .line 80
            iconst_5
            anewarray java.lang.Object
            dup
            iconst_0
            ldc "name"
            aastore
            dup
            iconst_1
            bipush 19
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            dup
            iconst_2
            bipush 12
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            dup
            iconst_3
            ldc "java.lang.String"
            aastore
            dup
            iconst_4
            sipush 1003
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            aastore
            dup
            bipush 13
        14: .line 81
            iconst_5
            anewarray java.lang.Object
            dup
            iconst_0
            ldc "bytea"
            aastore
            dup
            iconst_1
            bipush 17
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            dup
            iconst_2
            bipush -2
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            dup
            iconst_3
            ldc "[B"
            aastore
            dup
            iconst_4
            sipush 1001
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            aastore
            dup
            bipush 14
        15: .line 82
            iconst_5
            anewarray java.lang.Object
            dup
            iconst_0
            ldc "bool"
            aastore
            dup
            iconst_1
            bipush 16
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            dup
            iconst_2
            bipush -7
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            dup
            iconst_3
            ldc "java.lang.Boolean"
            aastore
            dup
            iconst_4
            sipush 1000
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            aastore
            dup
            bipush 15
        16: .line 83
            iconst_5
            anewarray java.lang.Object
            dup
            iconst_0
            ldc "bit"
            aastore
            dup
            iconst_1
            sipush 1560
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            dup
            iconst_2
            bipush -7
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            dup
            iconst_3
            ldc "java.lang.Boolean"
            aastore
            dup
            iconst_4
            sipush 1561
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            aastore
            dup
            bipush 16
        17: .line 84
            iconst_5
            anewarray java.lang.Object
            dup
            iconst_0
            ldc "date"
            aastore
            dup
            iconst_1
            sipush 1082
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            dup
            iconst_2
            bipush 91
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            dup
            iconst_3
            ldc "java.sql.Date"
            aastore
            dup
            iconst_4
            sipush 1182
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            aastore
            dup
            bipush 17
        18: .line 85
            iconst_5
            anewarray java.lang.Object
            dup
            iconst_0
            ldc "time"
            aastore
            dup
            iconst_1
            sipush 1083
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            dup
            iconst_2
            bipush 92
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            dup
            iconst_3
            ldc "java.sql.Time"
            aastore
            dup
            iconst_4
            sipush 1183
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            aastore
            dup
            bipush 18
        19: .line 86
            iconst_5
            anewarray java.lang.Object
            dup
            iconst_0
            ldc "timetz"
            aastore
            dup
            iconst_1
            sipush 1266
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            dup
            iconst_2
            bipush 92
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            dup
            iconst_3
            ldc "java.sql.Time"
            aastore
            dup
            iconst_4
            sipush 1270
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            aastore
            dup
            bipush 19
        20: .line 87
            iconst_5
            anewarray java.lang.Object
            dup
            iconst_0
            ldc "timestamp"
            aastore
            dup
            iconst_1
            sipush 1114
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            dup
            iconst_2
            bipush 93
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            dup
            iconst_3
            ldc "java.sql.Timestamp"
            aastore
            dup
            iconst_4
            sipush 1115
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            aastore
            dup
            bipush 20
        21: .line 88
            iconst_5
            anewarray java.lang.Object
            dup
            iconst_0
            ldc "timestamptz"
            aastore
            dup
            iconst_1
            sipush 1184
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            dup
            iconst_2
            bipush 93
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            dup
            iconst_3
            ldc "java.sql.Timestamp"
            aastore
            dup
            iconst_4
        22: .line 89
            sipush 1185
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            aastore
            dup
            bipush 21
        23: .line 91
            iconst_5
            anewarray java.lang.Object
            dup
            iconst_0
            ldc "refcursor"
            aastore
            dup
            iconst_1
            sipush 1790
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            dup
            iconst_2
            sipush 2012
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            dup
            iconst_3
            ldc "java.sql.ResultSet"
            aastore
            dup
            iconst_4
            sipush 2201
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            aastore
            dup
            bipush 22
        24: .line 93
            iconst_5
            anewarray java.lang.Object
            dup
            iconst_0
            ldc "json"
            aastore
            dup
            iconst_1
            bipush 114
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            dup
            iconst_2
            sipush 1111
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            dup
            iconst_3
            ldc "org.postgresql.util.PGobject"
            aastore
            dup
            iconst_4
            sipush 199
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            aastore
            dup
            bipush 23
        25: .line 94
            iconst_5
            anewarray java.lang.Object
            dup
            iconst_0
            ldc "point"
            aastore
            dup
            iconst_1
            sipush 600
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            dup
            iconst_2
            sipush 1111
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            dup
            iconst_3
            ldc "org.postgresql.geometric.PGpoint"
            aastore
            dup
            iconst_4
            sipush 1017
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            aastore
        26: .line 67
            putstatic org.postgresql.jdbc.TypeInfoCache.types:[[Ljava/lang/Object;
        27: .line 104
            new java.util.HashMap
            dup
            invokespecial java.util.HashMap.<init>:()V
            putstatic org.postgresql.jdbc.TypeInfoCache.typeAliases:Ljava/util/HashMap;
        28: .line 105
            getstatic org.postgresql.jdbc.TypeInfoCache.typeAliases:Ljava/util/HashMap;
            ldc "smallint"
            ldc "int2"
            invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        29: .line 106
            getstatic org.postgresql.jdbc.TypeInfoCache.typeAliases:Ljava/util/HashMap;
            ldc "integer"
            ldc "int4"
            invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        30: .line 107
            getstatic org.postgresql.jdbc.TypeInfoCache.typeAliases:Ljava/util/HashMap;
            ldc "int"
            ldc "int4"
            invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        31: .line 108
            getstatic org.postgresql.jdbc.TypeInfoCache.typeAliases:Ljava/util/HashMap;
            ldc "bigint"
            ldc "int8"
            invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        32: .line 109
            getstatic org.postgresql.jdbc.TypeInfoCache.typeAliases:Ljava/util/HashMap;
            ldc "float"
            ldc "float8"
            invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        33: .line 110
            getstatic org.postgresql.jdbc.TypeInfoCache.typeAliases:Ljava/util/HashMap;
            ldc "boolean"
            ldc "bool"
            invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        34: .line 111
            getstatic org.postgresql.jdbc.TypeInfoCache.typeAliases:Ljava/util/HashMap;
            ldc "decimal"
            ldc "numeric"
            invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        35: .line 112
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public void <init>(org.postgresql.core.BaseConnection, int);
    descriptor: (Lorg/postgresql/core/BaseConnection;I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=12, args_size=3
        start local 0 // org.postgresql.jdbc.TypeInfoCache this
        start local 1 // org.postgresql.core.BaseConnection conn
        start local 2 // int unknownLength
         0: .line 114
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 115
            aload 0 /* this */
            aload 1 /* conn */
            putfield org.postgresql.jdbc.TypeInfoCache.conn:Lorg/postgresql/core/BaseConnection;
         2: .line 116
            aload 0 /* this */
            iload 2 /* unknownLength */
            putfield org.postgresql.jdbc.TypeInfoCache.unknownLength:I
         3: .line 117
            aload 0 /* this */
            new java.util.HashMap
            dup
            getstatic org.postgresql.jdbc.TypeInfoCache.types:[[Ljava/lang/Object;
            arraylength
            i2d
            ldc 1.5
            dmul
            invokestatic java.lang.Math.round:(D)J
            l2i
            invokespecial java.util.HashMap.<init>:(I)V
            putfield org.postgresql.jdbc.TypeInfoCache.oidToPgName:Ljava/util/Map;
         4: .line 118
            aload 0 /* this */
            new java.util.HashMap
            dup
            getstatic org.postgresql.jdbc.TypeInfoCache.types:[[Ljava/lang/Object;
            arraylength
            i2d
            ldc 1.5
            dmul
            invokestatic java.lang.Math.round:(D)J
            l2i
            invokespecial java.util.HashMap.<init>:(I)V
            putfield org.postgresql.jdbc.TypeInfoCache.pgNameToOid:Ljava/util/Map;
         5: .line 119
            aload 0 /* this */
            new java.util.HashMap
            dup
            getstatic org.postgresql.jdbc.TypeInfoCache.types:[[Ljava/lang/Object;
            arraylength
            i2d
            ldc 1.5
            dmul
            invokestatic java.lang.Math.round:(D)J
            l2i
            invokespecial java.util.HashMap.<init>:(I)V
            putfield org.postgresql.jdbc.TypeInfoCache.pgNameToJavaClass:Ljava/util/Map;
         6: .line 120
            aload 0 /* this */
            new java.util.HashMap
            dup
            getstatic org.postgresql.jdbc.TypeInfoCache.types:[[Ljava/lang/Object;
            arraylength
            i2d
            ldc 1.5
            dmul
            invokestatic java.lang.Math.round:(D)J
            l2i
            invokespecial java.util.HashMap.<init>:(I)V
            putfield org.postgresql.jdbc.TypeInfoCache.pgNameToPgObject:Ljava/util/Map;
         7: .line 121
            aload 0 /* this */
            new java.util.HashMap
            dup
            getstatic org.postgresql.jdbc.TypeInfoCache.types:[[Ljava/lang/Object;
            arraylength
            i2d
            ldc 1.5
            dmul
            invokestatic java.lang.Math.round:(D)J
            l2i
            invokespecial java.util.HashMap.<init>:(I)V
            putfield org.postgresql.jdbc.TypeInfoCache.pgArrayToPgType:Ljava/util/Map;
         8: .line 122
            aload 0 /* this */
            new java.util.HashMap
            dup
            getstatic org.postgresql.jdbc.TypeInfoCache.types:[[Ljava/lang/Object;
            arraylength
            i2d
            ldc 2.5
            dmul
            invokestatic java.lang.Math.round:(D)J
            l2i
            invokespecial java.util.HashMap.<init>:(I)V
            putfield org.postgresql.jdbc.TypeInfoCache.arrayOidToDelimiter:Ljava/util/Map;
         9: .line 126
            aload 0 /* this */
            new java.util.HashMap
            dup
            getstatic org.postgresql.jdbc.TypeInfoCache.types:[[Ljava/lang/Object;
            arraylength
            i2d
            ldc 1.5
            dmul
            invokestatic java.lang.Math.round:(D)J
            l2i
            invokespecial java.util.HashMap.<init>:(I)V
            invokestatic java.util.Collections.synchronizedMap:(Ljava/util/Map;)Ljava/util/Map;
            putfield org.postgresql.jdbc.TypeInfoCache.pgNameToSQLType:Ljava/util/Map;
        10: .line 128
            getstatic org.postgresql.jdbc.TypeInfoCache.types:[[Ljava/lang/Object;
            dup
            astore 6
            arraylength
            istore 5
            iconst_0
            istore 4
            goto 19
      StackMap locals: org.postgresql.jdbc.TypeInfoCache org.postgresql.core.BaseConnection int top int int java.lang.Object[][]
      StackMap stack:
        11: aload 6
            iload 4
            aaload
            astore 3 /* type */
        start local 3 // java.lang.Object[] type
        12: .line 129
            aload 3 /* type */
            iconst_0
            aaload
            checkcast java.lang.String
            astore 7 /* pgTypeName */
        start local 7 // java.lang.String pgTypeName
        13: .line 130
            aload 3 /* type */
            iconst_1
            aaload
            checkcast java.lang.Integer
            astore 8 /* oid */
        start local 8 // java.lang.Integer oid
        14: .line 131
            aload 3 /* type */
            iconst_2
            aaload
            checkcast java.lang.Integer
            astore 9 /* sqlType */
        start local 9 // java.lang.Integer sqlType
        15: .line 132
            aload 3 /* type */
            iconst_3
            aaload
            checkcast java.lang.String
            astore 10 /* javaClass */
        start local 10 // java.lang.String javaClass
        16: .line 133
            aload 3 /* type */
            iconst_4
            aaload
            checkcast java.lang.Integer
            astore 11 /* arrayOid */
        start local 11 // java.lang.Integer arrayOid
        17: .line 135
            aload 0 /* this */
            aload 7 /* pgTypeName */
            aload 8 /* oid */
            aload 9 /* sqlType */
            aload 10 /* javaClass */
            aload 11 /* arrayOid */
            invokevirtual org.postgresql.jdbc.TypeInfoCache.addCoreType:(Ljava/lang/String;Ljava/lang/Integer;Ljava/lang/Integer;Ljava/lang/String;Ljava/lang/Integer;)V
        end local 11 // java.lang.Integer arrayOid
        end local 10 // java.lang.String javaClass
        end local 9 // java.lang.Integer sqlType
        end local 8 // java.lang.Integer oid
        end local 7 // java.lang.String pgTypeName
        end local 3 // java.lang.Object[] type
        18: .line 128
            iinc 4 1
      StackMap locals:
      StackMap stack:
        19: iload 4
            iload 5
            if_icmplt 11
        20: .line 138
            aload 0 /* this */
            getfield org.postgresql.jdbc.TypeInfoCache.pgNameToJavaClass:Ljava/util/Map;
            ldc "hstore"
            ldc Ljava/util/Map;
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        21: .line 139
            return
        end local 2 // int unknownLength
        end local 1 // org.postgresql.core.BaseConnection conn
        end local 0 // org.postgresql.jdbc.TypeInfoCache this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   22     0           this  Lorg/postgresql/jdbc/TypeInfoCache;
            0   22     1           conn  Lorg/postgresql/core/BaseConnection;
            0   22     2  unknownLength  I
           12   18     3           type  [Ljava/lang/Object;
           13   18     7     pgTypeName  Ljava/lang/String;
           14   18     8            oid  Ljava/lang/Integer;
           15   18     9        sqlType  Ljava/lang/Integer;
           16   18    10      javaClass  Ljava/lang/String;
           17   18    11       arrayOid  Ljava/lang/Integer;
    MethodParameters:
               Name  Flags
      conn           
      unknownLength  

  public synchronized void addCoreType(java.lang.String, java.lang.Integer, java.lang.Integer, java.lang.String, java.lang.Integer);
    descriptor: (Ljava/lang/String;Ljava/lang/Integer;Ljava/lang/Integer;Ljava/lang/String;Ljava/lang/Integer;)V
    flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
    Code:
      stack=3, locals=8, args_size=6
        start local 0 // org.postgresql.jdbc.TypeInfoCache this
        start local 1 // java.lang.String pgTypeName
        start local 2 // java.lang.Integer oid
        start local 3 // java.lang.Integer sqlType
        start local 4 // java.lang.String javaClass
        start local 5 // java.lang.Integer arrayOid
         0: .line 143
            aload 0 /* this */
            getfield org.postgresql.jdbc.TypeInfoCache.pgNameToJavaClass:Ljava/util/Map;
            aload 1 /* pgTypeName */
            aload 4 /* javaClass */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         1: .line 144
            aload 0 /* this */
            getfield org.postgresql.jdbc.TypeInfoCache.pgNameToOid:Ljava/util/Map;
            aload 1 /* pgTypeName */
            aload 2 /* oid */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         2: .line 145
            aload 0 /* this */
            getfield org.postgresql.jdbc.TypeInfoCache.oidToPgName:Ljava/util/Map;
            aload 2 /* oid */
            aload 1 /* pgTypeName */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         3: .line 146
            aload 0 /* this */
            getfield org.postgresql.jdbc.TypeInfoCache.pgArrayToPgType:Ljava/util/Map;
            aload 5 /* arrayOid */
            aload 2 /* oid */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         4: .line 147
            aload 0 /* this */
            getfield org.postgresql.jdbc.TypeInfoCache.pgNameToSQLType:Ljava/util/Map;
            aload 1 /* pgTypeName */
            aload 3 /* sqlType */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         5: .line 153
            bipush 44
            invokestatic java.lang.Character.valueOf:(C)Ljava/lang/Character;
            astore 6 /* delim */
        start local 6 // java.lang.Character delim
         6: .line 154
            aload 0 /* this */
            getfield org.postgresql.jdbc.TypeInfoCache.arrayOidToDelimiter:Ljava/util/Map;
            aload 2 /* oid */
            aload 6 /* delim */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         7: .line 155
            aload 0 /* this */
            getfield org.postgresql.jdbc.TypeInfoCache.arrayOidToDelimiter:Ljava/util/Map;
            aload 5 /* arrayOid */
            aload 6 /* delim */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         8: .line 157
            new java.lang.StringBuilder
            dup
            aload 1 /* pgTypeName */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc "[]"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 7 /* pgArrayTypeName */
        start local 7 // java.lang.String pgArrayTypeName
         9: .line 158
            aload 0 /* this */
            getfield org.postgresql.jdbc.TypeInfoCache.pgNameToJavaClass:Ljava/util/Map;
            aload 7 /* pgArrayTypeName */
            ldc "java.sql.Array"
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        10: .line 159
            aload 0 /* this */
            getfield org.postgresql.jdbc.TypeInfoCache.pgNameToSQLType:Ljava/util/Map;
            aload 7 /* pgArrayTypeName */
            sipush 2003
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        11: .line 160
            aload 0 /* this */
            getfield org.postgresql.jdbc.TypeInfoCache.pgNameToOid:Ljava/util/Map;
            aload 7 /* pgArrayTypeName */
            aload 5 /* arrayOid */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        12: .line 161
            new java.lang.StringBuilder
            dup
            ldc "_"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* pgTypeName */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 7 /* pgArrayTypeName */
        13: .line 162
            aload 0 /* this */
            getfield org.postgresql.jdbc.TypeInfoCache.pgNameToJavaClass:Ljava/util/Map;
            aload 7 /* pgArrayTypeName */
            invokeinterface java.util.Map.containsKey:(Ljava/lang/Object;)Z
            ifne 18
        14: .line 163
            aload 0 /* this */
            getfield org.postgresql.jdbc.TypeInfoCache.pgNameToJavaClass:Ljava/util/Map;
            aload 7 /* pgArrayTypeName */
            ldc "java.sql.Array"
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        15: .line 164
            aload 0 /* this */
            getfield org.postgresql.jdbc.TypeInfoCache.pgNameToSQLType:Ljava/util/Map;
            aload 7 /* pgArrayTypeName */
            sipush 2003
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        16: .line 165
            aload 0 /* this */
            getfield org.postgresql.jdbc.TypeInfoCache.pgNameToOid:Ljava/util/Map;
            aload 7 /* pgArrayTypeName */
            aload 5 /* arrayOid */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        17: .line 166
            aload 0 /* this */
            getfield org.postgresql.jdbc.TypeInfoCache.oidToPgName:Ljava/util/Map;
            aload 5 /* arrayOid */
            aload 7 /* pgArrayTypeName */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        18: .line 168
      StackMap locals: java.lang.Character java.lang.String
      StackMap stack:
            return
        end local 7 // java.lang.String pgArrayTypeName
        end local 6 // java.lang.Character delim
        end local 5 // java.lang.Integer arrayOid
        end local 4 // java.lang.String javaClass
        end local 3 // java.lang.Integer sqlType
        end local 2 // java.lang.Integer oid
        end local 1 // java.lang.String pgTypeName
        end local 0 // org.postgresql.jdbc.TypeInfoCache this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   19     0             this  Lorg/postgresql/jdbc/TypeInfoCache;
            0   19     1       pgTypeName  Ljava/lang/String;
            0   19     2              oid  Ljava/lang/Integer;
            0   19     3          sqlType  Ljava/lang/Integer;
            0   19     4        javaClass  Ljava/lang/String;
            0   19     5         arrayOid  Ljava/lang/Integer;
            6   19     6            delim  Ljava/lang/Character;
            9   19     7  pgArrayTypeName  Ljava/lang/String;
    MethodParameters:
            Name  Flags
      pgTypeName  
      oid         
      sqlType     
      javaClass   
      arrayOid    

  public synchronized void addDataType(java.lang.String, java.lang.Class<? extends org.postgresql.util.PGobject>);
    descriptor: (Ljava/lang/String;Ljava/lang/Class;)V
    flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.postgresql.jdbc.TypeInfoCache this
        start local 1 // java.lang.String type
        start local 2 // java.lang.Class klass
         0: .line 172
            aload 0 /* this */
            getfield org.postgresql.jdbc.TypeInfoCache.pgNameToPgObject:Ljava/util/Map;
            aload 1 /* type */
            aload 2 /* klass */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         1: .line 173
            aload 0 /* this */
            getfield org.postgresql.jdbc.TypeInfoCache.pgNameToJavaClass:Ljava/util/Map;
            aload 1 /* type */
            aload 2 /* klass */
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         2: .line 174
            return
        end local 2 // java.lang.Class klass
        end local 1 // java.lang.String type
        end local 0 // org.postgresql.jdbc.TypeInfoCache this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    3     0   this  Lorg/postgresql/jdbc/TypeInfoCache;
            0    3     1   type  Ljava/lang/String;
            0    3     2  klass  Ljava/lang/Class<+Lorg/postgresql/util/PGobject;>;
    Exceptions:
      throws java.sql.SQLException
    Signature: (Ljava/lang/String;Ljava/lang/Class<+Lorg/postgresql/util/PGobject;>;)V
    MethodParameters:
       Name  Flags
      type   
      klass  

  public java.util.Iterator<java.lang.String> getPGTypeNamesWithSQLTypes();
    descriptor: ()Ljava/util/Iterator;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.postgresql.jdbc.TypeInfoCache this
         0: .line 177
            aload 0 /* this */
            getfield org.postgresql.jdbc.TypeInfoCache.pgNameToSQLType:Ljava/util/Map;
            invokeinterface java.util.Map.keySet:()Ljava/util/Set;
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            areturn
        end local 0 // org.postgresql.jdbc.TypeInfoCache this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/postgresql/jdbc/TypeInfoCache;
    Signature: ()Ljava/util/Iterator<Ljava/lang/String;>;

  public int getSQLType(int);
    descriptor: (I)I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.postgresql.jdbc.TypeInfoCache this
        start local 1 // int oid
         0: .line 181
            aload 0 /* this */
            aload 0 /* this */
            iload 1 /* oid */
            invokevirtual org.postgresql.jdbc.TypeInfoCache.getPGType:(I)Ljava/lang/String;
            invokevirtual org.postgresql.jdbc.TypeInfoCache.getSQLType:(Ljava/lang/String;)I
            ireturn
        end local 1 // int oid
        end local 0 // org.postgresql.jdbc.TypeInfoCache this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/postgresql/jdbc/TypeInfoCache;
            0    1     1   oid  I
    Exceptions:
      throws java.sql.SQLException
    MethodParameters:
      Name  Flags
      oid   

  public synchronized int getSQLType(java.lang.String);
    descriptor: (Ljava/lang/String;)I
    flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
    Code:
      stack=4, locals=7, args_size=2
        start local 0 // org.postgresql.jdbc.TypeInfoCache this
        start local 1 // java.lang.String pgTypeName
         0: .line 185
            aload 1 /* pgTypeName */
            ldc "[]"
            invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
            ifeq 2
         1: .line 186
            sipush 2003
            ireturn
         2: .line 188
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.postgresql.jdbc.TypeInfoCache.pgNameToSQLType:Ljava/util/Map;
            aload 1 /* pgTypeName */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.Integer
            astore 2 /* i */
        start local 2 // java.lang.Integer i
         3: .line 189
            aload 2 /* i */
            ifnull 5
         4: .line 190
            aload 2 /* i */
            invokevirtual java.lang.Integer.intValue:()I
            ireturn
         5: .line 193
      StackMap locals: java.lang.Integer
      StackMap stack:
            aload 0 /* this */
            getfield org.postgresql.jdbc.TypeInfoCache.getTypeInfoStatement:Ljava/sql/PreparedStatement;
            ifnonnull 8
         6: .line 204
            ldc "SELECT typinput='array_in'::regproc, typtype   FROM pg_catalog.pg_type   LEFT   JOIN (select ns.oid as nspoid, ns.nspname, r.r           from pg_namespace as ns           join ( select s.r, (current_schemas(false))[s.r] as nspname                    from generate_series(1, array_upper(current_schemas(false), 1)) as s(r) ) as r          using ( nspname )        ) as sp     ON sp.nspoid = typnamespace  WHERE typname = ?  ORDER BY sp.r, pg_type.oid DESC LIMIT 1;"
            astore 3 /* sql */
        start local 3 // java.lang.String sql
         7: .line 218
            aload 0 /* this */
            aload 0 /* this */
            getfield org.postgresql.jdbc.TypeInfoCache.conn:Lorg/postgresql/core/BaseConnection;
            aload 3 /* sql */
            invokeinterface org.postgresql.core.BaseConnection.prepareStatement:(Ljava/lang/String;)Ljava/sql/PreparedStatement;
            putfield org.postgresql.jdbc.TypeInfoCache.getTypeInfoStatement:Ljava/sql/PreparedStatement;
        end local 3 // java.lang.String sql
         8: .line 221
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.postgresql.jdbc.TypeInfoCache.getTypeInfoStatement:Ljava/sql/PreparedStatement;
            iconst_1
            aload 1 /* pgTypeName */
            invokeinterface java.sql.PreparedStatement.setString:(ILjava/lang/String;)V
         9: .line 224
            aload 0 /* this */
            getfield org.postgresql.jdbc.TypeInfoCache.getTypeInfoStatement:Ljava/sql/PreparedStatement;
            checkcast org.postgresql.core.BaseStatement
        10: .line 225
            bipush 16
            invokeinterface org.postgresql.core.BaseStatement.executeWithFlags:(I)Z
            ifne 12
        11: .line 226
            new org.postgresql.util.PSQLException
            dup
            ldc "No results were returned by the query."
            iconst_0
            anewarray java.lang.Object
            invokestatic org.postgresql.util.GT.tr:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            getstatic org.postgresql.util.PSQLState.NO_DATA:Lorg/postgresql/util/PSQLState;
            invokespecial org.postgresql.util.PSQLException.<init>:(Ljava/lang/String;Lorg/postgresql/util/PSQLState;)V
            athrow
        12: .line 229
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.postgresql.jdbc.TypeInfoCache.getTypeInfoStatement:Ljava/sql/PreparedStatement;
            invokeinterface java.sql.PreparedStatement.getResultSet:()Ljava/sql/ResultSet;
            astore 3 /* rs */
        start local 3 // java.sql.ResultSet rs
        13: .line 231
            aconst_null
            astore 4 /* type */
        start local 4 // java.lang.Integer type
        14: .line 232
            aload 3 /* rs */
            invokeinterface java.sql.ResultSet.next:()Z
            ifeq 28
        15: .line 233
            aload 3 /* rs */
            iconst_1
            invokeinterface java.sql.ResultSet.getBoolean:(I)Z
            istore 5 /* isArray */
        start local 5 // boolean isArray
        16: .line 234
            aload 3 /* rs */
            iconst_2
            invokeinterface java.sql.ResultSet.getString:(I)Ljava/lang/String;
            astore 6 /* typtype */
        start local 6 // java.lang.String typtype
        17: .line 235
            iload 5 /* isArray */
            ifeq 20
        18: .line 236
            sipush 2003
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            astore 4 /* type */
        19: .line 237
            goto 28
      StackMap locals: org.postgresql.jdbc.TypeInfoCache java.lang.String java.lang.Integer java.sql.ResultSet java.lang.Integer int java.lang.String
      StackMap stack:
        20: ldc "c"
            aload 6 /* typtype */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 23
        21: .line 238
            sipush 2002
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            astore 4 /* type */
        22: .line 239
            goto 28
      StackMap locals:
      StackMap stack:
        23: ldc "d"
            aload 6 /* typtype */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 26
        24: .line 240
            sipush 2001
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            astore 4 /* type */
        25: .line 241
            goto 28
      StackMap locals:
      StackMap stack:
        26: ldc "e"
            aload 6 /* typtype */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 28
        27: .line 242
            bipush 12
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            astore 4 /* type */
        end local 6 // java.lang.String typtype
        end local 5 // boolean isArray
        28: .line 246
      StackMap locals:
      StackMap stack:
            aload 4 /* type */
            ifnonnull 30
        29: .line 247
            sipush 1111
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            astore 4 /* type */
        30: .line 249
      StackMap locals:
      StackMap stack:
            aload 3 /* rs */
            invokeinterface java.sql.ResultSet.close:()V
        31: .line 251
            aload 0 /* this */
            getfield org.postgresql.jdbc.TypeInfoCache.pgNameToSQLType:Ljava/util/Map;
            aload 1 /* pgTypeName */
            aload 4 /* type */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        32: .line 252
            aload 4 /* type */
            invokevirtual java.lang.Integer.intValue:()I
            ireturn
        end local 4 // java.lang.Integer type
        end local 3 // java.sql.ResultSet rs
        end local 2 // java.lang.Integer i
        end local 1 // java.lang.String pgTypeName
        end local 0 // org.postgresql.jdbc.TypeInfoCache this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   33     0        this  Lorg/postgresql/jdbc/TypeInfoCache;
            0   33     1  pgTypeName  Ljava/lang/String;
            3   33     2           i  Ljava/lang/Integer;
            7    8     3         sql  Ljava/lang/String;
           13   33     3          rs  Ljava/sql/ResultSet;
           14   33     4        type  Ljava/lang/Integer;
           16   28     5     isArray  Z
           17   28     6     typtype  Ljava/lang/String;
    Exceptions:
      throws java.sql.SQLException
    MethodParameters:
            Name  Flags
      pgTypeName  

  private java.sql.PreparedStatement getOidStatement(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/sql/PreparedStatement;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=10, args_size=2
        start local 0 // org.postgresql.jdbc.TypeInfoCache this
        start local 1 // java.lang.String pgTypeName
         0: .line 256
            aload 1 /* pgTypeName */
            ldc "[]"
            invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
            istore 2 /* isArray */
        start local 2 // boolean isArray
         1: .line 257
            aload 1 /* pgTypeName */
            ldc "\""
            invokevirtual java.lang.String.contains:(Ljava/lang/CharSequence;)Z
            istore 3 /* hasQuote */
        start local 3 // boolean hasQuote
         2: .line 258
            aload 1 /* pgTypeName */
            bipush 46
            invokevirtual java.lang.String.indexOf:(I)I
            istore 4 /* dotIndex */
        start local 4 // int dotIndex
         3: .line 260
            iload 4 /* dotIndex */
            iconst_m1
            if_icmpne 10
            iload 3 /* hasQuote */
            ifne 10
            iload 2 /* isArray */
            ifne 10
         4: .line 261
            aload 0 /* this */
            getfield org.postgresql.jdbc.TypeInfoCache.getOidStatementSimple:Ljava/sql/PreparedStatement;
            ifnonnull 7
         5: .line 265
            ldc "SELECT pg_type.oid, typname   FROM pg_catalog.pg_type   LEFT   JOIN (select ns.oid as nspoid, ns.nspname, r.r           from pg_namespace as ns           join ( select s.r, (current_schemas(false))[s.r] as nspname                    from generate_series(1, array_upper(current_schemas(false), 1)) as s(r) ) as r          using ( nspname )        ) as sp     ON sp.nspoid = typnamespace  WHERE typname = ?  ORDER BY sp.r, pg_type.oid DESC LIMIT 1;"
            astore 5 /* sql */
        start local 5 // java.lang.String sql
         6: .line 277
            aload 0 /* this */
            aload 0 /* this */
            getfield org.postgresql.jdbc.TypeInfoCache.conn:Lorg/postgresql/core/BaseConnection;
            aload 5 /* sql */
            invokeinterface org.postgresql.core.BaseConnection.prepareStatement:(Ljava/lang/String;)Ljava/sql/PreparedStatement;
            putfield org.postgresql.jdbc.TypeInfoCache.getOidStatementSimple:Ljava/sql/PreparedStatement;
        end local 5 // java.lang.String sql
         7: .line 280
      StackMap locals: int int int
      StackMap stack:
            aload 1 /* pgTypeName */
            invokevirtual java.lang.String.toLowerCase:()Ljava/lang/String;
            astore 5 /* lcName */
        start local 5 // java.lang.String lcName
         8: .line 283
            aload 0 /* this */
            getfield org.postgresql.jdbc.TypeInfoCache.getOidStatementSimple:Ljava/sql/PreparedStatement;
            iconst_1
            aload 5 /* lcName */
            invokeinterface java.sql.PreparedStatement.setString:(ILjava/lang/String;)V
         9: .line 284
            aload 0 /* this */
            getfield org.postgresql.jdbc.TypeInfoCache.getOidStatementSimple:Ljava/sql/PreparedStatement;
            areturn
        end local 5 // java.lang.String lcName
        10: .line 287
      StackMap locals:
      StackMap stack:
            iload 2 /* isArray */
            ifeq 19
        11: .line 288
            aload 0 /* this */
            getfield org.postgresql.jdbc.TypeInfoCache.getOidStatementComplexArray:Ljava/sql/PreparedStatement;
            ifnonnull 17
        12: .line 290
            aload 0 /* this */
            getfield org.postgresql.jdbc.TypeInfoCache.conn:Lorg/postgresql/core/BaseConnection;
            getstatic org.postgresql.core.ServerVersion.v8_3:Lorg/postgresql/core/ServerVersion;
            invokeinterface org.postgresql.core.BaseConnection.haveMinimumServerVersion:(Lorg/postgresql/core/Version;)Z
            ifeq 15
        13: .line 291
            ldc "SELECT t.typarray, arr.typname   FROM pg_catalog.pg_type t  JOIN pg_catalog.pg_namespace n ON t.typnamespace = n.oid  JOIN pg_catalog.pg_type arr ON arr.oid = t.typarray WHERE t.typname = ? AND (n.nspname = ? OR ? AND n.nspname = ANY (current_schemas(true))) ORDER BY t.oid DESC LIMIT 1"
            astore 6 /* sql */
        start local 6 // java.lang.String sql
        14: .line 297
            goto 16
        end local 6 // java.lang.String sql
        15: .line 298
      StackMap locals:
      StackMap stack:
            ldc "SELECT t.oid, t.typname   FROM pg_catalog.pg_type t  JOIN pg_catalog.pg_namespace n ON t.typnamespace = n.oid WHERE t.typelem = (SELECT oid FROM pg_catalog.pg_type WHERE typname = ?) AND substring(t.typname, 1, 1) = '_' AND t.typlen = -1 AND (n.nspname = ? OR ? AND n.nspname = ANY (current_schemas(true))) ORDER BY t.typelem DESC LIMIT 1"
            astore 6 /* sql */
        start local 6 // java.lang.String sql
        16: .line 306
      StackMap locals: org.postgresql.jdbc.TypeInfoCache java.lang.String int int int top java.lang.String
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield org.postgresql.jdbc.TypeInfoCache.conn:Lorg/postgresql/core/BaseConnection;
            aload 6 /* sql */
            invokeinterface org.postgresql.core.BaseConnection.prepareStatement:(Ljava/lang/String;)Ljava/sql/PreparedStatement;
            putfield org.postgresql.jdbc.TypeInfoCache.getOidStatementComplexArray:Ljava/sql/PreparedStatement;
        end local 6 // java.lang.String sql
        17: .line 308
      StackMap locals: org.postgresql.jdbc.TypeInfoCache java.lang.String int int int
      StackMap stack:
            aload 0 /* this */
            getfield org.postgresql.jdbc.TypeInfoCache.getOidStatementComplexArray:Ljava/sql/PreparedStatement;
            astore 5 /* oidStatementComplex */
        start local 5 // java.sql.PreparedStatement oidStatementComplex
        18: .line 309
            goto 23
        end local 5 // java.sql.PreparedStatement oidStatementComplex
        19: .line 310
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.postgresql.jdbc.TypeInfoCache.getOidStatementComplexNonArray:Ljava/sql/PreparedStatement;
            ifnonnull 22
        20: .line 311
            ldc "SELECT t.oid, t.typname   FROM pg_catalog.pg_type t  JOIN pg_catalog.pg_namespace n ON t.typnamespace = n.oid WHERE t.typname = ? AND (n.nspname = ? OR ? AND n.nspname = ANY (current_schemas(true))) ORDER BY t.oid DESC LIMIT 1"
            astore 6 /* sql */
        start local 6 // java.lang.String sql
        21: .line 316
            aload 0 /* this */
            aload 0 /* this */
            getfield org.postgresql.jdbc.TypeInfoCache.conn:Lorg/postgresql/core/BaseConnection;
            aload 6 /* sql */
            invokeinterface org.postgresql.core.BaseConnection.prepareStatement:(Ljava/lang/String;)Ljava/sql/PreparedStatement;
            putfield org.postgresql.jdbc.TypeInfoCache.getOidStatementComplexNonArray:Ljava/sql/PreparedStatement;
        end local 6 // java.lang.String sql
        22: .line 318
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.postgresql.jdbc.TypeInfoCache.getOidStatementComplexNonArray:Ljava/sql/PreparedStatement;
            astore 5 /* oidStatementComplex */
        start local 5 // java.sql.PreparedStatement oidStatementComplex
        23: .line 322
      StackMap locals: java.sql.PreparedStatement
      StackMap stack:
            iload 2 /* isArray */
            ifeq 24
            aload 1 /* pgTypeName */
            iconst_0
            aload 1 /* pgTypeName */
            invokevirtual java.lang.String.length:()I
            iconst_2
            isub
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            goto 25
      StackMap locals:
      StackMap stack:
        24: aload 1 /* pgTypeName */
      StackMap locals:
      StackMap stack: java.lang.String
        25: astore 6 /* fullName */
        start local 6 // java.lang.String fullName
        26: .line 326
            iload 4 /* dotIndex */
            iconst_m1
            if_icmpne 30
        27: .line 327
            aconst_null
            astore 7 /* schema */
        start local 7 // java.lang.String schema
        28: .line 328
            aload 6 /* fullName */
            astore 8 /* name */
        start local 8 // java.lang.String name
        29: .line 329
            goto 46
        end local 8 // java.lang.String name
        end local 7 // java.lang.String schema
        30: .line 330
      StackMap locals: java.lang.String
      StackMap stack:
            aload 6 /* fullName */
            ldc "\""
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifeq 44
        31: .line 331
            aload 6 /* fullName */
            ldc "\""
            invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
            ifeq 40
        32: .line 332
            aload 6 /* fullName */
            ldc "\"\\.\""
            invokevirtual java.lang.String.split:(Ljava/lang/String;)[Ljava/lang/String;
            astore 9 /* parts */
        start local 9 // java.lang.String[] parts
        33: .line 333
            aload 9 /* parts */
            arraylength
            iconst_2
            if_icmpne 34
            new java.lang.StringBuilder
            dup
            aload 9 /* parts */
            iconst_0
            aaload
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc "\""
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            goto 35
      StackMap locals: org.postgresql.jdbc.TypeInfoCache java.lang.String int int int java.sql.PreparedStatement java.lang.String top top java.lang.String[]
      StackMap stack:
        34: aconst_null
      StackMap locals:
      StackMap stack: java.lang.String
        35: astore 7 /* schema */
        start local 7 // java.lang.String schema
        36: .line 334
            aload 9 /* parts */
            arraylength
            iconst_2
            if_icmpne 37
            new java.lang.StringBuilder
            dup
            ldc "\""
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 9 /* parts */
            iconst_1
            aaload
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            goto 38
      StackMap locals: org.postgresql.jdbc.TypeInfoCache java.lang.String int int int java.sql.PreparedStatement java.lang.String java.lang.String top java.lang.String[]
      StackMap stack:
        37: aload 9 /* parts */
            iconst_0
            aaload
      StackMap locals:
      StackMap stack: java.lang.String
        38: astore 8 /* name */
        end local 9 // java.lang.String[] parts
        start local 8 // java.lang.String name
        39: .line 335
            goto 46
        end local 8 // java.lang.String name
        end local 7 // java.lang.String schema
        40: .line 336
      StackMap locals: org.postgresql.jdbc.TypeInfoCache java.lang.String int int int java.sql.PreparedStatement java.lang.String
      StackMap stack:
            aload 6 /* fullName */
            bipush 46
            invokevirtual java.lang.String.lastIndexOf:(I)I
            istore 9 /* lastDotIndex */
        start local 9 // int lastDotIndex
        41: .line 337
            aload 6 /* fullName */
            iload 9 /* lastDotIndex */
            iconst_1
            iadd
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            astore 8 /* name */
        start local 8 // java.lang.String name
        42: .line 338
            aload 6 /* fullName */
            iconst_0
            iload 9 /* lastDotIndex */
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            astore 7 /* schema */
        end local 9 // int lastDotIndex
        start local 7 // java.lang.String schema
        43: .line 340
            goto 46
        end local 8 // java.lang.String name
        end local 7 // java.lang.String schema
        44: .line 341
      StackMap locals:
      StackMap stack:
            aload 6 /* fullName */
            iconst_0
            iload 4 /* dotIndex */
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            astore 7 /* schema */
        start local 7 // java.lang.String schema
        45: .line 342
            aload 6 /* fullName */
            iload 4 /* dotIndex */
            iconst_1
            iadd
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            astore 8 /* name */
        start local 8 // java.lang.String name
        46: .line 345
      StackMap locals: java.lang.String java.lang.String
      StackMap stack:
            aload 7 /* schema */
            ifnull 49
            aload 7 /* schema */
            ldc "\""
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifeq 49
            aload 7 /* schema */
            ldc "\""
            invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
            ifeq 49
        47: .line 346
            aload 7 /* schema */
            iconst_1
            aload 7 /* schema */
            invokevirtual java.lang.String.length:()I
            iconst_1
            isub
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            astore 7 /* schema */
        48: .line 347
            goto 51
      StackMap locals:
      StackMap stack:
        49: aload 7 /* schema */
            ifnull 51
        50: .line 348
            aload 7 /* schema */
            invokevirtual java.lang.String.toLowerCase:()Ljava/lang/String;
            astore 7 /* schema */
        51: .line 350
      StackMap locals:
      StackMap stack:
            aload 8 /* name */
            ldc "\""
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifeq 54
            aload 8 /* name */
            ldc "\""
            invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
            ifeq 54
        52: .line 351
            aload 8 /* name */
            iconst_1
            aload 8 /* name */
            invokevirtual java.lang.String.length:()I
            iconst_1
            isub
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            astore 8 /* name */
        53: .line 352
            goto 55
        54: .line 353
      StackMap locals:
      StackMap stack:
            aload 8 /* name */
            invokevirtual java.lang.String.toLowerCase:()Ljava/lang/String;
            astore 8 /* name */
        55: .line 355
      StackMap locals:
      StackMap stack:
            aload 5 /* oidStatementComplex */
            iconst_1
            aload 8 /* name */
            invokeinterface java.sql.PreparedStatement.setString:(ILjava/lang/String;)V
        56: .line 356
            aload 5 /* oidStatementComplex */
            iconst_2
            aload 7 /* schema */
            invokeinterface java.sql.PreparedStatement.setString:(ILjava/lang/String;)V
        57: .line 357
            aload 5 /* oidStatementComplex */
            iconst_3
            aload 7 /* schema */
            ifnonnull 58
            iconst_1
            goto 59
      StackMap locals: org.postgresql.jdbc.TypeInfoCache java.lang.String int int int java.sql.PreparedStatement java.lang.String java.lang.String java.lang.String
      StackMap stack: java.sql.PreparedStatement int
        58: iconst_0
      StackMap locals: org.postgresql.jdbc.TypeInfoCache java.lang.String int int int java.sql.PreparedStatement java.lang.String java.lang.String java.lang.String
      StackMap stack: java.sql.PreparedStatement int int
        59: invokeinterface java.sql.PreparedStatement.setBoolean:(IZ)V
        60: .line 358
            aload 5 /* oidStatementComplex */
            areturn
        end local 8 // java.lang.String name
        end local 7 // java.lang.String schema
        end local 6 // java.lang.String fullName
        end local 5 // java.sql.PreparedStatement oidStatementComplex
        end local 4 // int dotIndex
        end local 3 // boolean hasQuote
        end local 2 // boolean isArray
        end local 1 // java.lang.String pgTypeName
        end local 0 // org.postgresql.jdbc.TypeInfoCache this
      LocalVariableTable:
        Start  End  Slot                 Name  Signature
            0   61     0                 this  Lorg/postgresql/jdbc/TypeInfoCache;
            0   61     1           pgTypeName  Ljava/lang/String;
            1   61     2              isArray  Z
            2   61     3             hasQuote  Z
            3   61     4             dotIndex  I
            6    7     5                  sql  Ljava/lang/String;
            8   10     5               lcName  Ljava/lang/String;
           18   19     5  oidStatementComplex  Ljava/sql/PreparedStatement;
           23   61     5  oidStatementComplex  Ljava/sql/PreparedStatement;
           14   15     6                  sql  Ljava/lang/String;
           16   17     6                  sql  Ljava/lang/String;
           21   22     6                  sql  Ljava/lang/String;
           26   61     6             fullName  Ljava/lang/String;
           28   30     7               schema  Ljava/lang/String;
           36   40     7               schema  Ljava/lang/String;
           43   44     7               schema  Ljava/lang/String;
           45   61     7               schema  Ljava/lang/String;
           29   30     8                 name  Ljava/lang/String;
           39   40     8                 name  Ljava/lang/String;
           42   44     8                 name  Ljava/lang/String;
           46   61     8                 name  Ljava/lang/String;
           33   39     9                parts  [Ljava/lang/String;
           41   43     9         lastDotIndex  I
    Exceptions:
      throws java.sql.SQLException
    MethodParameters:
            Name  Flags
      pgTypeName  

  public synchronized int getPGType(java.lang.String);
    descriptor: (Ljava/lang/String;)I
    flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
    Code:
      stack=4, locals=6, args_size=2
        start local 0 // org.postgresql.jdbc.TypeInfoCache this
        start local 1 // java.lang.String pgTypeName
         0: .line 362
            aload 0 /* this */
            getfield org.postgresql.jdbc.TypeInfoCache.pgNameToOid:Ljava/util/Map;
            aload 1 /* pgTypeName */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.Integer
            astore 2 /* oid */
        start local 2 // java.lang.Integer oid
         1: .line 363
            aload 2 /* oid */
            ifnull 3
         2: .line 364
            aload 2 /* oid */
            invokevirtual java.lang.Integer.intValue:()I
            ireturn
         3: .line 367
      StackMap locals: java.lang.Integer
      StackMap stack:
            aload 0 /* this */
            aload 1 /* pgTypeName */
            invokevirtual org.postgresql.jdbc.TypeInfoCache.getOidStatement:(Ljava/lang/String;)Ljava/sql/PreparedStatement;
            astore 3 /* oidStatement */
        start local 3 // java.sql.PreparedStatement oidStatement
         4: .line 370
            aload 3 /* oidStatement */
            checkcast org.postgresql.core.BaseStatement
            bipush 16
            invokeinterface org.postgresql.core.BaseStatement.executeWithFlags:(I)Z
            ifne 6
         5: .line 371
            new org.postgresql.util.PSQLException
            dup
            ldc "No results were returned by the query."
            iconst_0
            anewarray java.lang.Object
            invokestatic org.postgresql.util.GT.tr:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            getstatic org.postgresql.util.PSQLState.NO_DATA:Lorg/postgresql/util/PSQLState;
            invokespecial org.postgresql.util.PSQLException.<init>:(Ljava/lang/String;Lorg/postgresql/util/PSQLState;)V
            athrow
         6: .line 374
      StackMap locals: java.sql.PreparedStatement
      StackMap stack:
            iconst_0
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            astore 2 /* oid */
         7: .line 375
            aload 3 /* oidStatement */
            invokeinterface java.sql.PreparedStatement.getResultSet:()Ljava/sql/ResultSet;
            astore 4 /* rs */
        start local 4 // java.sql.ResultSet rs
         8: .line 376
            aload 4 /* rs */
            invokeinterface java.sql.ResultSet.next:()Z
            ifeq 13
         9: .line 377
            aload 4 /* rs */
            iconst_1
            invokeinterface java.sql.ResultSet.getLong:(I)J
            l2i
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            astore 2 /* oid */
        10: .line 378
            aload 4 /* rs */
            iconst_2
            invokeinterface java.sql.ResultSet.getString:(I)Ljava/lang/String;
            astore 5 /* internalName */
        start local 5 // java.lang.String internalName
        11: .line 379
            aload 0 /* this */
            getfield org.postgresql.jdbc.TypeInfoCache.oidToPgName:Ljava/util/Map;
            aload 2 /* oid */
            aload 5 /* internalName */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        12: .line 380
            aload 0 /* this */
            getfield org.postgresql.jdbc.TypeInfoCache.pgNameToOid:Ljava/util/Map;
            aload 5 /* internalName */
            aload 2 /* oid */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        end local 5 // java.lang.String internalName
        13: .line 382
      StackMap locals: java.sql.ResultSet
      StackMap stack:
            aload 0 /* this */
            getfield org.postgresql.jdbc.TypeInfoCache.pgNameToOid:Ljava/util/Map;
            aload 1 /* pgTypeName */
            aload 2 /* oid */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        14: .line 383
            aload 4 /* rs */
            invokeinterface java.sql.ResultSet.close:()V
        15: .line 385
            aload 2 /* oid */
            invokevirtual java.lang.Integer.intValue:()I
            ireturn
        end local 4 // java.sql.ResultSet rs
        end local 3 // java.sql.PreparedStatement oidStatement
        end local 2 // java.lang.Integer oid
        end local 1 // java.lang.String pgTypeName
        end local 0 // org.postgresql.jdbc.TypeInfoCache this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   16     0          this  Lorg/postgresql/jdbc/TypeInfoCache;
            0   16     1    pgTypeName  Ljava/lang/String;
            1   16     2           oid  Ljava/lang/Integer;
            4   16     3  oidStatement  Ljava/sql/PreparedStatement;
            8   16     4            rs  Ljava/sql/ResultSet;
           11   13     5  internalName  Ljava/lang/String;
    Exceptions:
      throws java.sql.SQLException
    MethodParameters:
            Name  Flags
      pgTypeName  

  public synchronized java.lang.String getPGType(int);
    descriptor: (I)Ljava/lang/String;
    flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
    Code:
      stack=4, locals=7, args_size=2
        start local 0 // org.postgresql.jdbc.TypeInfoCache this
        start local 1 // int oid
         0: .line 389
            iload 1 /* oid */
            ifne 2
         1: .line 390
            aconst_null
            areturn
         2: .line 393
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.postgresql.jdbc.TypeInfoCache.oidToPgName:Ljava/util/Map;
            iload 1 /* oid */
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.String
            astore 2 /* pgTypeName */
        start local 2 // java.lang.String pgTypeName
         3: .line 394
            aload 2 /* pgTypeName */
            ifnull 5
         4: .line 395
            aload 2 /* pgTypeName */
            areturn
         5: .line 398
      StackMap locals: java.lang.String
      StackMap stack:
            aload 0 /* this */
            getfield org.postgresql.jdbc.TypeInfoCache.getNameStatement:Ljava/sql/PreparedStatement;
            ifnonnull 8
         6: .line 400
            ldc "SELECT n.nspname = ANY(current_schemas(true)), n.nspname, t.typname FROM pg_catalog.pg_type t JOIN pg_catalog.pg_namespace n ON t.typnamespace = n.oid WHERE t.oid = ?"
            astore 3 /* sql */
        start local 3 // java.lang.String sql
         7: .line 404
            aload 0 /* this */
            aload 0 /* this */
            getfield org.postgresql.jdbc.TypeInfoCache.conn:Lorg/postgresql/core/BaseConnection;
            aload 3 /* sql */
            invokeinterface org.postgresql.core.BaseConnection.prepareStatement:(Ljava/lang/String;)Ljava/sql/PreparedStatement;
            putfield org.postgresql.jdbc.TypeInfoCache.getNameStatement:Ljava/sql/PreparedStatement;
        end local 3 // java.lang.String sql
         8: .line 407
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.postgresql.jdbc.TypeInfoCache.getNameStatement:Ljava/sql/PreparedStatement;
            iconst_1
            iload 1 /* oid */
            invokeinterface java.sql.PreparedStatement.setInt:(II)V
         9: .line 410
            aload 0 /* this */
            getfield org.postgresql.jdbc.TypeInfoCache.getNameStatement:Ljava/sql/PreparedStatement;
            checkcast org.postgresql.core.BaseStatement
            bipush 16
            invokeinterface org.postgresql.core.BaseStatement.executeWithFlags:(I)Z
            ifne 11
        10: .line 411
            new org.postgresql.util.PSQLException
            dup
            ldc "No results were returned by the query."
            iconst_0
            anewarray java.lang.Object
            invokestatic org.postgresql.util.GT.tr:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            getstatic org.postgresql.util.PSQLState.NO_DATA:Lorg/postgresql/util/PSQLState;
            invokespecial org.postgresql.util.PSQLException.<init>:(Ljava/lang/String;Lorg/postgresql/util/PSQLState;)V
            athrow
        11: .line 414
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.postgresql.jdbc.TypeInfoCache.getNameStatement:Ljava/sql/PreparedStatement;
            invokeinterface java.sql.PreparedStatement.getResultSet:()Ljava/sql/ResultSet;
            astore 3 /* rs */
        start local 3 // java.sql.ResultSet rs
        12: .line 415
            aload 3 /* rs */
            invokeinterface java.sql.ResultSet.next:()Z
            ifeq 26
        13: .line 416
            aload 3 /* rs */
            iconst_1
            invokeinterface java.sql.ResultSet.getBoolean:(I)Z
            istore 4 /* onPath */
        start local 4 // boolean onPath
        14: .line 417
            aload 3 /* rs */
            iconst_2
            invokeinterface java.sql.ResultSet.getString:(I)Ljava/lang/String;
            astore 5 /* schema */
        start local 5 // java.lang.String schema
        15: .line 418
            aload 3 /* rs */
            iconst_3
            invokeinterface java.sql.ResultSet.getString:(I)Ljava/lang/String;
            astore 6 /* name */
        start local 6 // java.lang.String name
        16: .line 419
            iload 4 /* onPath */
            ifeq 20
        17: .line 420
            aload 6 /* name */
            astore 2 /* pgTypeName */
        18: .line 421
            aload 0 /* this */
            getfield org.postgresql.jdbc.TypeInfoCache.pgNameToOid:Ljava/util/Map;
            new java.lang.StringBuilder
            dup
            aload 5 /* schema */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc "."
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 6 /* name */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            iload 1 /* oid */
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        19: .line 422
            goto 24
        20: .line 424
      StackMap locals: org.postgresql.jdbc.TypeInfoCache int java.lang.String java.sql.ResultSet int java.lang.String java.lang.String
      StackMap stack:
            new java.lang.StringBuilder
            dup
            ldc "\""
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 5 /* schema */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "\".\""
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 6 /* name */
            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 /* pgTypeName */
        21: .line 427
            aload 5 /* schema */
            aload 5 /* schema */
            invokevirtual java.lang.String.toLowerCase:()Ljava/lang/String;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 24
            aload 5 /* schema */
            bipush 46
            invokevirtual java.lang.String.indexOf:(I)I
            iconst_m1
            if_icmpne 24
        22: .line 428
            aload 6 /* name */
            aload 6 /* name */
            invokevirtual java.lang.String.toLowerCase:()Ljava/lang/String;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 24
            aload 6 /* name */
            bipush 46
            invokevirtual java.lang.String.indexOf:(I)I
            iconst_m1
            if_icmpne 24
        23: .line 429
            aload 0 /* this */
            getfield org.postgresql.jdbc.TypeInfoCache.pgNameToOid:Ljava/util/Map;
            new java.lang.StringBuilder
            dup
            aload 5 /* schema */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc "."
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 6 /* name */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            iload 1 /* oid */
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        24: .line 432
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.postgresql.jdbc.TypeInfoCache.pgNameToOid:Ljava/util/Map;
            aload 2 /* pgTypeName */
            iload 1 /* oid */
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        25: .line 433
            aload 0 /* this */
            getfield org.postgresql.jdbc.TypeInfoCache.oidToPgName:Ljava/util/Map;
            iload 1 /* oid */
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aload 2 /* pgTypeName */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        end local 6 // java.lang.String name
        end local 5 // java.lang.String schema
        end local 4 // boolean onPath
        26: .line 435
      StackMap locals:
      StackMap stack:
            aload 3 /* rs */
            invokeinterface java.sql.ResultSet.close:()V
        27: .line 437
            aload 2 /* pgTypeName */
            areturn
        end local 3 // java.sql.ResultSet rs
        end local 2 // java.lang.String pgTypeName
        end local 1 // int oid
        end local 0 // org.postgresql.jdbc.TypeInfoCache this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   28     0        this  Lorg/postgresql/jdbc/TypeInfoCache;
            0   28     1         oid  I
            3   28     2  pgTypeName  Ljava/lang/String;
            7    8     3         sql  Ljava/lang/String;
           12   28     3          rs  Ljava/sql/ResultSet;
           14   26     4      onPath  Z
           15   26     5      schema  Ljava/lang/String;
           16   26     6        name  Ljava/lang/String;
    Exceptions:
      throws java.sql.SQLException
    MethodParameters:
      Name  Flags
      oid   

  public int getPGArrayType(java.lang.String);
    descriptor: (Ljava/lang/String;)I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // org.postgresql.jdbc.TypeInfoCache this
        start local 1 // java.lang.String elementTypeName
         0: .line 441
            aload 0 /* this */
            aload 1 /* elementTypeName */
            invokevirtual org.postgresql.jdbc.TypeInfoCache.getTypeForAlias:(Ljava/lang/String;)Ljava/lang/String;
            astore 1 /* elementTypeName */
         1: .line 442
            aload 0 /* this */
            new java.lang.StringBuilder
            dup
            aload 1 /* elementTypeName */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc "[]"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual org.postgresql.jdbc.TypeInfoCache.getPGType:(Ljava/lang/String;)I
            ireturn
        end local 1 // java.lang.String elementTypeName
        end local 0 // org.postgresql.jdbc.TypeInfoCache this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0    2     0             this  Lorg/postgresql/jdbc/TypeInfoCache;
            0    2     1  elementTypeName  Ljava/lang/String;
    Exceptions:
      throws java.sql.SQLException
    MethodParameters:
                 Name  Flags
      elementTypeName  

  protected synchronized int convertArrayToBaseOid(int);
    descriptor: (I)I
    flags: (0x0024) ACC_PROTECTED, ACC_SYNCHRONIZED
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // org.postgresql.jdbc.TypeInfoCache this
        start local 1 // int oid
         0: .line 455
            aload 0 /* this */
            getfield org.postgresql.jdbc.TypeInfoCache.pgArrayToPgType:Ljava/util/Map;
            iload 1 /* oid */
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.Integer
            astore 2 /* i */
        start local 2 // java.lang.Integer i
         1: .line 456
            aload 2 /* i */
            ifnonnull 3
         2: .line 457
            iload 1 /* oid */
            ireturn
         3: .line 459
      StackMap locals: java.lang.Integer
      StackMap stack:
            aload 2 /* i */
            invokevirtual java.lang.Integer.intValue:()I
            ireturn
        end local 2 // java.lang.Integer i
        end local 1 // int oid
        end local 0 // org.postgresql.jdbc.TypeInfoCache this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lorg/postgresql/jdbc/TypeInfoCache;
            0    4     1   oid  I
            1    4     2     i  Ljava/lang/Integer;
    MethodParameters:
      Name  Flags
      oid   

  public synchronized char getArrayDelimiter(int);
    descriptor: (I)C
    flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
    Code:
      stack=4, locals=5, args_size=2
        start local 0 // org.postgresql.jdbc.TypeInfoCache this
        start local 1 // int oid
         0: .line 463
            iload 1 /* oid */
            ifne 2
         1: .line 464
            bipush 44
            ireturn
         2: .line 467
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.postgresql.jdbc.TypeInfoCache.arrayOidToDelimiter:Ljava/util/Map;
            iload 1 /* oid */
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.Character
            astore 2 /* delim */
        start local 2 // java.lang.Character delim
         3: .line 468
            aload 2 /* delim */
            ifnull 5
         4: .line 469
            aload 2 /* delim */
            invokevirtual java.lang.Character.charValue:()C
            ireturn
         5: .line 472
      StackMap locals: java.lang.Character
      StackMap stack:
            aload 0 /* this */
            getfield org.postgresql.jdbc.TypeInfoCache.getArrayDelimiterStatement:Ljava/sql/PreparedStatement;
            ifnonnull 8
         6: .line 474
            ldc "SELECT e.typdelim FROM pg_catalog.pg_type t, pg_catalog.pg_type e WHERE t.oid = ? and t.typelem = e.oid"
            astore 3 /* sql */
        start local 3 // java.lang.String sql
         7: .line 476
            aload 0 /* this */
            aload 0 /* this */
            getfield org.postgresql.jdbc.TypeInfoCache.conn:Lorg/postgresql/core/BaseConnection;
            aload 3 /* sql */
            invokeinterface org.postgresql.core.BaseConnection.prepareStatement:(Ljava/lang/String;)Ljava/sql/PreparedStatement;
            putfield org.postgresql.jdbc.TypeInfoCache.getArrayDelimiterStatement:Ljava/sql/PreparedStatement;
        end local 3 // java.lang.String sql
         8: .line 479
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.postgresql.jdbc.TypeInfoCache.getArrayDelimiterStatement:Ljava/sql/PreparedStatement;
            iconst_1
            iload 1 /* oid */
            invokeinterface java.sql.PreparedStatement.setInt:(II)V
         9: .line 482
            aload 0 /* this */
            getfield org.postgresql.jdbc.TypeInfoCache.getArrayDelimiterStatement:Ljava/sql/PreparedStatement;
            checkcast org.postgresql.core.BaseStatement
        10: .line 483
            bipush 16
            invokeinterface org.postgresql.core.BaseStatement.executeWithFlags:(I)Z
            ifne 12
        11: .line 484
            new org.postgresql.util.PSQLException
            dup
            ldc "No results were returned by the query."
            iconst_0
            anewarray java.lang.Object
            invokestatic org.postgresql.util.GT.tr:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            getstatic org.postgresql.util.PSQLState.NO_DATA:Lorg/postgresql/util/PSQLState;
            invokespecial org.postgresql.util.PSQLException.<init>:(Ljava/lang/String;Lorg/postgresql/util/PSQLState;)V
            athrow
        12: .line 487
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.postgresql.jdbc.TypeInfoCache.getArrayDelimiterStatement:Ljava/sql/PreparedStatement;
            invokeinterface java.sql.PreparedStatement.getResultSet:()Ljava/sql/ResultSet;
            astore 3 /* rs */
        start local 3 // java.sql.ResultSet rs
        13: .line 488
            aload 3 /* rs */
            invokeinterface java.sql.ResultSet.next:()Z
            ifne 15
        14: .line 489
            new org.postgresql.util.PSQLException
            dup
            ldc "No results were returned by the query."
            iconst_0
            anewarray java.lang.Object
            invokestatic org.postgresql.util.GT.tr:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            getstatic org.postgresql.util.PSQLState.NO_DATA:Lorg/postgresql/util/PSQLState;
            invokespecial org.postgresql.util.PSQLException.<init>:(Ljava/lang/String;Lorg/postgresql/util/PSQLState;)V
            athrow
        15: .line 492
      StackMap locals: java.sql.ResultSet
      StackMap stack:
            aload 3 /* rs */
            iconst_1
            invokeinterface java.sql.ResultSet.getString:(I)Ljava/lang/String;
            astore 4 /* s */
        start local 4 // java.lang.String s
        16: .line 493
            aload 4 /* s */
            iconst_0
            invokevirtual java.lang.String.charAt:(I)C
            invokestatic java.lang.Character.valueOf:(C)Ljava/lang/Character;
            astore 2 /* delim */
        17: .line 495
            aload 0 /* this */
            getfield org.postgresql.jdbc.TypeInfoCache.arrayOidToDelimiter:Ljava/util/Map;
            iload 1 /* oid */
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aload 2 /* delim */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        18: .line 497
            aload 3 /* rs */
            invokeinterface java.sql.ResultSet.close:()V
        19: .line 499
            aload 2 /* delim */
            invokevirtual java.lang.Character.charValue:()C
            ireturn
        end local 4 // java.lang.String s
        end local 3 // java.sql.ResultSet rs
        end local 2 // java.lang.Character delim
        end local 1 // int oid
        end local 0 // org.postgresql.jdbc.TypeInfoCache this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   20     0   this  Lorg/postgresql/jdbc/TypeInfoCache;
            0   20     1    oid  I
            3   20     2  delim  Ljava/lang/Character;
            7    8     3    sql  Ljava/lang/String;
           13   20     3     rs  Ljava/sql/ResultSet;
           16   20     4      s  Ljava/lang/String;
    Exceptions:
      throws java.sql.SQLException
    MethodParameters:
      Name  Flags
      oid   

  public synchronized int getPGArrayElement(int);
    descriptor: (I)I
    flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
    Code:
      stack=4, locals=8, args_size=2
        start local 0 // org.postgresql.jdbc.TypeInfoCache this
        start local 1 // int oid
         0: .line 503
            iload 1 /* oid */
            ifne 2
         1: .line 504
            iconst_0
            ireturn
         2: .line 507
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.postgresql.jdbc.TypeInfoCache.pgArrayToPgType:Ljava/util/Map;
            iload 1 /* oid */
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.Integer
            astore 2 /* pgType */
        start local 2 // java.lang.Integer pgType
         3: .line 509
            aload 2 /* pgType */
            ifnull 5
         4: .line 510
            aload 2 /* pgType */
            invokevirtual java.lang.Integer.intValue:()I
            ireturn
         5: .line 513
      StackMap locals: java.lang.Integer
      StackMap stack:
            aload 0 /* this */
            getfield org.postgresql.jdbc.TypeInfoCache.getArrayElementOidStatement:Ljava/sql/PreparedStatement;
            ifnonnull 8
         6: .line 515
            ldc "SELECT e.oid, n.nspname = ANY(current_schemas(true)), n.nspname, e.typname FROM pg_catalog.pg_type t JOIN pg_catalog.pg_type e ON t.typelem = e.oid JOIN pg_catalog.pg_namespace n ON t.typnamespace = n.oid WHERE t.oid = ?"
            astore 3 /* sql */
        start local 3 // java.lang.String sql
         7: .line 518
            aload 0 /* this */
            aload 0 /* this */
            getfield org.postgresql.jdbc.TypeInfoCache.conn:Lorg/postgresql/core/BaseConnection;
            aload 3 /* sql */
            invokeinterface org.postgresql.core.BaseConnection.prepareStatement:(Ljava/lang/String;)Ljava/sql/PreparedStatement;
            putfield org.postgresql.jdbc.TypeInfoCache.getArrayElementOidStatement:Ljava/sql/PreparedStatement;
        end local 3 // java.lang.String sql
         8: .line 521
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.postgresql.jdbc.TypeInfoCache.getArrayElementOidStatement:Ljava/sql/PreparedStatement;
            iconst_1
            iload 1 /* oid */
            invokeinterface java.sql.PreparedStatement.setInt:(II)V
         9: .line 524
            aload 0 /* this */
            getfield org.postgresql.jdbc.TypeInfoCache.getArrayElementOidStatement:Ljava/sql/PreparedStatement;
            checkcast org.postgresql.core.BaseStatement
        10: .line 525
            bipush 16
            invokeinterface org.postgresql.core.BaseStatement.executeWithFlags:(I)Z
            ifne 12
        11: .line 526
            new org.postgresql.util.PSQLException
            dup
            ldc "No results were returned by the query."
            iconst_0
            anewarray java.lang.Object
            invokestatic org.postgresql.util.GT.tr:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            getstatic org.postgresql.util.PSQLState.NO_DATA:Lorg/postgresql/util/PSQLState;
            invokespecial org.postgresql.util.PSQLException.<init>:(Ljava/lang/String;Lorg/postgresql/util/PSQLState;)V
            athrow
        12: .line 529
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.postgresql.jdbc.TypeInfoCache.getArrayElementOidStatement:Ljava/sql/PreparedStatement;
            invokeinterface java.sql.PreparedStatement.getResultSet:()Ljava/sql/ResultSet;
            astore 3 /* rs */
        start local 3 // java.sql.ResultSet rs
        13: .line 530
            aload 3 /* rs */
            invokeinterface java.sql.ResultSet.next:()Z
            ifne 15
        14: .line 531
            new org.postgresql.util.PSQLException
            dup
            ldc "No results were returned by the query."
            iconst_0
            anewarray java.lang.Object
            invokestatic org.postgresql.util.GT.tr:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            getstatic org.postgresql.util.PSQLState.NO_DATA:Lorg/postgresql/util/PSQLState;
            invokespecial org.postgresql.util.PSQLException.<init>:(Ljava/lang/String;Lorg/postgresql/util/PSQLState;)V
            athrow
        15: .line 534
      StackMap locals: java.sql.ResultSet
      StackMap stack:
            aload 3 /* rs */
            iconst_1
            invokeinterface java.sql.ResultSet.getLong:(I)J
            l2i
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            astore 2 /* pgType */
        16: .line 535
            aload 3 /* rs */
            iconst_2
            invokeinterface java.sql.ResultSet.getBoolean:(I)Z
            istore 4 /* onPath */
        start local 4 // boolean onPath
        17: .line 536
            aload 3 /* rs */
            iconst_3
            invokeinterface java.sql.ResultSet.getString:(I)Ljava/lang/String;
            astore 5 /* schema */
        start local 5 // java.lang.String schema
        18: .line 537
            aload 3 /* rs */
            iconst_4
            invokeinterface java.sql.ResultSet.getString:(I)Ljava/lang/String;
            astore 6 /* name */
        start local 6 // java.lang.String name
        19: .line 538
            aload 0 /* this */
            getfield org.postgresql.jdbc.TypeInfoCache.pgArrayToPgType:Ljava/util/Map;
            iload 1 /* oid */
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aload 2 /* pgType */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        20: .line 539
            aload 0 /* this */
            getfield org.postgresql.jdbc.TypeInfoCache.pgNameToOid:Ljava/util/Map;
            new java.lang.StringBuilder
            dup
            aload 5 /* schema */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc "."
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 6 /* name */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            aload 2 /* pgType */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        21: .line 540
            new java.lang.StringBuilder
            dup
            ldc "\""
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 5 /* schema */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "\".\""
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 6 /* name */
            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 7 /* fullName */
        start local 7 // java.lang.String fullName
        22: .line 541
            aload 0 /* this */
            getfield org.postgresql.jdbc.TypeInfoCache.pgNameToOid:Ljava/util/Map;
            aload 7 /* fullName */
            aload 2 /* pgType */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        23: .line 542
            iload 4 /* onPath */
            ifeq 27
            aload 6 /* name */
            aload 6 /* name */
            invokevirtual java.lang.String.toLowerCase:()Ljava/lang/String;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 27
        24: .line 543
            aload 0 /* this */
            getfield org.postgresql.jdbc.TypeInfoCache.oidToPgName:Ljava/util/Map;
            aload 2 /* pgType */
            aload 6 /* name */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        25: .line 544
            aload 0 /* this */
            getfield org.postgresql.jdbc.TypeInfoCache.pgNameToOid:Ljava/util/Map;
            aload 6 /* name */
            aload 2 /* pgType */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        26: .line 545
            goto 28
        27: .line 546
      StackMap locals: org.postgresql.jdbc.TypeInfoCache int java.lang.Integer java.sql.ResultSet int java.lang.String java.lang.String java.lang.String
      StackMap stack:
            aload 0 /* this */
            getfield org.postgresql.jdbc.TypeInfoCache.oidToPgName:Ljava/util/Map;
            aload 2 /* pgType */
            aload 7 /* fullName */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        28: .line 549
      StackMap locals:
      StackMap stack:
            aload 3 /* rs */
            invokeinterface java.sql.ResultSet.close:()V
        29: .line 551
            aload 2 /* pgType */
            invokevirtual java.lang.Integer.intValue:()I
            ireturn
        end local 7 // java.lang.String fullName
        end local 6 // java.lang.String name
        end local 5 // java.lang.String schema
        end local 4 // boolean onPath
        end local 3 // java.sql.ResultSet rs
        end local 2 // java.lang.Integer pgType
        end local 1 // int oid
        end local 0 // org.postgresql.jdbc.TypeInfoCache this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   30     0      this  Lorg/postgresql/jdbc/TypeInfoCache;
            0   30     1       oid  I
            3   30     2    pgType  Ljava/lang/Integer;
            7    8     3       sql  Ljava/lang/String;
           13   30     3        rs  Ljava/sql/ResultSet;
           17   30     4    onPath  Z
           18   30     5    schema  Ljava/lang/String;
           19   30     6      name  Ljava/lang/String;
           22   30     7  fullName  Ljava/lang/String;
    Exceptions:
      throws java.sql.SQLException
    MethodParameters:
      Name  Flags
      oid   

  public synchronized java.lang.Class<? extends org.postgresql.util.PGobject> getPGobject(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/Class;
    flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.postgresql.jdbc.TypeInfoCache this
        start local 1 // java.lang.String type
         0: .line 555
            aload 0 /* this */
            getfield org.postgresql.jdbc.TypeInfoCache.pgNameToPgObject:Ljava/util/Map;
            aload 1 /* type */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.Class
            areturn
        end local 1 // java.lang.String type
        end local 0 // org.postgresql.jdbc.TypeInfoCache this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/postgresql/jdbc/TypeInfoCache;
            0    1     1  type  Ljava/lang/String;
    Signature: (Ljava/lang/String;)Ljava/lang/Class<+Lorg/postgresql/util/PGobject;>;
    MethodParameters:
      Name  Flags
      type  

  public synchronized java.lang.String getJavaClass(int);
    descriptor: (I)Ljava/lang/String;
    flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
    Code:
      stack=3, locals=4, args_size=2
        start local 0 // org.postgresql.jdbc.TypeInfoCache this
        start local 1 // int oid
         0: .line 559
            aload 0 /* this */
            iload 1 /* oid */
            invokevirtual org.postgresql.jdbc.TypeInfoCache.getPGType:(I)Ljava/lang/String;
            astore 2 /* pgTypeName */
        start local 2 // java.lang.String pgTypeName
         1: .line 561
            aload 0 /* this */
            getfield org.postgresql.jdbc.TypeInfoCache.pgNameToJavaClass:Ljava/util/Map;
            aload 2 /* pgTypeName */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.String
            astore 3 /* result */
        start local 3 // java.lang.String result
         2: .line 562
            aload 3 /* result */
            ifnull 4
         3: .line 563
            aload 3 /* result */
            areturn
         4: .line 566
      StackMap locals: java.lang.String java.lang.String
      StackMap stack:
            aload 0 /* this */
            aload 2 /* pgTypeName */
            invokevirtual org.postgresql.jdbc.TypeInfoCache.getSQLType:(Ljava/lang/String;)I
            sipush 2003
            if_icmpne 7
         5: .line 567
            ldc "java.sql.Array"
            astore 3 /* result */
         6: .line 568
            aload 0 /* this */
            getfield org.postgresql.jdbc.TypeInfoCache.pgNameToJavaClass:Ljava/util/Map;
            aload 2 /* pgTypeName */
            aload 3 /* result */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         7: .line 571
      StackMap locals:
      StackMap stack:
            aload 3 /* result */
            areturn
        end local 3 // java.lang.String result
        end local 2 // java.lang.String pgTypeName
        end local 1 // int oid
        end local 0 // org.postgresql.jdbc.TypeInfoCache this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    8     0        this  Lorg/postgresql/jdbc/TypeInfoCache;
            0    8     1         oid  I
            1    8     2  pgTypeName  Ljava/lang/String;
            2    8     3      result  Ljava/lang/String;
    Exceptions:
      throws java.sql.SQLException
    MethodParameters:
      Name  Flags
      oid   

  public java.lang.String getTypeForAlias(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // org.postgresql.jdbc.TypeInfoCache this
        start local 1 // java.lang.String alias
         0: .line 575
            getstatic org.postgresql.jdbc.TypeInfoCache.typeAliases:Ljava/util/HashMap;
            aload 1 /* alias */
            invokevirtual java.util.HashMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.String
            astore 2 /* type */
        start local 2 // java.lang.String type
         1: .line 576
            aload 2 /* type */
            ifnull 3
         2: .line 577
            aload 2 /* type */
            areturn
         3: .line 579
      StackMap locals: java.lang.String
      StackMap stack:
            aload 1 /* alias */
            bipush 34
            invokevirtual java.lang.String.indexOf:(I)I
            iconst_m1
            if_icmpne 7
         4: .line 580
            getstatic org.postgresql.jdbc.TypeInfoCache.typeAliases:Ljava/util/HashMap;
            aload 1 /* alias */
            invokevirtual java.lang.String.toLowerCase:()Ljava/lang/String;
            invokevirtual java.util.HashMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.String
            astore 2 /* type */
         5: .line 581
            aload 2 /* type */
            ifnull 7
         6: .line 582
            aload 2 /* type */
            areturn
         7: .line 585
      StackMap locals:
      StackMap stack:
            aload 1 /* alias */
            areturn
        end local 2 // java.lang.String type
        end local 1 // java.lang.String alias
        end local 0 // org.postgresql.jdbc.TypeInfoCache this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    8     0   this  Lorg/postgresql/jdbc/TypeInfoCache;
            0    8     1  alias  Ljava/lang/String;
            1    8     2   type  Ljava/lang/String;
    MethodParameters:
       Name  Flags
      alias  

  public int getPrecision(int, int);
    descriptor: (II)I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.postgresql.jdbc.TypeInfoCache this
        start local 1 // int oid
        start local 2 // int typmod
         0: .line 589
            aload 0 /* this */
            iload 1 /* oid */
            invokevirtual org.postgresql.jdbc.TypeInfoCache.convertArrayToBaseOid:(I)I
            istore 1 /* oid */
         1: .line 590
            iload 1 /* oid */
            lookupswitch { // 21
                   16: 10
                   17: 19
                   18: 10
                   20: 4
                   21: 2
                   23: 3
                   25: 19
                   26: 3
                  700: 5
                  701: 6
                 1042: 11
                 1043: 11
                 1082: 14
                 1083: 14
                 1114: 14
                 1184: 14
                 1186: 14
                 1266: 14
                 1560: 15
                 1562: 16
                 1700: 7
              default: 19
          }
         2: .line 592
      StackMap locals:
      StackMap stack:
            iconst_5
            ireturn
         3: .line 596
      StackMap locals:
      StackMap stack:
            bipush 10
            ireturn
         4: .line 599
      StackMap locals:
      StackMap stack:
            bipush 19
            ireturn
         5: .line 605
      StackMap locals:
      StackMap stack:
            bipush 8
            ireturn
         6: .line 608
      StackMap locals:
      StackMap stack:
            bipush 17
            ireturn
         7: .line 611
      StackMap locals:
      StackMap stack:
            iload 2 /* typmod */
            iconst_m1
            if_icmpne 9
         8: .line 612
            iconst_0
            ireturn
         9: .line 614
      StackMap locals:
      StackMap stack:
            iload 2 /* typmod */
            iconst_4
            isub
            ldc -65536
            iand
            bipush 16
            ishr
            ireturn
        10: .line 618
      StackMap locals:
      StackMap stack:
            iconst_1
            ireturn
        11: .line 622
      StackMap locals:
      StackMap stack:
            iload 2 /* typmod */
            iconst_m1
            if_icmpne 13
        12: .line 623
            aload 0 /* this */
            getfield org.postgresql.jdbc.TypeInfoCache.unknownLength:I
            ireturn
        13: .line 625
      StackMap locals:
      StackMap stack:
            iload 2 /* typmod */
            iconst_4
            isub
            ireturn
        14: .line 635
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 1 /* oid */
            iload 2 /* typmod */
            invokevirtual org.postgresql.jdbc.TypeInfoCache.getDisplaySize:(II)I
            ireturn
        15: .line 638
      StackMap locals:
      StackMap stack:
            iload 2 /* typmod */
            ireturn
        16: .line 641
      StackMap locals:
      StackMap stack:
            iload 2 /* typmod */
            iconst_m1
            if_icmpne 18
        17: .line 642
            aload 0 /* this */
            getfield org.postgresql.jdbc.TypeInfoCache.unknownLength:I
            ireturn
        18: .line 644
      StackMap locals:
      StackMap stack:
            iload 2 /* typmod */
            ireturn
        19: .line 649
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.postgresql.jdbc.TypeInfoCache.unknownLength:I
            ireturn
        end local 2 // int typmod
        end local 1 // int oid
        end local 0 // org.postgresql.jdbc.TypeInfoCache this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   20     0    this  Lorg/postgresql/jdbc/TypeInfoCache;
            0   20     1     oid  I
            0   20     2  typmod  I
    MethodParameters:
        Name  Flags
      oid     
      typmod  

  public int getScale(int, int);
    descriptor: (II)I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // org.postgresql.jdbc.TypeInfoCache this
        start local 1 // int oid
        start local 2 // int typmod
         0: .line 654
            aload 0 /* this */
            iload 1 /* oid */
            invokevirtual org.postgresql.jdbc.TypeInfoCache.convertArrayToBaseOid:(I)I
            istore 1 /* oid */
         1: .line 655
            iload 1 /* oid */
            lookupswitch { // 8
                  700: 2
                  701: 3
                 1083: 7
                 1114: 7
                 1184: 7
                 1186: 10
                 1266: 7
                 1700: 4
              default: 13
          }
         2: .line 657
      StackMap locals:
      StackMap stack:
            bipush 8
            ireturn
         3: .line 659
      StackMap locals:
      StackMap stack:
            bipush 17
            ireturn
         4: .line 661
      StackMap locals:
      StackMap stack:
            iload 2 /* typmod */
            iconst_m1
            if_icmpne 6
         5: .line 662
            iconst_0
            ireturn
         6: .line 664
      StackMap locals:
      StackMap stack:
            iload 2 /* typmod */
            iconst_4
            isub
            ldc 65535
            iand
            ireturn
         7: .line 669
      StackMap locals:
      StackMap stack:
            iload 2 /* typmod */
            iconst_m1
            if_icmpne 9
         8: .line 670
            bipush 6
            ireturn
         9: .line 672
      StackMap locals:
      StackMap stack:
            iload 2 /* typmod */
            ireturn
        10: .line 674
      StackMap locals:
      StackMap stack:
            iload 2 /* typmod */
            iconst_m1
            if_icmpne 12
        11: .line 675
            bipush 6
            ireturn
        12: .line 677
      StackMap locals:
      StackMap stack:
            iload 2 /* typmod */
            ldc 65535
            iand
            ireturn
        13: .line 679
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 2 // int typmod
        end local 1 // int oid
        end local 0 // org.postgresql.jdbc.TypeInfoCache this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   14     0    this  Lorg/postgresql/jdbc/TypeInfoCache;
            0   14     1     oid  I
            0   14     2  typmod  I
    MethodParameters:
        Name  Flags
      oid     
      typmod  

  public boolean isCaseSensitive(int);
    descriptor: (I)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.postgresql.jdbc.TypeInfoCache this
        start local 1 // int oid
         0: .line 684
            aload 0 /* this */
            iload 1 /* oid */
            invokevirtual org.postgresql.jdbc.TypeInfoCache.convertArrayToBaseOid:(I)I
            istore 1 /* oid */
         1: .line 685
            iload 1 /* oid */
            lookupswitch { // 16
                   16: 2
                   20: 2
                   21: 2
                   23: 2
                   26: 2
                  700: 2
                  701: 2
                 1082: 2
                 1083: 2
                 1114: 2
                 1184: 2
                 1186: 2
                 1266: 2
                 1560: 2
                 1562: 2
                 1700: 2
              default: 3
          }
         2: .line 702
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
         3: .line 704
      StackMap locals:
      StackMap stack:
            iconst_1
            ireturn
        end local 1 // int oid
        end local 0 // org.postgresql.jdbc.TypeInfoCache this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lorg/postgresql/jdbc/TypeInfoCache;
            0    4     1   oid  I
    MethodParameters:
      Name  Flags
      oid   

  public boolean isSigned(int);
    descriptor: (I)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.postgresql.jdbc.TypeInfoCache this
        start local 1 // int oid
         0: .line 709
            aload 0 /* this */
            iload 1 /* oid */
            invokevirtual org.postgresql.jdbc.TypeInfoCache.convertArrayToBaseOid:(I)I
            istore 1 /* oid */
         1: .line 710
            iload 1 /* oid */
            lookupswitch { // 6
                   20: 2
                   21: 2
                   23: 2
                  700: 2
                  701: 2
                 1700: 2
              default: 3
          }
         2: .line 717
      StackMap locals:
      StackMap stack:
            iconst_1
            ireturn
         3: .line 719
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 1 // int oid
        end local 0 // org.postgresql.jdbc.TypeInfoCache this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lorg/postgresql/jdbc/TypeInfoCache;
            0    4     1   oid  I
    MethodParameters:
      Name  Flags
      oid   

  public int getDisplaySize(int, int);
    descriptor: (II)I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=6, args_size=3
        start local 0 // org.postgresql.jdbc.TypeInfoCache this
        start local 1 // int oid
        start local 2 // int typmod
         0: .line 724
            aload 0 /* this */
            iload 1 /* oid */
            invokevirtual org.postgresql.jdbc.TypeInfoCache.convertArrayToBaseOid:(I)I
            istore 1 /* oid */
         1: .line 725
            iload 1 /* oid */
            lookupswitch { // 21
                   16: 9
                   17: 39
                   18: 8
                   20: 5
                   21: 2
                   23: 3
                   25: 39
                   26: 4
                  700: 6
                  701: 7
                 1042: 25
                 1043: 25
                 1082: 10
                 1083: 11
                 1114: 11
                 1184: 11
                 1186: 24
                 1266: 11
                 1560: 35
                 1562: 36
                 1700: 28
              default: 40
          }
         2: .line 727
      StackMap locals:
      StackMap stack:
            bipush 6
            ireturn
         3: .line 729
      StackMap locals:
      StackMap stack:
            bipush 11
            ireturn
         4: .line 731
      StackMap locals:
      StackMap stack:
            bipush 10
            ireturn
         5: .line 733
      StackMap locals:
      StackMap stack:
            bipush 20
            ireturn
         6: .line 737
      StackMap locals:
      StackMap stack:
            bipush 15
            ireturn
         7: .line 739
      StackMap locals:
      StackMap stack:
            bipush 25
            ireturn
         8: .line 741
      StackMap locals:
      StackMap stack:
            iconst_1
            ireturn
         9: .line 743
      StackMap locals:
      StackMap stack:
            iconst_1
            ireturn
        10: .line 745
      StackMap locals:
      StackMap stack:
            bipush 13
            ireturn
        11: .line 752
      StackMap locals:
      StackMap stack:
            iload 2 /* typmod */
            tableswitch { // -1 - 1
                   -1: 12
                    0: 14
                    1: 16
              default: 18
          }
        12: .line 754
      StackMap locals:
      StackMap stack:
            bipush 7
            istore 3 /* secondSize */
        start local 3 // int secondSize
        13: .line 755
            goto 19
        end local 3 // int secondSize
        14: .line 757
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 3 /* secondSize */
        start local 3 // int secondSize
        15: .line 758
            goto 19
        end local 3 // int secondSize
        16: .line 761
      StackMap locals:
      StackMap stack:
            iconst_3
            istore 3 /* secondSize */
        start local 3 // int secondSize
        17: .line 762
            goto 19
        end local 3 // int secondSize
        18: .line 764
      StackMap locals:
      StackMap stack:
            iload 2 /* typmod */
            iconst_1
            iadd
            istore 3 /* secondSize */
        start local 3 // int secondSize
        19: .line 774
      StackMap locals: int
      StackMap stack:
            iload 1 /* oid */
            lookupswitch { // 4
                 1083: 20
                 1114: 22
                 1184: 23
                 1266: 21
              default: 24
          }
        20: .line 776
      StackMap locals:
      StackMap stack:
            bipush 8
            iload 3 /* secondSize */
            iadd
            ireturn
        21: .line 778
      StackMap locals:
      StackMap stack:
            bipush 8
            iload 3 /* secondSize */
            iadd
            bipush 6
            iadd
            ireturn
        22: .line 780
      StackMap locals:
      StackMap stack:
            bipush 22
            iload 3 /* secondSize */
            iadd
            ireturn
        23: .line 782
      StackMap locals:
      StackMap stack:
            bipush 22
            iload 3 /* secondSize */
            iadd
            bipush 6
            iadd
            ireturn
        end local 3 // int secondSize
        24: .line 786
      StackMap locals:
      StackMap stack:
            bipush 49
            ireturn
        25: .line 789
      StackMap locals:
      StackMap stack:
            iload 2 /* typmod */
            iconst_m1
            if_icmpne 27
        26: .line 790
            aload 0 /* this */
            getfield org.postgresql.jdbc.TypeInfoCache.unknownLength:I
            ireturn
        27: .line 792
      StackMap locals:
      StackMap stack:
            iload 2 /* typmod */
            iconst_4
            isub
            ireturn
        28: .line 794
      StackMap locals:
      StackMap stack:
            iload 2 /* typmod */
            iconst_m1
            if_icmpne 30
        29: .line 795
            ldc 131089
            ireturn
        30: .line 797
      StackMap locals:
      StackMap stack:
            iload 2 /* typmod */
            iconst_4
            isub
            bipush 16
            ishr
            ldc 65535
            iand
            istore 4 /* precision */
        start local 4 // int precision
        31: .line 798
            iload 2 /* typmod */
            iconst_4
            isub
            ldc 65535
            iand
            istore 5 /* scale */
        start local 5 // int scale
        32: .line 800
            iconst_1
            iload 4 /* precision */
            iadd
            iload 5 /* scale */
            ifeq 33
            iconst_1
            goto 34
      StackMap locals: org.postgresql.jdbc.TypeInfoCache int int top int int
      StackMap stack: int
        33: iconst_0
      StackMap locals: org.postgresql.jdbc.TypeInfoCache int int top int int
      StackMap stack: int int
        34: iadd
            ireturn
        end local 5 // int scale
        end local 4 // int precision
        35: .line 802
      StackMap locals: org.postgresql.jdbc.TypeInfoCache int int
      StackMap stack:
            iload 2 /* typmod */
            ireturn
        36: .line 804
      StackMap locals:
      StackMap stack:
            iload 2 /* typmod */
            iconst_m1
            if_icmpne 38
        37: .line 805
            aload 0 /* this */
            getfield org.postgresql.jdbc.TypeInfoCache.unknownLength:I
            ireturn
        38: .line 807
      StackMap locals:
      StackMap stack:
            iload 2 /* typmod */
            ireturn
        39: .line 810
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.postgresql.jdbc.TypeInfoCache.unknownLength:I
            ireturn
        40: .line 812
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.postgresql.jdbc.TypeInfoCache.unknownLength:I
            ireturn
        end local 2 // int typmod
        end local 1 // int oid
        end local 0 // org.postgresql.jdbc.TypeInfoCache this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   41     0        this  Lorg/postgresql/jdbc/TypeInfoCache;
            0   41     1         oid  I
            0   41     2      typmod  I
           13   14     3  secondSize  I
           15   16     3  secondSize  I
           17   18     3  secondSize  I
           19   24     3  secondSize  I
           31   35     4   precision  I
           32   35     5       scale  I
    MethodParameters:
        Name  Flags
      oid     
      typmod  

  public int getMaximumPrecision(int);
    descriptor: (I)I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.postgresql.jdbc.TypeInfoCache this
        start local 1 // int oid
         0: .line 817
            aload 0 /* this */
            iload 1 /* oid */
            invokevirtual org.postgresql.jdbc.TypeInfoCache.convertArrayToBaseOid:(I)I
            istore 1 /* oid */
         1: .line 818
            iload 1 /* oid */
            lookupswitch { // 10
                 1042: 5
                 1043: 5
                 1083: 3
                 1114: 4
                 1184: 4
                 1186: 4
                 1266: 3
                 1560: 6
                 1562: 6
                 1700: 2
              default: 7
          }
         2: .line 820
      StackMap locals:
      StackMap stack:
            sipush 1000
            ireturn
         3: .line 825
      StackMap locals:
      StackMap stack:
            bipush 6
            ireturn
         4: .line 829
      StackMap locals:
      StackMap stack:
            bipush 6
            ireturn
         5: .line 832
      StackMap locals:
      StackMap stack:
            ldc 10485760
            ireturn
         6: .line 835
      StackMap locals:
      StackMap stack:
            ldc 83886080
            ireturn
         7: .line 837
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 1 // int oid
        end local 0 // org.postgresql.jdbc.TypeInfoCache this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    8     0  this  Lorg/postgresql/jdbc/TypeInfoCache;
            0    8     1   oid  I
    MethodParameters:
      Name  Flags
      oid   

  public boolean requiresQuoting(int);
    descriptor: (I)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // org.postgresql.jdbc.TypeInfoCache this
        start local 1 // int oid
         0: .line 842
            aload 0 /* this */
            iload 1 /* oid */
            invokevirtual org.postgresql.jdbc.TypeInfoCache.getSQLType:(I)I
            istore 2 /* sqlType */
        start local 2 // int sqlType
         1: .line 843
            aload 0 /* this */
            iload 2 /* sqlType */
            invokevirtual org.postgresql.jdbc.TypeInfoCache.requiresQuotingSqlType:(I)Z
            ireturn
        end local 2 // int sqlType
        end local 1 // int oid
        end local 0 // org.postgresql.jdbc.TypeInfoCache this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lorg/postgresql/jdbc/TypeInfoCache;
            0    2     1      oid  I
            1    2     2  sqlType  I
    Exceptions:
      throws java.sql.SQLException
    MethodParameters:
      Name  Flags
      oid   

  public boolean requiresQuotingSqlType(int);
    descriptor: (I)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // org.postgresql.jdbc.TypeInfoCache this
        start local 1 // int sqlType
         0: .line 855
            iload 1 /* sqlType */
            tableswitch { // -6 - 8
                   -6: 1
                   -5: 1
                   -4: 2
                   -3: 2
                   -2: 2
                   -1: 2
                    0: 2
                    1: 2
                    2: 1
                    3: 1
                    4: 1
                    5: 1
                    6: 1
                    7: 1
                    8: 1
              default: 2
          }
         1: .line 865
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
         2: .line 867
      StackMap locals:
      StackMap stack:
            iconst_1
            ireturn
        end local 1 // int sqlType
        end local 0 // org.postgresql.jdbc.TypeInfoCache this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0     this  Lorg/postgresql/jdbc/TypeInfoCache;
            0    3     1  sqlType  I
    Exceptions:
      throws java.sql.SQLException
    MethodParameters:
         Name  Flags
      sqlType  
}
SourceFile: "TypeInfoCache.java"