final class com.microsoft.sqlserver.jdbc.StreamColumns extends com.microsoft.sqlserver.jdbc.StreamPacket
  minor version: 0
  major version: 59
  flags: flags: (0x0030) ACC_FINAL, ACC_SUPER
  this_class: com.microsoft.sqlserver.jdbc.StreamColumns
  super_class: com.microsoft.sqlserver.jdbc.StreamPacket
{
  private com.microsoft.sqlserver.jdbc.Column[] columns;
    descriptor: [Lcom/microsoft/sqlserver/jdbc/Column;
    flags: (0x0002) ACC_PRIVATE

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

  private boolean shouldHonorAEForRead;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

  private boolean sensitivityRankSupported;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

  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=1, locals=0, args_size=0
         0: .line 24
            ldc Lcom/microsoft/sqlserver/jdbc/StreamColumns;
            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.StreamColumns.$assertionsDisabled:Z
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  com.microsoft.sqlserver.jdbc.CekTable getCekTable();
    descriptor: ()Lcom/microsoft/sqlserver/jdbc/CekTable;
    flags: (0x0000) 
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.microsoft.sqlserver.jdbc.StreamColumns this
         0: .line 37
            aload 0 /* this */
            getfield com.microsoft.sqlserver.jdbc.StreamColumns.cekTable:Lcom/microsoft/sqlserver/jdbc/CekTable;
            areturn
        end local 0 // com.microsoft.sqlserver.jdbc.StreamColumns this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/microsoft/sqlserver/jdbc/StreamColumns;

  void <init>();
    descriptor: ()V
    flags: (0x0000) 
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // com.microsoft.sqlserver.jdbc.StreamColumns this
         0: .line 44
            aload 0 /* this */
            sipush 129
            invokespecial com.microsoft.sqlserver.jdbc.StreamPacket.<init>:(I)V
         1: .line 29
            aload 0 /* this */
            aconst_null
            putfield com.microsoft.sqlserver.jdbc.StreamColumns.cekTable:Lcom/microsoft/sqlserver/jdbc/CekTable;
         2: .line 31
            aload 0 /* this */
            iconst_0
            putfield com.microsoft.sqlserver.jdbc.StreamColumns.shouldHonorAEForRead:Z
         3: .line 33
            aload 0 /* this */
            iconst_0
            putfield com.microsoft.sqlserver.jdbc.StreamColumns.sensitivityRankSupported:Z
         4: .line 45
            return
        end local 0 // com.microsoft.sqlserver.jdbc.StreamColumns this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lcom/microsoft/sqlserver/jdbc/StreamColumns;

  void <init>(boolean);
    descriptor: (Z)V
    flags: (0x0000) 
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.microsoft.sqlserver.jdbc.StreamColumns this
        start local 1 // boolean honorAE
         0: .line 51
            aload 0 /* this */
            sipush 129
            invokespecial com.microsoft.sqlserver.jdbc.StreamPacket.<init>:(I)V
         1: .line 29
            aload 0 /* this */
            aconst_null
            putfield com.microsoft.sqlserver.jdbc.StreamColumns.cekTable:Lcom/microsoft/sqlserver/jdbc/CekTable;
         2: .line 31
            aload 0 /* this */
            iconst_0
            putfield com.microsoft.sqlserver.jdbc.StreamColumns.shouldHonorAEForRead:Z
         3: .line 33
            aload 0 /* this */
            iconst_0
            putfield com.microsoft.sqlserver.jdbc.StreamColumns.sensitivityRankSupported:Z
         4: .line 52
            aload 0 /* this */
            iload 1 /* honorAE */
            putfield com.microsoft.sqlserver.jdbc.StreamColumns.shouldHonorAEForRead:Z
         5: .line 53
            return
        end local 1 // boolean honorAE
        end local 0 // com.microsoft.sqlserver.jdbc.StreamColumns this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    6     0     this  Lcom/microsoft/sqlserver/jdbc/StreamColumns;
            0    6     1  honorAE  Z
    MethodParameters:
         Name  Flags
      honorAE  

  com.microsoft.sqlserver.jdbc.CekTableEntry readCEKTableEntry(com.microsoft.sqlserver.jdbc.TDSReader);
    descriptor: (Lcom/microsoft/sqlserver/jdbc/TDSReader;)Lcom/microsoft/sqlserver/jdbc/CekTableEntry;
    flags: (0x0000) 
    Code:
      stack=9, locals=17, args_size=2
        start local 0 // com.microsoft.sqlserver.jdbc.StreamColumns this
        start local 1 // com.microsoft.sqlserver.jdbc.TDSReader tdsReader
         0: .line 62
            aload 1 /* tdsReader */
            invokevirtual com.microsoft.sqlserver.jdbc.TDSReader.readInt:()I
            istore 2 /* databaseId */
        start local 2 // int databaseId
         1: .line 65
            aload 1 /* tdsReader */
            invokevirtual com.microsoft.sqlserver.jdbc.TDSReader.readInt:()I
            istore 3 /* cekId */
        start local 3 // int cekId
         2: .line 68
            aload 1 /* tdsReader */
            invokevirtual com.microsoft.sqlserver.jdbc.TDSReader.readInt:()I
            istore 4 /* cekVersion */
        start local 4 // int cekVersion
         3: .line 71
            bipush 8
            newarray 8
            astore 5 /* cekMdVersion */
        start local 5 // byte[] cekMdVersion
         4: .line 72
            aload 1 /* tdsReader */
            aload 5 /* cekMdVersion */
            iconst_0
            bipush 8
            invokevirtual com.microsoft.sqlserver.jdbc.TDSReader.readBytes:([BII)V
         5: .line 75
            aload 1 /* tdsReader */
            invokevirtual com.microsoft.sqlserver.jdbc.TDSReader.readUnsignedByte:()I
            istore 6 /* cekValueCount */
        start local 6 // int cekValueCount
         6: .line 77
            new com.microsoft.sqlserver.jdbc.CekTableEntry
            dup
            iload 6 /* cekValueCount */
            invokespecial com.microsoft.sqlserver.jdbc.CekTableEntry.<init>:(I)V
            astore 7 /* cekTableEntry */
        start local 7 // com.microsoft.sqlserver.jdbc.CekTableEntry cekTableEntry
         7: .line 79
            iconst_0
            istore 8 /* i */
        start local 8 // int i
         8: goto 22
         9: .line 81
      StackMap locals: com.microsoft.sqlserver.jdbc.StreamColumns com.microsoft.sqlserver.jdbc.TDSReader int int int byte[] int com.microsoft.sqlserver.jdbc.CekTableEntry int
      StackMap stack:
            aload 1 /* tdsReader */
            invokevirtual com.microsoft.sqlserver.jdbc.TDSReader.readShort:()S
            istore 9 /* encryptedCEKlength */
        start local 9 // short encryptedCEKlength
        10: .line 83
            iload 9 /* encryptedCEKlength */
            newarray 8
            astore 10 /* encryptedCek */
        start local 10 // byte[] encryptedCek
        11: .line 86
            aload 1 /* tdsReader */
            aload 10 /* encryptedCek */
            iconst_0
            iload 9 /* encryptedCEKlength */
            invokevirtual com.microsoft.sqlserver.jdbc.TDSReader.readBytes:([BII)V
        12: .line 89
            aload 1 /* tdsReader */
            invokevirtual com.microsoft.sqlserver.jdbc.TDSReader.readUnsignedByte:()I
            istore 11 /* keyStoreLength */
        start local 11 // int keyStoreLength
        13: .line 92
            aload 1 /* tdsReader */
            iload 11 /* keyStoreLength */
            invokevirtual com.microsoft.sqlserver.jdbc.TDSReader.readUnicodeString:(I)Ljava/lang/String;
            astore 12 /* keyStoreName */
        start local 12 // java.lang.String keyStoreName
        14: .line 95
            aload 1 /* tdsReader */
            invokevirtual com.microsoft.sqlserver.jdbc.TDSReader.readShort:()S
            istore 13 /* keyPathLength */
        start local 13 // int keyPathLength
        15: .line 98
            aload 1 /* tdsReader */
            iload 13 /* keyPathLength */
            invokevirtual com.microsoft.sqlserver.jdbc.TDSReader.readUnicodeString:(I)Ljava/lang/String;
            astore 14 /* keyPath */
        start local 14 // java.lang.String keyPath
        16: .line 101
            aload 1 /* tdsReader */
            invokevirtual com.microsoft.sqlserver.jdbc.TDSReader.readUnsignedByte:()I
            istore 15 /* algorithmLength */
        start local 15 // int algorithmLength
        17: .line 104
            aload 1 /* tdsReader */
            iload 15 /* algorithmLength */
            invokevirtual com.microsoft.sqlserver.jdbc.TDSReader.readUnicodeString:(I)Ljava/lang/String;
            astore 16 /* algorithmName */
        start local 16 // java.lang.String algorithmName
        18: .line 107
            aload 7 /* cekTableEntry */
            aload 10 /* encryptedCek */
            iload 2 /* databaseId */
            iload 3 /* cekId */
            iload 4 /* cekVersion */
            aload 5 /* cekMdVersion */
            aload 14 /* keyPath */
            aload 12 /* keyStoreName */
        19: .line 108
            aload 16 /* algorithmName */
        20: .line 107
            invokevirtual com.microsoft.sqlserver.jdbc.CekTableEntry.add:([BIII[BLjava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
        end local 16 // java.lang.String algorithmName
        end local 15 // int algorithmLength
        end local 14 // java.lang.String keyPath
        end local 13 // int keyPathLength
        end local 12 // java.lang.String keyStoreName
        end local 11 // int keyStoreLength
        end local 10 // byte[] encryptedCek
        end local 9 // short encryptedCEKlength
        21: .line 79
            iinc 8 /* i */ 1
      StackMap locals:
      StackMap stack:
        22: iload 8 /* i */
            iload 6 /* cekValueCount */
            if_icmplt 9
        end local 8 // int i
        23: .line 110
            aload 7 /* cekTableEntry */
            areturn
        end local 7 // com.microsoft.sqlserver.jdbc.CekTableEntry cekTableEntry
        end local 6 // int cekValueCount
        end local 5 // byte[] cekMdVersion
        end local 4 // int cekVersion
        end local 3 // int cekId
        end local 2 // int databaseId
        end local 1 // com.microsoft.sqlserver.jdbc.TDSReader tdsReader
        end local 0 // com.microsoft.sqlserver.jdbc.StreamColumns this
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0   24     0                this  Lcom/microsoft/sqlserver/jdbc/StreamColumns;
            0   24     1           tdsReader  Lcom/microsoft/sqlserver/jdbc/TDSReader;
            1   24     2          databaseId  I
            2   24     3               cekId  I
            3   24     4          cekVersion  I
            4   24     5        cekMdVersion  [B
            6   24     6       cekValueCount  I
            7   24     7       cekTableEntry  Lcom/microsoft/sqlserver/jdbc/CekTableEntry;
            8   23     8                   i  I
           10   21     9  encryptedCEKlength  S
           11   21    10        encryptedCek  [B
           13   21    11      keyStoreLength  I
           14   21    12        keyStoreName  Ljava/lang/String;
           15   21    13       keyPathLength  I
           16   21    14             keyPath  Ljava/lang/String;
           17   21    15     algorithmLength  I
           18   21    16       algorithmName  Ljava/lang/String;
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException
    MethodParameters:
           Name  Flags
      tdsReader  

  void readCEKTable(com.microsoft.sqlserver.jdbc.TDSReader);
    descriptor: (Lcom/microsoft/sqlserver/jdbc/TDSReader;)V
    flags: (0x0000) 
    Code:
      stack=4, locals=4, args_size=2
        start local 0 // com.microsoft.sqlserver.jdbc.StreamColumns this
        start local 1 // com.microsoft.sqlserver.jdbc.TDSReader tdsReader
         0: .line 120
            aload 1 /* tdsReader */
            invokevirtual com.microsoft.sqlserver.jdbc.TDSReader.readShort:()S
            istore 2 /* tableSize */
        start local 2 // int tableSize
         1: .line 124
            iload 2 /* tableSize */
            ifeq 8
         2: .line 125
            aload 0 /* this */
            new com.microsoft.sqlserver.jdbc.CekTable
            dup
            iload 2 /* tableSize */
            invokespecial com.microsoft.sqlserver.jdbc.CekTable.<init>:(I)V
            putfield com.microsoft.sqlserver.jdbc.StreamColumns.cekTable:Lcom/microsoft/sqlserver/jdbc/CekTable;
         3: .line 128
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         4: goto 7
         5: .line 130
      StackMap locals: int int
      StackMap stack:
            aload 0 /* this */
            getfield com.microsoft.sqlserver.jdbc.StreamColumns.cekTable:Lcom/microsoft/sqlserver/jdbc/CekTable;
            iload 3 /* i */
            aload 0 /* this */
            aload 1 /* tdsReader */
            invokevirtual com.microsoft.sqlserver.jdbc.StreamColumns.readCEKTableEntry:(Lcom/microsoft/sqlserver/jdbc/TDSReader;)Lcom/microsoft/sqlserver/jdbc/CekTableEntry;
            invokevirtual com.microsoft.sqlserver.jdbc.CekTable.setCekTableEntry:(ILcom/microsoft/sqlserver/jdbc/CekTableEntry;)V
         6: .line 128
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
         7: iload 3 /* i */
            iload 2 /* tableSize */
            if_icmplt 5
        end local 3 // int i
         8: .line 133
      StackMap locals:
      StackMap stack:
            return
        end local 2 // int tableSize
        end local 1 // com.microsoft.sqlserver.jdbc.TDSReader tdsReader
        end local 0 // com.microsoft.sqlserver.jdbc.StreamColumns this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    9     0       this  Lcom/microsoft/sqlserver/jdbc/StreamColumns;
            0    9     1  tdsReader  Lcom/microsoft/sqlserver/jdbc/TDSReader;
            1    9     2  tableSize  I
            4    8     3          i  I
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException
    MethodParameters:
           Name  Flags
      tdsReader  

  com.microsoft.sqlserver.jdbc.CryptoMetadata readCryptoMetadata(com.microsoft.sqlserver.jdbc.TDSReader);
    descriptor: (Lcom/microsoft/sqlserver/jdbc/TDSReader;)Lcom/microsoft/sqlserver/jdbc/CryptoMetadata;
    flags: (0x0000) 
    Code:
      stack=8, locals=9, args_size=2
        start local 0 // com.microsoft.sqlserver.jdbc.StreamColumns this
        start local 1 // com.microsoft.sqlserver.jdbc.TDSReader tdsReader
         0: .line 141
            iconst_0
            istore 2 /* ordinal */
        start local 2 // short ordinal
         1: .line 143
            aload 0 /* this */
            getfield com.microsoft.sqlserver.jdbc.StreamColumns.cekTable:Lcom/microsoft/sqlserver/jdbc/CekTable;
            ifnull 3
         2: .line 144
            aload 1 /* tdsReader */
            invokevirtual com.microsoft.sqlserver.jdbc.TDSReader.readShort:()S
            istore 2 /* ordinal */
         3: .line 147
      StackMap locals: int
      StackMap stack:
            aload 1 /* tdsReader */
            iconst_0
            invokestatic com.microsoft.sqlserver.jdbc.TypeInfo.getInstance:(Lcom/microsoft/sqlserver/jdbc/TDSReader;Z)Lcom/microsoft/sqlserver/jdbc/TypeInfo;
            astore 3 /* typeInfo */
        start local 3 // com.microsoft.sqlserver.jdbc.TypeInfo typeInfo
         4: .line 150
            aload 1 /* tdsReader */
            invokevirtual com.microsoft.sqlserver.jdbc.TDSReader.readUnsignedByte:()I
            i2b
            istore 4 /* algorithmId */
        start local 4 // byte algorithmId
         5: .line 152
            aconst_null
            astore 5 /* algorithmName */
        start local 5 // java.lang.String algorithmName
         6: .line 153
            iload 4 /* algorithmId */
            ifne 9
         7: .line 155
            aload 1 /* tdsReader */
            invokevirtual com.microsoft.sqlserver.jdbc.TDSReader.readUnsignedByte:()I
            istore 6 /* nameSize */
        start local 6 // int nameSize
         8: .line 156
            aload 1 /* tdsReader */
            iload 6 /* nameSize */
            invokevirtual com.microsoft.sqlserver.jdbc.TDSReader.readUnicodeString:(I)Ljava/lang/String;
            astore 5 /* algorithmName */
        end local 6 // int nameSize
         9: .line 160
      StackMap locals: com.microsoft.sqlserver.jdbc.TypeInfo int java.lang.String
      StackMap stack:
            aload 1 /* tdsReader */
            invokevirtual com.microsoft.sqlserver.jdbc.TDSReader.readUnsignedByte:()I
            i2b
            istore 6 /* encryptionType */
        start local 6 // byte encryptionType
        10: .line 163
            aload 1 /* tdsReader */
            invokevirtual com.microsoft.sqlserver.jdbc.TDSReader.readUnsignedByte:()I
            i2b
            istore 7 /* normalizationRuleVersion */
        start local 7 // byte normalizationRuleVersion
        11: .line 165
            new com.microsoft.sqlserver.jdbc.CryptoMetadata
            dup
            aload 0 /* this */
            getfield com.microsoft.sqlserver.jdbc.StreamColumns.cekTable:Lcom/microsoft/sqlserver/jdbc/CekTable;
            ifnonnull 12
            aconst_null
            goto 13
      StackMap locals: com.microsoft.sqlserver.jdbc.StreamColumns com.microsoft.sqlserver.jdbc.TDSReader int com.microsoft.sqlserver.jdbc.TypeInfo int java.lang.String int int
      StackMap stack: new 11 new 11
        12: aload 0 /* this */
            getfield com.microsoft.sqlserver.jdbc.StreamColumns.cekTable:Lcom/microsoft/sqlserver/jdbc/CekTable;
            iload 2 /* ordinal */
            invokevirtual com.microsoft.sqlserver.jdbc.CekTable.getCekTableEntry:(I)Lcom/microsoft/sqlserver/jdbc/CekTableEntry;
        13: .line 166
      StackMap locals: com.microsoft.sqlserver.jdbc.StreamColumns com.microsoft.sqlserver.jdbc.TDSReader int com.microsoft.sqlserver.jdbc.TypeInfo int java.lang.String int int
      StackMap stack: new 11 new 11 com.microsoft.sqlserver.jdbc.CekTableEntry
            iload 2 /* ordinal */
            iload 4 /* algorithmId */
            aload 5 /* algorithmName */
            iload 6 /* encryptionType */
            iload 7 /* normalizationRuleVersion */
        14: .line 165
            invokespecial com.microsoft.sqlserver.jdbc.CryptoMetadata.<init>:(Lcom/microsoft/sqlserver/jdbc/CekTableEntry;SBLjava/lang/String;BB)V
            astore 8 /* cryptoMeta */
        start local 8 // com.microsoft.sqlserver.jdbc.CryptoMetadata cryptoMeta
        15: .line 167
            aload 8 /* cryptoMeta */
            aload 3 /* typeInfo */
            invokevirtual com.microsoft.sqlserver.jdbc.CryptoMetadata.setBaseTypeInfo:(Lcom/microsoft/sqlserver/jdbc/TypeInfo;)V
        16: .line 169
            aload 8 /* cryptoMeta */
            areturn
        end local 8 // com.microsoft.sqlserver.jdbc.CryptoMetadata cryptoMeta
        end local 7 // byte normalizationRuleVersion
        end local 6 // byte encryptionType
        end local 5 // java.lang.String algorithmName
        end local 4 // byte algorithmId
        end local 3 // com.microsoft.sqlserver.jdbc.TypeInfo typeInfo
        end local 2 // short ordinal
        end local 1 // com.microsoft.sqlserver.jdbc.TDSReader tdsReader
        end local 0 // com.microsoft.sqlserver.jdbc.StreamColumns this
      LocalVariableTable:
        Start  End  Slot                      Name  Signature
            0   17     0                      this  Lcom/microsoft/sqlserver/jdbc/StreamColumns;
            0   17     1                 tdsReader  Lcom/microsoft/sqlserver/jdbc/TDSReader;
            1   17     2                   ordinal  S
            4   17     3                  typeInfo  Lcom/microsoft/sqlserver/jdbc/TypeInfo;
            5   17     4               algorithmId  B
            6   17     5             algorithmName  Ljava/lang/String;
            8    9     6                  nameSize  I
           10   17     6            encryptionType  B
           11   17     7  normalizationRuleVersion  B
           15   17     8                cryptoMeta  Lcom/microsoft/sqlserver/jdbc/CryptoMetadata;
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException
    MethodParameters:
           Name  Flags
      tdsReader  

  void setFromTDS(com.microsoft.sqlserver.jdbc.TDSReader);
    descriptor: (Lcom/microsoft/sqlserver/jdbc/TDSReader;)V
    flags: (0x0000) 
    Code:
      stack=8, locals=8, args_size=2
        start local 0 // com.microsoft.sqlserver.jdbc.StreamColumns this
        start local 1 // com.microsoft.sqlserver.jdbc.TDSReader tdsReader
         0: .line 178
            sipush 129
            aload 1 /* tdsReader */
            invokevirtual com.microsoft.sqlserver.jdbc.TDSReader.readUnsignedByte:()I
            if_icmpeq 2
         1: .line 179
            getstatic com.microsoft.sqlserver.jdbc.StreamColumns.$assertionsDisabled:Z
            ifne 2
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         2: .line 181
      StackMap locals:
      StackMap stack:
            aload 1 /* tdsReader */
            invokevirtual com.microsoft.sqlserver.jdbc.TDSReader.readUnsignedShort:()I
            istore 2 /* nTotColumns */
        start local 2 // int nTotColumns
         3: .line 184
            ldc 65535
            iload 2 /* nTotColumns */
            if_icmpne 5
         4: .line 185
            return
         5: .line 187
      StackMap locals: int
      StackMap stack:
            aload 1 /* tdsReader */
            invokevirtual com.microsoft.sqlserver.jdbc.TDSReader.getServerSupportsColumnEncryption:()Z
            ifeq 7
         6: .line 188
            aload 0 /* this */
            aload 1 /* tdsReader */
            invokevirtual com.microsoft.sqlserver.jdbc.StreamColumns.readCEKTable:(Lcom/microsoft/sqlserver/jdbc/TDSReader;)V
         7: .line 191
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 2 /* nTotColumns */
            anewarray com.microsoft.sqlserver.jdbc.Column
            putfield com.microsoft.sqlserver.jdbc.StreamColumns.columns:[Lcom/microsoft/sqlserver/jdbc/Column;
         8: .line 193
            iconst_0
            istore 3 /* numColumns */
        start local 3 // int numColumns
         9: goto 26
        10: .line 195
      StackMap locals: int
      StackMap stack:
            aload 1 /* tdsReader */
            iconst_1
            invokestatic com.microsoft.sqlserver.jdbc.TypeInfo.getInstance:(Lcom/microsoft/sqlserver/jdbc/TDSReader;Z)Lcom/microsoft/sqlserver/jdbc/TypeInfo;
            astore 4 /* typeInfo */
        start local 4 // com.microsoft.sqlserver.jdbc.TypeInfo typeInfo
        11: .line 201
            new com.microsoft.sqlserver.jdbc.SQLIdentifier
            dup
            invokespecial com.microsoft.sqlserver.jdbc.SQLIdentifier.<init>:()V
            astore 5 /* tableName */
        start local 5 // com.microsoft.sqlserver.jdbc.SQLIdentifier tableName
        12: .line 202
            getstatic com.microsoft.sqlserver.jdbc.SSType.TEXT:Lcom/microsoft/sqlserver/jdbc/SSType;
            aload 4 /* typeInfo */
            invokevirtual com.microsoft.sqlserver.jdbc.TypeInfo.getSSType:()Lcom/microsoft/sqlserver/jdbc/SSType;
            if_acmpeq 14
            getstatic com.microsoft.sqlserver.jdbc.SSType.NTEXT:Lcom/microsoft/sqlserver/jdbc/SSType;
            aload 4 /* typeInfo */
            invokevirtual com.microsoft.sqlserver.jdbc.TypeInfo.getSSType:()Lcom/microsoft/sqlserver/jdbc/SSType;
            if_acmpeq 14
        13: .line 203
            getstatic com.microsoft.sqlserver.jdbc.SSType.IMAGE:Lcom/microsoft/sqlserver/jdbc/SSType;
            aload 4 /* typeInfo */
            invokevirtual com.microsoft.sqlserver.jdbc.TypeInfo.getSSType:()Lcom/microsoft/sqlserver/jdbc/SSType;
            if_acmpne 15
        14: .line 205
      StackMap locals: com.microsoft.sqlserver.jdbc.TypeInfo com.microsoft.sqlserver.jdbc.SQLIdentifier
      StackMap stack:
            aload 1 /* tdsReader */
            invokevirtual com.microsoft.sqlserver.jdbc.TDSReader.readSQLIdentifier:()Lcom/microsoft/sqlserver/jdbc/SQLIdentifier;
            astore 5 /* tableName */
        15: .line 208
      StackMap locals:
      StackMap stack:
            aconst_null
            astore 6 /* cryptoMeta */
        start local 6 // com.microsoft.sqlserver.jdbc.CryptoMetadata cryptoMeta
        16: .line 209
            aload 1 /* tdsReader */
            invokevirtual com.microsoft.sqlserver.jdbc.TDSReader.getServerSupportsColumnEncryption:()Z
            ifeq 20
            aload 4 /* typeInfo */
            invokevirtual com.microsoft.sqlserver.jdbc.TypeInfo.isEncrypted:()Z
            ifeq 20
        17: .line 210
            aload 0 /* this */
            aload 1 /* tdsReader */
            invokevirtual com.microsoft.sqlserver.jdbc.StreamColumns.readCryptoMetadata:(Lcom/microsoft/sqlserver/jdbc/TDSReader;)Lcom/microsoft/sqlserver/jdbc/CryptoMetadata;
            astore 6 /* cryptoMeta */
        18: .line 211
            aload 6 /* cryptoMeta */
            getfield com.microsoft.sqlserver.jdbc.CryptoMetadata.baseTypeInfo:Lcom/microsoft/sqlserver/jdbc/TypeInfo;
            aload 4 /* typeInfo */
            invokevirtual com.microsoft.sqlserver.jdbc.TypeInfo.getFlagsAsShort:()S
            invokestatic java.lang.Short.valueOf:(S)Ljava/lang/Short;
            invokevirtual com.microsoft.sqlserver.jdbc.TypeInfo.setFlags:(Ljava/lang/Short;)V
        19: .line 212
            aload 4 /* typeInfo */
            aload 6 /* cryptoMeta */
            getfield com.microsoft.sqlserver.jdbc.CryptoMetadata.baseTypeInfo:Lcom/microsoft/sqlserver/jdbc/TypeInfo;
            invokevirtual com.microsoft.sqlserver.jdbc.TypeInfo.getSQLCollation:()Lcom/microsoft/sqlserver/jdbc/SQLCollation;
            invokevirtual com.microsoft.sqlserver.jdbc.TypeInfo.setSQLCollation:(Lcom/microsoft/sqlserver/jdbc/SQLCollation;)V
        20: .line 216
      StackMap locals: com.microsoft.sqlserver.jdbc.CryptoMetadata
      StackMap stack:
            aload 1 /* tdsReader */
            aload 1 /* tdsReader */
            invokevirtual com.microsoft.sqlserver.jdbc.TDSReader.readUnsignedByte:()I
            invokevirtual com.microsoft.sqlserver.jdbc.TDSReader.readUnicodeString:(I)Ljava/lang/String;
            astore 7 /* columnName */
        start local 7 // java.lang.String columnName
        21: .line 218
            aload 0 /* this */
            getfield com.microsoft.sqlserver.jdbc.StreamColumns.shouldHonorAEForRead:Z
            ifeq 24
        22: .line 219
            aload 0 /* this */
            getfield com.microsoft.sqlserver.jdbc.StreamColumns.columns:[Lcom/microsoft/sqlserver/jdbc/Column;
            iload 3 /* numColumns */
            new com.microsoft.sqlserver.jdbc.Column
            dup
            aload 4 /* typeInfo */
            aload 7 /* columnName */
            aload 5 /* tableName */
            aload 6 /* cryptoMeta */
            invokespecial com.microsoft.sqlserver.jdbc.Column.<init>:(Lcom/microsoft/sqlserver/jdbc/TypeInfo;Ljava/lang/String;Lcom/microsoft/sqlserver/jdbc/SQLIdentifier;Lcom/microsoft/sqlserver/jdbc/CryptoMetadata;)V
            aastore
        23: .line 220
            goto 25
        24: .line 223
      StackMap locals: java.lang.String
      StackMap stack:
            aload 0 /* this */
            getfield com.microsoft.sqlserver.jdbc.StreamColumns.columns:[Lcom/microsoft/sqlserver/jdbc/Column;
            iload 3 /* numColumns */
            new com.microsoft.sqlserver.jdbc.Column
            dup
            aload 4 /* typeInfo */
            aload 7 /* columnName */
            aload 5 /* tableName */
            aconst_null
            invokespecial com.microsoft.sqlserver.jdbc.Column.<init>:(Lcom/microsoft/sqlserver/jdbc/TypeInfo;Ljava/lang/String;Lcom/microsoft/sqlserver/jdbc/SQLIdentifier;Lcom/microsoft/sqlserver/jdbc/CryptoMetadata;)V
            aastore
        end local 7 // java.lang.String columnName
        end local 6 // com.microsoft.sqlserver.jdbc.CryptoMetadata cryptoMeta
        end local 5 // com.microsoft.sqlserver.jdbc.SQLIdentifier tableName
        end local 4 // com.microsoft.sqlserver.jdbc.TypeInfo typeInfo
        25: .line 193
      StackMap locals: com.microsoft.sqlserver.jdbc.StreamColumns com.microsoft.sqlserver.jdbc.TDSReader int int
      StackMap stack:
            iinc 3 /* numColumns */ 1
      StackMap locals:
      StackMap stack:
        26: iload 3 /* numColumns */
            iload 2 /* nTotColumns */
            if_icmplt 10
        end local 3 // int numColumns
        27: .line 228
            aload 1 /* tdsReader */
            invokevirtual com.microsoft.sqlserver.jdbc.TDSReader.getServerSupportsDataClassification:()Z
            ifeq 30
        28: .line 229
            aload 1 /* tdsReader */
            invokevirtual com.microsoft.sqlserver.jdbc.TDSReader.peekTokenType:()I
            sipush 163
            if_icmpne 30
        29: .line 231
            aload 1 /* tdsReader */
            aload 0 /* this */
            aload 1 /* tdsReader */
            invokevirtual com.microsoft.sqlserver.jdbc.StreamColumns.processDataClassification:(Lcom/microsoft/sqlserver/jdbc/TDSReader;)Lcom/microsoft/sqlserver/jdbc/dataclassification/SensitivityClassification;
            invokevirtual com.microsoft.sqlserver.jdbc.TDSReader.trySetSensitivityClassification:(Lcom/microsoft/sqlserver/jdbc/dataclassification/SensitivityClassification;)V
        30: .line 233
      StackMap locals:
      StackMap stack:
            return
        end local 2 // int nTotColumns
        end local 1 // com.microsoft.sqlserver.jdbc.TDSReader tdsReader
        end local 0 // com.microsoft.sqlserver.jdbc.StreamColumns this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   31     0         this  Lcom/microsoft/sqlserver/jdbc/StreamColumns;
            0   31     1    tdsReader  Lcom/microsoft/sqlserver/jdbc/TDSReader;
            3   31     2  nTotColumns  I
            9   27     3   numColumns  I
           11   25     4     typeInfo  Lcom/microsoft/sqlserver/jdbc/TypeInfo;
           12   25     5    tableName  Lcom/microsoft/sqlserver/jdbc/SQLIdentifier;
           16   25     6   cryptoMeta  Lcom/microsoft/sqlserver/jdbc/CryptoMetadata;
           21   25     7   columnName  Ljava/lang/String;
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException
    MethodParameters:
           Name  Flags
      tdsReader  

  private java.lang.String readByteString(com.microsoft.sqlserver.jdbc.TDSReader);
    descriptor: (Lcom/microsoft/sqlserver/jdbc/TDSReader;)Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=4, args_size=2
        start local 0 // com.microsoft.sqlserver.jdbc.StreamColumns this
        start local 1 // com.microsoft.sqlserver.jdbc.TDSReader tdsReader
         0: .line 236
            ldc ""
            astore 2 /* value */
        start local 2 // java.lang.String value
         1: .line 237
            aload 1 /* tdsReader */
            invokevirtual com.microsoft.sqlserver.jdbc.TDSReader.readUnsignedByte:()I
            istore 3 /* byteLen */
        start local 3 // int byteLen
         2: .line 238
            aload 1 /* tdsReader */
            iload 3 /* byteLen */
            invokevirtual com.microsoft.sqlserver.jdbc.TDSReader.readUnicodeString:(I)Ljava/lang/String;
            astore 2 /* value */
         3: .line 239
            aload 2 /* value */
            areturn
        end local 3 // int byteLen
        end local 2 // java.lang.String value
        end local 1 // com.microsoft.sqlserver.jdbc.TDSReader tdsReader
        end local 0 // com.microsoft.sqlserver.jdbc.StreamColumns this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    4     0       this  Lcom/microsoft/sqlserver/jdbc/StreamColumns;
            0    4     1  tdsReader  Lcom/microsoft/sqlserver/jdbc/TDSReader;
            1    4     2      value  Ljava/lang/String;
            2    4     3    byteLen  I
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException
    MethodParameters:
           Name  Flags
      tdsReader  

  private com.microsoft.sqlserver.jdbc.dataclassification.Label readSensitivityLabel(com.microsoft.sqlserver.jdbc.TDSReader);
    descriptor: (Lcom/microsoft/sqlserver/jdbc/TDSReader;)Lcom/microsoft/sqlserver/jdbc/dataclassification/Label;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=4, args_size=2
        start local 0 // com.microsoft.sqlserver.jdbc.StreamColumns this
        start local 1 // com.microsoft.sqlserver.jdbc.TDSReader tdsReader
         0: .line 243
            aload 0 /* this */
            aload 1 /* tdsReader */
            invokevirtual com.microsoft.sqlserver.jdbc.StreamColumns.readByteString:(Lcom/microsoft/sqlserver/jdbc/TDSReader;)Ljava/lang/String;
            astore 2 /* name */
        start local 2 // java.lang.String name
         1: .line 244
            aload 0 /* this */
            aload 1 /* tdsReader */
            invokevirtual com.microsoft.sqlserver.jdbc.StreamColumns.readByteString:(Lcom/microsoft/sqlserver/jdbc/TDSReader;)Ljava/lang/String;
            astore 3 /* id */
        start local 3 // java.lang.String id
         2: .line 245
            new com.microsoft.sqlserver.jdbc.dataclassification.Label
            dup
            aload 2 /* name */
            aload 3 /* id */
            invokespecial com.microsoft.sqlserver.jdbc.dataclassification.Label.<init>:(Ljava/lang/String;Ljava/lang/String;)V
            areturn
        end local 3 // java.lang.String id
        end local 2 // java.lang.String name
        end local 1 // com.microsoft.sqlserver.jdbc.TDSReader tdsReader
        end local 0 // com.microsoft.sqlserver.jdbc.StreamColumns this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    3     0       this  Lcom/microsoft/sqlserver/jdbc/StreamColumns;
            0    3     1  tdsReader  Lcom/microsoft/sqlserver/jdbc/TDSReader;
            1    3     2       name  Ljava/lang/String;
            2    3     3         id  Ljava/lang/String;
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException
    MethodParameters:
           Name  Flags
      tdsReader  

  private com.microsoft.sqlserver.jdbc.dataclassification.InformationType readSensitivityInformationType(com.microsoft.sqlserver.jdbc.TDSReader);
    descriptor: (Lcom/microsoft/sqlserver/jdbc/TDSReader;)Lcom/microsoft/sqlserver/jdbc/dataclassification/InformationType;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=4, args_size=2
        start local 0 // com.microsoft.sqlserver.jdbc.StreamColumns this
        start local 1 // com.microsoft.sqlserver.jdbc.TDSReader tdsReader
         0: .line 249
            aload 0 /* this */
            aload 1 /* tdsReader */
            invokevirtual com.microsoft.sqlserver.jdbc.StreamColumns.readByteString:(Lcom/microsoft/sqlserver/jdbc/TDSReader;)Ljava/lang/String;
            astore 2 /* name */
        start local 2 // java.lang.String name
         1: .line 250
            aload 0 /* this */
            aload 1 /* tdsReader */
            invokevirtual com.microsoft.sqlserver.jdbc.StreamColumns.readByteString:(Lcom/microsoft/sqlserver/jdbc/TDSReader;)Ljava/lang/String;
            astore 3 /* id */
        start local 3 // java.lang.String id
         2: .line 251
            new com.microsoft.sqlserver.jdbc.dataclassification.InformationType
            dup
            aload 2 /* name */
            aload 3 /* id */
            invokespecial com.microsoft.sqlserver.jdbc.dataclassification.InformationType.<init>:(Ljava/lang/String;Ljava/lang/String;)V
            areturn
        end local 3 // java.lang.String id
        end local 2 // java.lang.String name
        end local 1 // com.microsoft.sqlserver.jdbc.TDSReader tdsReader
        end local 0 // com.microsoft.sqlserver.jdbc.StreamColumns this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    3     0       this  Lcom/microsoft/sqlserver/jdbc/StreamColumns;
            0    3     1  tdsReader  Lcom/microsoft/sqlserver/jdbc/TDSReader;
            1    3     2       name  Ljava/lang/String;
            2    3     3         id  Ljava/lang/String;
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException
    MethodParameters:
           Name  Flags
      tdsReader  

  private com.microsoft.sqlserver.jdbc.dataclassification.SensitivityClassification processDataClassification(com.microsoft.sqlserver.jdbc.TDSReader);
    descriptor: (Lcom/microsoft/sqlserver/jdbc/TDSReader;)Lcom/microsoft/sqlserver/jdbc/dataclassification/SensitivityClassification;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=20, args_size=2
        start local 0 // com.microsoft.sqlserver.jdbc.StreamColumns this
        start local 1 // com.microsoft.sqlserver.jdbc.TDSReader tdsReader
         0: .line 255
            aload 1 /* tdsReader */
            invokevirtual com.microsoft.sqlserver.jdbc.TDSReader.getServerSupportsDataClassification:()Z
            ifne 2
         1: .line 256
            aload 1 /* tdsReader */
            invokevirtual com.microsoft.sqlserver.jdbc.TDSReader.throwInvalidTDS:()V
         2: .line 259
      StackMap locals:
      StackMap stack:
            aload 1 /* tdsReader */
            invokevirtual com.microsoft.sqlserver.jdbc.TDSReader.readUnsignedByte:()I
            istore 2 /* dataClassificationToken */
        start local 2 // int dataClassificationToken
         3: .line 260
            getstatic com.microsoft.sqlserver.jdbc.StreamColumns.$assertionsDisabled:Z
            ifne 4
            iload 2 /* dataClassificationToken */
            sipush 163
            if_icmpeq 4
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         4: .line 262
      StackMap locals: int
      StackMap stack:
            aconst_null
            astore 3 /* sensitivityClassification */
        start local 3 // com.microsoft.sqlserver.jdbc.dataclassification.SensitivityClassification sensitivityClassification
         5: .line 265
            aload 1 /* tdsReader */
            invokevirtual com.microsoft.sqlserver.jdbc.TDSReader.readUnsignedShort:()I
            istore 4 /* sensitivityLabelCount */
        start local 4 // int sensitivityLabelCount
         6: .line 266
            new java.util.ArrayList
            dup
            iload 4 /* sensitivityLabelCount */
            invokespecial java.util.ArrayList.<init>:(I)V
            astore 5 /* sensitivityLabels */
        start local 5 // java.util.List sensitivityLabels
         7: .line 268
            iconst_0
            istore 6 /* i */
        start local 6 // int i
         8: goto 11
         9: .line 269
      StackMap locals: com.microsoft.sqlserver.jdbc.StreamColumns com.microsoft.sqlserver.jdbc.TDSReader int com.microsoft.sqlserver.jdbc.dataclassification.SensitivityClassification int java.util.List int
      StackMap stack:
            aload 5 /* sensitivityLabels */
            aload 0 /* this */
            aload 1 /* tdsReader */
            invokevirtual com.microsoft.sqlserver.jdbc.StreamColumns.readSensitivityLabel:(Lcom/microsoft/sqlserver/jdbc/TDSReader;)Lcom/microsoft/sqlserver/jdbc/dataclassification/Label;
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        10: .line 268
            iinc 6 /* i */ 1
      StackMap locals:
      StackMap stack:
        11: iload 6 /* i */
            iload 4 /* sensitivityLabelCount */
            if_icmplt 9
        end local 6 // int i
        12: .line 273
            aload 1 /* tdsReader */
            invokevirtual com.microsoft.sqlserver.jdbc.TDSReader.readUnsignedShort:()I
            istore 6 /* informationTypeCount */
        start local 6 // int informationTypeCount
        13: .line 275
            new java.util.ArrayList
            dup
            iload 6 /* informationTypeCount */
            invokespecial java.util.ArrayList.<init>:(I)V
            astore 7 /* informationTypes */
        start local 7 // java.util.List informationTypes
        14: .line 276
            iconst_0
            istore 8 /* i */
        start local 8 // int i
        15: goto 18
        16: .line 277
      StackMap locals: java.util.List int
      StackMap stack:
            aload 7 /* informationTypes */
            aload 0 /* this */
            aload 1 /* tdsReader */
            invokevirtual com.microsoft.sqlserver.jdbc.StreamColumns.readSensitivityInformationType:(Lcom/microsoft/sqlserver/jdbc/TDSReader;)Lcom/microsoft/sqlserver/jdbc/dataclassification/InformationType;
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        17: .line 276
            iinc 8 /* i */ 1
      StackMap locals:
      StackMap stack:
        18: iload 8 /* i */
            iload 6 /* informationTypeCount */
            if_icmplt 16
        end local 8 // int i
        19: .line 280
            aload 0 /* this */
            aload 1 /* tdsReader */
        20: .line 281
            invokevirtual com.microsoft.sqlserver.jdbc.TDSReader.getServerSupportedDataClassificationVersion:()B
            iconst_2
            if_icmplt 21
            iconst_1
            goto 22
      StackMap locals: com.microsoft.sqlserver.jdbc.StreamColumns com.microsoft.sqlserver.jdbc.TDSReader int com.microsoft.sqlserver.jdbc.dataclassification.SensitivityClassification int java.util.List int java.util.List
      StackMap stack: com.microsoft.sqlserver.jdbc.StreamColumns
        21: iconst_0
        22: .line 280
      StackMap locals: com.microsoft.sqlserver.jdbc.StreamColumns com.microsoft.sqlserver.jdbc.TDSReader int com.microsoft.sqlserver.jdbc.dataclassification.SensitivityClassification int java.util.List int java.util.List
      StackMap stack: com.microsoft.sqlserver.jdbc.StreamColumns int
            putfield com.microsoft.sqlserver.jdbc.StreamColumns.sensitivityRankSupported:Z
        23: .line 284
            getstatic com.microsoft.sqlserver.jdbc.dataclassification.SensitivityClassification$SensitivityRank.NOT_DEFINED:Lcom/microsoft/sqlserver/jdbc/dataclassification/SensitivityClassification$SensitivityRank;
            invokevirtual com.microsoft.sqlserver.jdbc.dataclassification.SensitivityClassification$SensitivityRank.getValue:()I
            istore 8 /* sensitivityRank */
        start local 8 // int sensitivityRank
        24: .line 285
            aload 0 /* this */
            getfield com.microsoft.sqlserver.jdbc.StreamColumns.sensitivityRankSupported:Z
            ifeq 28
        25: .line 286
            aload 1 /* tdsReader */
            invokevirtual com.microsoft.sqlserver.jdbc.TDSReader.readInt:()I
            istore 8 /* sensitivityRank */
        26: .line 287
            iload 8 /* sensitivityRank */
            invokestatic com.microsoft.sqlserver.jdbc.dataclassification.SensitivityClassification$SensitivityRank.isValid:(I)Z
            ifne 28
        27: .line 288
            aload 1 /* tdsReader */
            invokevirtual com.microsoft.sqlserver.jdbc.TDSReader.throwInvalidTDS:()V
        28: .line 293
      StackMap locals: int
      StackMap stack:
            aload 1 /* tdsReader */
            invokevirtual com.microsoft.sqlserver.jdbc.TDSReader.readUnsignedShort:()I
            istore 9 /* numResultSetColumns */
        start local 9 // int numResultSetColumns
        29: .line 295
            new java.util.ArrayList
            dup
            iload 9 /* numResultSetColumns */
            invokespecial java.util.ArrayList.<init>:(I)V
            astore 10 /* columnSensitivities */
        start local 10 // java.util.List columnSensitivities
        30: .line 296
            iconst_0
            istore 11 /* columnNum */
        start local 11 // int columnNum
        31: goto 61
        32: .line 299
      StackMap locals: int java.util.List int
      StackMap stack:
            aload 1 /* tdsReader */
            invokevirtual com.microsoft.sqlserver.jdbc.TDSReader.readUnsignedShort:()I
            istore 12 /* numSensitivityProperties */
        start local 12 // int numSensitivityProperties
        33: .line 300
            new java.util.ArrayList
            dup
        34: .line 301
            iload 12 /* numSensitivityProperties */
        35: .line 300
            invokespecial java.util.ArrayList.<init>:(I)V
            astore 13 /* sensitivityProperties */
        start local 13 // java.util.List sensitivityProperties
        36: .line 302
            iconst_0
            istore 14 /* sourceNum */
        start local 14 // int sourceNum
        37: goto 58
        38: .line 305
      StackMap locals: int java.util.List int
      StackMap stack:
            aload 1 /* tdsReader */
            invokevirtual com.microsoft.sqlserver.jdbc.TDSReader.readUnsignedShort:()I
            istore 15 /* sensitivityLabelIndex */
        start local 15 // int sensitivityLabelIndex
        39: .line 306
            aconst_null
            astore 16 /* label */
        start local 16 // com.microsoft.sqlserver.jdbc.dataclassification.Label label
        40: .line 307
            iload 15 /* sensitivityLabelIndex */
            ldc 2147483647
            if_icmpeq 44
        41: .line 308
            iload 15 /* sensitivityLabelIndex */
            aload 5 /* sensitivityLabels */
            invokeinterface java.util.List.size:()I
            if_icmplt 43
        42: .line 309
            aload 1 /* tdsReader */
            invokevirtual com.microsoft.sqlserver.jdbc.TDSReader.throwInvalidTDS:()V
        43: .line 311
      StackMap locals: int com.microsoft.sqlserver.jdbc.dataclassification.Label
      StackMap stack:
            aload 5 /* sensitivityLabels */
            iload 15 /* sensitivityLabelIndex */
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast com.microsoft.sqlserver.jdbc.dataclassification.Label
            astore 16 /* label */
        44: .line 314
      StackMap locals:
      StackMap stack:
            aload 1 /* tdsReader */
            invokevirtual com.microsoft.sqlserver.jdbc.TDSReader.readUnsignedShort:()I
            istore 17 /* informationTypeIndex */
        start local 17 // int informationTypeIndex
        45: .line 315
            aconst_null
            astore 18 /* informationType */
        start local 18 // com.microsoft.sqlserver.jdbc.dataclassification.InformationType informationType
        46: .line 316
            iload 17 /* informationTypeIndex */
            ldc 2147483647
            if_icmpeq 49
        47: .line 317
            aload 7 /* informationTypes */
            invokeinterface java.util.List.size:()I
            pop
        48: .line 318
            aload 7 /* informationTypes */
            iload 17 /* informationTypeIndex */
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast com.microsoft.sqlserver.jdbc.dataclassification.InformationType
            astore 18 /* informationType */
        49: .line 321
      StackMap locals: int com.microsoft.sqlserver.jdbc.dataclassification.InformationType
      StackMap stack:
            getstatic com.microsoft.sqlserver.jdbc.dataclassification.SensitivityClassification$SensitivityRank.NOT_DEFINED:Lcom/microsoft/sqlserver/jdbc/dataclassification/SensitivityClassification$SensitivityRank;
            invokevirtual com.microsoft.sqlserver.jdbc.dataclassification.SensitivityClassification$SensitivityRank.getValue:()I
            istore 19 /* sensitivityRankProperty */
        start local 19 // int sensitivityRankProperty
        50: .line 322
            aload 0 /* this */
            getfield com.microsoft.sqlserver.jdbc.StreamColumns.sensitivityRankSupported:Z
            ifeq 56
        51: .line 323
            aload 1 /* tdsReader */
            invokevirtual com.microsoft.sqlserver.jdbc.TDSReader.readInt:()I
            istore 19 /* sensitivityRankProperty */
        52: .line 324
            iload 19 /* sensitivityRankProperty */
            invokestatic com.microsoft.sqlserver.jdbc.dataclassification.SensitivityClassification$SensitivityRank.isValid:(I)Z
            ifne 54
        53: .line 325
            aload 1 /* tdsReader */
            invokevirtual com.microsoft.sqlserver.jdbc.TDSReader.throwInvalidTDS:()V
        54: .line 328
      StackMap locals: int
      StackMap stack:
            aload 13 /* sensitivityProperties */
            new com.microsoft.sqlserver.jdbc.dataclassification.SensitivityProperty
            dup
            aload 16 /* label */
            aload 18 /* informationType */
            iload 19 /* sensitivityRankProperty */
            invokespecial com.microsoft.sqlserver.jdbc.dataclassification.SensitivityProperty.<init>:(Lcom/microsoft/sqlserver/jdbc/dataclassification/Label;Lcom/microsoft/sqlserver/jdbc/dataclassification/InformationType;I)V
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        55: .line 329
            goto 57
        56: .line 330
      StackMap locals:
      StackMap stack:
            aload 13 /* sensitivityProperties */
            new com.microsoft.sqlserver.jdbc.dataclassification.SensitivityProperty
            dup
            aload 16 /* label */
            aload 18 /* informationType */
            invokespecial com.microsoft.sqlserver.jdbc.dataclassification.SensitivityProperty.<init>:(Lcom/microsoft/sqlserver/jdbc/dataclassification/Label;Lcom/microsoft/sqlserver/jdbc/dataclassification/InformationType;)V
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        end local 19 // int sensitivityRankProperty
        end local 18 // com.microsoft.sqlserver.jdbc.dataclassification.InformationType informationType
        end local 17 // int informationTypeIndex
        end local 16 // com.microsoft.sqlserver.jdbc.dataclassification.Label label
        end local 15 // int sensitivityLabelIndex
        57: .line 302
      StackMap locals: com.microsoft.sqlserver.jdbc.StreamColumns com.microsoft.sqlserver.jdbc.TDSReader int com.microsoft.sqlserver.jdbc.dataclassification.SensitivityClassification int java.util.List int java.util.List int int java.util.List int int java.util.List int
      StackMap stack:
            iinc 14 /* sourceNum */ 1
      StackMap locals:
      StackMap stack:
        58: iload 14 /* sourceNum */
            iload 12 /* numSensitivityProperties */
            if_icmplt 38
        end local 14 // int sourceNum
        59: .line 333
            aload 10 /* columnSensitivities */
            new com.microsoft.sqlserver.jdbc.dataclassification.ColumnSensitivity
            dup
            aload 13 /* sensitivityProperties */
            invokespecial com.microsoft.sqlserver.jdbc.dataclassification.ColumnSensitivity.<init>:(Ljava/util/List;)V
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        end local 13 // java.util.List sensitivityProperties
        end local 12 // int numSensitivityProperties
        60: .line 296
            iinc 11 /* columnNum */ 1
      StackMap locals:
      StackMap stack:
        61: iload 11 /* columnNum */
            iload 9 /* numResultSetColumns */
            if_icmplt 32
        end local 11 // int columnNum
        62: .line 335
            aload 0 /* this */
            getfield com.microsoft.sqlserver.jdbc.StreamColumns.sensitivityRankSupported:Z
            ifeq 67
        63: .line 336
            new com.microsoft.sqlserver.jdbc.dataclassification.SensitivityClassification
            dup
            aload 5 /* sensitivityLabels */
            aload 7 /* informationTypes */
        64: .line 337
            aload 10 /* columnSensitivities */
            iload 8 /* sensitivityRank */
        65: .line 336
            invokespecial com.microsoft.sqlserver.jdbc.dataclassification.SensitivityClassification.<init>:(Ljava/util/List;Ljava/util/List;Ljava/util/List;I)V
            astore 3 /* sensitivityClassification */
        66: .line 338
            goto 70
        67: .line 339
      StackMap locals:
      StackMap stack:
            new com.microsoft.sqlserver.jdbc.dataclassification.SensitivityClassification
            dup
            aload 5 /* sensitivityLabels */
            aload 7 /* informationTypes */
        68: .line 340
            aload 10 /* columnSensitivities */
        69: .line 339
            invokespecial com.microsoft.sqlserver.jdbc.dataclassification.SensitivityClassification.<init>:(Ljava/util/List;Ljava/util/List;Ljava/util/List;)V
            astore 3 /* sensitivityClassification */
        70: .line 343
      StackMap locals:
      StackMap stack:
            aload 3 /* sensitivityClassification */
            areturn
        end local 10 // java.util.List columnSensitivities
        end local 9 // int numResultSetColumns
        end local 8 // int sensitivityRank
        end local 7 // java.util.List informationTypes
        end local 6 // int informationTypeCount
        end local 5 // java.util.List sensitivityLabels
        end local 4 // int sensitivityLabelCount
        end local 3 // com.microsoft.sqlserver.jdbc.dataclassification.SensitivityClassification sensitivityClassification
        end local 2 // int dataClassificationToken
        end local 1 // com.microsoft.sqlserver.jdbc.TDSReader tdsReader
        end local 0 // com.microsoft.sqlserver.jdbc.StreamColumns this
      LocalVariableTable:
        Start  End  Slot                       Name  Signature
            0   71     0                       this  Lcom/microsoft/sqlserver/jdbc/StreamColumns;
            0   71     1                  tdsReader  Lcom/microsoft/sqlserver/jdbc/TDSReader;
            3   71     2    dataClassificationToken  I
            5   71     3  sensitivityClassification  Lcom/microsoft/sqlserver/jdbc/dataclassification/SensitivityClassification;
            6   71     4      sensitivityLabelCount  I
            7   71     5          sensitivityLabels  Ljava/util/List<Lcom/microsoft/sqlserver/jdbc/dataclassification/Label;>;
            8   12     6                          i  I
           13   71     6       informationTypeCount  I
           14   71     7           informationTypes  Ljava/util/List<Lcom/microsoft/sqlserver/jdbc/dataclassification/InformationType;>;
           15   19     8                          i  I
           24   71     8            sensitivityRank  I
           29   71     9        numResultSetColumns  I
           30   71    10        columnSensitivities  Ljava/util/List<Lcom/microsoft/sqlserver/jdbc/dataclassification/ColumnSensitivity;>;
           31   62    11                  columnNum  I
           33   60    12   numSensitivityProperties  I
           36   60    13      sensitivityProperties  Ljava/util/List<Lcom/microsoft/sqlserver/jdbc/dataclassification/SensitivityProperty;>;
           37   59    14                  sourceNum  I
           39   57    15      sensitivityLabelIndex  I
           40   57    16                      label  Lcom/microsoft/sqlserver/jdbc/dataclassification/Label;
           45   57    17       informationTypeIndex  I
           46   57    18            informationType  Lcom/microsoft/sqlserver/jdbc/dataclassification/InformationType;
           50   57    19    sensitivityRankProperty  I
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException
    MethodParameters:
           Name  Flags
      tdsReader  

  com.microsoft.sqlserver.jdbc.Column[] buildColumns(com.microsoft.sqlserver.jdbc.StreamColInfo, com.microsoft.sqlserver.jdbc.StreamTabName);
    descriptor: (Lcom/microsoft/sqlserver/jdbc/StreamColInfo;Lcom/microsoft/sqlserver/jdbc/StreamTabName;)[Lcom/microsoft/sqlserver/jdbc/Column;
    flags: (0x0000) 
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // com.microsoft.sqlserver.jdbc.StreamColumns this
        start local 1 // com.microsoft.sqlserver.jdbc.StreamColInfo colInfoToken
        start local 2 // com.microsoft.sqlserver.jdbc.StreamTabName tabNameToken
         0: .line 351
            aload 1 /* colInfoToken */
            ifnull 2
            aload 2 /* tabNameToken */
            ifnull 2
         1: .line 352
            aload 2 /* tabNameToken */
            aload 0 /* this */
            getfield com.microsoft.sqlserver.jdbc.StreamColumns.columns:[Lcom/microsoft/sqlserver/jdbc/Column;
            aload 1 /* colInfoToken */
            aload 0 /* this */
            getfield com.microsoft.sqlserver.jdbc.StreamColumns.columns:[Lcom/microsoft/sqlserver/jdbc/Column;
            invokevirtual com.microsoft.sqlserver.jdbc.StreamColInfo.applyTo:([Lcom/microsoft/sqlserver/jdbc/Column;)I
            invokevirtual com.microsoft.sqlserver.jdbc.StreamTabName.applyTo:([Lcom/microsoft/sqlserver/jdbc/Column;I)V
         2: .line 354
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.microsoft.sqlserver.jdbc.StreamColumns.columns:[Lcom/microsoft/sqlserver/jdbc/Column;
            areturn
        end local 2 // com.microsoft.sqlserver.jdbc.StreamTabName tabNameToken
        end local 1 // com.microsoft.sqlserver.jdbc.StreamColInfo colInfoToken
        end local 0 // com.microsoft.sqlserver.jdbc.StreamColumns this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    3     0          this  Lcom/microsoft/sqlserver/jdbc/StreamColumns;
            0    3     1  colInfoToken  Lcom/microsoft/sqlserver/jdbc/StreamColInfo;
            0    3     2  tabNameToken  Lcom/microsoft/sqlserver/jdbc/StreamTabName;
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException
    MethodParameters:
              Name  Flags
      colInfoToken  
      tabNameToken  
}
SourceFile: "StreamColumns.java"
InnerClasses:
  public final SensitivityRank = com.microsoft.sqlserver.jdbc.dataclassification.SensitivityClassification$SensitivityRank of com.microsoft.sqlserver.jdbc.dataclassification.SensitivityClassification