public final class com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData implements java.sql.DatabaseMetaData, java.io.Serializable
  minor version: 0
  major version: 59
  flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
  this_class: com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData
  super_class: java.lang.Object
{
  private static final long serialVersionUID;
    descriptor: J
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: -116977606028371577

  private com.microsoft.sqlserver.jdbc.SQLServerConnection connection;
    descriptor: Lcom/microsoft/sqlserver/jdbc/SQLServerConnection;
    flags: (0x0002) ACC_PRIVATE

  static final java.lang.String urlprefix;
    descriptor: Ljava/lang/String;
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: "jdbc:sqlserver://"

  private static final java.util.logging.Logger logger;
    descriptor: Ljava/util/logging/Logger;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final java.util.logging.Logger loggerExternal;
    descriptor: Ljava/util/logging/Logger;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

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

  private final java.lang.String traceID;
    descriptor: Ljava/lang/String;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  static final int MAXLOBSIZE;
    descriptor: I
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: 2147483647

  static final int uniqueidentifierSize;
    descriptor: I
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: 36

  java.util.EnumMap<com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData$CallableHandles, com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData$HandleAssociation> handleMap;
    descriptor: Ljava/util/EnumMap;
    flags: (0x0000) 
    Signature: Ljava/util/EnumMap<Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData$CallableHandles;Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData$HandleAssociation;>;

  private static final java.lang.String ASC_OR_DESC;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "ASC_OR_DESC"

  private static final java.lang.String ATTR_NAME;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "ATTR_NAME"

  private static final java.lang.String ATTR_TYPE_NAME;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "ATTR_TYPE_NAME"

  private static final java.lang.String ATTR_SIZE;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "ATTR_SIZE"

  private static final java.lang.String ATTR_DEF;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "ATTR_DEF"

  private static final java.lang.String BASE_TYPE;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "BASE_TYPE"

  private static final java.lang.String BUFFER_LENGTH;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "BUFFER_LENGTH"

  private static final java.lang.String CARDINALITY;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "CARDINALITY"

  private static final java.lang.String CHAR_OCTET_LENGTH;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "CHAR_OCTET_LENGTH"

  private static final java.lang.String CLASS_NAME;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "CLASS_NAME"

  private static final java.lang.String COLUMN_DEF;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "COLUMN_DEF"

  private static final java.lang.String COLUMN_NAME;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "COLUMN_NAME"

  private static final java.lang.String COLUMN_SIZE;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "COLUMN_SIZE"

  private static final java.lang.String COLUMN_TYPE;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "COLUMN_TYPE"

  private static final java.lang.String DATA_TYPE;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "DATA_TYPE"

  private static final java.lang.String DECIMAL_DIGITS;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "DECIMAL_DIGITS"

  private static final java.lang.String DEFERRABILITY;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "DEFERRABILITY"

  private static final java.lang.String DELETE_RULE;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "DELETE_RULE"

  private static final java.lang.String FILTER_CONDITION;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "FILTER_CONDITION"

  private static final java.lang.String FK_NAME;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "FK_NAME"

  private static final java.lang.String FKCOLUMN_NAME;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "FKCOLUMN_NAME"

  private static final java.lang.String FKTABLE_CAT;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "FKTABLE_CAT"

  private static final java.lang.String FKTABLE_NAME;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "FKTABLE_NAME"

  private static final java.lang.String FKTABLE_SCHEM;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "FKTABLE_SCHEM"

  private static final java.lang.String GRANTEE;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "GRANTEE"

  private static final java.lang.String GRANTOR;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "GRANTOR"

  private static final java.lang.String INDEX_NAME;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "INDEX_NAME"

  private static final java.lang.String INDEX_QUALIFIER;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "INDEX_QUALIFIER"

  private static final java.lang.String IS_GRANTABLE;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "IS_GRANTABLE"

  private static final java.lang.String IS_NULLABLE;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "IS_NULLABLE"

  private static final java.lang.String KEY_SEQ;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "KEY_SEQ"

  private static final java.lang.String LENGTH;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "LENGTH"

  private static final java.lang.String NON_UNIQUE;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "NON_UNIQUE"

  private static final java.lang.String NULLABLE;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "NULLABLE"

  private static final java.lang.String NUM_INPUT_PARAMS;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "NUM_INPUT_PARAMS"

  private static final java.lang.String NUM_OUTPUT_PARAMS;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "NUM_OUTPUT_PARAMS"

  private static final java.lang.String NUM_PREC_RADIX;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "NUM_PREC_RADIX"

  private static final java.lang.String NUM_RESULT_SETS;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "NUM_RESULT_SETS"

  private static final java.lang.String ORDINAL_POSITION;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "ORDINAL_POSITION"

  private static final java.lang.String PAGES;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "PAGES"

  private static final java.lang.String PK_NAME;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "PK_NAME"

  private static final java.lang.String PKCOLUMN_NAME;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "PKCOLUMN_NAME"

  private static final java.lang.String PKTABLE_CAT;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "PKTABLE_CAT"

  private static final java.lang.String PKTABLE_NAME;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "PKTABLE_NAME"

  private static final java.lang.String PKTABLE_SCHEM;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "PKTABLE_SCHEM"

  private static final java.lang.String PRECISION;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "PRECISION"

  private static final java.lang.String PRIVILEGE;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "PRIVILEGE"

  private static final java.lang.String PROCEDURE_CAT;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "PROCEDURE_CAT"

  private static final java.lang.String PROCEDURE_NAME;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "PROCEDURE_NAME"

  private static final java.lang.String PROCEDURE_SCHEM;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "PROCEDURE_SCHEM"

  private static final java.lang.String PROCEDURE_TYPE;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "PROCEDURE_TYPE"

  private static final java.lang.String PSEUDO_COLUMN;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "PSEUDO_COLUMN"

  private static final java.lang.String RADIX;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "RADIX"

  private static final java.lang.String REMARKS;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "REMARKS"

  private static final java.lang.String SCALE;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "SCALE"

  private static final java.lang.String SCOPE;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "SCOPE"

  private static final java.lang.String SCOPE_CATALOG;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "SCOPE_CATALOG"

  private static final java.lang.String SCOPE_SCHEMA;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "SCOPE_SCHEMA"

  private static final java.lang.String SCOPE_TABLE;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "SCOPE_TABLE"

  private static final java.lang.String SOURCE_DATA_TYPE;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "SOURCE_DATA_TYPE"

  private static final java.lang.String SQL_DATA_TYPE;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "SQL_DATA_TYPE"

  private static final java.lang.String SQL_DATETIME_SUB;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "SQL_DATETIME_SUB"

  private static final java.lang.String SS_DATA_TYPE;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "SS_DATA_TYPE"

  private static final java.lang.String SUPERTABLE_NAME;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "SUPERTABLE_NAME"

  private static final java.lang.String SUPERTYPE_CAT;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "SUPERTYPE_CAT"

  private static final java.lang.String SUPERTYPE_NAME;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "SUPERTYPE_NAME"

  private static final java.lang.String SUPERTYPE_SCHEM;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "SUPERTYPE_SCHEM"

  private static final java.lang.String TABLE_CAT;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "TABLE_CAT"

  private static final java.lang.String TABLE_NAME;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "TABLE_NAME"

  private static final java.lang.String TABLE_SCHEM;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "TABLE_SCHEM"

  private static final java.lang.String TABLE_TYPE;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "TABLE_TYPE"

  private static final java.lang.String TYPE;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "TYPE"

  private static final java.lang.String TYPE_CAT;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "TYPE_CAT"

  private static final java.lang.String TYPE_NAME;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "TYPE_NAME"

  private static final java.lang.String TYPE_SCHEM;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "TYPE_SCHEM"

  private static final java.lang.String UPDATE_RULE;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "UPDATE_RULE"

  private static final java.lang.String FUNCTION_CAT;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "FUNCTION_CAT"

  private static final java.lang.String FUNCTION_NAME;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "FUNCTION_NAME"

  private static final java.lang.String FUNCTION_SCHEM;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "FUNCTION_SCHEM"

  private static final java.lang.String FUNCTION_TYPE;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "FUNCTION_TYPE"

  private static final java.lang.String SS_IS_SPARSE;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "SS_IS_SPARSE"

  private static final java.lang.String SS_IS_COLUMN_SET;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "SS_IS_COLUMN_SET"

  private static final java.lang.String IS_GENERATEDCOLUMN;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "IS_GENERATEDCOLUMN"

  private static final java.lang.String IS_AUTOINCREMENT;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "IS_AUTOINCREMENT"

  private static final java.lang.String SQL_KEYWORDS;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static java.util.LinkedHashMap<java.lang.Integer, java.lang.String> getColumnsDWColumns;
    descriptor: Ljava/util/LinkedHashMap;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Signature: Ljava/util/LinkedHashMap<Ljava/lang/Integer;Ljava/lang/String;>;

  private static java.util.LinkedHashMap<java.lang.Integer, java.lang.String> getImportedKeysDWColumns;
    descriptor: Ljava/util/LinkedHashMap;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Signature: Ljava/util/LinkedHashMap<Ljava/lang/Integer;Ljava/lang/String;>;

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

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

  static final char LEFT_BRACKET;
    descriptor: C
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: 91

  static final char RIGHT_BRACKET;
    descriptor: C
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: 93

  static final char ESCAPE;
    descriptor: C
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: 92

  static final char PERCENT;
    descriptor: C
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: 37

  static final char UNDERSCORE;
    descriptor: C
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: 95

  static final char[] DOUBLE_RIGHT_BRACKET;
    descriptor: [C
    flags: (0x0018) ACC_STATIC, ACC_FINAL

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

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

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

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

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

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

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

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

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

  static final boolean $assertionsDisabled;
    descriptor: Z
    flags: (0x1018) ACC_STATIC, ACC_FINAL, ACC_SYNTHETIC

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=4, locals=0, args_size=0
         0: .line 35
            ldc Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
            invokevirtual java.lang.Class.desiredAssertionStatus:()Z
            ifne 1
            iconst_1
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_0
      StackMap locals:
      StackMap stack: int
         2: putstatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.$assertionsDisabled:Z
         3: .line 46
            ldc "com.microsoft.sqlserver.jdbc.internals.SQLServerDatabaseMetaData"
            invokestatic java.util.logging.Logger.getLogger:(Ljava/lang/String;)Ljava/util/logging/Logger;
         4: .line 45
            putstatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.logger:Ljava/util/logging/Logger;
         5: .line 49
            ldc "com.microsoft.sqlserver.jdbc.internals.DatabaseMetaData"
            invokestatic java.util.logging.Logger.getLogger:(Ljava/lang/String;)Ljava/util/logging/Logger;
         6: .line 48
            putstatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.loggerExternal:Ljava/util/logging/Logger;
         7: .line 51
            new java.util.concurrent.atomic.AtomicInteger
            dup
            iconst_0
            invokespecial java.util.concurrent.atomic.AtomicInteger.<init>:(I)V
            putstatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.baseID:Ljava/util/concurrent/atomic/AtomicInteger;
         8: .line 266
            invokestatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.createSqlKeyWords:()Ljava/lang/String;
            putstatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.SQL_KEYWORDS:Ljava/lang/String;
         9: .line 269
            aconst_null
            putstatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.getColumnsDWColumns:Ljava/util/LinkedHashMap;
        10: .line 270
            aconst_null
            putstatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.getImportedKeysDWColumns:Ljava/util/LinkedHashMap;
        11: .line 488
            bipush 8
            anewarray java.lang.String
            dup
            iconst_0
            ldc "TABLE_CAT"
            aastore
            dup
            iconst_1
            ldc "TABLE_SCHEM"
            aastore
            dup
            iconst_2
        12: .line 489
            ldc "TABLE_NAME"
            aastore
            dup
            iconst_3
            ldc "COLUMN_NAME"
            aastore
            dup
            iconst_4
            ldc "GRANTOR"
            aastore
            dup
            iconst_5
            ldc "GRANTEE"
            aastore
            dup
            bipush 6
            ldc "PRIVILEGE"
            aastore
            dup
            bipush 7
        13: .line 490
            ldc "IS_GRANTABLE"
            aastore
        14: .line 488
            putstatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.getColumnPrivilegesColumnNames:[Ljava/lang/String;
        15: .line 515
            iconst_5
            anewarray java.lang.String
            dup
            iconst_0
            ldc "TABLE_CAT"
            aastore
            dup
            iconst_1
            ldc "TABLE_SCHEM"
            aastore
            dup
            iconst_2
            ldc "TABLE_NAME"
            aastore
            dup
            iconst_3
        16: .line 516
            ldc "TABLE_TYPE"
            aastore
            dup
            iconst_4
            ldc "REMARKS"
            aastore
        17: .line 515
            putstatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.getTablesColumnNames:[Ljava/lang/String;
        18: .line 557
            iconst_2
            newarray 5
            dup
            iconst_0
            bipush 93
            castore
            dup
            iconst_1
            bipush 93
            castore
            putstatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.DOUBLE_RIGHT_BRACKET:[C
        19: .line 816
            bipush 8
            anewarray java.lang.String
            dup
            iconst_0
            ldc "FUNCTION_CAT"
            aastore
            dup
            iconst_1
            ldc "FUNCTION_SCHEM"
            aastore
            dup
            iconst_2
        20: .line 817
            ldc "FUNCTION_NAME"
            aastore
            dup
            iconst_3
            ldc "NUM_INPUT_PARAMS"
            aastore
            dup
            iconst_4
            ldc "NUM_OUTPUT_PARAMS"
            aastore
            dup
            iconst_5
            ldc "NUM_RESULT_SETS"
            aastore
            dup
            bipush 6
        21: .line 818
            ldc "REMARKS"
            aastore
            dup
            bipush 7
            ldc "FUNCTION_TYPE"
            aastore
        22: .line 816
            putstatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.getFunctionsColumnNames:[Ljava/lang/String;
        23: .line 844
            bipush 19
            anewarray java.lang.String
            dup
            iconst_0
            ldc "FUNCTION_CAT"
            aastore
            dup
            iconst_1
            ldc "FUNCTION_SCHEM"
            aastore
            dup
            iconst_2
        24: .line 845
            ldc "FUNCTION_NAME"
            aastore
            dup
            iconst_3
            ldc "COLUMN_NAME"
            aastore
            dup
            iconst_4
            ldc "COLUMN_TYPE"
            aastore
            dup
            iconst_5
            ldc "DATA_TYPE"
            aastore
            dup
            bipush 6
            ldc "TYPE_NAME"
            aastore
            dup
            bipush 7
        25: .line 846
            ldc "PRECISION"
            aastore
            dup
            bipush 8
            ldc "LENGTH"
            aastore
            dup
            bipush 9
            ldc "SCALE"
            aastore
            dup
            bipush 10
            ldc "RADIX"
            aastore
            dup
            bipush 11
            ldc "NULLABLE"
            aastore
            dup
            bipush 12
            ldc "REMARKS"
            aastore
            dup
            bipush 13
        26: .line 847
            ldc "COLUMN_DEF"
            aastore
            dup
            bipush 14
            ldc "SQL_DATA_TYPE"
            aastore
            dup
            bipush 15
            ldc "SQL_DATETIME_SUB"
            aastore
            dup
            bipush 16
            ldc "CHAR_OCTET_LENGTH"
            aastore
            dup
            bipush 17
        27: .line 848
            ldc "ORDINAL_POSITION"
            aastore
            dup
            bipush 18
            ldc "IS_NULLABLE"
            aastore
        28: .line 844
            putstatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.getFunctionsColumnsColumnNames:[Ljava/lang/String;
        29: .line 902
            bipush 8
            anewarray java.lang.String
            dup
            iconst_0
            ldc "SCOPE"
            aastore
            dup
            iconst_1
            ldc "COLUMN_NAME"
            aastore
            dup
            iconst_2
        30: .line 903
            ldc "DATA_TYPE"
            aastore
            dup
            iconst_3
            ldc "TYPE_NAME"
            aastore
            dup
            iconst_4
            ldc "COLUMN_SIZE"
            aastore
            dup
            iconst_5
            ldc "BUFFER_LENGTH"
            aastore
            dup
            bipush 6
            ldc "DECIMAL_DIGITS"
            aastore
            dup
            bipush 7
        31: .line 904
            ldc "PSEUDO_COLUMN"
            aastore
        32: .line 902
            putstatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.getBestRowIdentifierColumnNames:[Ljava/lang/String;
        33: .line 1115
            bipush 13
            anewarray java.lang.String
            dup
            iconst_0
            ldc "TABLE_CAT"
            aastore
            dup
            iconst_1
            ldc "TABLE_SCHEM"
            aastore
            dup
            iconst_2
        34: .line 1116
            ldc "TABLE_NAME"
            aastore
            dup
            iconst_3
            ldc "NON_UNIQUE"
            aastore
            dup
            iconst_4
            ldc "INDEX_QUALIFIER"
            aastore
            dup
            iconst_5
            ldc "INDEX_NAME"
            aastore
            dup
            bipush 6
            ldc "TYPE"
            aastore
            dup
            bipush 7
        35: .line 1117
            ldc "ORDINAL_POSITION"
            aastore
            dup
            bipush 8
            ldc "COLUMN_NAME"
            aastore
            dup
            bipush 9
            ldc "ASC_OR_DESC"
            aastore
            dup
            bipush 10
            ldc "CARDINALITY"
            aastore
            dup
            bipush 11
            ldc "PAGES"
            aastore
            dup
            bipush 12
        36: .line 1118
            ldc "FILTER_CONDITION"
            aastore
        37: .line 1115
            putstatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.getIndexInfoColumnNames:[Ljava/lang/String;
        38: .line 1300
            bipush 6
            anewarray java.lang.String
            dup
            iconst_0
            ldc "TABLE_CAT"
            aastore
            dup
            iconst_1
            ldc "TABLE_SCHEM"
            aastore
            dup
            iconst_2
        39: .line 1301
            ldc "TABLE_NAME"
            aastore
            dup
            iconst_3
            ldc "COLUMN_NAME"
            aastore
            dup
            iconst_4
            ldc "KEY_SEQ"
            aastore
            dup
            iconst_5
            ldc "PK_NAME"
            aastore
        40: .line 1300
            putstatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.getPrimaryKeysColumnNames:[Ljava/lang/String;
        41: .line 1320
            bipush 19
            anewarray java.lang.String
            dup
            iconst_0
            ldc "PROCEDURE_CAT"
            aastore
            dup
            iconst_1
            ldc "PROCEDURE_SCHEM"
            aastore
            dup
            iconst_2
        42: .line 1321
            ldc "PROCEDURE_NAME"
            aastore
            dup
            iconst_3
            ldc "COLUMN_NAME"
            aastore
            dup
            iconst_4
            ldc "COLUMN_TYPE"
            aastore
            dup
            iconst_5
            ldc "DATA_TYPE"
            aastore
            dup
            bipush 6
            ldc "TYPE_NAME"
            aastore
            dup
            bipush 7
        43: .line 1322
            ldc "PRECISION"
            aastore
            dup
            bipush 8
            ldc "LENGTH"
            aastore
            dup
            bipush 9
            ldc "SCALE"
            aastore
            dup
            bipush 10
            ldc "RADIX"
            aastore
            dup
            bipush 11
            ldc "NULLABLE"
            aastore
            dup
            bipush 12
            ldc "REMARKS"
            aastore
            dup
            bipush 13
        44: .line 1323
            ldc "COLUMN_DEF"
            aastore
            dup
            bipush 14
            ldc "SQL_DATA_TYPE"
            aastore
            dup
            bipush 15
            ldc "SQL_DATETIME_SUB"
            aastore
            dup
            bipush 16
            ldc "CHAR_OCTET_LENGTH"
            aastore
            dup
            bipush 17
        45: .line 1324
            ldc "ORDINAL_POSITION"
            aastore
            dup
            bipush 18
            ldc "IS_NULLABLE"
            aastore
        46: .line 1320
            putstatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.getProcedureColumnsColumnNames:[Ljava/lang/String;
        47: .line 1365
            bipush 8
            anewarray java.lang.String
            dup
            iconst_0
            ldc "PROCEDURE_CAT"
            aastore
            dup
            iconst_1
            ldc "PROCEDURE_SCHEM"
            aastore
            dup
            iconst_2
        48: .line 1366
            ldc "PROCEDURE_NAME"
            aastore
            dup
            iconst_3
            ldc "NUM_INPUT_PARAMS"
            aastore
            dup
            iconst_4
            ldc "NUM_OUTPUT_PARAMS"
            aastore
            dup
            iconst_5
            ldc "NUM_RESULT_SETS"
            aastore
            dup
            bipush 6
        49: .line 1367
            ldc "REMARKS"
            aastore
            dup
            bipush 7
            ldc "PROCEDURE_TYPE"
            aastore
        50: .line 1365
            putstatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.getProceduresColumnNames:[Ljava/lang/String;
        51: .line 1565
            bipush 7
            anewarray java.lang.String
            dup
            iconst_0
            ldc "TABLE_CAT"
            aastore
            dup
            iconst_1
            ldc "TABLE_SCHEM"
            aastore
            dup
            iconst_2
        52: .line 1566
            ldc "TABLE_NAME"
            aastore
            dup
            iconst_3
            ldc "GRANTOR"
            aastore
            dup
            iconst_4
            ldc "GRANTEE"
            aastore
            dup
            iconst_5
            ldc "PRIVILEGE"
            aastore
            dup
            bipush 6
            ldc "IS_GRANTABLE"
            aastore
        53: .line 1565
            putstatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.getTablePrivilegesColumnNames:[Ljava/lang/String;
        54: .line 1709
            bipush 8
            anewarray java.lang.String
            dup
            iconst_0
            ldc "SCOPE"
            aastore
            dup
            iconst_1
            ldc "COLUMN_NAME"
            aastore
            dup
            iconst_2
        55: .line 1710
            ldc "DATA_TYPE"
            aastore
            dup
            iconst_3
            ldc "TYPE_NAME"
            aastore
            dup
            iconst_4
            ldc "COLUMN_SIZE"
            aastore
            dup
            iconst_5
            ldc "BUFFER_LENGTH"
            aastore
            dup
            bipush 6
            ldc "DECIMAL_DIGITS"
            aastore
            dup
            bipush 7
        56: .line 1711
            ldc "PSEUDO_COLUMN"
            aastore
        57: .line 1709
            putstatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.getVersionColumnsColumnNames:[Ljava/lang/String;
        58: .line 1711
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  private static int nextInstanceID();
    descriptor: ()I
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 132
            getstatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.baseID:Ljava/util/concurrent/atomic/AtomicInteger;
            invokevirtual java.util.concurrent.atomic.AtomicInteger.incrementAndGet:()I
            ireturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public final java.lang.String toString();
    descriptor: ()Ljava/lang/String;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
         0: .line 141
            aload 0 /* this */
            getfield com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.traceID:Ljava/lang/String;
            areturn
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;

  public void <init>(com.microsoft.sqlserver.jdbc.SQLServerConnection);
    descriptor: (Lcom/microsoft/sqlserver/jdbc/SQLServerConnection;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
        start local 1 // com.microsoft.sqlserver.jdbc.SQLServerConnection con
         0: .line 150
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 128
            aload 0 /* this */
            new java.util.EnumMap
            dup
            ldc Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData$CallableHandles;
            invokespecial java.util.EnumMap.<init>:(Ljava/lang/Class;)V
            putfield com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.handleMap:Ljava/util/EnumMap;
         2: .line 151
            aload 0 /* this */
            new java.lang.StringBuilder
            dup
            ldc " SQLServerDatabaseMetaData:"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            invokestatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.nextInstanceID:()I
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            putfield com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.traceID:Ljava/lang/String;
         3: .line 152
            aload 0 /* this */
            aload 1 /* con */
            putfield com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.connection:Lcom/microsoft/sqlserver/jdbc/SQLServerConnection;
         4: .line 153
            getstatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.logger:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINE:Ljava/util/logging/Level;
            invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
            ifeq 6
         5: .line 154
            getstatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.logger:Ljava/util/logging/Logger;
            new java.lang.StringBuilder
            dup
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.toString:()Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc " created by ("
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.connection:Lcom/microsoft/sqlserver/jdbc/SQLServerConnection;
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerConnection.toString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc ")"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.util.logging.Logger.fine:(Ljava/lang/String;)V
         6: .line 156
      StackMap locals: com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData com.microsoft.sqlserver.jdbc.SQLServerConnection
      StackMap stack:
            return
        end local 1 // com.microsoft.sqlserver.jdbc.SQLServerConnection con
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
            0    7     1   con  Lcom/microsoft/sqlserver/jdbc/SQLServerConnection;
    MethodParameters:
      Name  Flags
      con   

  public boolean isWrapperFor(java.lang.Class<?>);
    descriptor: (Ljava/lang/Class;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
        start local 1 // java.lang.Class iface
         0: .line 160
            aload 1 /* iface */
            aload 0 /* this */
            invokevirtual java.lang.Class.isInstance:(Ljava/lang/Object;)Z
            istore 2 /* f */
        start local 2 // boolean f
         1: .line 161
            iload 2 /* f */
            ireturn
        end local 2 // boolean f
        end local 1 // java.lang.Class iface
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0   this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
            0    2     1  iface  Ljava/lang/Class<*>;
            1    2     2      f  Z
    Exceptions:
      throws java.sql.SQLException
    Signature: (Ljava/lang/Class<*>;)Z
    MethodParameters:
       Name  Flags
      iface  

  public <T> T unwrap(java.lang.Class<T>);
    descriptor: (Ljava/lang/Class;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=2
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
        start local 1 // java.lang.Class iface
         0: .line 168
            aload 1 /* iface */
            aload 0 /* this */
            invokevirtual java.lang.Class.cast:(Ljava/lang/Object;)Ljava/lang/Object;
            astore 2 /* t */
        start local 2 // java.lang.Object t
         1: .line 169
            goto 4
        end local 2 // java.lang.Object t
      StackMap locals:
      StackMap stack: java.lang.ClassCastException
         2: astore 3 /* e */
        start local 3 // java.lang.ClassCastException e
         3: .line 170
            new com.microsoft.sqlserver.jdbc.SQLServerException
            dup
            aload 3 /* e */
            invokevirtual java.lang.ClassCastException.getMessage:()Ljava/lang/String;
            aload 3 /* e */
            invokespecial com.microsoft.sqlserver.jdbc.SQLServerException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
            athrow
        end local 3 // java.lang.ClassCastException e
        start local 2 // java.lang.Object t
         4: .line 172
      StackMap locals: java.lang.Object
      StackMap stack:
            aload 2 /* t */
            areturn
        end local 2 // java.lang.Object t
        end local 1 // java.lang.Class iface
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    5     0   this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
            0    5     1  iface  Ljava/lang/Class<TT;>;
            1    2     2      t  TT;
            4    5     2      t  TT;
            3    4     3      e  Ljava/lang/ClassCastException;
      Exception table:
        from    to  target  type
           0     1       2  Class java.lang.ClassCastException
    Exceptions:
      throws java.sql.SQLException
    Signature: <T:Ljava/lang/Object;>(Ljava/lang/Class<TT;>;)TT;
    MethodParameters:
       Name  Flags
      iface  

  private void checkClosed();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=1, args_size=1
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
         0: .line 176
            aload 0 /* this */
            getfield com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.connection:Lcom/microsoft/sqlserver/jdbc/SQLServerConnection;
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerConnection.isClosed:()Z
            ifeq 4
         1: .line 177
            aconst_null
            aconst_null
            ldc "R_connectionIsClosed"
            invokestatic com.microsoft.sqlserver.jdbc.SQLServerException.getErrString:(Ljava/lang/String;)Ljava/lang/String;
         2: .line 178
            ldc "08003"
            iconst_0
         3: .line 177
            invokestatic com.microsoft.sqlserver.jdbc.SQLServerException.makeFromDriverError:(Lcom/microsoft/sqlserver/jdbc/SQLServerConnection;Ljava/lang/Object;Ljava/lang/String;Ljava/lang/String;Z)V
         4: .line 180
      StackMap locals:
      StackMap stack:
            return
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException

  private com.microsoft.sqlserver.jdbc.SQLServerResultSet getResultSetFromInternalQueries(java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;)Lcom/microsoft/sqlserver/jdbc/SQLServerResultSet;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=7, args_size=3
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
        start local 1 // java.lang.String catalog
        start local 2 // java.lang.String query
         0: .line 284
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         1: .line 285
            aconst_null
            astore 3 /* orgCat */
        start local 3 // java.lang.String orgCat
         2: .line 286
            aload 0 /* this */
            aload 1 /* catalog */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.switchCatalogs:(Ljava/lang/String;)Ljava/lang/String;
            astore 3 /* orgCat */
         3: .line 287
            aconst_null
            astore 4 /* rs */
        start local 4 // com.microsoft.sqlserver.jdbc.SQLServerResultSet rs
         4: .line 289
            aload 0 /* this */
            getfield com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.connection:Lcom/microsoft/sqlserver/jdbc/SQLServerConnection;
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerConnection.createStatement:()Ljava/sql/Statement;
            checkcast com.microsoft.sqlserver.jdbc.SQLServerStatement
            astore 5 /* statement */
        start local 5 // com.microsoft.sqlserver.jdbc.SQLServerStatement statement
         5: .line 290
            aload 5 /* statement */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerStatement.closeOnCompletion:()V
         6: .line 291
            aload 5 /* statement */
            aload 2 /* query */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerStatement.executeQueryInternal:(Ljava/lang/String;)Lcom/microsoft/sqlserver/jdbc/SQLServerResultSet;
            astore 4 /* rs */
        end local 5 // com.microsoft.sqlserver.jdbc.SQLServerStatement statement
         7: .line 292
            goto 12
      StackMap locals: com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData java.lang.String java.lang.String java.lang.String com.microsoft.sqlserver.jdbc.SQLServerResultSet
      StackMap stack: java.lang.Throwable
         8: astore 6
         9: .line 293
            aload 3 /* orgCat */
            ifnull 11
        10: .line 294
            aload 0 /* this */
            getfield com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.connection:Lcom/microsoft/sqlserver/jdbc/SQLServerConnection;
            aload 3 /* orgCat */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerConnection.setCatalog:(Ljava/lang/String;)V
        11: .line 296
      StackMap locals: com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData java.lang.String java.lang.String java.lang.String com.microsoft.sqlserver.jdbc.SQLServerResultSet top java.lang.Throwable
      StackMap stack:
            aload 6
            athrow
        12: .line 293
      StackMap locals: com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData java.lang.String java.lang.String java.lang.String com.microsoft.sqlserver.jdbc.SQLServerResultSet
      StackMap stack:
            aload 3 /* orgCat */
            ifnull 14
        13: .line 294
            aload 0 /* this */
            getfield com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.connection:Lcom/microsoft/sqlserver/jdbc/SQLServerConnection;
            aload 3 /* orgCat */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerConnection.setCatalog:(Ljava/lang/String;)V
        14: .line 297
      StackMap locals:
      StackMap stack:
            aload 4 /* rs */
            areturn
        end local 4 // com.microsoft.sqlserver.jdbc.SQLServerResultSet rs
        end local 3 // java.lang.String orgCat
        end local 2 // java.lang.String query
        end local 1 // java.lang.String catalog
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   15     0       this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
            0   15     1    catalog  Ljava/lang/String;
            0   15     2      query  Ljava/lang/String;
            2   15     3     orgCat  Ljava/lang/String;
            4   15     4         rs  Lcom/microsoft/sqlserver/jdbc/SQLServerResultSet;
            5    7     5  statement  Lcom/microsoft/sqlserver/jdbc/SQLServerStatement;
      Exception table:
        from    to  target  type
           4     8       8  any
    Exceptions:
      throws java.sql.SQLException, java.sql.SQLTimeoutException
    MethodParameters:
         Name  Flags
      catalog  
      query    

  private java.sql.CallableStatement getCallableStatementHandle(com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData$CallableHandles, java.lang.String);
    descriptor: (Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData$CallableHandles;Ljava/lang/String;)Ljava/sql/CallableStatement;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=6, args_size=3
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
        start local 1 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData$CallableHandles request
        start local 2 // java.lang.String catalog
         0: .line 305
            aconst_null
            astore 3 /* CS */
        start local 3 // java.sql.CallableStatement CS
         1: .line 306
            aload 0 /* this */
            getfield com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.handleMap:Ljava/util/EnumMap;
            aload 1 /* request */
            invokevirtual java.util.EnumMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData$HandleAssociation
            astore 4 /* hassoc */
        start local 4 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData$HandleAssociation hassoc
         2: .line 308
            aload 4 /* hassoc */
            ifnonnull 7
         3: .line 309
            aload 1 /* request */
            aload 0 /* this */
            getfield com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.connection:Lcom/microsoft/sqlserver/jdbc/SQLServerConnection;
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData$CallableHandles.prepare:(Lcom/microsoft/sqlserver/jdbc/SQLServerConnection;)Ljava/sql/CallableStatement;
            astore 3 /* CS */
         4: .line 310
            new com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData$HandleAssociation
            dup
            aload 0 /* this */
            invokespecial com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData$HandleAssociation.<init>:(Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;)V
            astore 4 /* hassoc */
         5: .line 311
            aload 4 /* hassoc */
            aload 2 /* catalog */
            aload 3 /* CS */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData$HandleAssociation.addToMap:(Ljava/lang/String;Ljava/sql/CallableStatement;)V
         6: .line 312
            goto 11
         7: .line 313
      StackMap locals: java.sql.CallableStatement com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData$HandleAssociation
      StackMap stack:
            aload 4 /* hassoc */
            aload 2 /* catalog */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData$HandleAssociation.getMappedStatement:(Ljava/lang/String;)Ljava/sql/CallableStatement;
            astore 3 /* CS */
         8: .line 315
            aload 3 /* CS */
            ifnull 9
            aload 3 /* CS */
            invokeinterface java.sql.CallableStatement.isClosed:()Z
            ifeq 11
         9: .line 316
      StackMap locals:
      StackMap stack:
            aload 1 /* request */
            aload 0 /* this */
            getfield com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.connection:Lcom/microsoft/sqlserver/jdbc/SQLServerConnection;
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData$CallableHandles.prepare:(Lcom/microsoft/sqlserver/jdbc/SQLServerConnection;)Ljava/sql/CallableStatement;
            astore 3 /* CS */
        10: .line 317
            aload 4 /* hassoc */
            aload 2 /* catalog */
            aload 3 /* CS */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData$HandleAssociation.addToMap:(Ljava/lang/String;Ljava/sql/CallableStatement;)V
        11: .line 320
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.handleMap:Ljava/util/EnumMap;
            aload 1 /* request */
            aload 4 /* hassoc */
            invokevirtual java.util.EnumMap.put:(Ljava/lang/Enum;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        12: .line 321
            goto 15
      StackMap locals:
      StackMap stack: java.sql.SQLException
        13: astore 5 /* e */
        start local 5 // java.sql.SQLException e
        14: .line 322
            aload 0 /* this */
            getfield com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.connection:Lcom/microsoft/sqlserver/jdbc/SQLServerConnection;
            aload 3 /* CS */
            aload 5 /* e */
            invokevirtual java.sql.SQLException.toString:()Ljava/lang/String;
            aconst_null
            iconst_0
            invokestatic com.microsoft.sqlserver.jdbc.SQLServerException.makeFromDriverError:(Lcom/microsoft/sqlserver/jdbc/SQLServerConnection;Ljava/lang/Object;Ljava/lang/String;Ljava/lang/String;Z)V
        end local 5 // java.sql.SQLException e
        15: .line 324
      StackMap locals:
      StackMap stack:
            aload 3 /* CS */
            areturn
        end local 4 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData$HandleAssociation hassoc
        end local 3 // java.sql.CallableStatement CS
        end local 2 // java.lang.String catalog
        end local 1 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData$CallableHandles request
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   16     0     this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
            0   16     1  request  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData$CallableHandles;
            0   16     2  catalog  Ljava/lang/String;
            1   16     3       CS  Ljava/sql/CallableStatement;
            2   16     4   hassoc  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData$HandleAssociation;
           14   15     5        e  Ljava/sql/SQLException;
      Exception table:
        from    to  target  type
           2    12      13  Class java.sql.SQLException
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException
    MethodParameters:
         Name  Flags
      request  
      catalog  

  private com.microsoft.sqlserver.jdbc.SQLServerResultSet getResultSetFromStoredProc(java.lang.String, com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData$CallableHandles, java.lang.String[]);
    descriptor: (Ljava/lang/String;Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData$CallableHandles;[Ljava/lang/String;)Lcom/microsoft/sqlserver/jdbc/SQLServerResultSet;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=9, args_size=4
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
        start local 1 // java.lang.String catalog
        start local 2 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData$CallableHandles procedure
        start local 3 // java.lang.String[] arguments
         0: .line 341
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         1: .line 342
            getstatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.$assertionsDisabled:Z
            ifne 2
            aload 3 /* arguments */
            ifnonnull 2
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         2: .line 343
      StackMap locals:
      StackMap stack:
            aconst_null
            astore 4 /* orgCat */
        start local 4 // java.lang.String orgCat
         3: .line 344
            aload 0 /* this */
            aload 1 /* catalog */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.switchCatalogs:(Ljava/lang/String;)Ljava/lang/String;
            astore 4 /* orgCat */
         4: .line 345
            aconst_null
            astore 5 /* rs */
        start local 5 // com.microsoft.sqlserver.jdbc.SQLServerResultSet rs
         5: .line 347
            aload 0 /* this */
            aload 2 /* procedure */
         6: .line 348
            aload 1 /* catalog */
         7: .line 347
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.getCallableStatementHandle:(Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData$CallableHandles;Ljava/lang/String;)Ljava/sql/CallableStatement;
            checkcast com.microsoft.sqlserver.jdbc.SQLServerCallableStatement
            astore 6 /* call */
        start local 6 // com.microsoft.sqlserver.jdbc.SQLServerCallableStatement call
         8: .line 350
            iconst_1
            istore 7 /* i */
        start local 7 // int i
         9: goto 12
        10: .line 352
      StackMap locals: com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData java.lang.String com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData$CallableHandles java.lang.String[] java.lang.String com.microsoft.sqlserver.jdbc.SQLServerResultSet com.microsoft.sqlserver.jdbc.SQLServerCallableStatement int
      StackMap stack:
            aload 6 /* call */
            iload 7 /* i */
            aload 3 /* arguments */
            iload 7 /* i */
            iconst_1
            isub
            aaload
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerCallableStatement.setString:(ILjava/lang/String;)V
        11: .line 350
            iinc 7 /* i */ 1
      StackMap locals:
      StackMap stack:
        12: iload 7 /* i */
            aload 3 /* arguments */
            arraylength
            if_icmple 10
        end local 7 // int i
        13: .line 354
            aload 6 /* call */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerCallableStatement.executeQueryInternal:()Ljava/sql/ResultSet;
            checkcast com.microsoft.sqlserver.jdbc.SQLServerResultSet
            astore 5 /* rs */
        end local 6 // com.microsoft.sqlserver.jdbc.SQLServerCallableStatement call
        14: .line 355
            goto 19
      StackMap locals: com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData java.lang.String com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData$CallableHandles java.lang.String[] java.lang.String com.microsoft.sqlserver.jdbc.SQLServerResultSet
      StackMap stack: java.lang.Throwable
        15: astore 8
        16: .line 356
            aload 4 /* orgCat */
            ifnull 18
        17: .line 357
            aload 0 /* this */
            getfield com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.connection:Lcom/microsoft/sqlserver/jdbc/SQLServerConnection;
            aload 4 /* orgCat */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerConnection.setCatalog:(Ljava/lang/String;)V
        18: .line 359
      StackMap locals: com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData java.lang.String com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData$CallableHandles java.lang.String[] java.lang.String com.microsoft.sqlserver.jdbc.SQLServerResultSet top top java.lang.Throwable
      StackMap stack:
            aload 8
            athrow
        19: .line 356
      StackMap locals: com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData java.lang.String com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData$CallableHandles java.lang.String[] java.lang.String com.microsoft.sqlserver.jdbc.SQLServerResultSet
      StackMap stack:
            aload 4 /* orgCat */
            ifnull 21
        20: .line 357
            aload 0 /* this */
            getfield com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.connection:Lcom/microsoft/sqlserver/jdbc/SQLServerConnection;
            aload 4 /* orgCat */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerConnection.setCatalog:(Ljava/lang/String;)V
        21: .line 360
      StackMap locals:
      StackMap stack:
            aload 5 /* rs */
            areturn
        end local 5 // com.microsoft.sqlserver.jdbc.SQLServerResultSet rs
        end local 4 // java.lang.String orgCat
        end local 3 // java.lang.String[] arguments
        end local 2 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData$CallableHandles procedure
        end local 1 // java.lang.String catalog
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   22     0       this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
            0   22     1    catalog  Ljava/lang/String;
            0   22     2  procedure  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData$CallableHandles;
            0   22     3  arguments  [Ljava/lang/String;
            3   22     4     orgCat  Ljava/lang/String;
            5   22     5         rs  Lcom/microsoft/sqlserver/jdbc/SQLServerResultSet;
            8   14     6       call  Lcom/microsoft/sqlserver/jdbc/SQLServerCallableStatement;
            9   13     7          i  I
      Exception table:
        from    to  target  type
           5    15      15  any
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException, java.sql.SQLTimeoutException
    MethodParameters:
           Name  Flags
      catalog    
      procedure  
      arguments  

  private com.microsoft.sqlserver.jdbc.SQLServerResultSet getResultSetWithProvidedColumnNames(java.lang.String, com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData$CallableHandles, java.lang.String[], java.lang.String[]);
    descriptor: (Ljava/lang/String;Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData$CallableHandles;[Ljava/lang/String;[Ljava/lang/String;)Lcom/microsoft/sqlserver/jdbc/SQLServerResultSet;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=7, args_size=5
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
        start local 1 // java.lang.String catalog
        start local 2 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData$CallableHandles procedure
        start local 3 // java.lang.String[] arguments
        start local 4 // java.lang.String[] columnNames
         0: .line 366
            aload 0 /* this */
            aload 1 /* catalog */
            aload 2 /* procedure */
            aload 3 /* arguments */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.getResultSetFromStoredProc:(Ljava/lang/String;Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData$CallableHandles;[Ljava/lang/String;)Lcom/microsoft/sqlserver/jdbc/SQLServerResultSet;
            astore 5 /* rs */
        start local 5 // com.microsoft.sqlserver.jdbc.SQLServerResultSet rs
         1: .line 369
            iconst_0
            istore 6 /* i */
        start local 6 // int i
         2: goto 5
         3: .line 370
      StackMap locals: com.microsoft.sqlserver.jdbc.SQLServerResultSet int
      StackMap stack:
            aload 5 /* rs */
            iconst_1
            iload 6 /* i */
            iadd
            aload 4 /* columnNames */
            iload 6 /* i */
            aaload
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerResultSet.setColumnName:(ILjava/lang/String;)V
         4: .line 369
            iinc 6 /* i */ 1
      StackMap locals:
      StackMap stack:
         5: iload 6 /* i */
            aload 4 /* columnNames */
            arraylength
            if_icmplt 3
        end local 6 // int i
         6: .line 371
            aload 5 /* rs */
            areturn
        end local 5 // com.microsoft.sqlserver.jdbc.SQLServerResultSet rs
        end local 4 // java.lang.String[] columnNames
        end local 3 // java.lang.String[] arguments
        end local 2 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData$CallableHandles procedure
        end local 1 // java.lang.String catalog
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    7     0         this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
            0    7     1      catalog  Ljava/lang/String;
            0    7     2    procedure  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData$CallableHandles;
            0    7     3    arguments  [Ljava/lang/String;
            0    7     4  columnNames  [Ljava/lang/String;
            1    7     5           rs  Lcom/microsoft/sqlserver/jdbc/SQLServerResultSet;
            2    6     6            i  I
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException, java.sql.SQLTimeoutException
    MethodParameters:
             Name  Flags
      catalog      
      procedure    
      arguments    
      columnNames  

  private java.lang.String switchCatalogs(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=4, args_size=2
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
        start local 1 // java.lang.String catalog
         0: .line 383
            aload 1 /* catalog */
            ifnonnull 2
         1: .line 384
            aconst_null
            areturn
         2: .line 385
      StackMap locals:
      StackMap stack:
            aconst_null
            astore 2 /* sCurr */
        start local 2 // java.lang.String sCurr
         3: .line 386
            aload 0 /* this */
            getfield com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.connection:Lcom/microsoft/sqlserver/jdbc/SQLServerConnection;
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerConnection.getCatalog:()Ljava/lang/String;
            invokevirtual java.lang.String.trim:()Ljava/lang/String;
            astore 2 /* sCurr */
         4: .line 387
            aload 1 /* catalog */
            invokevirtual java.lang.String.trim:()Ljava/lang/String;
            astore 3 /* sNew */
        start local 3 // java.lang.String sNew
         5: .line 388
            aload 2 /* sCurr */
            aload 3 /* sNew */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 7
         6: .line 389
            aconst_null
            areturn
         7: .line 390
      StackMap locals: java.lang.String java.lang.String
      StackMap stack:
            aload 0 /* this */
            getfield com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.connection:Lcom/microsoft/sqlserver/jdbc/SQLServerConnection;
            aload 3 /* sNew */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerConnection.setCatalog:(Ljava/lang/String;)V
         8: .line 391
            aload 2 /* sCurr */
            ifnull 9
            aload 2 /* sCurr */
            invokevirtual java.lang.String.length:()I
            ifne 10
         9: .line 392
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        10: .line 393
      StackMap locals:
      StackMap stack:
            aload 2 /* sCurr */
            areturn
        end local 3 // java.lang.String sNew
        end local 2 // java.lang.String sCurr
        end local 1 // java.lang.String catalog
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   11     0     this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
            0   11     1  catalog  Ljava/lang/String;
            3   11     2    sCurr  Ljava/lang/String;
            5   11     3     sNew  Ljava/lang/String;
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException
    MethodParameters:
         Name  Flags
      catalog  

  public boolean allProceduresAreCallable();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
         0: .line 400
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         1: .line 401
            iconst_1
            ireturn
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException

  public boolean allTablesAreSelectable();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
         0: .line 406
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         1: .line 407
            iconst_1
            ireturn
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException

  public boolean autoCommitFailureClosesAllResultSets();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
         0: .line 412
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         1: .line 413
            iconst_0
            ireturn
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
    Exceptions:
      throws java.sql.SQLException

  public boolean dataDefinitionCausesTransactionCommit();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
         0: .line 418
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         1: .line 419
            iconst_0
            ireturn
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException

  public boolean dataDefinitionIgnoredInTransactions();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
         0: .line 424
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         1: .line 425
            iconst_0
            ireturn
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException

  public boolean doesMaxRowSizeIncludeBlobs();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
         0: .line 430
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         1: .line 431
            iconst_0
            ireturn
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException

  public boolean generatedKeyAlwaysReturned();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
         0: .line 436
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         1: .line 438
            iconst_1
            ireturn
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
    Exceptions:
      throws java.sql.SQLException

  public long getMaxLogicalLobSize();
    descriptor: ()J
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
         0: .line 443
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         1: .line 444
            ldc 2147483647
            lreturn
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
    Exceptions:
      throws java.sql.SQLException

  public boolean supportsRefCursors();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
         0: .line 449
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         1: .line 450
            iconst_0
            ireturn
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
    Exceptions:
      throws java.sql.SQLException

  public boolean supportsSharding();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
         0: .line 454
            new java.lang.Error
            dup
            ldc "Unresolved compilation problem: \n\tThe method supportsSharding() of type SQLServerDatabaseMetaData must override or implement a supertype method\n"
            invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
            athrow
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
    Exceptions:
      throws java.sql.SQLException

  public java.sql.ResultSet getCatalogs();
    descriptor: ()Ljava/sql/ResultSet;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=1
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
         0: .line 462
            getstatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.loggerExternal:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
            invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
            ifeq 2
            invokestatic com.microsoft.sqlserver.jdbc.Util.isActivityTraceOn:()Z
            ifeq 2
         1: .line 463
            getstatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.loggerExternal:Ljava/util/logging/Logger;
            new java.lang.StringBuilder
            dup
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.toString:()Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc " ActivityId: "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokestatic com.microsoft.sqlserver.jdbc.ActivityCorrelator.getNext:()Lcom/microsoft/sqlserver/jdbc/ActivityId;
            invokevirtual com.microsoft.sqlserver.jdbc.ActivityId.toString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.util.logging.Logger.finer:(Ljava/lang/String;)V
         2: .line 465
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         3: .line 467
            ldc "SELECT name AS TABLE_CAT FROM sys.databases order by name"
            astore 1 /* s */
        start local 1 // java.lang.String s
         4: .line 473
            aload 0 /* this */
            aconst_null
            aload 1 /* s */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.getResultSetFromInternalQueries:(Ljava/lang/String;Ljava/lang/String;)Lcom/microsoft/sqlserver/jdbc/SQLServerResultSet;
            areturn
        end local 1 // java.lang.String s
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
            4    5     1     s  Ljava/lang/String;
    Exceptions:
      throws java.sql.SQLException, java.sql.SQLTimeoutException

  public java.lang.String getCatalogSeparator();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
         0: .line 478
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         1: .line 479
            ldc "."
            areturn
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException

  public java.lang.String getCatalogTerm();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
         0: .line 484
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         1: .line 485
            ldc "database"
            areturn
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException

  public java.sql.ResultSet getColumnPrivileges(java.lang.String, java.lang.String, java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/sql/ResultSet;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=6, args_size=5
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
        start local 1 // java.lang.String catalog
        start local 2 // java.lang.String schema
        start local 3 // java.lang.String table
        start local 4 // java.lang.String col
         0: .line 495
            getstatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.loggerExternal:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
            invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
            ifeq 2
            invokestatic com.microsoft.sqlserver.jdbc.Util.isActivityTraceOn:()Z
            ifeq 2
         1: .line 496
            getstatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.loggerExternal:Ljava/util/logging/Logger;
            new java.lang.StringBuilder
            dup
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.toString:()Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc " ActivityId: "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokestatic com.microsoft.sqlserver.jdbc.ActivityCorrelator.getNext:()Lcom/microsoft/sqlserver/jdbc/ActivityId;
            invokevirtual com.microsoft.sqlserver.jdbc.ActivityId.toString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.util.logging.Logger.finer:(Ljava/lang/String;)V
         2: .line 498
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         3: .line 500
            aload 4 /* col */
            invokestatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.EscapeIDName:(Ljava/lang/String;)Ljava/lang/String;
            astore 4 /* col */
         4: .line 506
            iconst_4
            anewarray java.lang.String
            astore 5 /* arguments */
        start local 5 // java.lang.String[] arguments
         5: .line 507
            aload 5 /* arguments */
            iconst_0
            aload 3 /* table */
            aastore
         6: .line 508
            aload 5 /* arguments */
            iconst_1
            aload 2 /* schema */
            aastore
         7: .line 509
            aload 5 /* arguments */
            iconst_2
            aload 1 /* catalog */
            aastore
         8: .line 510
            aload 5 /* arguments */
            iconst_3
            aload 4 /* col */
            aastore
         9: .line 511
            aload 0 /* this */
            aload 1 /* catalog */
            getstatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData$CallableHandles.SP_COLUMN_PRIVILEGES:Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData$CallableHandles;
            aload 5 /* arguments */
        10: .line 512
            getstatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.getColumnPrivilegesColumnNames:[Ljava/lang/String;
        11: .line 511
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.getResultSetWithProvidedColumnNames:(Ljava/lang/String;Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData$CallableHandles;[Ljava/lang/String;[Ljava/lang/String;)Lcom/microsoft/sqlserver/jdbc/SQLServerResultSet;
            areturn
        end local 5 // java.lang.String[] arguments
        end local 4 // java.lang.String col
        end local 3 // java.lang.String table
        end local 2 // java.lang.String schema
        end local 1 // java.lang.String catalog
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   12     0       this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
            0   12     1    catalog  Ljava/lang/String;
            0   12     2     schema  Ljava/lang/String;
            0   12     3      table  Ljava/lang/String;
            0   12     4        col  Ljava/lang/String;
            5   12     5  arguments  [Ljava/lang/String;
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException, java.sql.SQLTimeoutException
    MethodParameters:
         Name  Flags
      catalog  
      schema   
      table    
      col      

  public java.sql.ResultSet getTables(java.lang.String, java.lang.String, java.lang.String, java.lang.String[]);
    descriptor: (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;)Ljava/sql/ResultSet;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=8, args_size=5
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
        start local 1 // java.lang.String catalog
        start local 2 // java.lang.String schema
        start local 3 // java.lang.String table
        start local 4 // java.lang.String[] types
         0: .line 521
            getstatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.loggerExternal:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
            invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
            ifeq 2
            invokestatic com.microsoft.sqlserver.jdbc.Util.isActivityTraceOn:()Z
            ifeq 2
         1: .line 522
            getstatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.loggerExternal:Ljava/util/logging/Logger;
            new java.lang.StringBuilder
            dup
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.toString:()Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc " ActivityId: "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokestatic com.microsoft.sqlserver.jdbc.ActivityCorrelator.getNext:()Lcom/microsoft/sqlserver/jdbc/ActivityId;
            invokevirtual com.microsoft.sqlserver.jdbc.ActivityId.toString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.util.logging.Logger.finer:(Ljava/lang/String;)V
         2: .line 524
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         3: .line 527
            aload 3 /* table */
            invokestatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.EscapeIDName:(Ljava/lang/String;)Ljava/lang/String;
            astore 3 /* table */
         4: .line 528
            aload 2 /* schema */
            invokestatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.EscapeIDName:(Ljava/lang/String;)Ljava/lang/String;
            astore 2 /* schema */
         5: .line 534
            iconst_4
            anewarray java.lang.String
            astore 5 /* arguments */
        start local 5 // java.lang.String[] arguments
         6: .line 535
            aload 5 /* arguments */
            iconst_0
            aload 3 /* table */
            aastore
         7: .line 536
            aload 5 /* arguments */
            iconst_1
            aload 2 /* schema */
            aastore
         8: .line 537
            aload 5 /* arguments */
            iconst_2
            aload 1 /* catalog */
            aastore
         9: .line 539
            aload 4 /* types */
            ifnull 20
        10: .line 540
            new java.lang.StringBuilder
            dup
            ldc "'"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            astore 6 /* tableTypes */
        start local 6 // java.lang.StringBuilder tableTypes
        11: .line 541
            iconst_0
            istore 7 /* i */
        start local 7 // int i
        12: goto 17
        13: .line 542
      StackMap locals: java.lang.String[] java.lang.StringBuilder int
      StackMap stack:
            iload 7 /* i */
            ifle 15
        14: .line 543
            aload 6 /* tableTypes */
            ldc ","
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        15: .line 544
      StackMap locals:
      StackMap stack:
            aload 6 /* tableTypes */
            ldc "''"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 4 /* types */
            iload 7 /* i */
            aaload
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "''"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        16: .line 541
            iinc 7 /* i */ 1
      StackMap locals:
      StackMap stack:
        17: iload 7 /* i */
            aload 4 /* types */
            arraylength
            if_icmplt 13
        end local 7 // int i
        18: .line 546
            aload 6 /* tableTypes */
            ldc "'"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        19: .line 547
            aload 5 /* arguments */
            iconst_3
            aload 6 /* tableTypes */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            aastore
        end local 6 // java.lang.StringBuilder tableTypes
        20: .line 549
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* catalog */
            getstatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData$CallableHandles.SP_TABLES:Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData$CallableHandles;
            aload 5 /* arguments */
            getstatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.getTablesColumnNames:[Ljava/lang/String;
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.getResultSetWithProvidedColumnNames:(Ljava/lang/String;Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData$CallableHandles;[Ljava/lang/String;[Ljava/lang/String;)Lcom/microsoft/sqlserver/jdbc/SQLServerResultSet;
            areturn
        end local 5 // java.lang.String[] arguments
        end local 4 // java.lang.String[] types
        end local 3 // java.lang.String table
        end local 2 // java.lang.String schema
        end local 1 // java.lang.String catalog
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   21     0        this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
            0   21     1     catalog  Ljava/lang/String;
            0   21     2      schema  Ljava/lang/String;
            0   21     3       table  Ljava/lang/String;
            0   21     4       types  [Ljava/lang/String;
            6   21     5   arguments  [Ljava/lang/String;
           11   20     6  tableTypes  Ljava/lang/StringBuilder;
           12   18     7           i  I
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException, java.sql.SQLTimeoutException
    MethodParameters:
         Name  Flags
      catalog  
      schema   
      table    
      types    

  private static java.lang.String EscapeIDName(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/String;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=4, locals=4, args_size=1
        start local 0 // java.lang.String inID
         0: .line 568
            aload 0 /* inID */
            ifnonnull 2
         1: .line 569
            aload 0 /* inID */
            areturn
         2: .line 582
      StackMap locals:
      StackMap stack:
            new java.lang.StringBuilder
            dup
            aload 0 /* inID */
            invokevirtual java.lang.String.length:()I
            iconst_2
            iadd
            invokespecial java.lang.StringBuilder.<init>:(I)V
            astore 2 /* outID */
        start local 2 // java.lang.StringBuilder outID
         3: .line 584
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         4: goto 20
         5: .line 585
      StackMap locals: java.lang.String top java.lang.StringBuilder int
      StackMap stack:
            aload 0 /* inID */
            iload 3 /* i */
            invokevirtual java.lang.String.charAt:(I)C
            istore 1 /* ch */
        start local 1 // char ch
         6: .line 586
            bipush 92
            iload 1 /* ch */
            if_icmpne 18
            iinc 3 /* i */ 1
            iload 3 /* i */
            aload 0 /* inID */
            invokevirtual java.lang.String.length:()I
            if_icmpge 18
         7: .line 587
            aload 0 /* inID */
            iload 3 /* i */
            invokevirtual java.lang.String.charAt:(I)C
            istore 1 /* ch */
         8: .line 588
            iload 1 /* ch */
            lookupswitch { // 5
                   37: 9
                   91: 9
                   92: 13
                   93: 13
                   95: 9
              default: 15
          }
         9: .line 592
      StackMap locals: java.lang.String int java.lang.StringBuilder int
      StackMap stack:
            aload 2 /* outID */
            bipush 91
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        10: .line 593
            aload 2 /* outID */
            iload 1 /* ch */
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        11: .line 594
            aload 2 /* outID */
            bipush 93
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        12: .line 595
            goto 19
        13: .line 598
      StackMap locals:
      StackMap stack:
            aload 2 /* outID */
            iload 1 /* ch */
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        14: .line 599
            goto 19
        15: .line 601
      StackMap locals:
      StackMap stack:
            aload 2 /* outID */
            bipush 92
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        16: .line 602
            aload 2 /* outID */
            iload 1 /* ch */
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        17: .line 605
            goto 19
        18: .line 607
      StackMap locals:
      StackMap stack:
            aload 2 /* outID */
            iload 1 /* ch */
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        19: .line 584
      StackMap locals:
      StackMap stack:
            iinc 3 /* i */ 1
        end local 1 // char ch
      StackMap locals: java.lang.String top java.lang.StringBuilder int
      StackMap stack:
        20: iload 3 /* i */
            aload 0 /* inID */
            invokevirtual java.lang.String.length:()I
            if_icmplt 5
        end local 3 // int i
        21: .line 610
            aload 2 /* outID */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 2 // java.lang.StringBuilder outID
        end local 0 // java.lang.String inID
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   22     0   inID  Ljava/lang/String;
            6   20     1     ch  C
            3   22     2  outID  Ljava/lang/StringBuilder;
            4   21     3      i  I
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException
    MethodParameters:
      Name  Flags
      inID  

  public java.sql.ResultSet getColumns(java.lang.String, java.lang.String, java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/sql/ResultSet;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=16, args_size=5
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
        start local 1 // java.lang.String catalog
        start local 2 // java.lang.String schema
        start local 3 // java.lang.String table
        start local 4 // java.lang.String col
         0: .line 615
            getstatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.loggerExternal:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
            invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
            ifeq 2
            invokestatic com.microsoft.sqlserver.jdbc.Util.isActivityTraceOn:()Z
            ifeq 2
         1: .line 616
            getstatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.loggerExternal:Ljava/util/logging/Logger;
            new java.lang.StringBuilder
            dup
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.toString:()Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc " ActivityId: "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokestatic com.microsoft.sqlserver.jdbc.ActivityCorrelator.getNext:()Lcom/microsoft/sqlserver/jdbc/ActivityId;
            invokevirtual com.microsoft.sqlserver.jdbc.ActivityId.toString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.util.logging.Logger.finer:(Ljava/lang/String;)V
         2: .line 618
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         3: .line 619
            aload 0 /* this */
            aload 1 /* catalog */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.switchCatalogs:(Ljava/lang/String;)Ljava/lang/String;
            astore 5 /* originalCatalog */
        start local 5 // java.lang.String originalCatalog
         4: .line 620
            aload 0 /* this */
            getfield com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.connection:Lcom/microsoft/sqlserver/jdbc/SQLServerConnection;
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerConnection.isAzureDW:()Z
            ifne 46
         5: .line 621
            ldc "DECLARE @mssqljdbc_temp_sp_columns_result TABLE(TABLE_QUALIFIER SYSNAME, TABLE_OWNER SYSNAME,TABLE_NAME SYSNAME, COLUMN_NAME SYSNAME, DATA_TYPE SMALLINT, TYPE_NAME SYSNAME, PRECISION INT,LENGTH INT, SCALE SMALLINT, RADIX SMALLINT, NULLABLE SMALLINT, REMARKS VARCHAR(254), COLUMN_DEF NVARCHAR(4000),SQL_DATA_TYPE SMALLINT, SQL_DATETIME_SUB SMALLINT, CHAR_OCTET_LENGTH INT, ORDINAL_POSITION INT,IS_NULLABLE VARCHAR(254), SS_IS_SPARSE SMALLINT, SS_IS_COLUMN_SET SMALLINT, SS_IS_COMPUTED SMALLINT,SS_IS_IDENTITY SMALLINT, SS_UDT_CATALOG_NAME NVARCHAR(128), SS_UDT_SCHEMA_NAME NVARCHAR(128),SS_UDT_ASSEMBLY_TYPE_NAME NVARCHAR(max), SS_XML_SCHEMACOLLECTION_CATALOG_NAME NVARCHAR(128),SS_XML_SCHEMACOLLECTION_SCHEMA_NAME NVARCHAR(128), SS_XML_SCHEMACOLLECTION_NAME NVARCHAR(128),SS_DATA_TYPE TINYINT);INSERT INTO @mssqljdbc_temp_sp_columns_result EXEC sp_columns_100 ?,?,?,?,?,?;SELECT TABLE_QUALIFIER AS TABLE_CAT, TABLE_OWNER AS TABLE_SCHEM, TABLE_NAME, COLUMN_NAME, DATA_TYPE,TYPE_NAME, PRECISION AS COLUMN_SIZE, LENGTH AS BUFFER_LENGTH, SCALE AS DECIMAL_DIGITS, RADIX AS NUM_PREC_RADIX,NULLABLE, REMARKS, COLUMN_DEF, SQL_DATA_TYPE, SQL_DATETIME_SUB, CHAR_OCTET_LENGTH, ORDINAL_POSITION, IS_NULLABLE,NULL AS SCOPE_CATALOG, NULL AS SCOPE_SCHEMA, NULL AS SCOPE_TABLE, SS_DATA_TYPE AS SOURCE_DATA_TYPE,CASE SS_IS_IDENTITY WHEN 0 THEN 'NO' WHEN 1 THEN 'YES' WHEN '' THEN '' END AS IS_AUTOINCREMENT,CASE SS_IS_COMPUTED WHEN 0 THEN 'NO' WHEN 1 THEN 'YES' WHEN '' THEN '' END AS IS_GENERATEDCOLUMN, SS_IS_SPARSE, SS_IS_COLUMN_SET, SS_UDT_CATALOG_NAME, SS_UDT_SCHEMA_NAME, SS_UDT_ASSEMBLY_TYPE_NAME,SS_XML_SCHEMACOLLECTION_CATALOG_NAME, SS_XML_SCHEMACOLLECTION_SCHEMA_NAME, SS_XML_SCHEMACOLLECTION_NAME FROM @mssqljdbc_temp_sp_columns_result ORDER BY TABLE_CAT, TABLE_SCHEM, TABLE_NAME, ORDINAL_POSITION;"
            astore 6 /* spColumnsSql */
        start local 6 // java.lang.String spColumnsSql
         6: .line 642
            aconst_null
            astore 7 /* rs */
        start local 7 // com.microsoft.sqlserver.jdbc.SQLServerResultSet rs
         7: .line 643
            aload 0 /* this */
            getfield com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.connection:Lcom/microsoft/sqlserver/jdbc/SQLServerConnection;
            aload 6 /* spColumnsSql */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerConnection.prepareStatement:(Ljava/lang/String;)Ljava/sql/PreparedStatement;
            checkcast com.microsoft.sqlserver.jdbc.SQLServerPreparedStatement
            astore 8 /* pstmt */
        start local 8 // java.sql.PreparedStatement pstmt
         8: .line 644
            aload 8 /* pstmt */
            invokeinterface java.sql.PreparedStatement.closeOnCompletion:()V
         9: .line 646
            aload 8 /* pstmt */
            iconst_1
            aload 3 /* table */
            ifnull 10
            aload 3 /* table */
            invokevirtual java.lang.String.isEmpty:()Z
            ifne 10
            aload 3 /* table */
            invokestatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.EscapeIDName:(Ljava/lang/String;)Ljava/lang/String;
            goto 11
      StackMap locals: com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String com.microsoft.sqlserver.jdbc.SQLServerResultSet java.sql.PreparedStatement
      StackMap stack: java.sql.PreparedStatement int
        10: ldc "%"
      StackMap locals: com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String com.microsoft.sqlserver.jdbc.SQLServerResultSet java.sql.PreparedStatement
      StackMap stack: java.sql.PreparedStatement int java.lang.String
        11: invokeinterface java.sql.PreparedStatement.setString:(ILjava/lang/String;)V
        12: .line 647
            aload 8 /* pstmt */
            iconst_2
            aload 2 /* schema */
            ifnull 13
            aload 2 /* schema */
            invokevirtual java.lang.String.isEmpty:()Z
            ifne 13
            aload 2 /* schema */
            invokestatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.EscapeIDName:(Ljava/lang/String;)Ljava/lang/String;
            goto 14
      StackMap locals: com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String com.microsoft.sqlserver.jdbc.SQLServerResultSet java.sql.PreparedStatement
      StackMap stack: java.sql.PreparedStatement int
        13: ldc "%"
      StackMap locals: com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String com.microsoft.sqlserver.jdbc.SQLServerResultSet java.sql.PreparedStatement
      StackMap stack: java.sql.PreparedStatement int java.lang.String
        14: invokeinterface java.sql.PreparedStatement.setString:(ILjava/lang/String;)V
        15: .line 648
            aload 8 /* pstmt */
            iconst_3
            aload 1 /* catalog */
            ifnull 16
            aload 1 /* catalog */
            invokevirtual java.lang.String.isEmpty:()Z
            ifne 16
            aload 1 /* catalog */
            goto 17
      StackMap locals: com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String com.microsoft.sqlserver.jdbc.SQLServerResultSet java.sql.PreparedStatement
      StackMap stack: java.sql.PreparedStatement int
        16: aload 0 /* this */
            getfield com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.connection:Lcom/microsoft/sqlserver/jdbc/SQLServerConnection;
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerConnection.getCatalog:()Ljava/lang/String;
      StackMap locals: com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String com.microsoft.sqlserver.jdbc.SQLServerResultSet java.sql.PreparedStatement
      StackMap stack: java.sql.PreparedStatement int java.lang.String
        17: invokeinterface java.sql.PreparedStatement.setString:(ILjava/lang/String;)V
        18: .line 649
            aload 8 /* pstmt */
            iconst_4
            aload 4 /* col */
            ifnull 19
            aload 4 /* col */
            invokevirtual java.lang.String.isEmpty:()Z
            ifne 19
            aload 4 /* col */
            invokestatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.EscapeIDName:(Ljava/lang/String;)Ljava/lang/String;
            goto 20
      StackMap locals: com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String com.microsoft.sqlserver.jdbc.SQLServerResultSet java.sql.PreparedStatement
      StackMap stack: java.sql.PreparedStatement int
        19: ldc "%"
      StackMap locals: com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String com.microsoft.sqlserver.jdbc.SQLServerResultSet java.sql.PreparedStatement
      StackMap stack: java.sql.PreparedStatement int java.lang.String
        20: invokeinterface java.sql.PreparedStatement.setString:(ILjava/lang/String;)V
        21: .line 650
            aload 8 /* pstmt */
            iconst_5
            iconst_2
            invokeinterface java.sql.PreparedStatement.setInt:(II)V
        22: .line 651
            aload 8 /* pstmt */
            bipush 6
            iconst_3
            invokeinterface java.sql.PreparedStatement.setInt:(II)V
        23: .line 653
            aload 8 /* pstmt */
            invokeinterface java.sql.PreparedStatement.executeQuery:()Ljava/sql/ResultSet;
            checkcast com.microsoft.sqlserver.jdbc.SQLServerResultSet
            astore 7 /* rs */
        24: .line 654
            aload 7 /* rs */
            iconst_5
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerResultSet.getColumn:(I)Lcom/microsoft/sqlserver/jdbc/Column;
            new com.microsoft.sqlserver.jdbc.DataTypeFilter
            dup
            invokespecial com.microsoft.sqlserver.jdbc.DataTypeFilter.<init>:()V
            invokevirtual com.microsoft.sqlserver.jdbc.Column.setFilter:(Lcom/microsoft/sqlserver/jdbc/ColumnFilter;)V
        25: .line 655
            aload 7 /* rs */
            bipush 7
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerResultSet.getColumn:(I)Lcom/microsoft/sqlserver/jdbc/Column;
            new com.microsoft.sqlserver.jdbc.ZeroFixupFilter
            dup
            invokespecial com.microsoft.sqlserver.jdbc.ZeroFixupFilter.<init>:()V
            invokevirtual com.microsoft.sqlserver.jdbc.Column.setFilter:(Lcom/microsoft/sqlserver/jdbc/ColumnFilter;)V
        26: .line 656
            aload 7 /* rs */
            bipush 8
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerResultSet.getColumn:(I)Lcom/microsoft/sqlserver/jdbc/Column;
            new com.microsoft.sqlserver.jdbc.ZeroFixupFilter
            dup
            invokespecial com.microsoft.sqlserver.jdbc.ZeroFixupFilter.<init>:()V
            invokevirtual com.microsoft.sqlserver.jdbc.Column.setFilter:(Lcom/microsoft/sqlserver/jdbc/ColumnFilter;)V
        27: .line 657
            aload 7 /* rs */
            bipush 16
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerResultSet.getColumn:(I)Lcom/microsoft/sqlserver/jdbc/Column;
            new com.microsoft.sqlserver.jdbc.ZeroFixupFilter
            dup
            invokespecial com.microsoft.sqlserver.jdbc.ZeroFixupFilter.<init>:()V
            invokevirtual com.microsoft.sqlserver.jdbc.Column.setFilter:(Lcom/microsoft/sqlserver/jdbc/ColumnFilter;)V
        28: .line 658
            goto 43
      StackMap locals:
      StackMap stack: java.sql.SQLException
        29: astore 9 /* e */
        start local 9 // java.sql.SQLException e
        30: .line 659
            aload 8 /* pstmt */
            ifnull 38
        31: .line 661
            aload 8 /* pstmt */
            invokeinterface java.sql.PreparedStatement.close:()V
        32: .line 662
            goto 38
      StackMap locals: com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String com.microsoft.sqlserver.jdbc.SQLServerResultSet java.sql.PreparedStatement java.sql.SQLException
      StackMap stack: com.microsoft.sqlserver.jdbc.SQLServerException
        33: pop
        34: .line 663
            getstatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.loggerExternal:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
            invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
            ifeq 38
        35: .line 664
            getstatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.loggerExternal:Ljava/util/logging/Logger;
        36: .line 665
            ldc "getColumns() threw an exception when attempting to close PreparedStatement"
        37: .line 664
            invokevirtual java.util.logging.Logger.finer:(Ljava/lang/String;)V
        38: .line 669
      StackMap locals:
      StackMap stack:
            aload 9 /* e */
            athrow
        end local 9 // java.sql.SQLException e
        39: .line 670
      StackMap locals: com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String com.microsoft.sqlserver.jdbc.SQLServerResultSet java.sql.PreparedStatement
      StackMap stack: java.lang.Throwable
            astore 10
        40: .line 671
            aload 5 /* originalCatalog */
            ifnull 42
        41: .line 672
            aload 0 /* this */
            getfield com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.connection:Lcom/microsoft/sqlserver/jdbc/SQLServerConnection;
            aload 5 /* originalCatalog */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerConnection.setCatalog:(Ljava/lang/String;)V
        42: .line 674
      StackMap locals: com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String com.microsoft.sqlserver.jdbc.SQLServerResultSet java.sql.PreparedStatement top java.lang.Throwable
      StackMap stack:
            aload 10
            athrow
        43: .line 671
      StackMap locals: com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String com.microsoft.sqlserver.jdbc.SQLServerResultSet java.sql.PreparedStatement
      StackMap stack:
            aload 5 /* originalCatalog */
            ifnull 45
        44: .line 672
            aload 0 /* this */
            getfield com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.connection:Lcom/microsoft/sqlserver/jdbc/SQLServerConnection;
            aload 5 /* originalCatalog */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerConnection.setCatalog:(Ljava/lang/String;)V
        45: .line 676
      StackMap locals:
      StackMap stack:
            aload 7 /* rs */
            areturn
        end local 8 // java.sql.PreparedStatement pstmt
        end local 7 // com.microsoft.sqlserver.jdbc.SQLServerResultSet rs
        end local 6 // java.lang.String spColumnsSql
        46: .line 683
      StackMap locals:
      StackMap stack:
            ldc Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
            dup
            astore 6
            monitorenter
        47: .line 684
            getstatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.getColumnsDWColumns:Ljava/util/LinkedHashMap;
            ifnonnull 81
        48: .line 685
            new java.util.LinkedHashMap
            dup
            invokespecial java.util.LinkedHashMap.<init>:()V
            putstatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.getColumnsDWColumns:Ljava/util/LinkedHashMap;
        49: .line 686
            getstatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.getColumnsDWColumns:Ljava/util/LinkedHashMap;
            iconst_1
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            ldc "TABLE_CAT"
            invokevirtual java.util.LinkedHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        50: .line 687
            getstatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.getColumnsDWColumns:Ljava/util/LinkedHashMap;
            iconst_2
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            ldc "TABLE_SCHEM"
            invokevirtual java.util.LinkedHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        51: .line 688
            getstatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.getColumnsDWColumns:Ljava/util/LinkedHashMap;
            iconst_3
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            ldc "TABLE_NAME"
            invokevirtual java.util.LinkedHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        52: .line 689
            getstatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.getColumnsDWColumns:Ljava/util/LinkedHashMap;
            iconst_4
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            ldc "COLUMN_NAME"
            invokevirtual java.util.LinkedHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        53: .line 690
            getstatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.getColumnsDWColumns:Ljava/util/LinkedHashMap;
            iconst_5
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            ldc "DATA_TYPE"
            invokevirtual java.util.LinkedHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        54: .line 691
            getstatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.getColumnsDWColumns:Ljava/util/LinkedHashMap;
            bipush 6
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            ldc "TYPE_NAME"
            invokevirtual java.util.LinkedHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        55: .line 692
            getstatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.getColumnsDWColumns:Ljava/util/LinkedHashMap;
            bipush 7
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            ldc "COLUMN_SIZE"
            invokevirtual java.util.LinkedHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        56: .line 693
            getstatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.getColumnsDWColumns:Ljava/util/LinkedHashMap;
            bipush 8
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            ldc "BUFFER_LENGTH"
            invokevirtual java.util.LinkedHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        57: .line 694
            getstatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.getColumnsDWColumns:Ljava/util/LinkedHashMap;
            bipush 9
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            ldc "DECIMAL_DIGITS"
            invokevirtual java.util.LinkedHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        58: .line 695
            getstatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.getColumnsDWColumns:Ljava/util/LinkedHashMap;
            bipush 10
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            ldc "NUM_PREC_RADIX"
            invokevirtual java.util.LinkedHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        59: .line 696
            getstatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.getColumnsDWColumns:Ljava/util/LinkedHashMap;
            bipush 11
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            ldc "NULLABLE"
            invokevirtual java.util.LinkedHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        60: .line 697
            getstatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.getColumnsDWColumns:Ljava/util/LinkedHashMap;
            bipush 12
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            ldc "REMARKS"
            invokevirtual java.util.LinkedHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        61: .line 698
            getstatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.getColumnsDWColumns:Ljava/util/LinkedHashMap;
            bipush 13
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            ldc "COLUMN_DEF"
            invokevirtual java.util.LinkedHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        62: .line 699
            getstatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.getColumnsDWColumns:Ljava/util/LinkedHashMap;
            bipush 14
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            ldc "SQL_DATA_TYPE"
            invokevirtual java.util.LinkedHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        63: .line 700
            getstatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.getColumnsDWColumns:Ljava/util/LinkedHashMap;
            bipush 15
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            ldc "SQL_DATETIME_SUB"
            invokevirtual java.util.LinkedHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        64: .line 701
            getstatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.getColumnsDWColumns:Ljava/util/LinkedHashMap;
            bipush 16
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            ldc "CHAR_OCTET_LENGTH"
            invokevirtual java.util.LinkedHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        65: .line 702
            getstatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.getColumnsDWColumns:Ljava/util/LinkedHashMap;
            bipush 17
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            ldc "ORDINAL_POSITION"
            invokevirtual java.util.LinkedHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        66: .line 703
            getstatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.getColumnsDWColumns:Ljava/util/LinkedHashMap;
            bipush 18
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            ldc "IS_NULLABLE"
            invokevirtual java.util.LinkedHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        67: .line 708
            getstatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.getColumnsDWColumns:Ljava/util/LinkedHashMap;
            iconst_m1
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            ldc "SCOPE_CATALOG"
            invokevirtual java.util.LinkedHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        68: .line 709
            getstatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.getColumnsDWColumns:Ljava/util/LinkedHashMap;
            bipush -2
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            ldc "SCOPE_SCHEMA"
            invokevirtual java.util.LinkedHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        69: .line 710
            getstatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.getColumnsDWColumns:Ljava/util/LinkedHashMap;
            bipush -3
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            ldc "SCOPE_TABLE"
            invokevirtual java.util.LinkedHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        70: .line 711
            getstatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.getColumnsDWColumns:Ljava/util/LinkedHashMap;
            bipush 29
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            ldc "SOURCE_DATA_TYPE"
            invokevirtual java.util.LinkedHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        71: .line 712
            getstatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.getColumnsDWColumns:Ljava/util/LinkedHashMap;
            bipush 22
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            ldc "IS_AUTOINCREMENT"
            invokevirtual java.util.LinkedHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        72: .line 713
            getstatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.getColumnsDWColumns:Ljava/util/LinkedHashMap;
            bipush 21
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            ldc "IS_GENERATEDCOLUMN"
            invokevirtual java.util.LinkedHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        73: .line 714
            getstatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.getColumnsDWColumns:Ljava/util/LinkedHashMap;
            bipush 19
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            ldc "SS_IS_SPARSE"
            invokevirtual java.util.LinkedHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        74: .line 715
            getstatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.getColumnsDWColumns:Ljava/util/LinkedHashMap;
            bipush 20
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            ldc "SS_IS_COLUMN_SET"
            invokevirtual java.util.LinkedHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        75: .line 716
            getstatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.getColumnsDWColumns:Ljava/util/LinkedHashMap;
            bipush 23
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            ldc "SS_UDT_CATALOG_NAME"
            invokevirtual java.util.LinkedHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        76: .line 717
            getstatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.getColumnsDWColumns:Ljava/util/LinkedHashMap;
            bipush 24
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            ldc "SS_UDT_SCHEMA_NAME"
            invokevirtual java.util.LinkedHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        77: .line 718
            getstatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.getColumnsDWColumns:Ljava/util/LinkedHashMap;
            bipush 25
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            ldc "SS_UDT_ASSEMBLY_TYPE_NAME"
            invokevirtual java.util.LinkedHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        78: .line 719
            getstatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.getColumnsDWColumns:Ljava/util/LinkedHashMap;
            bipush 26
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            ldc "SS_XML_SCHEMACOLLECTION_CATALOG_NAME"
            invokevirtual java.util.LinkedHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        79: .line 720
            getstatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.getColumnsDWColumns:Ljava/util/LinkedHashMap;
            bipush 27
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            ldc "SS_XML_SCHEMACOLLECTION_SCHEMA_NAME"
            invokevirtual java.util.LinkedHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        80: .line 721
            getstatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.getColumnsDWColumns:Ljava/util/LinkedHashMap;
            bipush 28
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            ldc "SS_XML_SCHEMACOLLECTION_NAME"
            invokevirtual java.util.LinkedHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        81: .line 683
      StackMap locals: java.lang.Class
      StackMap stack:
            aload 6
            monitorexit
        82: goto 85
      StackMap locals:
      StackMap stack: java.lang.Throwable
        83: aload 6
            monitorexit
        84: athrow
        85: .line 725
      StackMap locals:
      StackMap stack:
            aconst_null
            astore 6
            aconst_null
            astore 7
        86: aload 0 /* this */
            getfield com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.connection:Lcom/microsoft/sqlserver/jdbc/SQLServerConnection;
        87: .line 726
            ldc "EXEC sp_columns_100 ?,?,?,?,?,?;"
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerConnection.prepareStatement:(Ljava/lang/String;)Ljava/sql/PreparedStatement;
        88: .line 725
            astore 8 /* storedProcPstmt */
        start local 8 // java.sql.PreparedStatement storedProcPstmt
        89: .line 727
            aload 8 /* storedProcPstmt */
            iconst_1
            aload 3 /* table */
            ifnull 90
            aload 3 /* table */
            invokevirtual java.lang.String.isEmpty:()Z
            ifne 90
            aload 3 /* table */
            invokestatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.EscapeIDName:(Ljava/lang/String;)Ljava/lang/String;
            goto 91
      StackMap locals: com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String java.lang.Throwable java.lang.Throwable java.sql.PreparedStatement
      StackMap stack: java.sql.PreparedStatement int
        90: ldc "%"
      StackMap locals: com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String java.lang.Throwable java.lang.Throwable java.sql.PreparedStatement
      StackMap stack: java.sql.PreparedStatement int java.lang.String
        91: invokeinterface java.sql.PreparedStatement.setString:(ILjava/lang/String;)V
        92: .line 728
            aload 8 /* storedProcPstmt */
            iconst_2
            aload 2 /* schema */
            ifnull 93
            aload 2 /* schema */
            invokevirtual java.lang.String.isEmpty:()Z
            ifne 93
            aload 2 /* schema */
            invokestatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.EscapeIDName:(Ljava/lang/String;)Ljava/lang/String;
            goto 94
      StackMap locals: com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String java.lang.Throwable java.lang.Throwable java.sql.PreparedStatement
      StackMap stack: java.sql.PreparedStatement int
        93: ldc "%"
      StackMap locals: com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String java.lang.Throwable java.lang.Throwable java.sql.PreparedStatement
      StackMap stack: java.sql.PreparedStatement int java.lang.String
        94: invokeinterface java.sql.PreparedStatement.setString:(ILjava/lang/String;)V
        95: .line 729
            aload 8 /* storedProcPstmt */
            iconst_3
        96: .line 730
            aload 1 /* catalog */
            ifnull 97
            aload 1 /* catalog */
            invokevirtual java.lang.String.isEmpty:()Z
            ifne 97
            aload 1 /* catalog */
            goto 98
      StackMap locals: com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String java.lang.Throwable java.lang.Throwable java.sql.PreparedStatement
      StackMap stack: java.sql.PreparedStatement int
        97: aload 0 /* this */
            getfield com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.connection:Lcom/microsoft/sqlserver/jdbc/SQLServerConnection;
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerConnection.getCatalog:()Ljava/lang/String;
        98: .line 729
      StackMap locals: com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String java.lang.Throwable java.lang.Throwable java.sql.PreparedStatement
      StackMap stack: java.sql.PreparedStatement int java.lang.String
            invokeinterface java.sql.PreparedStatement.setString:(ILjava/lang/String;)V
        99: .line 731
            aload 8 /* storedProcPstmt */
            iconst_4
            aload 4 /* col */
            ifnull 100
            aload 4 /* col */
            invokevirtual java.lang.String.isEmpty:()Z
            ifne 100
            aload 4 /* col */
            invokestatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.EscapeIDName:(Ljava/lang/String;)Ljava/lang/String;
            goto 101
      StackMap locals: com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String java.lang.Throwable java.lang.Throwable java.sql.PreparedStatement
      StackMap stack: java.sql.PreparedStatement int
       100: ldc "%"
      StackMap locals: com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String java.lang.Throwable java.lang.Throwable java.sql.PreparedStatement
      StackMap stack: java.sql.PreparedStatement int java.lang.String
       101: invokeinterface java.sql.PreparedStatement.setString:(ILjava/lang/String;)V
       102: .line 732
            aload 8 /* storedProcPstmt */
            iconst_5
            iconst_2
            invokeinterface java.sql.PreparedStatement.setInt:(II)V
       103: .line 733
            aload 8 /* storedProcPstmt */
            bipush 6
            iconst_3
            invokeinterface java.sql.PreparedStatement.setInt:(II)V
       104: .line 735
            aconst_null
            astore 9 /* userRs */
        start local 9 // com.microsoft.sqlserver.jdbc.SQLServerResultSet userRs
       105: .line 736
            aconst_null
            astore 10 /* resultPstmt */
        start local 10 // java.sql.PreparedStatement resultPstmt
       106: .line 737
            aconst_null
            astore 11
            aconst_null
            astore 12
       107: aload 8 /* storedProcPstmt */
            invokeinterface java.sql.PreparedStatement.executeQuery:()Ljava/sql/ResultSet;
            astore 13 /* rs */
        start local 13 // java.sql.ResultSet rs
       108: .line 738
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            astore 14 /* azureDwSelectBuilder */
        start local 14 // java.lang.StringBuilder azureDwSelectBuilder
       109: .line 739
            iconst_1
            istore 15 /* isFirstRow */
        start local 15 // boolean isFirstRow
       110: .line 740
            goto 115
       111: .line 741
      StackMap locals: com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String java.lang.Throwable java.lang.Throwable java.sql.PreparedStatement com.microsoft.sqlserver.jdbc.SQLServerResultSet java.sql.PreparedStatement java.lang.Throwable java.lang.Throwable java.sql.ResultSet java.lang.StringBuilder int
      StackMap stack:
            iload 15 /* isFirstRow */
            ifne 113
       112: .line 742
            aload 14 /* azureDwSelectBuilder */
            ldc " UNION ALL "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
       113: .line 744
      StackMap locals:
      StackMap stack:
            aload 14 /* azureDwSelectBuilder */
            aload 0 /* this */
            aload 13 /* rs */
            getstatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.getColumnsDWColumns:Ljava/util/LinkedHashMap;
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.generateAzureDWSelect:(Ljava/sql/ResultSet;Ljava/util/Map;)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
       114: .line 745
            iconst_0
            istore 15 /* isFirstRow */
       115: .line 740
      StackMap locals:
      StackMap stack:
            aload 13 /* rs */
            invokeinterface java.sql.ResultSet.next:()Z
            ifne 111
       116: .line 748
            aload 14 /* azureDwSelectBuilder */
            invokevirtual java.lang.StringBuilder.length:()I
            ifne 119
       117: .line 749
            aload 14 /* azureDwSelectBuilder */
            aload 0 /* this */
            getstatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.getColumnsDWColumns:Ljava/util/LinkedHashMap;
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.generateAzureDWEmptyRS:(Ljava/util/Map;)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
       118: .line 750
            goto 120
       119: .line 751
      StackMap locals:
      StackMap stack:
            aload 14 /* azureDwSelectBuilder */
            ldc " ORDER BY TABLE_CAT, TABLE_SCHEM, TABLE_NAME, ORDINAL_POSITION "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
       120: .line 754
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.connection:Lcom/microsoft/sqlserver/jdbc/SQLServerConnection;
       121: .line 755
            aload 14 /* azureDwSelectBuilder */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerConnection.prepareStatement:(Ljava/lang/String;)Ljava/sql/PreparedStatement;
       122: .line 754
            checkcast com.microsoft.sqlserver.jdbc.SQLServerPreparedStatement
            astore 10 /* resultPstmt */
       123: .line 756
            aload 10 /* resultPstmt */
            invokeinterface java.sql.PreparedStatement.executeQuery:()Ljava/sql/ResultSet;
            checkcast com.microsoft.sqlserver.jdbc.SQLServerResultSet
            astore 9 /* userRs */
       124: .line 757
            aload 10 /* resultPstmt */
            invokeinterface java.sql.PreparedStatement.closeOnCompletion:()V
       125: .line 758
            aload 9 /* userRs */
            iconst_5
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerResultSet.getColumn:(I)Lcom/microsoft/sqlserver/jdbc/Column;
            new com.microsoft.sqlserver.jdbc.DataTypeFilter
            dup
            invokespecial com.microsoft.sqlserver.jdbc.DataTypeFilter.<init>:()V
            invokevirtual com.microsoft.sqlserver.jdbc.Column.setFilter:(Lcom/microsoft/sqlserver/jdbc/ColumnFilter;)V
       126: .line 759
            aload 9 /* userRs */
            bipush 7
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerResultSet.getColumn:(I)Lcom/microsoft/sqlserver/jdbc/Column;
            new com.microsoft.sqlserver.jdbc.ZeroFixupFilter
            dup
            invokespecial com.microsoft.sqlserver.jdbc.ZeroFixupFilter.<init>:()V
            invokevirtual com.microsoft.sqlserver.jdbc.Column.setFilter:(Lcom/microsoft/sqlserver/jdbc/ColumnFilter;)V
       127: .line 760
            aload 9 /* userRs */
            bipush 8
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerResultSet.getColumn:(I)Lcom/microsoft/sqlserver/jdbc/Column;
            new com.microsoft.sqlserver.jdbc.ZeroFixupFilter
            dup
            invokespecial com.microsoft.sqlserver.jdbc.ZeroFixupFilter.<init>:()V
            invokevirtual com.microsoft.sqlserver.jdbc.Column.setFilter:(Lcom/microsoft/sqlserver/jdbc/ColumnFilter;)V
       128: .line 761
            aload 9 /* userRs */
            bipush 16
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerResultSet.getColumn:(I)Lcom/microsoft/sqlserver/jdbc/Column;
            new com.microsoft.sqlserver.jdbc.ZeroFixupFilter
            dup
            invokespecial com.microsoft.sqlserver.jdbc.ZeroFixupFilter.<init>:()V
            invokevirtual com.microsoft.sqlserver.jdbc.Column.setFilter:(Lcom/microsoft/sqlserver/jdbc/ColumnFilter;)V
        end local 15 // boolean isFirstRow
        end local 14 // java.lang.StringBuilder azureDwSelectBuilder
       129: .line 762
            aload 13 /* rs */
            ifnull 145
            aload 13 /* rs */
            invokeinterface java.sql.ResultSet.close:()V
            goto 145
      StackMap locals: com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String java.lang.Throwable java.lang.Throwable java.sql.PreparedStatement com.microsoft.sqlserver.jdbc.SQLServerResultSet java.sql.PreparedStatement java.lang.Throwable java.lang.Throwable java.sql.ResultSet
      StackMap stack: java.lang.Throwable
       130: astore 11
            aload 13 /* rs */
            ifnull 131
            aload 13 /* rs */
            invokeinterface java.sql.ResultSet.close:()V
        end local 13 // java.sql.ResultSet rs
      StackMap locals:
      StackMap stack:
       131: aload 11
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
       132: astore 12
            aload 11
            ifnonnull 133
            aload 12
            astore 11
            goto 134
      StackMap locals:
      StackMap stack:
       133: aload 11
            aload 12
            if_acmpeq 134
            aload 11
            aload 12
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
       134: aload 11
            athrow
      StackMap locals: com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String java.lang.Throwable java.lang.Throwable java.sql.PreparedStatement com.microsoft.sqlserver.jdbc.SQLServerResultSet java.sql.PreparedStatement
      StackMap stack: java.sql.SQLException
       135: astore 11 /* e */
        start local 11 // java.sql.SQLException e
       136: .line 763
            aload 10 /* resultPstmt */
            ifnull 144
       137: .line 765
            aload 10 /* resultPstmt */
            invokeinterface java.sql.PreparedStatement.close:()V
       138: .line 766
            goto 144
      StackMap locals: com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String java.lang.Throwable java.lang.Throwable java.sql.PreparedStatement com.microsoft.sqlserver.jdbc.SQLServerResultSet java.sql.PreparedStatement java.sql.SQLException
      StackMap stack: com.microsoft.sqlserver.jdbc.SQLServerException
       139: pop
       140: .line 767
            getstatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.loggerExternal:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
            invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
            ifeq 144
       141: .line 768
            getstatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.loggerExternal:Ljava/util/logging/Logger;
       142: .line 769
            ldc "getColumns() threw an exception when attempting to close PreparedStatement"
       143: .line 768
            invokevirtual java.util.logging.Logger.finer:(Ljava/lang/String;)V
       144: .line 773
      StackMap locals:
      StackMap stack:
            aload 11 /* e */
            athrow
        end local 11 // java.sql.SQLException e
       145: .line 775
      StackMap locals:
      StackMap stack:
            aload 9 /* userRs */
       146: .line 776
            aload 8 /* storedProcPstmt */
            ifnull 147
            aload 8 /* storedProcPstmt */
            invokeinterface java.sql.PreparedStatement.close:()V
       147: .line 775
      StackMap locals:
      StackMap stack: com.microsoft.sqlserver.jdbc.SQLServerResultSet
            areturn
        end local 10 // java.sql.PreparedStatement resultPstmt
        end local 9 // com.microsoft.sqlserver.jdbc.SQLServerResultSet userRs
      StackMap locals: com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String java.lang.Throwable java.lang.Throwable java.sql.PreparedStatement
      StackMap stack: java.lang.Throwable
       148: astore 6
       149: .line 776
            aload 8 /* storedProcPstmt */
            ifnull 150
            aload 8 /* storedProcPstmt */
            invokeinterface java.sql.PreparedStatement.close:()V
        end local 8 // java.sql.PreparedStatement storedProcPstmt
      StackMap locals:
      StackMap stack:
       150: aload 6
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
       151: astore 7
            aload 6
            ifnonnull 152
            aload 7
            astore 6
            goto 153
      StackMap locals:
      StackMap stack:
       152: aload 6
            aload 7
            if_acmpeq 153
            aload 6
            aload 7
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
       153: aload 6
            athrow
        end local 5 // java.lang.String originalCatalog
        end local 4 // java.lang.String col
        end local 3 // java.lang.String table
        end local 2 // java.lang.String schema
        end local 1 // java.lang.String catalog
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot                  Name  Signature
            0  154     0                  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
            0  154     1               catalog  Ljava/lang/String;
            0  154     2                schema  Ljava/lang/String;
            0  154     3                 table  Ljava/lang/String;
            0  154     4                   col  Ljava/lang/String;
            4  154     5       originalCatalog  Ljava/lang/String;
            6   46     6          spColumnsSql  Ljava/lang/String;
            7   46     7                    rs  Lcom/microsoft/sqlserver/jdbc/SQLServerResultSet;
            8   46     8                 pstmt  Ljava/sql/PreparedStatement;
           30   39     9                     e  Ljava/sql/SQLException;
           89  150     8       storedProcPstmt  Ljava/sql/PreparedStatement;
          105  148     9                userRs  Lcom/microsoft/sqlserver/jdbc/SQLServerResultSet;
          106  148    10           resultPstmt  Ljava/sql/PreparedStatement;
          108  131    13                    rs  Ljava/sql/ResultSet;
          109  129    14  azureDwSelectBuilder  Ljava/lang/StringBuilder;
          110  129    15            isFirstRow  Z
          136  145    11                     e  Ljava/sql/SQLException;
      Exception table:
        from    to  target  type
           9    28      29  Class java.sql.SQLException
          31    32      33  Class com.microsoft.sqlserver.jdbc.SQLServerException
           9    39      39  any
          47    82      83  any
          83    84      83  any
         108   129     130  any
         107   132     132  any
         106   135     135  Class java.sql.SQLException
         137   138     139  Class com.microsoft.sqlserver.jdbc.SQLServerException
          89   146     148  any
          86   147     151  any
         148   151     151  any
    Exceptions:
      throws java.sql.SQLException
    MethodParameters:
         Name  Flags
      catalog  
      schema   
      table    
      col      

  private java.lang.String generateAzureDWSelect(java.sql.ResultSet, java.util.Map<java.lang.Integer, java.lang.String>);
    descriptor: (Ljava/sql/ResultSet;Ljava/util/Map;)Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=7, args_size=3
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
        start local 1 // java.sql.ResultSet rs
        start local 2 // java.util.Map columns
         0: .line 781
            new java.lang.StringBuilder
            dup
            ldc "SELECT "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            astore 3 /* sb */
        start local 3 // java.lang.StringBuilder sb
         1: .line 782
            aload 2 /* columns */
            invokeinterface java.util.Map.entrySet:()Ljava/util/Set;
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 5
            goto 20
      StackMap locals: com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData java.sql.ResultSet java.util.Map java.lang.StringBuilder top java.util.Iterator
      StackMap stack:
         2: aload 5
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.util.Map$Entry
            astore 4 /* p */
        start local 4 // java.util.Map$Entry p
         3: .line 783
            aload 4 /* p */
            invokeinterface java.util.Map$Entry.getKey:()Ljava/lang/Object;
            checkcast java.lang.Integer
            invokevirtual java.lang.Integer.intValue:()I
            ifge 6
         4: .line 784
            aload 3 /* sb */
            ldc "NULL"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
         5: .line 785
            goto 19
         6: .line 786
      StackMap locals: com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData java.sql.ResultSet java.util.Map java.lang.StringBuilder java.util.Map$Entry java.util.Iterator
      StackMap stack:
            aload 1 /* rs */
            aload 4 /* p */
            invokeinterface java.util.Map$Entry.getKey:()Ljava/lang/Object;
            checkcast java.lang.Integer
            invokevirtual java.lang.Integer.intValue:()I
            invokeinterface java.sql.ResultSet.getObject:(I)Ljava/lang/Object;
            astore 6 /* o */
        start local 6 // java.lang.Object o
         7: .line 787
            aload 6 /* o */
            ifnonnull 10
         8: .line 788
            aload 3 /* sb */
            ldc "NULL"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
         9: .line 789
            goto 19
      StackMap locals: java.lang.Object
      StackMap stack:
        10: aload 6 /* o */
            instanceof java.lang.Number
            ifeq 18
        11: .line 790
            ldc "IS_AUTOINCREMENT"
            aload 4 /* p */
            invokeinterface java.util.Map$Entry.getValue:()Ljava/lang/Object;
            checkcast java.lang.String
            invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
            ifne 13
        12: .line 791
            ldc "IS_GENERATEDCOLUMN"
            aload 4 /* p */
            invokeinterface java.util.Map$Entry.getValue:()Ljava/lang/Object;
            checkcast java.lang.String
            invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
            ifeq 16
        13: .line 792
      StackMap locals:
      StackMap stack:
            aload 3 /* sb */
            ldc "'"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 6 /* o */
            checkcast java.lang.Number
            invokevirtual java.lang.Number.intValue:()I
            invokestatic com.microsoft.sqlserver.jdbc.Util.zeroOneToYesNo:(I)Ljava/lang/String;
            invokestatic com.microsoft.sqlserver.jdbc.Util.escapeSingleQuotes:(Ljava/lang/String;)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        14: .line 793
            ldc "'"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        15: .line 794
            goto 19
        16: .line 795
      StackMap locals:
      StackMap stack:
            aload 3 /* sb */
            aload 6 /* o */
            invokevirtual java.lang.Object.toString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        17: .line 797
            goto 19
        18: .line 798
      StackMap locals:
      StackMap stack:
            aload 3 /* sb */
            ldc "'"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 6 /* o */
            invokevirtual java.lang.Object.toString:()Ljava/lang/String;
            invokestatic com.microsoft.sqlserver.jdbc.Util.escapeSingleQuotes:(Ljava/lang/String;)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "'"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        end local 6 // java.lang.Object o
        19: .line 801
      StackMap locals:
      StackMap stack:
            aload 3 /* sb */
            ldc " AS "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 4 /* p */
            invokeinterface java.util.Map$Entry.getValue:()Ljava/lang/Object;
            checkcast java.lang.String
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc ","
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        end local 4 // java.util.Map$Entry p
        20: .line 782
      StackMap locals: com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData java.sql.ResultSet java.util.Map java.lang.StringBuilder top java.util.Iterator
      StackMap stack:
            aload 5
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 2
        21: .line 803
            aload 3 /* sb */
            aload 3 /* sb */
            invokevirtual java.lang.StringBuilder.length:()I
            iconst_1
            isub
            invokevirtual java.lang.StringBuilder.setLength:(I)V
        22: .line 804
            aload 3 /* sb */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 3 // java.lang.StringBuilder sb
        end local 2 // java.util.Map columns
        end local 1 // java.sql.ResultSet rs
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   23     0     this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
            0   23     1       rs  Ljava/sql/ResultSet;
            0   23     2  columns  Ljava/util/Map<Ljava/lang/Integer;Ljava/lang/String;>;
            1   23     3       sb  Ljava/lang/StringBuilder;
            3   20     4        p  Ljava/util/Map$Entry<Ljava/lang/Integer;Ljava/lang/String;>;
            7   19     6        o  Ljava/lang/Object;
    Exceptions:
      throws java.sql.SQLException
    Signature: (Ljava/sql/ResultSet;Ljava/util/Map<Ljava/lang/Integer;Ljava/lang/String;>;)Ljava/lang/String;
    MethodParameters:
         Name  Flags
      rs       
      columns  

  private java.lang.String generateAzureDWEmptyRS(java.util.Map<java.lang.Integer, java.lang.String>);
    descriptor: (Ljava/util/Map;)Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=5, args_size=2
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
        start local 1 // java.util.Map columns
         0: .line 808
            new java.lang.StringBuilder
            dup
            ldc "SELECT TOP 0 "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            astore 2 /* sb */
        start local 2 // java.lang.StringBuilder sb
         1: .line 809
            aload 1 /* columns */
            invokeinterface java.util.Map.entrySet:()Ljava/util/Set;
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 4
            goto 4
      StackMap locals: com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData java.util.Map java.lang.StringBuilder top java.util.Iterator
      StackMap stack:
         2: aload 4
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.util.Map$Entry
            astore 3 /* p */
        start local 3 // java.util.Map$Entry p
         3: .line 810
            aload 2 /* sb */
            ldc "NULL AS "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 3 /* p */
            invokeinterface java.util.Map$Entry.getValue:()Ljava/lang/Object;
            checkcast java.lang.String
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc ","
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        end local 3 // java.util.Map$Entry p
         4: .line 809
      StackMap locals:
      StackMap stack:
            aload 4
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 2
         5: .line 812
            aload 2 /* sb */
            aload 2 /* sb */
            invokevirtual java.lang.StringBuilder.length:()I
            iconst_1
            isub
            invokevirtual java.lang.StringBuilder.setLength:(I)V
         6: .line 813
            aload 2 /* sb */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 2 // java.lang.StringBuilder sb
        end local 1 // java.util.Map columns
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    7     0     this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
            0    7     1  columns  Ljava/util/Map<Ljava/lang/Integer;Ljava/lang/String;>;
            1    7     2       sb  Ljava/lang/StringBuilder;
            3    4     3        p  Ljava/util/Map$Entry<Ljava/lang/Integer;Ljava/lang/String;>;
    Exceptions:
      throws java.sql.SQLException
    Signature: (Ljava/util/Map<Ljava/lang/Integer;Ljava/lang/String;>;)Ljava/lang/String;
    MethodParameters:
         Name  Flags
      columns  

  public java.sql.ResultSet getFunctions(java.lang.String, java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/sql/ResultSet;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=6, args_size=4
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
        start local 1 // java.lang.String catalog
        start local 2 // java.lang.String schemaPattern
        start local 3 // java.lang.String functionNamePattern
         0: .line 823
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         1: .line 830
            aload 1 /* catalog */
            ifnull 5
            aload 1 /* catalog */
            invokevirtual java.lang.String.length:()I
            ifne 5
         2: .line 831
            new java.text.MessageFormat
            dup
            ldc "R_invalidArgument"
            invokestatic com.microsoft.sqlserver.jdbc.SQLServerException.getErrString:(Ljava/lang/String;)Ljava/lang/String;
            invokespecial java.text.MessageFormat.<init>:(Ljava/lang/String;)V
            astore 4 /* form */
        start local 4 // java.text.MessageFormat form
         3: .line 832
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            ldc "catalog"
            aastore
            astore 5 /* msgArgs */
        start local 5 // java.lang.Object[] msgArgs
         4: .line 833
            aconst_null
            aconst_null
            aload 4 /* form */
            aload 5 /* msgArgs */
            invokevirtual java.text.MessageFormat.format:(Ljava/lang/Object;)Ljava/lang/String;
            aconst_null
            iconst_0
            invokestatic com.microsoft.sqlserver.jdbc.SQLServerException.makeFromDriverError:(Lcom/microsoft/sqlserver/jdbc/SQLServerConnection;Ljava/lang/Object;Ljava/lang/String;Ljava/lang/String;Z)V
        end local 5 // java.lang.Object[] msgArgs
        end local 4 // java.text.MessageFormat form
         5: .line 836
      StackMap locals:
      StackMap stack:
            iconst_3
            anewarray java.lang.String
            astore 4 /* arguments */
        start local 4 // java.lang.String[] arguments
         6: .line 837
            aload 4 /* arguments */
            iconst_0
            aload 3 /* functionNamePattern */
            invokestatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.EscapeIDName:(Ljava/lang/String;)Ljava/lang/String;
            aastore
         7: .line 838
            aload 4 /* arguments */
            iconst_1
            aload 2 /* schemaPattern */
            invokestatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.EscapeIDName:(Ljava/lang/String;)Ljava/lang/String;
            aastore
         8: .line 839
            aload 4 /* arguments */
            iconst_2
            aload 1 /* catalog */
            aastore
         9: .line 840
            aload 0 /* this */
            aload 1 /* catalog */
            getstatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData$CallableHandles.SP_STORED_PROCEDURES:Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData$CallableHandles;
            aload 4 /* arguments */
        10: .line 841
            getstatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.getFunctionsColumnNames:[Ljava/lang/String;
        11: .line 840
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.getResultSetWithProvidedColumnNames:(Ljava/lang/String;Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData$CallableHandles;[Ljava/lang/String;[Ljava/lang/String;)Lcom/microsoft/sqlserver/jdbc/SQLServerResultSet;
            areturn
        end local 4 // java.lang.String[] arguments
        end local 3 // java.lang.String functionNamePattern
        end local 2 // java.lang.String schemaPattern
        end local 1 // java.lang.String catalog
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot                 Name  Signature
            0   12     0                 this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
            0   12     1              catalog  Ljava/lang/String;
            0   12     2        schemaPattern  Ljava/lang/String;
            0   12     3  functionNamePattern  Ljava/lang/String;
            3    5     4                 form  Ljava/text/MessageFormat;
            4    5     5              msgArgs  [Ljava/lang/Object;
            6   12     4            arguments  [Ljava/lang/String;
    Exceptions:
      throws java.sql.SQLException
    MethodParameters:
                     Name  Flags
      catalog              
      schemaPattern        
      functionNamePattern  

  public java.sql.ResultSet getFunctionColumns(java.lang.String, java.lang.String, java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/sql/ResultSet;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=7, args_size=5
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
        start local 1 // java.lang.String catalog
        start local 2 // java.lang.String schemaPattern
        start local 3 // java.lang.String functionNamePattern
        start local 4 // java.lang.String columnNamePattern
         0: .line 853
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         1: .line 860
            aload 1 /* catalog */
            ifnull 5
            aload 1 /* catalog */
            invokevirtual java.lang.String.length:()I
            ifne 5
         2: .line 861
            new java.text.MessageFormat
            dup
            ldc "R_invalidArgument"
            invokestatic com.microsoft.sqlserver.jdbc.SQLServerException.getErrString:(Ljava/lang/String;)Ljava/lang/String;
            invokespecial java.text.MessageFormat.<init>:(Ljava/lang/String;)V
            astore 5 /* form */
        start local 5 // java.text.MessageFormat form
         3: .line 862
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            ldc "catalog"
            aastore
            astore 6 /* msgArgs */
        start local 6 // java.lang.Object[] msgArgs
         4: .line 863
            aconst_null
            aconst_null
            aload 5 /* form */
            aload 6 /* msgArgs */
            invokevirtual java.text.MessageFormat.format:(Ljava/lang/Object;)Ljava/lang/String;
            aconst_null
            iconst_0
            invokestatic com.microsoft.sqlserver.jdbc.SQLServerException.makeFromDriverError:(Lcom/microsoft/sqlserver/jdbc/SQLServerConnection;Ljava/lang/Object;Ljava/lang/String;Ljava/lang/String;Z)V
        end local 6 // java.lang.Object[] msgArgs
        end local 5 // java.text.MessageFormat form
         5: .line 866
      StackMap locals:
      StackMap stack:
            iconst_5
            anewarray java.lang.String
            astore 5 /* arguments */
        start local 5 // java.lang.String[] arguments
         6: .line 869
            aload 5 /* arguments */
            iconst_0
            aload 3 /* functionNamePattern */
            invokestatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.EscapeIDName:(Ljava/lang/String;)Ljava/lang/String;
            aastore
         7: .line 871
            aload 5 /* arguments */
            iconst_1
            aload 2 /* schemaPattern */
            invokestatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.EscapeIDName:(Ljava/lang/String;)Ljava/lang/String;
            aastore
         8: .line 872
            aload 5 /* arguments */
            iconst_2
            aload 1 /* catalog */
            aastore
         9: .line 874
            aload 5 /* arguments */
            iconst_3
            aload 4 /* columnNamePattern */
            invokestatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.EscapeIDName:(Ljava/lang/String;)Ljava/lang/String;
            aastore
        10: .line 875
            aload 5 /* arguments */
            iconst_4
            ldc "3"
            aastore
        11: .line 876
            aload 0 /* this */
            aload 1 /* catalog */
            getstatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData$CallableHandles.SP_SPROC_COLUMNS:Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData$CallableHandles;
        12: .line 877
            aload 5 /* arguments */
            getstatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.getFunctionsColumnsColumnNames:[Ljava/lang/String;
        13: .line 876
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.getResultSetWithProvidedColumnNames:(Ljava/lang/String;Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData$CallableHandles;[Ljava/lang/String;[Ljava/lang/String;)Lcom/microsoft/sqlserver/jdbc/SQLServerResultSet;
            astore 6 /* rs */
        start local 6 // com.microsoft.sqlserver.jdbc.SQLServerResultSet rs
        14: .line 882
            aload 6 /* rs */
            bipush 6
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerResultSet.getColumn:(I)Lcom/microsoft/sqlserver/jdbc/Column;
            new com.microsoft.sqlserver.jdbc.DataTypeFilter
            dup
            invokespecial com.microsoft.sqlserver.jdbc.DataTypeFilter.<init>:()V
            invokevirtual com.microsoft.sqlserver.jdbc.Column.setFilter:(Lcom/microsoft/sqlserver/jdbc/ColumnFilter;)V
        15: .line 884
            aload 0 /* this */
            getfield com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.connection:Lcom/microsoft/sqlserver/jdbc/SQLServerConnection;
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerConnection.isKatmaiOrLater:()Z
            ifeq 19
        16: .line 885
            aload 6 /* rs */
            bipush 8
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerResultSet.getColumn:(I)Lcom/microsoft/sqlserver/jdbc/Column;
            new com.microsoft.sqlserver.jdbc.ZeroFixupFilter
            dup
            invokespecial com.microsoft.sqlserver.jdbc.ZeroFixupFilter.<init>:()V
            invokevirtual com.microsoft.sqlserver.jdbc.Column.setFilter:(Lcom/microsoft/sqlserver/jdbc/ColumnFilter;)V
        17: .line 886
            aload 6 /* rs */
            bipush 9
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerResultSet.getColumn:(I)Lcom/microsoft/sqlserver/jdbc/Column;
            new com.microsoft.sqlserver.jdbc.ZeroFixupFilter
            dup
            invokespecial com.microsoft.sqlserver.jdbc.ZeroFixupFilter.<init>:()V
            invokevirtual com.microsoft.sqlserver.jdbc.Column.setFilter:(Lcom/microsoft/sqlserver/jdbc/ColumnFilter;)V
        18: .line 887
            aload 6 /* rs */
            bipush 17
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerResultSet.getColumn:(I)Lcom/microsoft/sqlserver/jdbc/Column;
            new com.microsoft.sqlserver.jdbc.ZeroFixupFilter
            dup
            invokespecial com.microsoft.sqlserver.jdbc.ZeroFixupFilter.<init>:()V
            invokevirtual com.microsoft.sqlserver.jdbc.Column.setFilter:(Lcom/microsoft/sqlserver/jdbc/ColumnFilter;)V
        19: .line 889
      StackMap locals: java.lang.String[] com.microsoft.sqlserver.jdbc.SQLServerResultSet
      StackMap stack:
            aload 6 /* rs */
            areturn
        end local 6 // com.microsoft.sqlserver.jdbc.SQLServerResultSet rs
        end local 5 // java.lang.String[] arguments
        end local 4 // java.lang.String columnNamePattern
        end local 3 // java.lang.String functionNamePattern
        end local 2 // java.lang.String schemaPattern
        end local 1 // java.lang.String catalog
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot                 Name  Signature
            0   20     0                 this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
            0   20     1              catalog  Ljava/lang/String;
            0   20     2        schemaPattern  Ljava/lang/String;
            0   20     3  functionNamePattern  Ljava/lang/String;
            0   20     4    columnNamePattern  Ljava/lang/String;
            3    5     5                 form  Ljava/text/MessageFormat;
            4    5     6              msgArgs  [Ljava/lang/Object;
            6   20     5            arguments  [Ljava/lang/String;
           14   20     6                   rs  Lcom/microsoft/sqlserver/jdbc/SQLServerResultSet;
    Exceptions:
      throws java.sql.SQLException
    MethodParameters:
                     Name  Flags
      catalog              
      schemaPattern        
      functionNamePattern  
      columnNamePattern    

  public java.sql.ResultSet getClientInfoProperties();
    descriptor: ()Ljava/sql/ResultSet;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
         0: .line 894
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         1: .line 895
            aload 0 /* this */
            aconst_null
            ldc "SELECT cast(NULL as char(1)) as NAME, cast(0 as int) as MAX_LEN, cast(NULL as char(1)) as DEFAULT_VALUE, cast(NULL as char(1)) as DESCRIPTION  where 0 = 1"
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.getResultSetFromInternalQueries:(Ljava/lang/String;Ljava/lang/String;)Lcom/microsoft/sqlserver/jdbc/SQLServerResultSet;
            areturn
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
    Exceptions:
      throws java.sql.SQLException

  public java.sql.ResultSet getBestRowIdentifier(java.lang.String, java.lang.String, java.lang.String, int, boolean);
    descriptor: (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;IZ)Ljava/sql/ResultSet;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=8, args_size=6
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
        start local 1 // java.lang.String catalog
        start local 2 // java.lang.String schema
        start local 3 // java.lang.String table
        start local 4 // int scope
        start local 5 // boolean nullable
         0: .line 909
            getstatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.loggerExternal:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
            invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
            ifeq 2
            invokestatic com.microsoft.sqlserver.jdbc.Util.isActivityTraceOn:()Z
            ifeq 2
         1: .line 910
            getstatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.loggerExternal:Ljava/util/logging/Logger;
            new java.lang.StringBuilder
            dup
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.toString:()Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc " ActivityId: "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokestatic com.microsoft.sqlserver.jdbc.ActivityCorrelator.getNext:()Lcom/microsoft/sqlserver/jdbc/ActivityId;
            invokevirtual com.microsoft.sqlserver.jdbc.ActivityId.toString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.util.logging.Logger.finer:(Ljava/lang/String;)V
         2: .line 912
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         3: .line 918
            bipush 7
            anewarray java.lang.String
            astore 6 /* arguments */
        start local 6 // java.lang.String[] arguments
         4: .line 919
            aload 6 /* arguments */
            iconst_0
            aload 3 /* table */
            aastore
         5: .line 920
            aload 6 /* arguments */
            iconst_1
            aload 2 /* schema */
            aastore
         6: .line 921
            aload 6 /* arguments */
            iconst_2
            aload 1 /* catalog */
            aastore
         7: .line 922
            aload 6 /* arguments */
            iconst_3
            ldc "R"
            aastore
         8: .line 923
            iload 4 /* scope */
            ifne 10
         9: .line 924
            aload 6 /* arguments */
            iconst_4
            ldc "C"
            aastore
            goto 11
        10: .line 926
      StackMap locals: java.lang.String[]
      StackMap stack:
            aload 6 /* arguments */
            iconst_4
            ldc "T"
            aastore
        11: .line 927
      StackMap locals:
      StackMap stack:
            iload 5 /* nullable */
            ifeq 13
        12: .line 928
            aload 6 /* arguments */
            iconst_5
            ldc "U"
            aastore
            goto 14
        13: .line 930
      StackMap locals:
      StackMap stack:
            aload 6 /* arguments */
            iconst_5
            ldc "O"
            aastore
        14: .line 931
      StackMap locals:
      StackMap stack:
            aload 6 /* arguments */
            bipush 6
            ldc "3"
            aastore
        15: .line 932
            aload 0 /* this */
            aload 1 /* catalog */
            getstatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData$CallableHandles.SP_SPECIAL_COLUMNS:Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData$CallableHandles;
        16: .line 933
            aload 6 /* arguments */
            getstatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.getBestRowIdentifierColumnNames:[Ljava/lang/String;
        17: .line 932
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.getResultSetWithProvidedColumnNames:(Ljava/lang/String;Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData$CallableHandles;[Ljava/lang/String;[Ljava/lang/String;)Lcom/microsoft/sqlserver/jdbc/SQLServerResultSet;
            astore 7 /* rs */
        start local 7 // com.microsoft.sqlserver.jdbc.SQLServerResultSet rs
        18: .line 938
            aload 7 /* rs */
            iconst_3
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerResultSet.getColumn:(I)Lcom/microsoft/sqlserver/jdbc/Column;
            new com.microsoft.sqlserver.jdbc.DataTypeFilter
            dup
            invokespecial com.microsoft.sqlserver.jdbc.DataTypeFilter.<init>:()V
            invokevirtual com.microsoft.sqlserver.jdbc.Column.setFilter:(Lcom/microsoft/sqlserver/jdbc/ColumnFilter;)V
        19: .line 939
            aload 7 /* rs */
            areturn
        end local 7 // com.microsoft.sqlserver.jdbc.SQLServerResultSet rs
        end local 6 // java.lang.String[] arguments
        end local 5 // boolean nullable
        end local 4 // int scope
        end local 3 // java.lang.String table
        end local 2 // java.lang.String schema
        end local 1 // java.lang.String catalog
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   20     0       this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
            0   20     1    catalog  Ljava/lang/String;
            0   20     2     schema  Ljava/lang/String;
            0   20     3      table  Ljava/lang/String;
            0   20     4      scope  I
            0   20     5   nullable  Z
            4   20     6  arguments  [Ljava/lang/String;
           18   20     7         rs  Lcom/microsoft/sqlserver/jdbc/SQLServerResultSet;
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException, java.sql.SQLTimeoutException
    MethodParameters:
          Name  Flags
      catalog   
      schema    
      table     
      scope     
      nullable  

  public java.sql.ResultSet getCrossReference(java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/sql/ResultSet;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=8, args_size=7
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
        start local 1 // java.lang.String cat1
        start local 2 // java.lang.String schem1
        start local 3 // java.lang.String tab1
        start local 4 // java.lang.String cat2
        start local 5 // java.lang.String schem2
        start local 6 // java.lang.String tab2
         0: .line 945
            getstatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.loggerExternal:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
            invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
            ifeq 2
            invokestatic com.microsoft.sqlserver.jdbc.Util.isActivityTraceOn:()Z
            ifeq 2
         1: .line 946
            getstatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.loggerExternal:Ljava/util/logging/Logger;
            new java.lang.StringBuilder
            dup
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.toString:()Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc " ActivityId: "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokestatic com.microsoft.sqlserver.jdbc.ActivityCorrelator.getNext:()Lcom/microsoft/sqlserver/jdbc/ActivityId;
            invokevirtual com.microsoft.sqlserver.jdbc.ActivityId.toString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.util.logging.Logger.finer:(Ljava/lang/String;)V
         2: .line 948
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         3: .line 955
            bipush 6
            anewarray java.lang.String
            dup
            iconst_0
            aload 3 /* tab1 */
            aastore
            dup
            iconst_1
            aload 2 /* schem1 */
            aastore
            dup
            iconst_2
            aload 1 /* cat1 */
            aastore
            dup
            iconst_3
            aload 6 /* tab2 */
            aastore
            dup
            iconst_4
            aload 5 /* schem2 */
            aastore
            dup
            iconst_5
            aload 4 /* cat2 */
            aastore
            astore 7 /* arguments */
        start local 7 // java.lang.String[] arguments
         4: .line 956
            aload 0 /* this */
            aload 7 /* arguments */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.executeSPFkeys:([Ljava/lang/String;)Ljava/sql/ResultSet;
            areturn
        end local 7 // java.lang.String[] arguments
        end local 6 // java.lang.String tab2
        end local 5 // java.lang.String schem2
        end local 4 // java.lang.String cat2
        end local 3 // java.lang.String tab1
        end local 2 // java.lang.String schem1
        end local 1 // java.lang.String cat1
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    5     0       this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
            0    5     1       cat1  Ljava/lang/String;
            0    5     2     schem1  Ljava/lang/String;
            0    5     3       tab1  Ljava/lang/String;
            0    5     4       cat2  Ljava/lang/String;
            0    5     5     schem2  Ljava/lang/String;
            0    5     6       tab2  Ljava/lang/String;
            4    5     7  arguments  [Ljava/lang/String;
    Exceptions:
      throws java.sql.SQLException, java.sql.SQLTimeoutException
    MethodParameters:
        Name  Flags
      cat1    
      schem1  
      tab1    
      cat2    
      schem2  
      tab2    

  public java.lang.String getDatabaseProductName();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
         0: .line 961
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         1: .line 962
            ldc "Microsoft SQL Server"
            areturn
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException

  public java.lang.String getDatabaseProductVersion();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
         0: .line 967
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         1: .line 968
            aload 0 /* this */
            getfield com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.connection:Lcom/microsoft/sqlserver/jdbc/SQLServerConnection;
            getfield com.microsoft.sqlserver.jdbc.SQLServerConnection.sqlServerVersion:Ljava/lang/String;
            areturn
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException

  public int getDefaultTransactionIsolation();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
         0: .line 973
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         1: .line 974
            iconst_2
            ireturn
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException

  public int getDriverMajorVersion();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
         0: .line 979
            bipush 9
            ireturn
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;

  public int getDriverMinorVersion();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
         0: .line 984
            iconst_2
            ireturn
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;

  public java.lang.String getDriverName();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
         0: .line 989
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         1: .line 990
            ldc "Microsoft JDBC Driver 9.2 for SQL Server"
            areturn
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException

  public java.lang.String getDriverVersion();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=1
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
         0: .line 997
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.getDriverMinorVersion:()I
            istore 1 /* n */
        start local 1 // int n
         1: .line 998
            new java.lang.StringBuilder
            dup
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.getDriverMajorVersion:()I
            invokestatic java.lang.String.valueOf:(I)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 2 /* s */
        start local 2 // java.lang.String s
         2: .line 999
            new java.lang.StringBuilder
            dup
            aload 2 /* s */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 1 /* n */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 2 /* s */
         3: .line 1000
            new java.lang.StringBuilder
            dup
            aload 2 /* s */
            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 2 /* s */
         4: .line 1001
            new java.lang.StringBuilder
            dup
            aload 2 /* s */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iconst_1
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 2 /* s */
         5: .line 1002
            new java.lang.StringBuilder
            dup
            aload 2 /* s */
            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 2 /* s */
         6: .line 1003
            new java.lang.StringBuilder
            dup
            aload 2 /* s */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iconst_0
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 2 /* s */
         7: .line 1004
            aload 2 /* s */
            areturn
        end local 2 // java.lang.String s
        end local 1 // int n
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    8     0  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
            1    8     1     n  I
            2    8     2     s  Ljava/lang/String;
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException

  public java.sql.ResultSet getExportedKeys(java.lang.String, java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/sql/ResultSet;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=4, args_size=4
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
        start local 1 // java.lang.String cat
        start local 2 // java.lang.String schema
        start local 3 // java.lang.String table
         0: .line 1010
            aload 0 /* this */
            aload 1 /* cat */
            aload 2 /* schema */
            aload 3 /* table */
            aconst_null
            aconst_null
            aconst_null
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.getCrossReference:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/sql/ResultSet;
            areturn
        end local 3 // java.lang.String table
        end local 2 // java.lang.String schema
        end local 1 // java.lang.String cat
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0    this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
            0    1     1     cat  Ljava/lang/String;
            0    1     2  schema  Ljava/lang/String;
            0    1     3   table  Ljava/lang/String;
    Exceptions:
      throws java.sql.SQLException, java.sql.SQLTimeoutException
    MethodParameters:
        Name  Flags
      cat     
      schema  
      table   

  public java.lang.String getExtraNameCharacters();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
         0: .line 1015
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         1: .line 1016
            ldc "$#@"
            areturn
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException

  public java.lang.String getIdentifierQuoteString();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
         0: .line 1021
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         1: .line 1022
            ldc "\""
            areturn
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException

  public java.sql.ResultSet getImportedKeys(java.lang.String, java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/sql/ResultSet;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=4, args_size=4
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
        start local 1 // java.lang.String cat
        start local 2 // java.lang.String schema
        start local 3 // java.lang.String table
         0: .line 1028
            aload 0 /* this */
            aconst_null
            aconst_null
            aconst_null
            aload 1 /* cat */
            aload 2 /* schema */
            aload 3 /* table */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.getCrossReference:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/sql/ResultSet;
            areturn
        end local 3 // java.lang.String table
        end local 2 // java.lang.String schema
        end local 1 // java.lang.String cat
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0    this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
            0    1     1     cat  Ljava/lang/String;
            0    1     2  schema  Ljava/lang/String;
            0    1     3   table  Ljava/lang/String;
    Exceptions:
      throws java.sql.SQLException, java.sql.SQLTimeoutException
    MethodParameters:
        Name  Flags
      cat     
      schema  
      table   

  private java.sql.ResultSet executeSPFkeys(java.lang.String[]);
    descriptor: ([Ljava/lang/String;)Ljava/sql/ResultSet;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=7, args_size=2
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
        start local 1 // java.lang.String[] procParams
         0: .line 1032
            aload 0 /* this */
            getfield com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.connection:Lcom/microsoft/sqlserver/jdbc/SQLServerConnection;
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerConnection.isAzureDW:()Z
            ifne 37
         1: .line 1033
            ldc "@jdbc_temp_fkeys_result"
            astore 2 /* tempTableName */
        start local 2 // java.lang.String tempTableName
         2: .line 1034
            new java.lang.StringBuilder
            dup
            ldc "DECLARE "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 2 /* tempTableName */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc " table (PKTABLE_QUALIFIER sysname, "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "PKTABLE_OWNER sysname, "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         3: .line 1035
            ldc "PKTABLE_NAME sysname, "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "PKCOLUMN_NAME sysname, "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "FKTABLE_QUALIFIER sysname, "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         4: .line 1036
            ldc "FKTABLE_OWNER sysname, "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "FKTABLE_NAME sysname, "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "FKCOLUMN_NAME sysname, "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         5: .line 1037
            ldc "KEY_SEQ smallint, "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "UPDATE_RULE smallint, "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "DELETE_RULE smallint, "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "FK_NAME sysname, "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         6: .line 1038
            ldc "PK_NAME sysname, "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "DEFERRABILITY smallint);"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "INSERT INTO "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 2 /* tempTableName */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         7: .line 1039
            ldc " EXEC sp_fkeys ?,?,?,?,?,?;"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "SELECT  t.PKTABLE_QUALIFIER AS PKTABLE_CAT, "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         8: .line 1040
            ldc "t.PKTABLE_OWNER AS PKTABLE_SCHEM, "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "t.PKTABLE_NAME, "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "t.PKCOLUMN_NAME, "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         9: .line 1041
            ldc "t.FKTABLE_QUALIFIER AS FKTABLE_CAT, "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "t.FKTABLE_OWNER AS FKTABLE_SCHEM, "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "t.FKTABLE_NAME, "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        10: .line 1042
            ldc "t.FKCOLUMN_NAME, "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "t.KEY_SEQ, "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "CASE s.update_referential_action "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "WHEN 1 THEN 0 "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        11: .line 1045
            ldc "WHEN 0 THEN 3 "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        12: .line 1046
            ldc "WHEN 2 THEN 2 "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        13: .line 1047
            ldc "WHEN 3 THEN 4 "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        14: .line 1048
            ldc "END as UPDATE_RULE, "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "CASE s.delete_referential_action "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "WHEN 1 THEN 0 "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "WHEN 0 THEN 3 "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        15: .line 1049
            ldc "WHEN 2 THEN 2 "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "WHEN 3 THEN 4 "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "END as DELETE_RULE, "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "t.FK_NAME, "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "t.PK_NAME, "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        16: .line 1050
            ldc "t.DEFERRABILITY "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "FROM "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 2 /* tempTableName */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc " t "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        17: .line 1051
            ldc "LEFT JOIN sys.foreign_keys s ON t.FK_NAME = s.name COLLATE database_default AND schema_id(t.FKTABLE_OWNER) = s.schema_id "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        18: .line 1052
            ldc "ORDER BY PKTABLE_CAT, PKTABLE_SCHEM, PKTABLE_NAME, KEY_SEQ"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        19: .line 1034
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 3 /* sql */
        start local 3 // java.lang.String sql
        20: .line 1053
            aload 0 /* this */
            getfield com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.connection:Lcom/microsoft/sqlserver/jdbc/SQLServerConnection;
            aload 3 /* sql */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerConnection.prepareCall:(Ljava/lang/String;)Ljava/sql/CallableStatement;
            checkcast com.microsoft.sqlserver.jdbc.SQLServerCallableStatement
            astore 4 /* cstmt */
        start local 4 // com.microsoft.sqlserver.jdbc.SQLServerCallableStatement cstmt
        21: .line 1054
            aload 4 /* cstmt */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerCallableStatement.closeOnCompletion:()V
        22: .line 1055
            iconst_0
            istore 5 /* i */
        start local 5 // int i
        23: goto 26
        24: .line 1056
      StackMap locals: com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData java.lang.String[] java.lang.String java.lang.String com.microsoft.sqlserver.jdbc.SQLServerCallableStatement int
      StackMap stack:
            aload 4 /* cstmt */
            iload 5 /* i */
            iconst_1
            iadd
            aload 1 /* procParams */
            iload 5 /* i */
            aaload
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerCallableStatement.setString:(ILjava/lang/String;)V
        25: .line 1055
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
        26: iload 5 /* i */
            bipush 6
            if_icmplt 24
        end local 5 // int i
        27: .line 1058
            aconst_null
            astore 5 /* currentDB */
        start local 5 // java.lang.String currentDB
        28: .line 1059
            aload 1 /* procParams */
            iconst_2
            aaload
            ifnull 31
            aload 1 /* procParams */
            iconst_2
            aaload
            invokevirtual java.lang.String.isEmpty:()Z
            ifne 31
        29: .line 1060
            aload 0 /* this */
            aload 1 /* procParams */
            iconst_2
            aaload
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.switchCatalogs:(Ljava/lang/String;)Ljava/lang/String;
            astore 5 /* currentDB */
        30: .line 1061
            goto 33
      StackMap locals: com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData java.lang.String[] java.lang.String java.lang.String com.microsoft.sqlserver.jdbc.SQLServerCallableStatement java.lang.String
      StackMap stack:
        31: aload 1 /* procParams */
            iconst_5
            aaload
            ifnull 33
            aload 1 /* procParams */
            iconst_5
            aaload
            invokevirtual java.lang.String.isEmpty:()Z
            ifne 33
        32: .line 1062
            aload 0 /* this */
            aload 1 /* procParams */
            iconst_5
            aaload
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.switchCatalogs:(Ljava/lang/String;)Ljava/lang/String;
            astore 5 /* currentDB */
        33: .line 1064
      StackMap locals:
      StackMap stack:
            aload 4 /* cstmt */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerCallableStatement.executeQuery:()Ljava/sql/ResultSet;
            astore 6 /* rs */
        start local 6 // java.sql.ResultSet rs
        34: .line 1065
            aload 5 /* currentDB */
            ifnull 36
        35: .line 1066
            aload 0 /* this */
            aload 5 /* currentDB */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.switchCatalogs:(Ljava/lang/String;)Ljava/lang/String;
            pop
        36: .line 1068
      StackMap locals: java.sql.ResultSet
      StackMap stack:
            aload 6 /* rs */
            areturn
        end local 6 // java.sql.ResultSet rs
        end local 5 // java.lang.String currentDB
        end local 4 // com.microsoft.sqlserver.jdbc.SQLServerCallableStatement cstmt
        end local 3 // java.lang.String sql
        end local 2 // java.lang.String tempTableName
        37: .line 1071
      StackMap locals: com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData java.lang.String[]
      StackMap stack:
            aconst_null
            astore 2 /* userRs */
        start local 2 // java.sql.ResultSet userRs
        38: .line 1072
            aconst_null
            astore 3 /* pstmt */
        start local 3 // java.sql.PreparedStatement pstmt
        39: .line 1073
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            astore 4 /* azureDwSelectBuilder */
        start local 4 // java.lang.StringBuilder azureDwSelectBuilder
        40: .line 1074
            ldc Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
            dup
            astore 5
            monitorenter
        41: .line 1075
            getstatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.getImportedKeysDWColumns:Ljava/util/LinkedHashMap;
            ifnonnull 57
        42: .line 1076
            new java.util.LinkedHashMap
            dup
            invokespecial java.util.LinkedHashMap.<init>:()V
            putstatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.getImportedKeysDWColumns:Ljava/util/LinkedHashMap;
        43: .line 1077
            getstatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.getImportedKeysDWColumns:Ljava/util/LinkedHashMap;
            iconst_1
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            ldc "PKTABLE_CAT"
            invokevirtual java.util.LinkedHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        44: .line 1078
            getstatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.getImportedKeysDWColumns:Ljava/util/LinkedHashMap;
            iconst_2
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            ldc "PKTABLE_SCHEM"
            invokevirtual java.util.LinkedHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        45: .line 1079
            getstatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.getImportedKeysDWColumns:Ljava/util/LinkedHashMap;
            iconst_3
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            ldc "PKTABLE_NAME"
            invokevirtual java.util.LinkedHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        46: .line 1080
            getstatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.getImportedKeysDWColumns:Ljava/util/LinkedHashMap;
            iconst_4
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            ldc "PKCOLUMN_NAME"
            invokevirtual java.util.LinkedHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        47: .line 1081
            getstatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.getImportedKeysDWColumns:Ljava/util/LinkedHashMap;
            iconst_5
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            ldc "FKTABLE_CAT"
            invokevirtual java.util.LinkedHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        48: .line 1082
            getstatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.getImportedKeysDWColumns:Ljava/util/LinkedHashMap;
            bipush 6
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            ldc "FKTABLE_SCHEM"
            invokevirtual java.util.LinkedHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        49: .line 1083
            getstatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.getImportedKeysDWColumns:Ljava/util/LinkedHashMap;
            bipush 7
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            ldc "FKTABLE_NAME"
            invokevirtual java.util.LinkedHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        50: .line 1084
            getstatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.getImportedKeysDWColumns:Ljava/util/LinkedHashMap;
            bipush 8
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            ldc "FKCOLUMN_NAME"
            invokevirtual java.util.LinkedHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        51: .line 1085
            getstatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.getImportedKeysDWColumns:Ljava/util/LinkedHashMap;
            bipush 9
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            ldc "KEY_SEQ"
            invokevirtual java.util.LinkedHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        52: .line 1086
            getstatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.getImportedKeysDWColumns:Ljava/util/LinkedHashMap;
            bipush 10
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            ldc "UPDATE_RULE"
            invokevirtual java.util.LinkedHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        53: .line 1087
            getstatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.getImportedKeysDWColumns:Ljava/util/LinkedHashMap;
            bipush 11
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            ldc "DELETE_RULE"
            invokevirtual java.util.LinkedHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        54: .line 1088
            getstatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.getImportedKeysDWColumns:Ljava/util/LinkedHashMap;
            bipush 12
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            ldc "FK_NAME"
            invokevirtual java.util.LinkedHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        55: .line 1089
            getstatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.getImportedKeysDWColumns:Ljava/util/LinkedHashMap;
            bipush 13
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            ldc "PK_NAME"
            invokevirtual java.util.LinkedHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        56: .line 1090
            getstatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.getImportedKeysDWColumns:Ljava/util/LinkedHashMap;
            bipush 14
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            ldc "DEFERRABILITY"
            invokevirtual java.util.LinkedHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        57: .line 1074
      StackMap locals: com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData java.lang.String[] java.sql.ResultSet java.sql.PreparedStatement java.lang.StringBuilder java.lang.Class
      StackMap stack:
            aload 5
            monitorexit
        58: goto 61
      StackMap locals:
      StackMap stack: java.lang.Throwable
        59: aload 5
            monitorexit
        60: athrow
        61: .line 1093
      StackMap locals:
      StackMap stack:
            aload 4 /* azureDwSelectBuilder */
            aload 0 /* this */
            getstatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.getImportedKeysDWColumns:Ljava/util/LinkedHashMap;
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.generateAzureDWEmptyRS:(Ljava/util/Map;)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        62: .line 1095
            aload 0 /* this */
            getfield com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.connection:Lcom/microsoft/sqlserver/jdbc/SQLServerConnection;
            aload 4 /* azureDwSelectBuilder */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerConnection.prepareStatement:(Ljava/lang/String;)Ljava/sql/PreparedStatement;
            astore 3 /* pstmt */
        63: .line 1096
            aload 3 /* pstmt */
            invokeinterface java.sql.PreparedStatement.executeQuery:()Ljava/sql/ResultSet;
            astore 2 /* userRs */
        64: .line 1097
            aload 3 /* pstmt */
            invokeinterface java.sql.PreparedStatement.closeOnCompletion:()V
        65: .line 1098
            aload 2 /* userRs */
        66: areturn
        67: .line 1099
      StackMap locals:
      StackMap stack: java.sql.SQLException
            astore 5 /* e */
        start local 5 // java.sql.SQLException e
        68: .line 1100
            aload 3 /* pstmt */
            ifnull 76
        69: .line 1102
            aload 3 /* pstmt */
            invokeinterface java.sql.PreparedStatement.close:()V
        70: .line 1103
            goto 76
      StackMap locals: com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData java.lang.String[] java.sql.ResultSet java.sql.PreparedStatement java.lang.StringBuilder java.sql.SQLException
      StackMap stack: com.microsoft.sqlserver.jdbc.SQLServerException
        71: pop
        72: .line 1104
            getstatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.loggerExternal:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
            invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
            ifeq 76
        73: .line 1105
            getstatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.loggerExternal:Ljava/util/logging/Logger;
        74: .line 1106
            ldc "executeSPFkeys() threw an exception when attempting to close PreparedStatement"
        75: .line 1105
            invokevirtual java.util.logging.Logger.finer:(Ljava/lang/String;)V
        76: .line 1110
      StackMap locals:
      StackMap stack:
            aload 5 /* e */
            athrow
        end local 5 // java.sql.SQLException e
        end local 4 // java.lang.StringBuilder azureDwSelectBuilder
        end local 3 // java.sql.PreparedStatement pstmt
        end local 2 // java.sql.ResultSet userRs
        end local 1 // java.lang.String[] procParams
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot                  Name  Signature
            0   77     0                  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
            0   77     1            procParams  [Ljava/lang/String;
            2   37     2         tempTableName  Ljava/lang/String;
           20   37     3                   sql  Ljava/lang/String;
           21   37     4                 cstmt  Lcom/microsoft/sqlserver/jdbc/SQLServerCallableStatement;
           23   27     5                     i  I
           28   37     5             currentDB  Ljava/lang/String;
           34   37     6                    rs  Ljava/sql/ResultSet;
           38   77     2                userRs  Ljava/sql/ResultSet;
           39   77     3                 pstmt  Ljava/sql/PreparedStatement;
           40   77     4  azureDwSelectBuilder  Ljava/lang/StringBuilder;
           68   77     5                     e  Ljava/sql/SQLException;
      Exception table:
        from    to  target  type
          41    58      59  any
          59    60      59  any
          62    66      67  Class java.sql.SQLException
          69    70      71  Class com.microsoft.sqlserver.jdbc.SQLServerException
    Exceptions:
      throws java.sql.SQLException, java.sql.SQLTimeoutException
    MethodParameters:
            Name  Flags
      procParams  

  public java.sql.ResultSet getIndexInfo(java.lang.String, java.lang.String, java.lang.String, boolean, boolean);
    descriptor: (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;ZZ)Ljava/sql/ResultSet;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=7, args_size=6
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
        start local 1 // java.lang.String cat
        start local 2 // java.lang.String schema
        start local 3 // java.lang.String table
        start local 4 // boolean unique
        start local 5 // boolean approximate
         0: .line 1123
            getstatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.loggerExternal:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
            invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
            ifeq 2
            invokestatic com.microsoft.sqlserver.jdbc.Util.isActivityTraceOn:()Z
            ifeq 2
         1: .line 1124
            getstatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.loggerExternal:Ljava/util/logging/Logger;
            new java.lang.StringBuilder
            dup
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.toString:()Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc " ActivityId: "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokestatic com.microsoft.sqlserver.jdbc.ActivityCorrelator.getNext:()Lcom/microsoft/sqlserver/jdbc/ActivityId;
            invokevirtual com.microsoft.sqlserver.jdbc.ActivityId.toString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.util.logging.Logger.finer:(Ljava/lang/String;)V
         2: .line 1126
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         3: .line 1132
            bipush 6
            anewarray java.lang.String
            astore 6 /* arguments */
        start local 6 // java.lang.String[] arguments
         4: .line 1133
            aload 6 /* arguments */
            iconst_0
            aload 3 /* table */
            aastore
         5: .line 1134
            aload 6 /* arguments */
            iconst_1
            aload 2 /* schema */
            aastore
         6: .line 1135
            aload 6 /* arguments */
            iconst_2
            aload 1 /* cat */
            aastore
         7: .line 1137
            aload 6 /* arguments */
            iconst_3
            ldc "%"
            aastore
         8: .line 1138
            iload 4 /* unique */
            ifeq 10
         9: .line 1139
            aload 6 /* arguments */
            iconst_4
            ldc "Y"
            aastore
            goto 11
        10: .line 1141
      StackMap locals: java.lang.String[]
      StackMap stack:
            aload 6 /* arguments */
            iconst_4
            ldc "N"
            aastore
        11: .line 1142
      StackMap locals:
      StackMap stack:
            iload 5 /* approximate */
            ifeq 13
        12: .line 1143
            aload 6 /* arguments */
            iconst_5
            ldc "Q"
            aastore
            goto 14
        13: .line 1145
      StackMap locals:
      StackMap stack:
            aload 6 /* arguments */
            iconst_5
            ldc "E"
            aastore
        14: .line 1146
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* cat */
            getstatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData$CallableHandles.SP_STATISTICS:Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData$CallableHandles;
            aload 6 /* arguments */
        15: .line 1147
            getstatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.getIndexInfoColumnNames:[Ljava/lang/String;
        16: .line 1146
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.getResultSetWithProvidedColumnNames:(Ljava/lang/String;Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData$CallableHandles;[Ljava/lang/String;[Ljava/lang/String;)Lcom/microsoft/sqlserver/jdbc/SQLServerResultSet;
            areturn
        end local 6 // java.lang.String[] arguments
        end local 5 // boolean approximate
        end local 4 // boolean unique
        end local 3 // java.lang.String table
        end local 2 // java.lang.String schema
        end local 1 // java.lang.String cat
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   17     0         this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
            0   17     1          cat  Ljava/lang/String;
            0   17     2       schema  Ljava/lang/String;
            0   17     3        table  Ljava/lang/String;
            0   17     4       unique  Z
            0   17     5  approximate  Z
            4   17     6    arguments  [Ljava/lang/String;
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException, java.sql.SQLTimeoutException
    MethodParameters:
             Name  Flags
      cat          
      schema       
      table        
      unique       
      approximate  

  public int getMaxBinaryLiteralLength();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
         0: .line 1152
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         1: .line 1153
            iconst_0
            ireturn
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException

  public int getMaxCatalogNameLength();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
         0: .line 1158
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         1: .line 1159
            sipush 128
            ireturn
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException

  public int getMaxCharLiteralLength();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
         0: .line 1164
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         1: .line 1165
            iconst_0
            ireturn
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException

  public int getMaxColumnNameLength();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
         0: .line 1170
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         1: .line 1171
            sipush 128
            ireturn
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException

  public int getMaxColumnsInGroupBy();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
         0: .line 1176
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         1: .line 1177
            iconst_0
            ireturn
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException

  public int getMaxColumnsInIndex();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
         0: .line 1182
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         1: .line 1183
            bipush 16
            ireturn
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException

  public int getMaxColumnsInOrderBy();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
         0: .line 1188
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         1: .line 1189
            iconst_0
            ireturn
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException

  public int getMaxColumnsInSelect();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
         0: .line 1194
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         1: .line 1195
            sipush 4096
            ireturn
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException

  public int getMaxColumnsInTable();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
         0: .line 1200
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         1: .line 1201
            sipush 1024
            ireturn
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException

  public int getMaxConnections();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=4, args_size=1
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
         0: .line 1206
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         1: .line 1207
            aconst_null
            astore 1
            aconst_null
            astore 2
         2: aload 0 /* this */
            aconst_null
         3: .line 1208
            ldc "select maximum from sys.configurations where name = 'user connections'"
         4: .line 1207
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.getResultSetFromInternalQueries:(Ljava/lang/String;Ljava/lang/String;)Lcom/microsoft/sqlserver/jdbc/SQLServerResultSet;
            astore 3 /* rs */
        start local 3 // com.microsoft.sqlserver.jdbc.SQLServerResultSet rs
         5: .line 1209
            aload 3 /* rs */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerResultSet.next:()Z
            ifne 8
         6: .line 1213
            aload 3 /* rs */
            ifnull 7
            aload 3 /* rs */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerResultSet.close:()V
         7: .line 1210
      StackMap locals: java.lang.Throwable java.lang.Throwable com.microsoft.sqlserver.jdbc.SQLServerResultSet
      StackMap stack:
            iconst_0
            ireturn
         8: .line 1212
      StackMap locals:
      StackMap stack:
            aload 3 /* rs */
            ldc "maximum"
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerResultSet.getInt:(Ljava/lang/String;)I
         9: .line 1213
            aload 3 /* rs */
            ifnull 10
            aload 3 /* rs */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerResultSet.close:()V
        10: .line 1212
      StackMap locals:
      StackMap stack: int
            ireturn
      StackMap locals:
      StackMap stack: java.lang.Throwable
        11: astore 1
        12: .line 1213
            aload 3 /* rs */
            ifnull 13
            aload 3 /* rs */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerResultSet.close:()V
        end local 3 // com.microsoft.sqlserver.jdbc.SQLServerResultSet rs
      StackMap locals:
      StackMap stack:
        13: aload 1
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
        14: astore 2
            aload 1
            ifnonnull 15
            aload 2
            astore 1
            goto 16
      StackMap locals:
      StackMap stack:
        15: aload 1
            aload 2
            if_acmpeq 16
            aload 1
            aload 2
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        16: aload 1
            athrow
      StackMap locals: com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData
      StackMap stack: com.microsoft.sqlserver.jdbc.SQLServerException
        17: pop
        18: .line 1215
            aconst_null
            astore 1
            aconst_null
            astore 2
        19: aload 0 /* this */
            aconst_null
            ldc "sp_configure 'user connections'"
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.getResultSetFromInternalQueries:(Ljava/lang/String;Ljava/lang/String;)Lcom/microsoft/sqlserver/jdbc/SQLServerResultSet;
            astore 3 /* rs1 */
        start local 3 // com.microsoft.sqlserver.jdbc.SQLServerResultSet rs1
        20: .line 1216
            aload 3 /* rs1 */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerResultSet.next:()Z
            ifne 23
        21: .line 1220
            aload 3 /* rs1 */
            ifnull 22
            aload 3 /* rs1 */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerResultSet.close:()V
        22: .line 1217
      StackMap locals: java.lang.Throwable java.lang.Throwable com.microsoft.sqlserver.jdbc.SQLServerResultSet
      StackMap stack:
            iconst_0
            ireturn
        23: .line 1219
      StackMap locals:
      StackMap stack:
            aload 3 /* rs1 */
            ldc "maximum"
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerResultSet.getInt:(Ljava/lang/String;)I
        24: .line 1220
            aload 3 /* rs1 */
            ifnull 25
            aload 3 /* rs1 */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerResultSet.close:()V
        25: .line 1219
      StackMap locals:
      StackMap stack: int
            ireturn
      StackMap locals:
      StackMap stack: java.lang.Throwable
        26: astore 1
        27: .line 1220
            aload 3 /* rs1 */
            ifnull 28
            aload 3 /* rs1 */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerResultSet.close:()V
        end local 3 // com.microsoft.sqlserver.jdbc.SQLServerResultSet rs1
      StackMap locals:
      StackMap stack:
        28: aload 1
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
        29: astore 2
            aload 1
            ifnonnull 30
            aload 2
            astore 1
            goto 31
      StackMap locals:
      StackMap stack:
        30: aload 1
            aload 2
            if_acmpeq 31
            aload 1
            aload 2
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        31: aload 1
            athrow
      StackMap locals: com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData
      StackMap stack: com.microsoft.sqlserver.jdbc.SQLServerException
        32: pop
        33: .line 1221
            iconst_0
            ireturn
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   34     0  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
            5   13     3    rs  Lcom/microsoft/sqlserver/jdbc/SQLServerResultSet;
           20   28     3   rs1  Lcom/microsoft/sqlserver/jdbc/SQLServerResultSet;
      Exception table:
        from    to  target  type
           5     6      11  any
           8     9      11  any
           2     7      14  any
           8    10      14  any
          11    14      14  any
           1     7      17  Class com.microsoft.sqlserver.jdbc.SQLServerException
           8    10      17  Class com.microsoft.sqlserver.jdbc.SQLServerException
          11    17      17  Class com.microsoft.sqlserver.jdbc.SQLServerException
          20    21      26  any
          23    24      26  any
          19    22      29  any
          23    25      29  any
          26    29      29  any
          18    22      32  Class com.microsoft.sqlserver.jdbc.SQLServerException
          23    25      32  Class com.microsoft.sqlserver.jdbc.SQLServerException
          26    32      32  Class com.microsoft.sqlserver.jdbc.SQLServerException
    Exceptions:
      throws java.sql.SQLException, java.sql.SQLTimeoutException

  public int getMaxCursorNameLength();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
         0: .line 1228
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         1: .line 1229
            iconst_0
            ireturn
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException

  public int getMaxIndexLength();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
         0: .line 1234
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         1: .line 1235
            sipush 900
            ireturn
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException

  public int getMaxProcedureNameLength();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
         0: .line 1240
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         1: .line 1241
            sipush 128
            ireturn
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException

  public int getMaxRowSize();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
         0: .line 1246
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         1: .line 1247
            sipush 8060
            ireturn
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException

  public int getMaxSchemaNameLength();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
         0: .line 1252
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         1: .line 1253
            sipush 128
            ireturn
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException

  public int getMaxStatementLength();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
         0: .line 1258
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         1: .line 1267
            ldc 65536
            aload 0 /* this */
            getfield com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.connection:Lcom/microsoft/sqlserver/jdbc/SQLServerConnection;
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerConnection.getTDSPacketSize:()I
            imul
            ireturn
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException

  public int getMaxStatements();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
         0: .line 1272
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         1: .line 1273
            iconst_0
            ireturn
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException

  public int getMaxTableNameLength();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
         0: .line 1278
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         1: .line 1279
            sipush 128
            ireturn
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException

  public int getMaxTablesInSelect();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
         0: .line 1284
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         1: .line 1285
            sipush 256
            ireturn
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException

  public int getMaxUserNameLength();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
         0: .line 1290
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         1: .line 1291
            sipush 128
            ireturn
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException

  public java.lang.String getNumericFunctions();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
         0: .line 1296
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         1: .line 1297
            ldc "ABS,ACOS,ASIN,ATAN,ATAN2,CEILING,COS,COT,DEGREES,EXP,FLOOR,LOG,LOG10,MOD,PI,POWER,RADIANS,RAND,ROUND,SIGN,SIN,SQRT,TAN,TRUNCATE"
            areturn
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException

  public java.sql.ResultSet getPrimaryKeys(java.lang.String, java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/sql/ResultSet;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=5, args_size=4
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
        start local 1 // java.lang.String cat
        start local 2 // java.lang.String schema
        start local 3 // java.lang.String table
         0: .line 1306
            getstatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.loggerExternal:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
            invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
            ifeq 2
            invokestatic com.microsoft.sqlserver.jdbc.Util.isActivityTraceOn:()Z
            ifeq 2
         1: .line 1307
            getstatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.loggerExternal:Ljava/util/logging/Logger;
            new java.lang.StringBuilder
            dup
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.toString:()Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc " ActivityId: "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokestatic com.microsoft.sqlserver.jdbc.ActivityCorrelator.getNext:()Lcom/microsoft/sqlserver/jdbc/ActivityId;
            invokevirtual com.microsoft.sqlserver.jdbc.ActivityId.toString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.util.logging.Logger.finer:(Ljava/lang/String;)V
         2: .line 1309
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         3: .line 1313
            iconst_3
            anewarray java.lang.String
            astore 4 /* arguments */
        start local 4 // java.lang.String[] arguments
         4: .line 1314
            aload 4 /* arguments */
            iconst_0
            aload 3 /* table */
            aastore
         5: .line 1315
            aload 4 /* arguments */
            iconst_1
            aload 2 /* schema */
            aastore
         6: .line 1316
            aload 4 /* arguments */
            iconst_2
            aload 1 /* cat */
            aastore
         7: .line 1317
            aload 0 /* this */
            aload 1 /* cat */
            getstatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData$CallableHandles.SP_PKEYS:Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData$CallableHandles;
            aload 4 /* arguments */
            getstatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.getPrimaryKeysColumnNames:[Ljava/lang/String;
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.getResultSetWithProvidedColumnNames:(Ljava/lang/String;Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData$CallableHandles;[Ljava/lang/String;[Ljava/lang/String;)Lcom/microsoft/sqlserver/jdbc/SQLServerResultSet;
            areturn
        end local 4 // java.lang.String[] arguments
        end local 3 // java.lang.String table
        end local 2 // java.lang.String schema
        end local 1 // java.lang.String cat
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    8     0       this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
            0    8     1        cat  Ljava/lang/String;
            0    8     2     schema  Ljava/lang/String;
            0    8     3      table  Ljava/lang/String;
            4    8     4  arguments  [Ljava/lang/String;
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException, java.sql.SQLTimeoutException
    MethodParameters:
        Name  Flags
      cat     
      schema  
      table   

  public java.sql.ResultSet getProcedureColumns(java.lang.String, java.lang.String, java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/sql/ResultSet;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=7, args_size=5
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
        start local 1 // java.lang.String catalog
        start local 2 // java.lang.String schema
        start local 3 // java.lang.String proc
        start local 4 // java.lang.String col
         0: .line 1329
            getstatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.loggerExternal:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
            invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
            ifeq 2
            invokestatic com.microsoft.sqlserver.jdbc.Util.isActivityTraceOn:()Z
            ifeq 2
         1: .line 1330
            getstatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.loggerExternal:Ljava/util/logging/Logger;
            new java.lang.StringBuilder
            dup
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.toString:()Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc " ActivityId: "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokestatic com.microsoft.sqlserver.jdbc.ActivityCorrelator.getNext:()Lcom/microsoft/sqlserver/jdbc/ActivityId;
            invokevirtual com.microsoft.sqlserver.jdbc.ActivityId.toString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.util.logging.Logger.finer:(Ljava/lang/String;)V
         2: .line 1332
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         3: .line 1338
            iconst_5
            anewarray java.lang.String
            astore 5 /* arguments */
        start local 5 // java.lang.String[] arguments
         4: .line 1341
            aload 3 /* proc */
            invokestatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.EscapeIDName:(Ljava/lang/String;)Ljava/lang/String;
            astore 3 /* proc */
         5: .line 1342
            aload 5 /* arguments */
            iconst_0
            aload 3 /* proc */
            aastore
         6: .line 1343
            aload 5 /* arguments */
            iconst_1
            aload 2 /* schema */
            aastore
         7: .line 1344
            aload 5 /* arguments */
            iconst_2
            aload 1 /* catalog */
            aastore
         8: .line 1346
            aload 4 /* col */
            invokestatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.EscapeIDName:(Ljava/lang/String;)Ljava/lang/String;
            astore 4 /* col */
         9: .line 1347
            aload 5 /* arguments */
            iconst_3
            aload 4 /* col */
            aastore
        10: .line 1348
            aload 5 /* arguments */
            iconst_4
            ldc "3"
            aastore
        11: .line 1349
            aload 0 /* this */
            aload 1 /* catalog */
            getstatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData$CallableHandles.SP_SPROC_COLUMNS:Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData$CallableHandles;
        12: .line 1350
            aload 5 /* arguments */
            getstatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.getProcedureColumnsColumnNames:[Ljava/lang/String;
        13: .line 1349
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.getResultSetWithProvidedColumnNames:(Ljava/lang/String;Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData$CallableHandles;[Ljava/lang/String;[Ljava/lang/String;)Lcom/microsoft/sqlserver/jdbc/SQLServerResultSet;
            astore 6 /* rs */
        start local 6 // com.microsoft.sqlserver.jdbc.SQLServerResultSet rs
        14: .line 1355
            aload 6 /* rs */
            bipush 6
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerResultSet.getColumn:(I)Lcom/microsoft/sqlserver/jdbc/Column;
            new com.microsoft.sqlserver.jdbc.DataTypeFilter
            dup
            invokespecial com.microsoft.sqlserver.jdbc.DataTypeFilter.<init>:()V
            invokevirtual com.microsoft.sqlserver.jdbc.Column.setFilter:(Lcom/microsoft/sqlserver/jdbc/ColumnFilter;)V
        15: .line 1356
            aload 0 /* this */
            getfield com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.connection:Lcom/microsoft/sqlserver/jdbc/SQLServerConnection;
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerConnection.isKatmaiOrLater:()Z
            ifeq 19
        16: .line 1357
            aload 6 /* rs */
            bipush 8
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerResultSet.getColumn:(I)Lcom/microsoft/sqlserver/jdbc/Column;
            new com.microsoft.sqlserver.jdbc.ZeroFixupFilter
            dup
            invokespecial com.microsoft.sqlserver.jdbc.ZeroFixupFilter.<init>:()V
            invokevirtual com.microsoft.sqlserver.jdbc.Column.setFilter:(Lcom/microsoft/sqlserver/jdbc/ColumnFilter;)V
        17: .line 1358
            aload 6 /* rs */
            bipush 9
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerResultSet.getColumn:(I)Lcom/microsoft/sqlserver/jdbc/Column;
            new com.microsoft.sqlserver.jdbc.ZeroFixupFilter
            dup
            invokespecial com.microsoft.sqlserver.jdbc.ZeroFixupFilter.<init>:()V
            invokevirtual com.microsoft.sqlserver.jdbc.Column.setFilter:(Lcom/microsoft/sqlserver/jdbc/ColumnFilter;)V
        18: .line 1359
            aload 6 /* rs */
            bipush 17
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerResultSet.getColumn:(I)Lcom/microsoft/sqlserver/jdbc/Column;
            new com.microsoft.sqlserver.jdbc.ZeroFixupFilter
            dup
            invokespecial com.microsoft.sqlserver.jdbc.ZeroFixupFilter.<init>:()V
            invokevirtual com.microsoft.sqlserver.jdbc.Column.setFilter:(Lcom/microsoft/sqlserver/jdbc/ColumnFilter;)V
        19: .line 1362
      StackMap locals: java.lang.String[] com.microsoft.sqlserver.jdbc.SQLServerResultSet
      StackMap stack:
            aload 6 /* rs */
            areturn
        end local 6 // com.microsoft.sqlserver.jdbc.SQLServerResultSet rs
        end local 5 // java.lang.String[] arguments
        end local 4 // java.lang.String col
        end local 3 // java.lang.String proc
        end local 2 // java.lang.String schema
        end local 1 // java.lang.String catalog
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   20     0       this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
            0   20     1    catalog  Ljava/lang/String;
            0   20     2     schema  Ljava/lang/String;
            0   20     3       proc  Ljava/lang/String;
            0   20     4        col  Ljava/lang/String;
            4   20     5  arguments  [Ljava/lang/String;
           14   20     6         rs  Lcom/microsoft/sqlserver/jdbc/SQLServerResultSet;
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException, java.sql.SQLTimeoutException
    MethodParameters:
         Name  Flags
      catalog  
      schema   
      proc     
      col      

  public java.sql.ResultSet getProcedures(java.lang.String, java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/sql/ResultSet;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=5, args_size=4
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
        start local 1 // java.lang.String catalog
        start local 2 // java.lang.String schema
        start local 3 // java.lang.String proc
         0: .line 1372
            getstatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.loggerExternal:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
            invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
            ifeq 2
            invokestatic com.microsoft.sqlserver.jdbc.Util.isActivityTraceOn:()Z
            ifeq 2
         1: .line 1373
            getstatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.loggerExternal:Ljava/util/logging/Logger;
            new java.lang.StringBuilder
            dup
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.toString:()Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc " ActivityId: "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokestatic com.microsoft.sqlserver.jdbc.ActivityCorrelator.getNext:()Lcom/microsoft/sqlserver/jdbc/ActivityId;
            invokevirtual com.microsoft.sqlserver.jdbc.ActivityId.toString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.util.logging.Logger.finer:(Ljava/lang/String;)V
         2: .line 1376
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         3: .line 1381
            iconst_3
            anewarray java.lang.String
            astore 4 /* arguments */
        start local 4 // java.lang.String[] arguments
         4: .line 1382
            aload 4 /* arguments */
            iconst_0
            aload 3 /* proc */
            invokestatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.EscapeIDName:(Ljava/lang/String;)Ljava/lang/String;
            aastore
         5: .line 1383
            aload 4 /* arguments */
            iconst_1
            aload 2 /* schema */
            aastore
         6: .line 1384
            aload 4 /* arguments */
            iconst_2
            aload 1 /* catalog */
            aastore
         7: .line 1385
            aload 0 /* this */
            aload 1 /* catalog */
            getstatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData$CallableHandles.SP_STORED_PROCEDURES:Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData$CallableHandles;
            aload 4 /* arguments */
         8: .line 1386
            getstatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.getProceduresColumnNames:[Ljava/lang/String;
         9: .line 1385
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.getResultSetWithProvidedColumnNames:(Ljava/lang/String;Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData$CallableHandles;[Ljava/lang/String;[Ljava/lang/String;)Lcom/microsoft/sqlserver/jdbc/SQLServerResultSet;
            areturn
        end local 4 // java.lang.String[] arguments
        end local 3 // java.lang.String proc
        end local 2 // java.lang.String schema
        end local 1 // java.lang.String catalog
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   10     0       this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
            0   10     1    catalog  Ljava/lang/String;
            0   10     2     schema  Ljava/lang/String;
            0   10     3       proc  Ljava/lang/String;
            4   10     4  arguments  [Ljava/lang/String;
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException, java.sql.SQLTimeoutException
    MethodParameters:
         Name  Flags
      catalog  
      schema   
      proc     

  public java.lang.String getProcedureTerm();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
         0: .line 1391
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         1: .line 1392
            ldc "stored procedure"
            areturn
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException

  public java.sql.ResultSet getPseudoColumns(java.lang.String, java.lang.String, java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/sql/ResultSet;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=5, args_size=5
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
        start local 1 // java.lang.String catalog
        start local 2 // java.lang.String schemaPattern
        start local 3 // java.lang.String tableNamePattern
        start local 4 // java.lang.String columnNamePattern
         0: .line 1398
            getstatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.loggerExternal:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
            invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
            ifeq 2
            invokestatic com.microsoft.sqlserver.jdbc.Util.isActivityTraceOn:()Z
            ifeq 2
         1: .line 1399
            getstatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.loggerExternal:Ljava/util/logging/Logger;
            new java.lang.StringBuilder
            dup
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.toString:()Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc " ActivityId: "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokestatic com.microsoft.sqlserver.jdbc.ActivityCorrelator.getNext:()Lcom/microsoft/sqlserver/jdbc/ActivityId;
            invokevirtual com.microsoft.sqlserver.jdbc.ActivityId.toString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.util.logging.Logger.finer:(Ljava/lang/String;)V
         2: .line 1402
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         3: .line 1408
            aload 0 /* this */
            aload 1 /* catalog */
            ldc "SELECT cast(NULL as char(1)) as TABLE_CAT, cast(NULL as char(1)) as TABLE_SCHEM, cast(NULL as char(1)) as TABLE_NAME, cast(NULL as char(1)) as COLUMN_NAME, cast(0 as int) as DATA_TYPE, cast(0 as int) as COLUMN_SIZE, cast(0 as int) as DECIMAL_DIGITS, cast(0 as int) as NUM_PREC_RADIX, cast(NULL as char(1)) as COLUMN_USAGE, cast(NULL as char(1)) as REMARKS, cast(0 as int) as CHAR_OCTET_LENGTH, cast(NULL as char(1)) as IS_NULLABLE where 0 = 1"
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.getResultSetFromInternalQueries:(Ljava/lang/String;Ljava/lang/String;)Lcom/microsoft/sqlserver/jdbc/SQLServerResultSet;
            areturn
        end local 4 // java.lang.String columnNamePattern
        end local 3 // java.lang.String tableNamePattern
        end local 2 // java.lang.String schemaPattern
        end local 1 // java.lang.String catalog
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0    4     0               this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
            0    4     1            catalog  Ljava/lang/String;
            0    4     2      schemaPattern  Ljava/lang/String;
            0    4     3   tableNamePattern  Ljava/lang/String;
            0    4     4  columnNamePattern  Ljava/lang/String;
    Exceptions:
      throws java.sql.SQLException
    MethodParameters:
                   Name  Flags
      catalog            
      schemaPattern      
      tableNamePattern   
      columnNamePattern  

  public java.sql.ResultSet getSchemas();
    descriptor: ()Ljava/sql/ResultSet;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
         0: .line 1425
            getstatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.loggerExternal:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
            invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
            ifeq 2
            invokestatic com.microsoft.sqlserver.jdbc.Util.isActivityTraceOn:()Z
            ifeq 2
         1: .line 1426
            getstatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.loggerExternal:Ljava/util/logging/Logger;
            new java.lang.StringBuilder
            dup
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.toString:()Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc " ActivityId: "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokestatic com.microsoft.sqlserver.jdbc.ActivityCorrelator.getNext:()Lcom/microsoft/sqlserver/jdbc/ActivityId;
            invokevirtual com.microsoft.sqlserver.jdbc.ActivityId.toString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.util.logging.Logger.finer:(Ljava/lang/String;)V
         2: .line 1428
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         3: .line 1429
            aload 0 /* this */
            aconst_null
            aconst_null
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.getSchemasInternal:(Ljava/lang/String;Ljava/lang/String;)Ljava/sql/ResultSet;
            areturn
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
    Exceptions:
      throws java.sql.SQLException, java.sql.SQLTimeoutException

  private java.sql.ResultSet getSchemasInternal(java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;)Ljava/sql/ResultSet;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=9, args_size=3
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
        start local 1 // java.lang.String catalog
        start local 2 // java.lang.String schemaPattern
         0: .line 1440
            ldc " ('dbo', 'guest','INFORMATION_SCHEMA','sys','db_owner', 'db_accessadmin', 'db_securityadmin', 'db_ddladmin'  ,'db_backupoperator','db_datareader','db_datawriter','db_denydatareader','db_denydatawriter') "
            astore 4 /* constSchemas */
        start local 4 // java.lang.String constSchemas
         1: .line 1443
            ldc "sys.schemas"
            astore 5 /* schema */
        start local 5 // java.lang.String schema
         2: .line 1444
            ldc "sys.schemas.name"
            astore 6 /* schemaName */
        start local 6 // java.lang.String schemaName
         3: .line 1445
            aload 1 /* catalog */
            ifnull 7
            aload 1 /* catalog */
            invokevirtual java.lang.String.length:()I
            ifeq 7
         4: .line 1446
            aload 1 /* catalog */
            invokestatic com.microsoft.sqlserver.jdbc.Util.escapeSQLId:(Ljava/lang/String;)Ljava/lang/String;
            astore 7 /* catalogId */
        start local 7 // java.lang.String catalogId
         5: .line 1447
            new java.lang.StringBuilder
            dup
            aload 7 /* catalogId */
            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 5 /* schema */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 5 /* schema */
         6: .line 1448
            new java.lang.StringBuilder
            dup
            aload 7 /* catalogId */
            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 /* schemaName */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 6 /* schemaName */
        end local 7 // java.lang.String catalogId
         7: .line 1457
      StackMap locals: com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData java.lang.String java.lang.String top java.lang.String java.lang.String java.lang.String
      StackMap stack:
            new java.lang.StringBuilder
            dup
            ldc "select "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 6 /* schemaName */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc " 'TABLE_SCHEM',"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 3 /* s */
        start local 3 // java.lang.String s
         8: .line 1458
            aload 1 /* catalog */
            ifnull 11
            aload 1 /* catalog */
            invokevirtual java.lang.String.length:()I
            ifne 11
         9: .line 1459
            new java.lang.StringBuilder
            dup
            aload 3 /* s */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc "null 'TABLE_CATALOG' "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 3 /* s */
        10: .line 1460
            goto 17
        11: .line 1461
      StackMap locals: com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String
      StackMap stack:
            new java.lang.StringBuilder
            dup
            aload 3 /* s */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc " CASE WHEN "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 6 /* schemaName */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "  IN "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 4 /* constSchemas */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc " THEN null ELSE "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 3 /* s */
        12: .line 1462
            aload 1 /* catalog */
            ifnull 15
            aload 1 /* catalog */
            invokevirtual java.lang.String.length:()I
            ifeq 15
        13: .line 1463
            new java.lang.StringBuilder
            dup
            aload 3 /* s */
            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 1 /* catalog */
            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 3 /* s */
        14: .line 1464
            goto 16
        15: .line 1465
      StackMap locals:
      StackMap stack:
            new java.lang.StringBuilder
            dup
            aload 3 /* s */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc " DB_NAME() "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 3 /* s */
        16: .line 1467
      StackMap locals:
      StackMap stack:
            new java.lang.StringBuilder
            dup
            aload 3 /* s */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc " END 'TABLE_CATALOG' "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 3 /* s */
        17: .line 1469
      StackMap locals:
      StackMap stack:
            new java.lang.StringBuilder
            dup
            aload 3 /* s */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc "   from "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 5 /* schema */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 3 /* s */
        18: .line 1473
            aload 1 /* catalog */
            ifnull 24
            aload 1 /* catalog */
            invokevirtual java.lang.String.length:()I
            ifne 24
        19: .line 1474
            aload 2 /* schemaPattern */
            ifnull 21
        20: .line 1475
            new java.lang.StringBuilder
            dup
            aload 3 /* s */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc " where "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 6 /* schemaName */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc " like ?  and "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 3 /* s */
            goto 22
        21: .line 1477
      StackMap locals:
      StackMap stack:
            new java.lang.StringBuilder
            dup
            aload 3 /* s */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc " where "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 3 /* s */
        22: .line 1478
      StackMap locals:
      StackMap stack:
            new java.lang.StringBuilder
            dup
            aload 3 /* s */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 6 /* schemaName */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc " in "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 4 /* constSchemas */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 3 /* s */
        23: .line 1479
            goto 26
      StackMap locals:
      StackMap stack:
        24: aload 2 /* schemaPattern */
            ifnull 26
        25: .line 1480
            new java.lang.StringBuilder
            dup
            aload 3 /* s */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc " where "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 6 /* schemaName */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc " like ?  "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 3 /* s */
        26: .line 1482
      StackMap locals:
      StackMap stack:
            new java.lang.StringBuilder
            dup
            aload 3 /* s */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc " order by 2, 1"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 3 /* s */
        27: .line 1483
            getstatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.logger:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINE:Ljava/util/logging/Level;
            invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
            ifeq 29
        28: .line 1484
            getstatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.logger:Ljava/util/logging/Logger;
            new java.lang.StringBuilder
            dup
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.toString:()Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc " schema query ("
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 3 /* s */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc ")"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.util.logging.Logger.fine:(Ljava/lang/String;)V
        29: .line 1487
      StackMap locals:
      StackMap stack:
            aload 2 /* schemaPattern */
            ifnonnull 33
        30: .line 1488
            aconst_null
            astore 1 /* catalog */
        31: .line 1489
            aload 0 /* this */
            aload 1 /* catalog */
            aload 3 /* s */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.getResultSetFromInternalQueries:(Ljava/lang/String;Ljava/lang/String;)Lcom/microsoft/sqlserver/jdbc/SQLServerResultSet;
            astore 7 /* rs */
        start local 7 // com.microsoft.sqlserver.jdbc.SQLServerResultSet rs
        32: .line 1490
            goto 37
        end local 7 // com.microsoft.sqlserver.jdbc.SQLServerResultSet rs
        33: .line 1495
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.connection:Lcom/microsoft/sqlserver/jdbc/SQLServerConnection;
            aload 3 /* s */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerConnection.prepareStatement:(Ljava/lang/String;)Ljava/sql/PreparedStatement;
            checkcast com.microsoft.sqlserver.jdbc.SQLServerPreparedStatement
            astore 8 /* ps */
        start local 8 // com.microsoft.sqlserver.jdbc.SQLServerPreparedStatement ps
        34: .line 1496
            aload 8 /* ps */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerPreparedStatement.closeOnCompletion:()V
        35: .line 1497
            aload 8 /* ps */
            iconst_1
            aload 2 /* schemaPattern */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerPreparedStatement.setString:(ILjava/lang/String;)V
        36: .line 1498
            aload 8 /* ps */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerPreparedStatement.executeQueryInternal:()Ljava/sql/ResultSet;
            checkcast com.microsoft.sqlserver.jdbc.SQLServerResultSet
            astore 7 /* rs */
        end local 8 // com.microsoft.sqlserver.jdbc.SQLServerPreparedStatement ps
        start local 7 // com.microsoft.sqlserver.jdbc.SQLServerResultSet rs
        37: .line 1500
      StackMap locals: com.microsoft.sqlserver.jdbc.SQLServerResultSet
      StackMap stack:
            aload 7 /* rs */
            areturn
        end local 7 // com.microsoft.sqlserver.jdbc.SQLServerResultSet rs
        end local 6 // java.lang.String schemaName
        end local 5 // java.lang.String schema
        end local 4 // java.lang.String constSchemas
        end local 3 // java.lang.String s
        end local 2 // java.lang.String schemaPattern
        end local 1 // java.lang.String catalog
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   38     0           this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
            0   38     1        catalog  Ljava/lang/String;
            0   38     2  schemaPattern  Ljava/lang/String;
            8   38     3              s  Ljava/lang/String;
            1   38     4   constSchemas  Ljava/lang/String;
            2   38     5         schema  Ljava/lang/String;
            3   38     6     schemaName  Ljava/lang/String;
            5    7     7      catalogId  Ljava/lang/String;
           32   33     7             rs  Lcom/microsoft/sqlserver/jdbc/SQLServerResultSet;
           37   38     7             rs  Lcom/microsoft/sqlserver/jdbc/SQLServerResultSet;
           34   37     8             ps  Lcom/microsoft/sqlserver/jdbc/SQLServerPreparedStatement;
    Exceptions:
      throws java.sql.SQLException, java.sql.SQLTimeoutException
    MethodParameters:
               Name  Flags
      catalog        
      schemaPattern  

  public java.sql.ResultSet getSchemas(java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;)Ljava/sql/ResultSet;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
        start local 1 // java.lang.String catalog
        start local 2 // java.lang.String schemaPattern
         0: .line 1505
            getstatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.loggerExternal:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
            invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
            ifeq 2
            invokestatic com.microsoft.sqlserver.jdbc.Util.isActivityTraceOn:()Z
            ifeq 2
         1: .line 1506
            getstatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.loggerExternal:Ljava/util/logging/Logger;
            new java.lang.StringBuilder
            dup
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.toString:()Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc " ActivityId: "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokestatic com.microsoft.sqlserver.jdbc.ActivityCorrelator.getNext:()Lcom/microsoft/sqlserver/jdbc/ActivityId;
            invokevirtual com.microsoft.sqlserver.jdbc.ActivityId.toString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.util.logging.Logger.finer:(Ljava/lang/String;)V
         2: .line 1508
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* catalog */
            aload 2 /* schemaPattern */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.getSchemasInternal:(Ljava/lang/String;Ljava/lang/String;)Ljava/sql/ResultSet;
            areturn
        end local 2 // java.lang.String schemaPattern
        end local 1 // java.lang.String catalog
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    3     0           this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
            0    3     1        catalog  Ljava/lang/String;
            0    3     2  schemaPattern  Ljava/lang/String;
    Exceptions:
      throws java.sql.SQLException
    MethodParameters:
               Name  Flags
      catalog        
      schemaPattern  

  public java.lang.String getSchemaTerm();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
         0: .line 1513
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         1: .line 1514
            ldc "schema"
            areturn
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException

  public java.lang.String getSearchStringEscape();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
         0: .line 1519
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         1: .line 1520
            ldc "\\"
            areturn
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException

  public java.lang.String getSQLKeywords();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
         0: .line 1525
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         1: .line 1526
            getstatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.SQL_KEYWORDS:Ljava/lang/String;
            areturn
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException

  private static java.lang.String createSqlKeyWords();
    descriptor: ()Ljava/lang/String;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 1530
            ldc "ADD,ALL,ALTER,AND,ANY,AS,ASC,AUTHORIZATION,BACKUP,BEGIN,BETWEEN,BREAK,BROWSE,BULK,BY,CASCADE,CASE,CHECK,CHECKPOINT,CLOSE,CLUSTERED,COALESCE,COLLATE,COLUMN,COMMIT,COMPUTE,CONSTRAINT,CONTAINS,CONTAINSTABLE,CONTINUE,CONVERT,CREATE,CROSS,CURRENT,CURRENT_DATE,CURRENT_TIME,CURRENT_TIMESTAMP,CURRENT_USER,CURSOR,DATABASE,DBCC,DEALLOCATE,DECLARE,DEFAULT,DELETE,DENY,DESC,DISK,DISTINCT,DISTRIBUTED,DOUBLE,DROP,DUMP,ELSE,END,ERRLVL,ESCAPE,EXCEPT,EXEC,EXECUTE,EXISTS,EXIT,EXTERNAL,FETCH,FILE,FILLFACTOR,FOR,FOREIGN,FREETEXT,FREETEXTTABLE,FROM,FULL,FUNCTION,GOTO,GRANT,GROUP,HAVING,HOLDLOCK,IDENTITY,IDENTITY_INSERT,IDENTITYCOL,IF,IN,INDEX,INNER,INSERT,INTERSECT,INTO,IS,JOIN,KEY,KILL,LEFT,LIKE,LINENO,LOAD,MERGE,NATIONAL,NOCHECK,NONCLUSTERED,NOT,NULL,NULLIF,OF,OFF,OFFSETS,ON,OPEN,OPENDATASOURCE,OPENQUERY,OPENROWSET,OPENXML,OPTION,OR,ORDER,OUTER,OVER,PERCENT,PIVOT,PLAN,PRECISION,PRIMARY,PRINT,PROC,PROCEDURE,PUBLIC,RAISERROR,READ,READTEXT,RECONFIGURE,REFERENCES,REPLICATION,RESTORE,RESTRICT,RETURN,REVERT,REVOKE,RIGHT,ROLLBACK,ROWCOUNT,ROWGUIDCOL,RULE,SAVE,SCHEMA,SECURITYAUDIT,SELECT,SEMANTICKEYPHRASETABLE,SEMANTICSIMILARITYDETAILSTABLE,SEMANTICSIMILARITYTABLE,SESSION_USER,SET,SETUSER,SHUTDOWN,SOME,STATISTICS,SYSTEM_USER,TABLE,TABLESAMPLE,TEXTSIZE,THEN,TO,TOP,TRAN,TRANSACTION,TRIGGER,TRUNCATE,TRY_CONVERT,TSEQUAL,UNION,UNIQUE,UNPIVOT,UPDATE,UPDATETEXT,USE,USER,VALUES,VARYING,VIEW,WAITFOR,WHEN,WHERE,WHILE,WITH,WITHIN GROUP,WRITETEXT"
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public java.lang.String getStringFunctions();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
         0: .line 1554
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         1: .line 1555
            ldc "ASCII,CHAR,CONCAT,DIFFERENCE,INSERT,LCASE,LEFT,LENGTH,LOCATE,LTRIM,REPEAT,REPLACE,RIGHT,RTRIM,SOUNDEX,SPACE,SUBSTRING,UCASE"
            areturn
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException

  public java.lang.String getSystemFunctions();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
         0: .line 1560
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         1: .line 1561
            ldc "DATABASE,IFNULL,USER"
            areturn
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException

  public java.sql.ResultSet getTablePrivileges(java.lang.String, java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/sql/ResultSet;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=5, args_size=4
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
        start local 1 // java.lang.String catalog
        start local 2 // java.lang.String schema
        start local 3 // java.lang.String table
         0: .line 1571
            getstatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.loggerExternal:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
            invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
            ifeq 2
            invokestatic com.microsoft.sqlserver.jdbc.Util.isActivityTraceOn:()Z
            ifeq 2
         1: .line 1572
            getstatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.loggerExternal:Ljava/util/logging/Logger;
            new java.lang.StringBuilder
            dup
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.toString:()Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc " ActivityId: "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokestatic com.microsoft.sqlserver.jdbc.ActivityCorrelator.getNext:()Lcom/microsoft/sqlserver/jdbc/ActivityId;
            invokevirtual com.microsoft.sqlserver.jdbc.ActivityId.toString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.util.logging.Logger.finer:(Ljava/lang/String;)V
         2: .line 1574
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         3: .line 1575
            aload 3 /* table */
            invokestatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.EscapeIDName:(Ljava/lang/String;)Ljava/lang/String;
            astore 3 /* table */
         4: .line 1576
            aload 2 /* schema */
            invokestatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.EscapeIDName:(Ljava/lang/String;)Ljava/lang/String;
            astore 2 /* schema */
         5: .line 1581
            iconst_3
            anewarray java.lang.String
            astore 4 /* arguments */
        start local 4 // java.lang.String[] arguments
         6: .line 1582
            aload 4 /* arguments */
            iconst_0
            aload 3 /* table */
            aastore
         7: .line 1583
            aload 4 /* arguments */
            iconst_1
            aload 2 /* schema */
            aastore
         8: .line 1584
            aload 4 /* arguments */
            iconst_2
            aload 1 /* catalog */
            aastore
         9: .line 1586
            aload 0 /* this */
            aload 1 /* catalog */
            getstatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData$CallableHandles.SP_TABLE_PRIVILEGES:Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData$CallableHandles;
            aload 4 /* arguments */
        10: .line 1587
            getstatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.getTablePrivilegesColumnNames:[Ljava/lang/String;
        11: .line 1586
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.getResultSetWithProvidedColumnNames:(Ljava/lang/String;Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData$CallableHandles;[Ljava/lang/String;[Ljava/lang/String;)Lcom/microsoft/sqlserver/jdbc/SQLServerResultSet;
            areturn
        end local 4 // java.lang.String[] arguments
        end local 3 // java.lang.String table
        end local 2 // java.lang.String schema
        end local 1 // java.lang.String catalog
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   12     0       this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
            0   12     1    catalog  Ljava/lang/String;
            0   12     2     schema  Ljava/lang/String;
            0   12     3      table  Ljava/lang/String;
            6   12     4  arguments  [Ljava/lang/String;
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException, java.sql.SQLTimeoutException
    MethodParameters:
         Name  Flags
      catalog  
      schema   
      table    

  public java.sql.ResultSet getTableTypes();
    descriptor: ()Ljava/sql/ResultSet;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=1
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
         0: .line 1592
            getstatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.loggerExternal:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
            invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
            ifeq 2
            invokestatic com.microsoft.sqlserver.jdbc.Util.isActivityTraceOn:()Z
            ifeq 2
         1: .line 1593
            getstatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.loggerExternal:Ljava/util/logging/Logger;
            new java.lang.StringBuilder
            dup
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.toString:()Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc " ActivityId: "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokestatic com.microsoft.sqlserver.jdbc.ActivityCorrelator.getNext:()Lcom/microsoft/sqlserver/jdbc/ActivityId;
            invokevirtual com.microsoft.sqlserver.jdbc.ActivityId.toString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.util.logging.Logger.finer:(Ljava/lang/String;)V
         2: .line 1595
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         3: .line 1596
            ldc "SELECT 'VIEW' 'TABLE_TYPE' UNION SELECT 'TABLE' UNION SELECT 'SYSTEM TABLE'"
            astore 1 /* s */
        start local 1 // java.lang.String s
         4: .line 1597
            aload 0 /* this */
            aconst_null
            aload 1 /* s */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.getResultSetFromInternalQueries:(Ljava/lang/String;Ljava/lang/String;)Lcom/microsoft/sqlserver/jdbc/SQLServerResultSet;
            astore 2 /* rs */
        start local 2 // com.microsoft.sqlserver.jdbc.SQLServerResultSet rs
         5: .line 1598
            aload 2 /* rs */
            areturn
        end local 2 // com.microsoft.sqlserver.jdbc.SQLServerResultSet rs
        end local 1 // java.lang.String s
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
            4    6     1     s  Ljava/lang/String;
            5    6     2    rs  Lcom/microsoft/sqlserver/jdbc/SQLServerResultSet;
    Exceptions:
      throws java.sql.SQLException, java.sql.SQLTimeoutException

  public java.lang.String getTimeDateFunctions();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
         0: .line 1603
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         1: .line 1604
            ldc "CURDATE,CURTIME,DAYNAME,DAYOFMONTH,DAYOFWEEK,DAYOFYEAR,HOUR,MINUTE,MONTH,MONTHNAME,NOW,QUARTER,SECOND,TIMESTAMPADD,TIMESTAMPDIFF,WEEK,YEAR"
            areturn
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException

  public java.sql.ResultSet getTypeInfo();
    descriptor: ()Ljava/sql/ResultSet;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=1
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
         0: .line 1609
            getstatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.loggerExternal:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
            invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
            ifeq 2
            invokestatic com.microsoft.sqlserver.jdbc.Util.isActivityTraceOn:()Z
            ifeq 2
         1: .line 1610
            getstatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.loggerExternal:Ljava/util/logging/Logger;
            new java.lang.StringBuilder
            dup
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.toString:()Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc " ActivityId: "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokestatic com.microsoft.sqlserver.jdbc.ActivityCorrelator.getNext:()Lcom/microsoft/sqlserver/jdbc/ActivityId;
            invokevirtual com.microsoft.sqlserver.jdbc.ActivityId.toString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.util.logging.Logger.finer:(Ljava/lang/String;)V
         2: .line 1612
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         3: .line 1616
            aload 0 /* this */
            getfield com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.connection:Lcom/microsoft/sqlserver/jdbc/SQLServerConnection;
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerConnection.isKatmaiOrLater:()Z
            ifeq 6
         4: .line 1617
            aload 0 /* this */
            aconst_null
            ldc "sp_datatype_info_100 @ODBCVer=3"
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.getResultSetFromInternalQueries:(Ljava/lang/String;Ljava/lang/String;)Lcom/microsoft/sqlserver/jdbc/SQLServerResultSet;
            astore 1 /* rs */
        start local 1 // com.microsoft.sqlserver.jdbc.SQLServerResultSet rs
         5: goto 7
        end local 1 // com.microsoft.sqlserver.jdbc.SQLServerResultSet rs
         6: .line 1619
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aconst_null
            ldc "sp_datatype_info @ODBCVer=3"
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.getResultSetFromInternalQueries:(Ljava/lang/String;Ljava/lang/String;)Lcom/microsoft/sqlserver/jdbc/SQLServerResultSet;
            astore 1 /* rs */
        start local 1 // com.microsoft.sqlserver.jdbc.SQLServerResultSet rs
         7: .line 1621
      StackMap locals: com.microsoft.sqlserver.jdbc.SQLServerResultSet
      StackMap stack:
            aload 1 /* rs */
            bipush 11
            ldc "FIXED_PREC_SCALE"
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerResultSet.setColumnName:(ILjava/lang/String;)V
         8: .line 1625
            aload 1 /* rs */
            iconst_2
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerResultSet.getColumn:(I)Lcom/microsoft/sqlserver/jdbc/Column;
            new com.microsoft.sqlserver.jdbc.DataTypeFilter
            dup
            invokespecial com.microsoft.sqlserver.jdbc.DataTypeFilter.<init>:()V
            invokevirtual com.microsoft.sqlserver.jdbc.Column.setFilter:(Lcom/microsoft/sqlserver/jdbc/ColumnFilter;)V
         9: .line 1626
            aload 1 /* rs */
            areturn
        end local 1 // com.microsoft.sqlserver.jdbc.SQLServerResultSet rs
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   10     0  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
            5    6     1    rs  Lcom/microsoft/sqlserver/jdbc/SQLServerResultSet;
            7   10     1    rs  Lcom/microsoft/sqlserver/jdbc/SQLServerResultSet;
    Exceptions:
      throws java.sql.SQLException, java.sql.SQLTimeoutException

  public java.lang.String getURL();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=10, args_size=1
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
         0: .line 1631
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         1: .line 1634
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            astore 1 /* url */
        start local 1 // java.lang.StringBuilder url
         2: .line 1636
            aload 0 /* this */
            getfield com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.connection:Lcom/microsoft/sqlserver/jdbc/SQLServerConnection;
            getfield com.microsoft.sqlserver.jdbc.SQLServerConnection.activeConnectionProperties:Ljava/util/Properties;
            astore 2 /* props */
        start local 2 // java.util.Properties props
         3: .line 1637
            aload 2 /* props */
            invokestatic com.microsoft.sqlserver.jdbc.SQLServerDriver.getPropertyInfoFromProperties:(Ljava/util/Properties;)[Ljava/sql/DriverPropertyInfo;
            astore 3 /* info */
        start local 3 // java.sql.DriverPropertyInfo[] info
         4: .line 1638
            aconst_null
            astore 4 /* serverName */
        start local 4 // java.lang.String serverName
         5: .line 1639
            aconst_null
            astore 5 /* portNumber */
        start local 5 // java.lang.String portNumber
         6: .line 1640
            aconst_null
            astore 6 /* instanceName */
        start local 6 // java.lang.String instanceName
         7: .line 1644
            aload 3 /* info */
            arraylength
            istore 7 /* index */
        start local 7 // int index
         8: .line 1645
            goto 29
         9: .line 1646
      StackMap locals: com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData java.lang.StringBuilder java.util.Properties java.sql.DriverPropertyInfo[] java.lang.String java.lang.String java.lang.String int
      StackMap stack:
            aload 3 /* info */
            iload 7 /* index */
            aaload
            getfield java.sql.DriverPropertyInfo.name:Ljava/lang/String;
            astore 8 /* name */
        start local 8 // java.lang.String name
        10: .line 1649
            aload 8 /* name */
            getstatic com.microsoft.sqlserver.jdbc.SQLServerDriverBooleanProperty.INTEGRATED_SECURITY:Lcom/microsoft/sqlserver/jdbc/SQLServerDriverBooleanProperty;
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDriverBooleanProperty.toString:()Ljava/lang/String;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 29
        11: .line 1650
            aload 8 /* name */
            getstatic com.microsoft.sqlserver.jdbc.SQLServerDriverStringProperty.USER:Lcom/microsoft/sqlserver/jdbc/SQLServerDriverStringProperty;
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDriverStringProperty.toString:()Ljava/lang/String;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 29
        12: .line 1651
            aload 8 /* name */
            getstatic com.microsoft.sqlserver.jdbc.SQLServerDriverStringProperty.PASSWORD:Lcom/microsoft/sqlserver/jdbc/SQLServerDriverStringProperty;
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDriverStringProperty.toString:()Ljava/lang/String;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 29
        13: .line 1652
            aload 8 /* name */
            getstatic com.microsoft.sqlserver.jdbc.SQLServerDriverStringProperty.KEY_STORE_SECRET:Lcom/microsoft/sqlserver/jdbc/SQLServerDriverStringProperty;
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDriverStringProperty.toString:()Ljava/lang/String;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 29
        14: .line 1653
            aload 3 /* info */
            iload 7 /* index */
            aaload
            getfield java.sql.DriverPropertyInfo.value:Ljava/lang/String;
            astore 9 /* val */
        start local 9 // java.lang.String val
        15: .line 1655
            aload 9 /* val */
            invokevirtual java.lang.String.length:()I
            ifeq 29
        16: .line 1658
            aload 8 /* name */
            getstatic com.microsoft.sqlserver.jdbc.SQLServerDriverStringProperty.SERVER_NAME:Lcom/microsoft/sqlserver/jdbc/SQLServerDriverStringProperty;
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDriverStringProperty.toString:()Ljava/lang/String;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 19
        17: .line 1659
            aload 9 /* val */
            astore 4 /* serverName */
        18: .line 1660
            goto 29
      StackMap locals: java.lang.String java.lang.String
      StackMap stack:
        19: aload 8 /* name */
            getstatic com.microsoft.sqlserver.jdbc.SQLServerDriverStringProperty.INSTANCE_NAME:Lcom/microsoft/sqlserver/jdbc/SQLServerDriverStringProperty;
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDriverStringProperty.toString:()Ljava/lang/String;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 22
        20: .line 1661
            aload 9 /* val */
            astore 6 /* instanceName */
        21: .line 1662
            goto 29
      StackMap locals:
      StackMap stack:
        22: aload 8 /* name */
            getstatic com.microsoft.sqlserver.jdbc.SQLServerDriverIntProperty.PORT_NUMBER:Lcom/microsoft/sqlserver/jdbc/SQLServerDriverIntProperty;
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDriverIntProperty.toString:()Ljava/lang/String;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 25
        23: .line 1663
            aload 9 /* val */
            astore 5 /* portNumber */
        24: .line 1664
            goto 29
        25: .line 1666
      StackMap locals:
      StackMap stack:
            aload 1 /* url */
            aload 8 /* name */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        26: .line 1667
            aload 1 /* url */
            ldc "="
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        27: .line 1668
            aload 1 /* url */
            aload 9 /* val */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        28: .line 1669
            aload 1 /* url */
            ldc ";"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        end local 9 // java.lang.String val
        end local 8 // java.lang.String name
        29: .line 1645
      StackMap locals:
      StackMap stack:
            iinc 7 /* index */ -1
            iload 7 /* index */
            ifge 9
        30: .line 1679
            aload 1 /* url */
            iconst_0
            ldc ";"
            invokevirtual java.lang.StringBuilder.insert:(ILjava/lang/String;)Ljava/lang/StringBuilder;
            pop
        31: .line 1680
            aload 1 /* url */
            iconst_0
            aload 5 /* portNumber */
            invokevirtual java.lang.StringBuilder.insert:(ILjava/lang/String;)Ljava/lang/StringBuilder;
            pop
        32: .line 1681
            aload 1 /* url */
            iconst_0
            ldc ":"
            invokevirtual java.lang.StringBuilder.insert:(ILjava/lang/String;)Ljava/lang/StringBuilder;
            pop
        33: .line 1682
            aload 6 /* instanceName */
            ifnull 36
        34: .line 1683
            aload 1 /* url */
            iconst_0
            aload 6 /* instanceName */
            invokevirtual java.lang.StringBuilder.insert:(ILjava/lang/String;)Ljava/lang/StringBuilder;
            pop
        35: .line 1684
            aload 1 /* url */
            iconst_0
            ldc "\\"
            invokevirtual java.lang.StringBuilder.insert:(ILjava/lang/String;)Ljava/lang/StringBuilder;
            pop
        36: .line 1686
      StackMap locals:
      StackMap stack:
            aload 1 /* url */
            iconst_0
            aload 4 /* serverName */
            invokevirtual java.lang.StringBuilder.insert:(ILjava/lang/String;)Ljava/lang/StringBuilder;
            pop
        37: .line 1688
            aload 1 /* url */
            iconst_0
            ldc "jdbc:sqlserver://"
            invokevirtual java.lang.StringBuilder.insert:(ILjava/lang/String;)Ljava/lang/StringBuilder;
            pop
        38: .line 1689
            aload 1 /* url */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 7 // int index
        end local 6 // java.lang.String instanceName
        end local 5 // java.lang.String portNumber
        end local 4 // java.lang.String serverName
        end local 3 // java.sql.DriverPropertyInfo[] info
        end local 2 // java.util.Properties props
        end local 1 // java.lang.StringBuilder url
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   39     0          this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
            2   39     1           url  Ljava/lang/StringBuilder;
            3   39     2         props  Ljava/util/Properties;
            4   39     3          info  [Ljava/sql/DriverPropertyInfo;
            5   39     4    serverName  Ljava/lang/String;
            6   39     5    portNumber  Ljava/lang/String;
            7   39     6  instanceName  Ljava/lang/String;
            8   39     7         index  I
           10   29     8          name  Ljava/lang/String;
           15   29     9           val  Ljava/lang/String;
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException

  public java.lang.String getUserName();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=7, args_size=1
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
         0: .line 1694
            getstatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.loggerExternal:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
            invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
            ifeq 2
            invokestatic com.microsoft.sqlserver.jdbc.Util.isActivityTraceOn:()Z
            ifeq 2
         1: .line 1695
            getstatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.loggerExternal:Ljava/util/logging/Logger;
            new java.lang.StringBuilder
            dup
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.toString:()Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc " ActivityId: "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokestatic com.microsoft.sqlserver.jdbc.ActivityCorrelator.getNext:()Lcom/microsoft/sqlserver/jdbc/ActivityId;
            invokevirtual com.microsoft.sqlserver.jdbc.ActivityId.toString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.util.logging.Logger.finer:(Ljava/lang/String;)V
         2: .line 1697
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         3: .line 1698
            ldc ""
            astore 1 /* result */
        start local 1 // java.lang.String result
         4: .line 1699
            aconst_null
            astore 2
            aconst_null
            astore 3
         5: aload 0 /* this */
            getfield com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.connection:Lcom/microsoft/sqlserver/jdbc/SQLServerConnection;
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerConnection.createStatement:()Ljava/sql/Statement;
            checkcast com.microsoft.sqlserver.jdbc.SQLServerStatement
            astore 4 /* s */
        start local 4 // com.microsoft.sqlserver.jdbc.SQLServerStatement s
         6: .line 1700
            aload 4 /* s */
            ldc "select system_user"
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerStatement.executeQueryInternal:(Ljava/lang/String;)Lcom/microsoft/sqlserver/jdbc/SQLServerResultSet;
            astore 5 /* rs */
        start local 5 // com.microsoft.sqlserver.jdbc.SQLServerResultSet rs
         7: .line 1702
            aload 5 /* rs */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerResultSet.next:()Z
            istore 6 /* next */
        start local 6 // boolean next
         8: .line 1703
            getstatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.$assertionsDisabled:Z
            ifne 9
            iload 6 /* next */
            ifne 9
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         9: .line 1704
      StackMap locals: com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData java.lang.String java.lang.Throwable java.lang.Throwable com.microsoft.sqlserver.jdbc.SQLServerStatement com.microsoft.sqlserver.jdbc.SQLServerResultSet int
      StackMap stack:
            aload 5 /* rs */
            iconst_1
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerResultSet.getString:(I)Ljava/lang/String;
            astore 1 /* result */
        end local 6 // boolean next
        10: .line 1705
            aload 5 /* rs */
            ifnull 13
            aload 5 /* rs */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerResultSet.close:()V
            goto 13
      StackMap locals: com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData java.lang.String java.lang.Throwable java.lang.Throwable com.microsoft.sqlserver.jdbc.SQLServerStatement com.microsoft.sqlserver.jdbc.SQLServerResultSet
      StackMap stack: java.lang.Throwable
        11: astore 2
            aload 5 /* rs */
            ifnull 12
            aload 5 /* rs */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerResultSet.close:()V
        end local 5 // com.microsoft.sqlserver.jdbc.SQLServerResultSet rs
      StackMap locals:
      StackMap stack:
        12: aload 2
            athrow
      StackMap locals:
      StackMap stack:
        13: aload 4 /* s */
            ifnull 21
            aload 4 /* s */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerStatement.close:()V
            goto 21
      StackMap locals:
      StackMap stack: java.lang.Throwable
        14: astore 3
            aload 2
            ifnonnull 15
            aload 3
            astore 2
            goto 16
      StackMap locals:
      StackMap stack:
        15: aload 2
            aload 3
            if_acmpeq 16
            aload 2
            aload 3
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        16: aload 4 /* s */
            ifnull 17
            aload 4 /* s */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerStatement.close:()V
        end local 4 // com.microsoft.sqlserver.jdbc.SQLServerStatement s
      StackMap locals:
      StackMap stack:
        17: aload 2
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
        18: astore 3
            aload 2
            ifnonnull 19
            aload 3
            astore 2
            goto 20
      StackMap locals:
      StackMap stack:
        19: aload 2
            aload 3
            if_acmpeq 20
            aload 2
            aload 3
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        20: aload 2
            athrow
        21: .line 1706
      StackMap locals:
      StackMap stack:
            aload 1 /* result */
            areturn
        end local 1 // java.lang.String result
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   22     0    this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
            4   22     1  result  Ljava/lang/String;
            6   17     4       s  Lcom/microsoft/sqlserver/jdbc/SQLServerStatement;
            7   12     5      rs  Lcom/microsoft/sqlserver/jdbc/SQLServerResultSet;
            8   10     6    next  Z
      Exception table:
        from    to  target  type
           7    10      11  any
           6    13      14  any
           5    18      18  any
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException, java.sql.SQLTimeoutException

  public java.sql.ResultSet getVersionColumns(java.lang.String, java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/sql/ResultSet;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=6, args_size=4
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
        start local 1 // java.lang.String catalog
        start local 2 // java.lang.String schema
        start local 3 // java.lang.String table
         0: .line 1716
            getstatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.loggerExternal:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
            invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
            ifeq 2
            invokestatic com.microsoft.sqlserver.jdbc.Util.isActivityTraceOn:()Z
            ifeq 2
         1: .line 1717
            getstatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.loggerExternal:Ljava/util/logging/Logger;
            new java.lang.StringBuilder
            dup
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.toString:()Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc " ActivityId: "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokestatic com.microsoft.sqlserver.jdbc.ActivityCorrelator.getNext:()Lcom/microsoft/sqlserver/jdbc/ActivityId;
            invokevirtual com.microsoft.sqlserver.jdbc.ActivityId.toString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.util.logging.Logger.finer:(Ljava/lang/String;)V
         2: .line 1719
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         3: .line 1725
            bipush 7
            anewarray java.lang.String
            astore 4 /* arguments */
        start local 4 // java.lang.String[] arguments
         4: .line 1726
            aload 4 /* arguments */
            iconst_0
            aload 3 /* table */
            aastore
         5: .line 1727
            aload 4 /* arguments */
            iconst_1
            aload 2 /* schema */
            aastore
         6: .line 1728
            aload 4 /* arguments */
            iconst_2
            aload 1 /* catalog */
            aastore
         7: .line 1729
            aload 4 /* arguments */
            iconst_3
            ldc "V"
            aastore
         8: .line 1730
            aload 4 /* arguments */
            iconst_4
            ldc "T"
            aastore
         9: .line 1731
            aload 4 /* arguments */
            iconst_5
            ldc "U"
            aastore
        10: .line 1732
            aload 4 /* arguments */
            bipush 6
            ldc "3"
            aastore
        11: .line 1733
            aload 0 /* this */
            aload 1 /* catalog */
            getstatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData$CallableHandles.SP_SPECIAL_COLUMNS:Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData$CallableHandles;
        12: .line 1734
            aload 4 /* arguments */
            getstatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.getVersionColumnsColumnNames:[Ljava/lang/String;
        13: .line 1733
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.getResultSetWithProvidedColumnNames:(Ljava/lang/String;Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData$CallableHandles;[Ljava/lang/String;[Ljava/lang/String;)Lcom/microsoft/sqlserver/jdbc/SQLServerResultSet;
            astore 5 /* rs */
        start local 5 // com.microsoft.sqlserver.jdbc.SQLServerResultSet rs
        14: .line 1739
            aload 5 /* rs */
            iconst_3
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerResultSet.getColumn:(I)Lcom/microsoft/sqlserver/jdbc/Column;
            new com.microsoft.sqlserver.jdbc.DataTypeFilter
            dup
            invokespecial com.microsoft.sqlserver.jdbc.DataTypeFilter.<init>:()V
            invokevirtual com.microsoft.sqlserver.jdbc.Column.setFilter:(Lcom/microsoft/sqlserver/jdbc/ColumnFilter;)V
        15: .line 1740
            aload 5 /* rs */
            areturn
        end local 5 // com.microsoft.sqlserver.jdbc.SQLServerResultSet rs
        end local 4 // java.lang.String[] arguments
        end local 3 // java.lang.String table
        end local 2 // java.lang.String schema
        end local 1 // java.lang.String catalog
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   16     0       this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
            0   16     1    catalog  Ljava/lang/String;
            0   16     2     schema  Ljava/lang/String;
            0   16     3      table  Ljava/lang/String;
            4   16     4  arguments  [Ljava/lang/String;
           14   16     5         rs  Lcom/microsoft/sqlserver/jdbc/SQLServerResultSet;
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException, java.sql.SQLTimeoutException
    MethodParameters:
         Name  Flags
      catalog  
      schema   
      table    

  public boolean isCatalogAtStart();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
         0: .line 1745
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         1: .line 1746
            iconst_1
            ireturn
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException

  public boolean isReadOnly();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
         0: .line 1751
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         1: .line 1752
            iconst_0
            ireturn
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException

  public boolean nullPlusNonNullIsNull();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
         0: .line 1757
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         1: .line 1758
            iconst_1
            ireturn
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException

  public boolean nullsAreSortedAtEnd();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
         0: .line 1763
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         1: .line 1764
            iconst_0
            ireturn
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException

  public boolean nullsAreSortedAtStart();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
         0: .line 1769
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         1: .line 1770
            iconst_0
            ireturn
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException

  public boolean nullsAreSortedHigh();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
         0: .line 1775
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         1: .line 1776
            iconst_0
            ireturn
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException

  public boolean nullsAreSortedLow();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
         0: .line 1781
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         1: .line 1782
            iconst_1
            ireturn
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException

  public boolean storesLowerCaseIdentifiers();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
         0: .line 1787
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         1: .line 1788
            iconst_0
            ireturn
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException

  public boolean storesLowerCaseQuotedIdentifiers();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
         0: .line 1793
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         1: .line 1794
            iconst_0
            ireturn
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException

  public boolean storesMixedCaseIdentifiers();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
         0: .line 1799
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         1: .line 1800
            iconst_1
            ireturn
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException

  public boolean storesMixedCaseQuotedIdentifiers();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
         0: .line 1805
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         1: .line 1806
            iconst_1
            ireturn
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException

  public boolean storesUpperCaseIdentifiers();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
         0: .line 1811
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         1: .line 1812
            iconst_0
            ireturn
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException

  public boolean storesUpperCaseQuotedIdentifiers();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
         0: .line 1817
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         1: .line 1818
            iconst_0
            ireturn
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException

  public boolean supportsAlterTableWithAddColumn();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
         0: .line 1823
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         1: .line 1824
            iconst_1
            ireturn
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException

  public boolean supportsAlterTableWithDropColumn();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
         0: .line 1829
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         1: .line 1830
            iconst_1
            ireturn
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException

  public boolean supportsANSI92EntryLevelSQL();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
         0: .line 1835
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         1: .line 1836
            iconst_1
            ireturn
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException

  public boolean supportsANSI92FullSQL();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
         0: .line 1841
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         1: .line 1842
            iconst_0
            ireturn
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException

  public boolean supportsANSI92IntermediateSQL();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
         0: .line 1847
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         1: .line 1848
            iconst_0
            ireturn
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException

  public boolean supportsCatalogsInDataManipulation();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
         0: .line 1853
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         1: .line 1854
            iconst_1
            ireturn
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException

  public boolean supportsCatalogsInIndexDefinitions();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
         0: .line 1859
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         1: .line 1860
            iconst_1
            ireturn
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException

  public boolean supportsCatalogsInPrivilegeDefinitions();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
         0: .line 1865
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         1: .line 1866
            iconst_1
            ireturn
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException

  public boolean supportsCatalogsInProcedureCalls();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
         0: .line 1871
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         1: .line 1872
            iconst_1
            ireturn
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException

  public boolean supportsCatalogsInTableDefinitions();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
         0: .line 1877
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         1: .line 1878
            iconst_1
            ireturn
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException

  public boolean supportsColumnAliasing();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
         0: .line 1883
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         1: .line 1884
            iconst_1
            ireturn
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException

  public boolean supportsConvert();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
         0: .line 1889
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         1: .line 1890
            iconst_1
            ireturn
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException

  public boolean supportsConvert(int, int);
    descriptor: (II)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=3, args_size=3
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
        start local 1 // int fromType
        start local 2 // int toType
         0: .line 1895
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         1: .line 1896
            iconst_1
            ireturn
        end local 2 // int toType
        end local 1 // int fromType
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    2     0      this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
            0    2     1  fromType  I
            0    2     2    toType  I
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException
    MethodParameters:
          Name  Flags
      fromType  
      toType    

  public boolean supportsCoreSQLGrammar();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
         0: .line 1901
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         1: .line 1902
            iconst_1
            ireturn
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException

  public boolean supportsCorrelatedSubqueries();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
         0: .line 1907
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         1: .line 1908
            iconst_1
            ireturn
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException

  public boolean supportsDataDefinitionAndDataManipulationTransactions();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
         0: .line 1913
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         1: .line 1914
            iconst_1
            ireturn
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException

  public boolean supportsDataManipulationTransactionsOnly();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
         0: .line 1919
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         1: .line 1920
            iconst_0
            ireturn
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException

  public boolean supportsDifferentTableCorrelationNames();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
         0: .line 1925
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         1: .line 1926
            iconst_0
            ireturn
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException

  public boolean supportsExpressionsInOrderBy();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
         0: .line 1931
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         1: .line 1932
            iconst_1
            ireturn
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException

  public boolean supportsExtendedSQLGrammar();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
         0: .line 1937
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         1: .line 1938
            iconst_0
            ireturn
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException

  public boolean supportsFullOuterJoins();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
         0: .line 1943
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         1: .line 1944
            iconst_1
            ireturn
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException

  public boolean supportsGroupBy();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
         0: .line 1949
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         1: .line 1950
            iconst_1
            ireturn
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException

  public boolean supportsGroupByBeyondSelect();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
         0: .line 1955
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         1: .line 1956
            iconst_1
            ireturn
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException

  public boolean supportsGroupByUnrelated();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
         0: .line 1961
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         1: .line 1962
            iconst_1
            ireturn
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException

  public boolean supportsIntegrityEnhancementFacility();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
         0: .line 1967
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         1: .line 1968
            iconst_0
            ireturn
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException

  public boolean supportsLikeEscapeClause();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
         0: .line 1973
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         1: .line 1974
            iconst_1
            ireturn
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException

  public boolean supportsLimitedOuterJoins();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
         0: .line 1979
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         1: .line 1980
            iconst_1
            ireturn
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException

  public boolean supportsMinimumSQLGrammar();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
         0: .line 1985
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         1: .line 1986
            iconst_1
            ireturn
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException

  public boolean supportsMixedCaseIdentifiers();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
         0: .line 1991
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         1: .line 1992
            iconst_1
            ireturn
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException

  public boolean supportsMixedCaseQuotedIdentifiers();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
         0: .line 1997
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         1: .line 1998
            iconst_1
            ireturn
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException

  public boolean supportsMultipleResultSets();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
         0: .line 2003
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         1: .line 2004
            iconst_1
            ireturn
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException

  public boolean supportsMultipleTransactions();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
         0: .line 2009
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         1: .line 2010
            iconst_1
            ireturn
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException

  public boolean supportsNonNullableColumns();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
         0: .line 2015
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         1: .line 2016
            iconst_1
            ireturn
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException

  public boolean supportsOpenCursorsAcrossCommit();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
         0: .line 2021
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         1: .line 2022
            iconst_0
            ireturn
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException

  public boolean supportsOpenCursorsAcrossRollback();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
         0: .line 2027
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         1: .line 2028
            iconst_0
            ireturn
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException

  public boolean supportsOpenStatementsAcrossCommit();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
         0: .line 2033
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         1: .line 2034
            iconst_1
            ireturn
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException

  public boolean supportsOpenStatementsAcrossRollback();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
         0: .line 2039
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         1: .line 2040
            iconst_1
            ireturn
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException

  public boolean supportsOrderByUnrelated();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
         0: .line 2045
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         1: .line 2046
            iconst_1
            ireturn
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException

  public boolean supportsOuterJoins();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
         0: .line 2051
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         1: .line 2052
            iconst_1
            ireturn
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException

  public boolean supportsPositionedDelete();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
         0: .line 2057
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         1: .line 2058
            iconst_1
            ireturn
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException

  public boolean supportsPositionedUpdate();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
         0: .line 2063
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         1: .line 2064
            iconst_1
            ireturn
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException

  public boolean supportsSchemasInDataManipulation();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
         0: .line 2069
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         1: .line 2070
            iconst_1
            ireturn
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException

  public boolean supportsSchemasInIndexDefinitions();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
         0: .line 2075
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         1: .line 2076
            iconst_1
            ireturn
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException

  public boolean supportsSchemasInPrivilegeDefinitions();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
         0: .line 2081
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         1: .line 2082
            iconst_1
            ireturn
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException

  public boolean supportsSchemasInProcedureCalls();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
         0: .line 2087
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         1: .line 2088
            iconst_1
            ireturn
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException

  public boolean supportsSchemasInTableDefinitions();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
         0: .line 2093
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         1: .line 2094
            iconst_1
            ireturn
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException

  public boolean supportsSelectForUpdate();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
         0: .line 2099
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         1: .line 2100
            iconst_0
            ireturn
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException

  public boolean supportsStoredProcedures();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
         0: .line 2105
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         1: .line 2106
            iconst_1
            ireturn
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException

  public boolean supportsSubqueriesInComparisons();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
         0: .line 2111
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         1: .line 2112
            iconst_1
            ireturn
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException

  public boolean supportsSubqueriesInExists();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
         0: .line 2117
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         1: .line 2118
            iconst_1
            ireturn
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException

  public boolean supportsSubqueriesInIns();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
         0: .line 2123
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         1: .line 2124
            iconst_1
            ireturn
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException

  public boolean supportsSubqueriesInQuantifieds();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
         0: .line 2129
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         1: .line 2130
            iconst_1
            ireturn
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException

  public boolean supportsTableCorrelationNames();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
         0: .line 2135
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         1: .line 2136
            iconst_1
            ireturn
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException

  public boolean supportsTransactionIsolationLevel(int);
    descriptor: (I)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
        start local 1 // int level
         0: .line 2141
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         1: .line 2142
            iload 1 /* level */
            lookupswitch { // 5
                    1: 2
                    2: 2
                    4: 2
                    8: 2
                 4096: 2
              default: 3
          }
         2: .line 2148
      StackMap locals:
      StackMap stack:
            iconst_1
            ireturn
         3: .line 2150
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 1 // int level
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    4     0   this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
            0    4     1  level  I
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException
    MethodParameters:
       Name  Flags
      level  

  public boolean supportsTransactions();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
         0: .line 2155
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         1: .line 2156
            iconst_1
            ireturn
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException

  public boolean supportsUnion();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
         0: .line 2161
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         1: .line 2162
            iconst_1
            ireturn
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException

  public boolean supportsUnionAll();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
         0: .line 2167
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         1: .line 2168
            iconst_1
            ireturn
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException

  public boolean usesLocalFilePerTable();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
         0: .line 2173
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         1: .line 2174
            iconst_0
            ireturn
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException

  public boolean usesLocalFiles();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
         0: .line 2179
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         1: .line 2180
            iconst_0
            ireturn
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException

  public boolean supportsResultSetType(int);
    descriptor: (I)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
        start local 1 // int type
         0: .line 2185
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         1: .line 2186
            aload 0 /* this */
            iload 1 /* type */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkResultType:(I)V
         2: .line 2187
            iload 1 /* type */
            lookupswitch { // 6
                 1003: 3
                 1004: 3
                 1005: 3
                 1006: 3
                 2003: 3
                 2004: 3
              default: 4
          }
         3: .line 2198
      StackMap locals:
      StackMap stack:
            iconst_1
            ireturn
         4: .line 2200
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 1 // int type
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
            0    5     1  type  I
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException
    MethodParameters:
      Name  Flags
      type  

  public boolean supportsResultSetConcurrency(int, int);
    descriptor: (II)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
        start local 1 // int type
        start local 2 // int concurrency
         0: .line 2205
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         1: .line 2206
            aload 0 /* this */
            iload 1 /* type */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkResultType:(I)V
         2: .line 2207
            aload 0 /* this */
            iload 2 /* concurrency */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkConcurrencyType:(I)V
         3: .line 2208
            iload 1 /* type */
            lookupswitch { // 6
                 1003: 4
                 1004: 5
                 1005: 4
                 1006: 4
                 2003: 5
                 2004: 4
              default: 7
          }
         4: .line 2215
      StackMap locals:
      StackMap stack:
            iconst_1
            ireturn
         5: .line 2220
      StackMap locals:
      StackMap stack:
            sipush 1007
            iload 2 /* concurrency */
            if_icmpne 6
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         6: iconst_0
            ireturn
         7: .line 2223
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 2 // int concurrency
        end local 1 // int type
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    8     0         this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
            0    8     1         type  I
            0    8     2  concurrency  I
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException
    MethodParameters:
             Name  Flags
      type         
      concurrency  

  public boolean ownUpdatesAreVisible(int);
    descriptor: (I)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
        start local 1 // int type
         0: .line 2228
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         1: .line 2229
            aload 0 /* this */
            iload 1 /* type */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkResultType:(I)V
         2: .line 2230
            iload 1 /* type */
            sipush 1006
            if_icmpeq 6
            sipush 1003
            iload 1 /* type */
            if_icmpeq 6
         3: .line 2231
            sipush 1005
            iload 1 /* type */
            if_icmpeq 6
            sipush 1005
            iload 1 /* type */
            if_icmpeq 6
         4: .line 2232
            sipush 2004
            iload 1 /* type */
            if_icmpeq 6
         5: .line 2230
            iconst_0
            ireturn
      StackMap locals:
      StackMap stack:
         6: iconst_1
            ireturn
        end local 1 // int type
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
            0    7     1  type  I
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException
    MethodParameters:
      Name  Flags
      type  

  public boolean ownDeletesAreVisible(int);
    descriptor: (I)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
        start local 1 // int type
         0: .line 2237
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         1: .line 2238
            aload 0 /* this */
            iload 1 /* type */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkResultType:(I)V
         2: .line 2239
            iload 1 /* type */
            sipush 1006
            if_icmpeq 6
            sipush 1003
            iload 1 /* type */
            if_icmpeq 6
         3: .line 2240
            sipush 1005
            iload 1 /* type */
            if_icmpeq 6
            sipush 1005
            iload 1 /* type */
            if_icmpeq 6
         4: .line 2241
            sipush 2004
            iload 1 /* type */
            if_icmpeq 6
         5: .line 2239
            iconst_0
            ireturn
      StackMap locals:
      StackMap stack:
         6: iconst_1
            ireturn
        end local 1 // int type
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
            0    7     1  type  I
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException
    MethodParameters:
      Name  Flags
      type  

  public boolean ownInsertsAreVisible(int);
    descriptor: (I)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
        start local 1 // int type
         0: .line 2246
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         1: .line 2247
            aload 0 /* this */
            iload 1 /* type */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkResultType:(I)V
         2: .line 2248
            iload 1 /* type */
            sipush 1006
            if_icmpeq 6
            sipush 1003
            iload 1 /* type */
            if_icmpeq 6
         3: .line 2249
            sipush 1005
            iload 1 /* type */
            if_icmpeq 6
            sipush 1005
            iload 1 /* type */
            if_icmpeq 6
         4: .line 2250
            sipush 2004
            iload 1 /* type */
            if_icmpeq 6
         5: .line 2248
            iconst_0
            ireturn
      StackMap locals:
      StackMap stack:
         6: iconst_1
            ireturn
        end local 1 // int type
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
            0    7     1  type  I
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException
    MethodParameters:
      Name  Flags
      type  

  public boolean othersUpdatesAreVisible(int);
    descriptor: (I)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
        start local 1 // int type
         0: .line 2255
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         1: .line 2256
            aload 0 /* this */
            iload 1 /* type */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkResultType:(I)V
         2: .line 2257
            iload 1 /* type */
            sipush 1006
            if_icmpeq 6
            sipush 1003
            iload 1 /* type */
            if_icmpeq 6
         3: .line 2258
            sipush 1005
            iload 1 /* type */
            if_icmpeq 6
            sipush 1005
            iload 1 /* type */
            if_icmpeq 6
         4: .line 2259
            sipush 2004
            iload 1 /* type */
            if_icmpeq 6
         5: .line 2257
            iconst_0
            ireturn
      StackMap locals:
      StackMap stack:
         6: iconst_1
            ireturn
        end local 1 // int type
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
            0    7     1  type  I
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException
    MethodParameters:
      Name  Flags
      type  

  public boolean othersDeletesAreVisible(int);
    descriptor: (I)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
        start local 1 // int type
         0: .line 2264
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         1: .line 2265
            aload 0 /* this */
            iload 1 /* type */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkResultType:(I)V
         2: .line 2266
            iload 1 /* type */
            sipush 1006
            if_icmpeq 6
            sipush 1003
            iload 1 /* type */
            if_icmpeq 6
         3: .line 2267
            sipush 1005
            iload 1 /* type */
            if_icmpeq 6
            sipush 1005
            iload 1 /* type */
            if_icmpeq 6
         4: .line 2268
            sipush 2004
            iload 1 /* type */
            if_icmpeq 6
         5: .line 2266
            iconst_0
            ireturn
      StackMap locals:
      StackMap stack:
         6: iconst_1
            ireturn
        end local 1 // int type
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
            0    7     1  type  I
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException
    MethodParameters:
      Name  Flags
      type  

  public boolean othersInsertsAreVisible(int);
    descriptor: (I)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
        start local 1 // int type
         0: .line 2273
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         1: .line 2274
            aload 0 /* this */
            iload 1 /* type */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkResultType:(I)V
         2: .line 2275
            iload 1 /* type */
            sipush 1006
            if_icmpeq 5
            sipush 1003
            iload 1 /* type */
            if_icmpeq 5
         3: .line 2276
            sipush 2004
            iload 1 /* type */
            if_icmpeq 5
         4: .line 2275
            iconst_0
            ireturn
      StackMap locals:
      StackMap stack:
         5: iconst_1
            ireturn
        end local 1 // int type
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
            0    6     1  type  I
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException
    MethodParameters:
      Name  Flags
      type  

  public boolean updatesAreDetected(int);
    descriptor: (I)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
        start local 1 // int type
         0: .line 2281
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         1: .line 2282
            aload 0 /* this */
            iload 1 /* type */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkResultType:(I)V
         2: .line 2283
            iconst_0
            ireturn
        end local 1 // int type
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
            0    3     1  type  I
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException
    MethodParameters:
      Name  Flags
      type  

  public boolean deletesAreDetected(int);
    descriptor: (I)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
        start local 1 // int type
         0: .line 2288
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         1: .line 2289
            aload 0 /* this */
            iload 1 /* type */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkResultType:(I)V
         2: .line 2290
            sipush 1005
            iload 1 /* type */
            if_icmpne 3
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         3: iconst_0
            ireturn
        end local 1 // int type
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
            0    4     1  type  I
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException
    MethodParameters:
      Name  Flags
      type  

  private void checkResultType(int);
    descriptor: (I)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=7, locals=4, args_size=2
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
        start local 1 // int type
         0: .line 2295
            iload 1 /* type */
            lookupswitch { // 6
                 1003: 1
                 1004: 1
                 1005: 1
                 1006: 1
                 2003: 1
                 2004: 1
              default: 2
          }
         1: .line 2306
      StackMap locals:
      StackMap stack:
            return
         2: .line 2309
      StackMap locals:
      StackMap stack:
            new java.text.MessageFormat
            dup
            ldc "R_invalidArgument"
            invokestatic com.microsoft.sqlserver.jdbc.SQLServerException.getErrString:(Ljava/lang/String;)Ljava/lang/String;
            invokespecial java.text.MessageFormat.<init>:(Ljava/lang/String;)V
            astore 2 /* form */
        start local 2 // java.text.MessageFormat form
         3: .line 2310
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            iload 1 /* type */
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            astore 3 /* msgArgs */
        start local 3 // java.lang.Object[] msgArgs
         4: .line 2311
            new com.microsoft.sqlserver.jdbc.SQLServerException
            dup
            aconst_null
            aload 2 /* form */
            aload 3 /* msgArgs */
            invokevirtual java.text.MessageFormat.format:(Ljava/lang/Object;)Ljava/lang/String;
            aconst_null
            iconst_0
            iconst_1
            invokespecial com.microsoft.sqlserver.jdbc.SQLServerException.<init>:(Ljava/lang/Object;Ljava/lang/String;Ljava/lang/String;IZ)V
            athrow
        end local 3 // java.lang.Object[] msgArgs
        end local 2 // java.text.MessageFormat form
        end local 1 // int type
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    5     0     this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
            0    5     1     type  I
            3    5     2     form  Ljava/text/MessageFormat;
            4    5     3  msgArgs  [Ljava/lang/Object;
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException
    MethodParameters:
      Name  Flags
      type  

  private void checkConcurrencyType(int);
    descriptor: (I)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=7, locals=4, args_size=2
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
        start local 1 // int type
         0: .line 2317
            iload 1 /* type */
            tableswitch { // 1007 - 1010
                 1007: 1
                 1008: 1
                 1009: 1
                 1010: 1
              default: 2
          }
         1: .line 2324
      StackMap locals:
      StackMap stack:
            return
         2: .line 2327
      StackMap locals:
      StackMap stack:
            new java.text.MessageFormat
            dup
            ldc "R_invalidArgument"
            invokestatic com.microsoft.sqlserver.jdbc.SQLServerException.getErrString:(Ljava/lang/String;)Ljava/lang/String;
            invokespecial java.text.MessageFormat.<init>:(Ljava/lang/String;)V
            astore 2 /* form */
        start local 2 // java.text.MessageFormat form
         3: .line 2328
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            iload 1 /* type */
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            astore 3 /* msgArgs */
        start local 3 // java.lang.Object[] msgArgs
         4: .line 2329
            new com.microsoft.sqlserver.jdbc.SQLServerException
            dup
            aconst_null
            aload 2 /* form */
            aload 3 /* msgArgs */
            invokevirtual java.text.MessageFormat.format:(Ljava/lang/Object;)Ljava/lang/String;
            aconst_null
            iconst_0
            iconst_1
            invokespecial com.microsoft.sqlserver.jdbc.SQLServerException.<init>:(Ljava/lang/Object;Ljava/lang/String;Ljava/lang/String;IZ)V
            athrow
        end local 3 // java.lang.Object[] msgArgs
        end local 2 // java.text.MessageFormat form
        end local 1 // int type
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    5     0     this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
            0    5     1     type  I
            3    5     2     form  Ljava/text/MessageFormat;
            4    5     3  msgArgs  [Ljava/lang/Object;
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException
    MethodParameters:
      Name  Flags
      type  

  public boolean insertsAreDetected(int);
    descriptor: (I)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
        start local 1 // int type
         0: .line 2334
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         1: .line 2335
            aload 0 /* this */
            iload 1 /* type */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkResultType:(I)V
         2: .line 2336
            iconst_0
            ireturn
        end local 1 // int type
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
            0    3     1  type  I
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException
    MethodParameters:
      Name  Flags
      type  

  public boolean supportsBatchUpdates();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
         0: .line 2341
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         1: .line 2342
            iconst_1
            ireturn
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException

  public java.sql.ResultSet getUDTs(java.lang.String, java.lang.String, java.lang.String, int[]);
    descriptor: (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;[I)Ljava/sql/ResultSet;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=5, args_size=5
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
        start local 1 // java.lang.String catalog
        start local 2 // java.lang.String schemaPattern
        start local 3 // java.lang.String typeNamePattern
        start local 4 // int[] types
         0: .line 2348
            getstatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.loggerExternal:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
            invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
            ifeq 2
            invokestatic com.microsoft.sqlserver.jdbc.Util.isActivityTraceOn:()Z
            ifeq 2
         1: .line 2349
            getstatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.loggerExternal:Ljava/util/logging/Logger;
            new java.lang.StringBuilder
            dup
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.toString:()Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc " ActivityId: "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokestatic com.microsoft.sqlserver.jdbc.ActivityCorrelator.getNext:()Lcom/microsoft/sqlserver/jdbc/ActivityId;
            invokevirtual com.microsoft.sqlserver.jdbc.ActivityId.toString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.util.logging.Logger.finer:(Ljava/lang/String;)V
         2: .line 2351
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         3: .line 2352
            aload 0 /* this */
            aload 1 /* catalog */
            ldc "SELECT cast(NULL as char(1)) as TYPE_CAT, cast(NULL as char(1)) as TYPE_SCHEM, cast(NULL as char(1)) as TYPE_NAME, cast(NULL as char(1)) as CLASS_NAME, cast(0 as int) as DATA_TYPE, cast(NULL as char(1)) as REMARKS, cast(0 as smallint) as BASE_TYPE where 0 = 1"
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.getResultSetFromInternalQueries:(Ljava/lang/String;Ljava/lang/String;)Lcom/microsoft/sqlserver/jdbc/SQLServerResultSet;
            areturn
        end local 4 // int[] types
        end local 3 // java.lang.String typeNamePattern
        end local 2 // java.lang.String schemaPattern
        end local 1 // java.lang.String catalog
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0    4     0             this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
            0    4     1          catalog  Ljava/lang/String;
            0    4     2    schemaPattern  Ljava/lang/String;
            0    4     3  typeNamePattern  Ljava/lang/String;
            0    4     4            types  [I
    Exceptions:
      throws java.sql.SQLException, java.sql.SQLTimeoutException
    MethodParameters:
                 Name  Flags
      catalog          
      schemaPattern    
      typeNamePattern  
      types            

  public java.sql.Connection getConnection();
    descriptor: ()Ljava/sql/Connection;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
         0: .line 2364
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         1: .line 2365
            aload 0 /* this */
            getfield com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.connection:Lcom/microsoft/sqlserver/jdbc/SQLServerConnection;
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerConnection.getConnection:()Ljava/sql/Connection;
            areturn
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException

  public int getSQLStateType();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
         0: .line 2372
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         1: .line 2373
            aload 0 /* this */
            getfield com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.connection:Lcom/microsoft/sqlserver/jdbc/SQLServerConnection;
            ifnull 3
            aload 0 /* this */
            getfield com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.connection:Lcom/microsoft/sqlserver/jdbc/SQLServerConnection;
            getfield com.microsoft.sqlserver.jdbc.SQLServerConnection.xopenStates:Z
            ifeq 3
         2: .line 2374
            iconst_1
            ireturn
         3: .line 2376
      StackMap locals:
      StackMap stack:
            iconst_2
            ireturn
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException

  public int getDatabaseMajorVersion();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=1
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
         0: .line 2381
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         1: .line 2382
            aload 0 /* this */
            getfield com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.connection:Lcom/microsoft/sqlserver/jdbc/SQLServerConnection;
            getfield com.microsoft.sqlserver.jdbc.SQLServerConnection.sqlServerVersion:Ljava/lang/String;
            astore 1 /* s */
        start local 1 // java.lang.String s
         2: .line 2383
            aload 1 /* s */
            bipush 46
            invokevirtual java.lang.String.indexOf:(I)I
            istore 2 /* p */
        start local 2 // int p
         3: .line 2384
            iload 2 /* p */
            ifle 5
         4: .line 2385
            aload 1 /* s */
            iconst_0
            iload 2 /* p */
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            astore 1 /* s */
         5: .line 2387
      StackMap locals: java.lang.String int
      StackMap stack:
            aload 1 /* s */
            invokestatic java.lang.Integer.parseInt:(Ljava/lang/String;)I
         6: ireturn
         7: .line 2388
      StackMap locals:
      StackMap stack: java.lang.NumberFormatException
            pop
         8: .line 2389
            iconst_0
            ireturn
        end local 2 // int p
        end local 1 // java.lang.String s
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    9     0  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
            2    9     1     s  Ljava/lang/String;
            3    9     2     p  I
      Exception table:
        from    to  target  type
           5     6       7  Class java.lang.NumberFormatException
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException

  public int getDatabaseMinorVersion();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=1
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
         0: .line 2395
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         1: .line 2396
            aload 0 /* this */
            getfield com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.connection:Lcom/microsoft/sqlserver/jdbc/SQLServerConnection;
            getfield com.microsoft.sqlserver.jdbc.SQLServerConnection.sqlServerVersion:Ljava/lang/String;
            astore 1 /* s */
        start local 1 // java.lang.String s
         2: .line 2397
            aload 1 /* s */
            bipush 46
            invokevirtual java.lang.String.indexOf:(I)I
            istore 2 /* p */
        start local 2 // int p
         3: .line 2398
            aload 1 /* s */
            bipush 46
            iload 2 /* p */
            iconst_1
            iadd
            invokevirtual java.lang.String.indexOf:(II)I
            istore 3 /* q */
        start local 3 // int q
         4: .line 2399
            iload 2 /* p */
            ifle 6
            iload 3 /* q */
            ifle 6
         5: .line 2400
            aload 1 /* s */
            iload 2 /* p */
            iconst_1
            iadd
            iload 3 /* q */
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            astore 1 /* s */
         6: .line 2402
      StackMap locals: java.lang.String int int
      StackMap stack:
            aload 1 /* s */
            invokestatic java.lang.Integer.parseInt:(Ljava/lang/String;)I
         7: ireturn
         8: .line 2403
      StackMap locals:
      StackMap stack: java.lang.NumberFormatException
            pop
         9: .line 2404
            iconst_0
            ireturn
        end local 3 // int q
        end local 2 // int p
        end local 1 // java.lang.String s
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   10     0  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
            2   10     1     s  Ljava/lang/String;
            3   10     2     p  I
            4   10     3     q  I
      Exception table:
        from    to  target  type
           6     7       8  Class java.lang.NumberFormatException
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException

  public int getJDBCMajorVersion();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
         0: .line 2410
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         1: .line 2411
            iconst_4
            ireturn
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException

  public int getJDBCMinorVersion();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
         0: .line 2416
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         1: .line 2417
            iconst_2
            ireturn
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException

  public int getResultSetHoldability();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
         0: .line 2422
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         1: .line 2423
            iconst_1
            ireturn
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException

  public java.sql.RowIdLifetime getRowIdLifetime();
    descriptor: ()Ljava/sql/RowIdLifetime;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
         0: .line 2429
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         1: .line 2430
            getstatic java.sql.RowIdLifetime.ROWID_UNSUPPORTED:Ljava/sql/RowIdLifetime;
            areturn
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
    Exceptions:
      throws java.sql.SQLException

  public boolean supportsResultSetHoldability(int);
    descriptor: (I)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=4, args_size=2
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
        start local 1 // int holdability
         0: .line 2435
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         1: .line 2436
            iconst_1
            iload 1 /* holdability */
            if_icmpeq 2
            iconst_2
            iload 1 /* holdability */
            if_icmpne 3
         2: .line 2437
      StackMap locals:
      StackMap stack:
            iconst_1
            ireturn
         3: .line 2442
      StackMap locals:
      StackMap stack:
            new java.text.MessageFormat
            dup
            ldc "R_invalidArgument"
            invokestatic com.microsoft.sqlserver.jdbc.SQLServerException.getErrString:(Ljava/lang/String;)Ljava/lang/String;
            invokespecial java.text.MessageFormat.<init>:(Ljava/lang/String;)V
            astore 2 /* form */
        start local 2 // java.text.MessageFormat form
         4: .line 2443
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            iload 1 /* holdability */
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            astore 3 /* msgArgs */
        start local 3 // java.lang.Object[] msgArgs
         5: .line 2444
            new com.microsoft.sqlserver.jdbc.SQLServerException
            dup
            aconst_null
            aload 2 /* form */
            aload 3 /* msgArgs */
            invokevirtual java.text.MessageFormat.format:(Ljava/lang/Object;)Ljava/lang/String;
            aconst_null
            iconst_0
            iconst_1
            invokespecial com.microsoft.sqlserver.jdbc.SQLServerException.<init>:(Ljava/lang/Object;Ljava/lang/String;Ljava/lang/String;IZ)V
            athrow
        end local 3 // java.lang.Object[] msgArgs
        end local 2 // java.text.MessageFormat form
        end local 1 // int holdability
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    6     0         this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
            0    6     1  holdability  I
            4    6     2         form  Ljava/text/MessageFormat;
            5    6     3      msgArgs  [Ljava/lang/Object;
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException
    MethodParameters:
             Name  Flags
      holdability  

  public java.sql.ResultSet getAttributes(java.lang.String, java.lang.String, java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/sql/ResultSet;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=5, args_size=5
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
        start local 1 // java.lang.String catalog
        start local 2 // java.lang.String schemaPattern
        start local 3 // java.lang.String typeNamePattern
        start local 4 // java.lang.String attributeNamePattern
         0: .line 2450
            getstatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.loggerExternal:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
            invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
            ifeq 2
            invokestatic com.microsoft.sqlserver.jdbc.Util.isActivityTraceOn:()Z
            ifeq 2
         1: .line 2451
            getstatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.loggerExternal:Ljava/util/logging/Logger;
            new java.lang.StringBuilder
            dup
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.toString:()Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc " ActivityId: "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokestatic com.microsoft.sqlserver.jdbc.ActivityCorrelator.getNext:()Lcom/microsoft/sqlserver/jdbc/ActivityId;
            invokevirtual com.microsoft.sqlserver.jdbc.ActivityId.toString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.util.logging.Logger.finer:(Ljava/lang/String;)V
         2: .line 2453
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         3: .line 2454
            aload 0 /* this */
            aload 1 /* catalog */
            ldc "SELECT cast(NULL as char(1)) as TYPE_CAT, cast(NULL as char(1)) as TYPE_SCHEM, cast(NULL as char(1)) as TYPE_NAME, cast(NULL as char(1)) as ATTR_NAME, cast(0 as int) as DATA_TYPE, cast(NULL as char(1)) as ATTR_TYPE_NAME, cast(0 as int) as ATTR_SIZE, cast(0 as int) as DECIMAL_DIGITS, cast(0 as int) as NUM_PREC_RADIX, cast(0 as int) as NULLABLE, cast(NULL as char(1)) as REMARKS, cast(NULL as char(1)) as ATTR_DEF, cast(0 as int) as SQL_DATA_TYPE, cast(0 as int) as SQL_DATETIME_SUB, cast(0 as int) as CHAR_OCTET_LENGTH, cast(0 as int) as ORDINAL_POSITION, cast(NULL as char(1)) as IS_NULLABLE, cast(NULL as char(1)) as SCOPE_CATALOG, cast(NULL as char(1)) as SCOPE_SCHEMA, cast(NULL as char(1)) as SCOPE_TABLE, cast(0 as smallint) as SOURCE_DATA_TYPE where 0 = 1"
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.getResultSetFromInternalQueries:(Ljava/lang/String;Ljava/lang/String;)Lcom/microsoft/sqlserver/jdbc/SQLServerResultSet;
            areturn
        end local 4 // java.lang.String attributeNamePattern
        end local 3 // java.lang.String typeNamePattern
        end local 2 // java.lang.String schemaPattern
        end local 1 // java.lang.String catalog
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot                  Name  Signature
            0    4     0                  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
            0    4     1               catalog  Ljava/lang/String;
            0    4     2         schemaPattern  Ljava/lang/String;
            0    4     3       typeNamePattern  Ljava/lang/String;
            0    4     4  attributeNamePattern  Ljava/lang/String;
    Exceptions:
      throws java.sql.SQLException, java.sql.SQLTimeoutException
    MethodParameters:
                      Name  Flags
      catalog               
      schemaPattern         
      typeNamePattern       
      attributeNamePattern  

  public java.sql.ResultSet getSuperTables(java.lang.String, java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/sql/ResultSet;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=4
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
        start local 1 // java.lang.String catalog
        start local 2 // java.lang.String schemaPattern
        start local 3 // java.lang.String tableNamePattern
         0: .line 2481
            getstatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.loggerExternal:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
            invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
            ifeq 2
            invokestatic com.microsoft.sqlserver.jdbc.Util.isActivityTraceOn:()Z
            ifeq 2
         1: .line 2482
            getstatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.loggerExternal:Ljava/util/logging/Logger;
            new java.lang.StringBuilder
            dup
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.toString:()Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc " ActivityId: "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokestatic com.microsoft.sqlserver.jdbc.ActivityCorrelator.getNext:()Lcom/microsoft/sqlserver/jdbc/ActivityId;
            invokevirtual com.microsoft.sqlserver.jdbc.ActivityId.toString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.util.logging.Logger.finer:(Ljava/lang/String;)V
         2: .line 2484
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         3: .line 2485
            aload 0 /* this */
            aload 1 /* catalog */
            ldc "SELECT cast(NULL as char(1)) as TYPE_CAT, cast(NULL as char(1)) as TYPE_SCHEM, cast(NULL as char(1)) as TYPE_NAME, cast(NULL as char(1)) as SUPERTABLE_NAME where 0 = 1"
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.getResultSetFromInternalQueries:(Ljava/lang/String;Ljava/lang/String;)Lcom/microsoft/sqlserver/jdbc/SQLServerResultSet;
            areturn
        end local 3 // java.lang.String tableNamePattern
        end local 2 // java.lang.String schemaPattern
        end local 1 // java.lang.String catalog
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    4     0              this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
            0    4     1           catalog  Ljava/lang/String;
            0    4     2     schemaPattern  Ljava/lang/String;
            0    4     3  tableNamePattern  Ljava/lang/String;
    Exceptions:
      throws java.sql.SQLException, java.sql.SQLTimeoutException
    MethodParameters:
                  Name  Flags
      catalog           
      schemaPattern     
      tableNamePattern  

  public java.sql.ResultSet getSuperTypes(java.lang.String, java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/sql/ResultSet;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=4
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
        start local 1 // java.lang.String catalog
        start local 2 // java.lang.String schemaPattern
        start local 3 // java.lang.String typeNamePattern
         0: .line 2495
            getstatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.loggerExternal:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
            invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
            ifeq 2
            invokestatic com.microsoft.sqlserver.jdbc.Util.isActivityTraceOn:()Z
            ifeq 2
         1: .line 2496
            getstatic com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.loggerExternal:Ljava/util/logging/Logger;
            new java.lang.StringBuilder
            dup
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.toString:()Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc " ActivityId: "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokestatic com.microsoft.sqlserver.jdbc.ActivityCorrelator.getNext:()Lcom/microsoft/sqlserver/jdbc/ActivityId;
            invokevirtual com.microsoft.sqlserver.jdbc.ActivityId.toString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.util.logging.Logger.finer:(Ljava/lang/String;)V
         2: .line 2498
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         3: .line 2499
            aload 0 /* this */
            aload 1 /* catalog */
            ldc "SELECT cast(NULL as char(1)) as TYPE_CAT, cast(NULL as char(1)) as TYPE_SCHEM, cast(NULL as char(1)) as TYPE_NAME, cast(NULL as char(1)) as SUPERTYPE_CAT, cast(NULL as char(1)) as SUPERTYPE_SCHEM, cast(NULL as char(1)) as SUPERTYPE_NAME where 0 = 1"
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.getResultSetFromInternalQueries:(Ljava/lang/String;Ljava/lang/String;)Lcom/microsoft/sqlserver/jdbc/SQLServerResultSet;
            areturn
        end local 3 // java.lang.String typeNamePattern
        end local 2 // java.lang.String schemaPattern
        end local 1 // java.lang.String catalog
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0    4     0             this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
            0    4     1          catalog  Ljava/lang/String;
            0    4     2    schemaPattern  Ljava/lang/String;
            0    4     3  typeNamePattern  Ljava/lang/String;
    Exceptions:
      throws java.sql.SQLException, java.sql.SQLTimeoutException
    MethodParameters:
                 Name  Flags
      catalog          
      schemaPattern    
      typeNamePattern  

  public boolean supportsGetGeneratedKeys();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
         0: .line 2510
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         1: .line 2511
            iconst_1
            ireturn
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException

  public boolean supportsMultipleOpenResults();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
         0: .line 2516
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         1: .line 2517
            iconst_0
            ireturn
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException

  public boolean supportsNamedParameters();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
         0: .line 2522
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         1: .line 2523
            iconst_1
            ireturn
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException

  public boolean supportsSavepoints();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
         0: .line 2528
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         1: .line 2529
            iconst_1
            ireturn
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException

  public boolean supportsStatementPooling();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
         0: .line 2534
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         1: .line 2535
            iconst_0
            ireturn
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
    Exceptions:
      throws java.sql.SQLException

  public boolean supportsStoredFunctionsUsingCallSyntax();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
         0: .line 2540
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         1: .line 2541
            iconst_1
            ireturn
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
    Exceptions:
      throws java.sql.SQLException

  public boolean locatorsUpdateCopy();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
         0: .line 2546
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         1: .line 2547
            iconst_1
            ireturn
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
    Exceptions:
      throws java.sql.SQLException

  public int getDatabaseCompatibilityLevel();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=1
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
         0: .line 2562
            aload 0 /* this */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.checkClosed:()V
         1: .line 2563
            aload 0 /* this */
            getfield com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.connection:Lcom/microsoft/sqlserver/jdbc/SQLServerConnection;
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerConnection.getCatalog:()Ljava/lang/String;
            astore 1 /* database */
        start local 1 // java.lang.String database
         2: .line 2564
            aload 0 /* this */
            aconst_null
         3: .line 2565
            new java.lang.StringBuilder
            dup
            ldc "select name, compatibility_level from sys.databases where name = '"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* database */
            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;
         4: .line 2564
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData.getResultSetFromInternalQueries:(Ljava/lang/String;Ljava/lang/String;)Lcom/microsoft/sqlserver/jdbc/SQLServerResultSet;
            astore 2 /* rs */
        start local 2 // com.microsoft.sqlserver.jdbc.SQLServerResultSet rs
         5: .line 2566
            aload 2 /* rs */
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerResultSet.next:()Z
            ifne 7
         6: .line 2567
            iconst_0
            ireturn
         7: .line 2569
      StackMap locals: java.lang.String com.microsoft.sqlserver.jdbc.SQLServerResultSet
      StackMap stack:
            aload 2 /* rs */
            ldc "compatibility_level"
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerResultSet.getInt:(Ljava/lang/String;)I
            ireturn
        end local 2 // com.microsoft.sqlserver.jdbc.SQLServerResultSet rs
        end local 1 // java.lang.String database
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    8     0      this  Lcom/microsoft/sqlserver/jdbc/SQLServerDatabaseMetaData;
            2    8     1  database  Ljava/lang/String;
            5    8     2        rs  Lcom/microsoft/sqlserver/jdbc/SQLServerResultSet;
    Exceptions:
      throws java.sql.SQLException
}
SourceFile: "SQLServerDatabaseMetaData.java"
NestMembers:
  com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData$CallableHandles  com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData$HandleAssociation
InnerClasses:
  final CallableHandles = com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData$CallableHandles of com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData
  final HandleAssociation = com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData$HandleAssociation of com.microsoft.sqlserver.jdbc.SQLServerDatabaseMetaData
  public abstract Entry = java.util.Map$Entry of java.util.Map