class com.sun.jndi.dns.ResourceRecords
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: com.sun.jndi.dns.ResourceRecords
  super_class: java.lang.Object
{
  java.util.Vector<com.sun.jndi.dns.ResourceRecord> question;
    descriptor: Ljava/util/Vector;
    flags: (0x0000) 
    Signature: Ljava/util/Vector<Lcom/sun/jndi/dns/ResourceRecord;>;

  java.util.Vector<com.sun.jndi.dns.ResourceRecord> answer;
    descriptor: Ljava/util/Vector;
    flags: (0x0000) 
    Signature: Ljava/util/Vector<Lcom/sun/jndi/dns/ResourceRecord;>;

  java.util.Vector<com.sun.jndi.dns.ResourceRecord> authority;
    descriptor: Ljava/util/Vector;
    flags: (0x0000) 
    Signature: Ljava/util/Vector<Lcom/sun/jndi/dns/ResourceRecord;>;

  java.util.Vector<com.sun.jndi.dns.ResourceRecord> additional;
    descriptor: Ljava/util/Vector;
    flags: (0x0000) 
    Signature: Ljava/util/Vector<Lcom/sun/jndi/dns/ResourceRecord;>;

  boolean zoneXfer;
    descriptor: Z
    flags: (0x0000) 

  void <init>(byte[], int, com.sun.jndi.dns.Header, boolean);
    descriptor: ([BILcom/sun/jndi/dns/Header;Z)V
    flags: (0x0000) 
    Code:
      stack=4, locals=5, args_size=5
        start local 0 // com.sun.jndi.dns.ResourceRecords this
        start local 1 // byte[] msg
        start local 2 // int msgLen
        start local 3 // com.sun.jndi.dns.Header hdr
        start local 4 // boolean zoneXfer
         0: .line 66
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 48
            aload 0 /* this */
            new java.util.Vector
            dup
            invokespecial java.util.Vector.<init>:()V
            putfield com.sun.jndi.dns.ResourceRecords.question:Ljava/util/Vector;
         2: .line 49
            aload 0 /* this */
            new java.util.Vector
            dup
            invokespecial java.util.Vector.<init>:()V
            putfield com.sun.jndi.dns.ResourceRecords.answer:Ljava/util/Vector;
         3: .line 50
            aload 0 /* this */
            new java.util.Vector
            dup
            invokespecial java.util.Vector.<init>:()V
            putfield com.sun.jndi.dns.ResourceRecords.authority:Ljava/util/Vector;
         4: .line 51
            aload 0 /* this */
            new java.util.Vector
            dup
            invokespecial java.util.Vector.<init>:()V
            putfield com.sun.jndi.dns.ResourceRecords.additional:Ljava/util/Vector;
         5: .line 68
            iload 4 /* zoneXfer */
            ifeq 7
         6: .line 69
            aload 0 /* this */
            getfield com.sun.jndi.dns.ResourceRecords.answer:Ljava/util/Vector;
            sipush 8192
            invokevirtual java.util.Vector.ensureCapacity:(I)V
         7: .line 71
      StackMap locals: com.sun.jndi.dns.ResourceRecords byte[] int com.sun.jndi.dns.Header int
      StackMap stack:
            aload 0 /* this */
            iload 4 /* zoneXfer */
            putfield com.sun.jndi.dns.ResourceRecords.zoneXfer:Z
         8: .line 72
            aload 0 /* this */
            aload 1 /* msg */
            iload 2 /* msgLen */
            aload 3 /* hdr */
            invokevirtual com.sun.jndi.dns.ResourceRecords.add:([BILcom/sun/jndi/dns/Header;)V
         9: .line 73
            return
        end local 4 // boolean zoneXfer
        end local 3 // com.sun.jndi.dns.Header hdr
        end local 2 // int msgLen
        end local 1 // byte[] msg
        end local 0 // com.sun.jndi.dns.ResourceRecords this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   10     0      this  Lcom/sun/jndi/dns/ResourceRecords;
            0   10     1       msg  [B
            0   10     2    msgLen  I
            0   10     3       hdr  Lcom/sun/jndi/dns/Header;
            0   10     4  zoneXfer  Z
    Exceptions:
      throws javax.naming.NamingException
    MethodParameters:
          Name  Flags
      msg       
      msgLen    
      hdr       
      zoneXfer  

  int getFirstAnsType();
    descriptor: ()I
    flags: (0x0000) 
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.sun.jndi.dns.ResourceRecords this
         0: .line 80
            aload 0 /* this */
            getfield com.sun.jndi.dns.ResourceRecords.answer:Ljava/util/Vector;
            invokevirtual java.util.Vector.size:()I
            ifne 2
         1: .line 81
            iconst_m1
            ireturn
         2: .line 83
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.jndi.dns.ResourceRecords.answer:Ljava/util/Vector;
            invokevirtual java.util.Vector.firstElement:()Ljava/lang/Object;
            checkcast com.sun.jndi.dns.ResourceRecord
            invokevirtual com.sun.jndi.dns.ResourceRecord.getType:()I
            ireturn
        end local 0 // com.sun.jndi.dns.ResourceRecords this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lcom/sun/jndi/dns/ResourceRecords;

  int getLastAnsType();
    descriptor: ()I
    flags: (0x0000) 
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.sun.jndi.dns.ResourceRecords this
         0: .line 91
            aload 0 /* this */
            getfield com.sun.jndi.dns.ResourceRecords.answer:Ljava/util/Vector;
            invokevirtual java.util.Vector.size:()I
            ifne 2
         1: .line 92
            iconst_m1
            ireturn
         2: .line 94
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.jndi.dns.ResourceRecords.answer:Ljava/util/Vector;
            invokevirtual java.util.Vector.lastElement:()Ljava/lang/Object;
            checkcast com.sun.jndi.dns.ResourceRecord
            invokevirtual com.sun.jndi.dns.ResourceRecord.getType:()I
            ireturn
        end local 0 // com.sun.jndi.dns.ResourceRecords this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lcom/sun/jndi/dns/ResourceRecords;

  void add(byte[], int, com.sun.jndi.dns.Header);
    descriptor: ([BILcom/sun/jndi/dns/Header;)V
    flags: (0x0000) 
    Code:
      stack=7, locals=7, args_size=4
        start local 0 // com.sun.jndi.dns.ResourceRecords this
        start local 1 // byte[] msg
        start local 2 // int msgLen
        start local 3 // com.sun.jndi.dns.Header hdr
         0: .line 105
            bipush 12
            istore 5 /* pos */
        start local 5 // int pos
         1: .line 108
            iconst_0
            istore 6 /* i */
        start local 6 // int i
         2: goto 8
         3: .line 109
      StackMap locals: com.sun.jndi.dns.ResourceRecords byte[] int com.sun.jndi.dns.Header top int int
      StackMap stack:
            new com.sun.jndi.dns.ResourceRecord
            dup
            aload 1 /* msg */
            iload 2 /* msgLen */
            iload 5 /* pos */
            iconst_1
            iconst_0
            invokespecial com.sun.jndi.dns.ResourceRecord.<init>:([BIIZZ)V
            astore 4 /* rr */
        start local 4 // com.sun.jndi.dns.ResourceRecord rr
         4: .line 110
            aload 0 /* this */
            getfield com.sun.jndi.dns.ResourceRecords.zoneXfer:Z
            ifne 6
         5: .line 111
            aload 0 /* this */
            getfield com.sun.jndi.dns.ResourceRecords.question:Ljava/util/Vector;
            aload 4 /* rr */
            invokevirtual java.util.Vector.addElement:(Ljava/lang/Object;)V
         6: .line 113
      StackMap locals: com.sun.jndi.dns.ResourceRecords byte[] int com.sun.jndi.dns.Header com.sun.jndi.dns.ResourceRecord int int
      StackMap stack:
            iload 5 /* pos */
            aload 4 /* rr */
            invokevirtual com.sun.jndi.dns.ResourceRecord.size:()I
            iadd
            istore 5 /* pos */
         7: .line 108
            iinc 6 /* i */ 1
        end local 4 // com.sun.jndi.dns.ResourceRecord rr
      StackMap locals: com.sun.jndi.dns.ResourceRecords byte[] int com.sun.jndi.dns.Header top int int
      StackMap stack:
         8: iload 6 /* i */
            aload 3 /* hdr */
            getfield com.sun.jndi.dns.Header.numQuestions:I
            if_icmplt 3
        end local 6 // int i
         9: .line 116
            iconst_0
            istore 6 /* i */
        start local 6 // int i
        10: goto 18
        11: .line 117
      StackMap locals:
      StackMap stack:
            new com.sun.jndi.dns.ResourceRecord
            dup
        12: .line 118
            aload 1 /* msg */
            iload 2 /* msgLen */
            iload 5 /* pos */
            iconst_0
            aload 0 /* this */
            getfield com.sun.jndi.dns.ResourceRecords.zoneXfer:Z
            ifeq 13
            iconst_0
            goto 14
      StackMap locals: com.sun.jndi.dns.ResourceRecords byte[] int com.sun.jndi.dns.Header top int int
      StackMap stack: new 11 new 11 byte[] int int int
        13: iconst_1
        14: .line 117
      StackMap locals: com.sun.jndi.dns.ResourceRecords byte[] int com.sun.jndi.dns.Header top int int
      StackMap stack: new 11 new 11 byte[] int int int int
            invokespecial com.sun.jndi.dns.ResourceRecord.<init>:([BIIZZ)V
            astore 4 /* rr */
        start local 4 // com.sun.jndi.dns.ResourceRecord rr
        15: .line 119
            aload 0 /* this */
            getfield com.sun.jndi.dns.ResourceRecords.answer:Ljava/util/Vector;
            aload 4 /* rr */
            invokevirtual java.util.Vector.addElement:(Ljava/lang/Object;)V
        16: .line 120
            iload 5 /* pos */
            aload 4 /* rr */
            invokevirtual com.sun.jndi.dns.ResourceRecord.size:()I
            iadd
            istore 5 /* pos */
        17: .line 116
            iinc 6 /* i */ 1
        end local 4 // com.sun.jndi.dns.ResourceRecord rr
      StackMap locals:
      StackMap stack:
        18: iload 6 /* i */
            aload 3 /* hdr */
            getfield com.sun.jndi.dns.Header.numAnswers:I
            if_icmplt 11
        end local 6 // int i
        19: .line 123
            aload 0 /* this */
            getfield com.sun.jndi.dns.ResourceRecords.zoneXfer:Z
            ifeq 21
        20: .line 124
            return
        21: .line 127
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 6 /* i */
        start local 6 // int i
        22: goto 27
        23: .line 128
      StackMap locals: int
      StackMap stack:
            new com.sun.jndi.dns.ResourceRecord
            dup
            aload 1 /* msg */
            iload 2 /* msgLen */
            iload 5 /* pos */
            iconst_0
            iconst_1
            invokespecial com.sun.jndi.dns.ResourceRecord.<init>:([BIIZZ)V
            astore 4 /* rr */
        start local 4 // com.sun.jndi.dns.ResourceRecord rr
        24: .line 129
            aload 0 /* this */
            getfield com.sun.jndi.dns.ResourceRecords.authority:Ljava/util/Vector;
            aload 4 /* rr */
            invokevirtual java.util.Vector.addElement:(Ljava/lang/Object;)V
        25: .line 130
            iload 5 /* pos */
            aload 4 /* rr */
            invokevirtual com.sun.jndi.dns.ResourceRecord.size:()I
            iadd
            istore 5 /* pos */
        26: .line 127
            iinc 6 /* i */ 1
        end local 4 // com.sun.jndi.dns.ResourceRecord rr
      StackMap locals:
      StackMap stack:
        27: iload 6 /* i */
            aload 3 /* hdr */
            getfield com.sun.jndi.dns.Header.numAuthorities:I
            if_icmplt 23
        end local 6 // int i
        28: .line 135
            goto 33
      StackMap locals: com.sun.jndi.dns.ResourceRecords byte[] int com.sun.jndi.dns.Header top int
      StackMap stack: java.lang.IndexOutOfBoundsException
        29: pop
        30: .line 136
            new javax.naming.CommunicationException
            dup
        31: .line 137
            ldc "DNS error: corrupted message"
        32: .line 136
            invokespecial javax.naming.CommunicationException.<init>:(Ljava/lang/String;)V
            athrow
        33: .line 139
      StackMap locals:
      StackMap stack:
            return
        end local 5 // int pos
        end local 3 // com.sun.jndi.dns.Header hdr
        end local 2 // int msgLen
        end local 1 // byte[] msg
        end local 0 // com.sun.jndi.dns.ResourceRecords this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   34     0    this  Lcom/sun/jndi/dns/ResourceRecords;
            0   34     1     msg  [B
            0   34     2  msgLen  I
            0   34     3     hdr  Lcom/sun/jndi/dns/Header;
            4    8     4      rr  Lcom/sun/jndi/dns/ResourceRecord;
           15   18     4      rr  Lcom/sun/jndi/dns/ResourceRecord;
           24   27     4      rr  Lcom/sun/jndi/dns/ResourceRecord;
            1   34     5     pos  I
            2    9     6       i  I
           10   19     6       i  I
           22   28     6       i  I
      Exception table:
        from    to  target  type
           1    20      29  Class java.lang.IndexOutOfBoundsException
          21    28      29  Class java.lang.IndexOutOfBoundsException
    Exceptions:
      throws javax.naming.NamingException
    MethodParameters:
        Name  Flags
      msg     
      msgLen  
      hdr     
}
SourceFile: "ResourceRecords.java"