public class io.netty.handler.codec.dns.DefaultDnsRecordEncoder implements io.netty.handler.codec.dns.DnsRecordEncoder
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: io.netty.handler.codec.dns.DefaultDnsRecordEncoder
  super_class: java.lang.Object
{
  private static final int PREFIX_MASK;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 7

  protected void <init>();
    descriptor: ()V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // io.netty.handler.codec.dns.DefaultDnsRecordEncoder this
         0: .line 39
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
            return
        end local 0 // io.netty.handler.codec.dns.DefaultDnsRecordEncoder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lio/netty/handler/codec/dns/DefaultDnsRecordEncoder;

  public final void encodeQuestion(io.netty.handler.codec.dns.DnsQuestion, io.netty.buffer.ByteBuf);
    descriptor: (Lio/netty/handler/codec/dns/DnsQuestion;Lio/netty/buffer/ByteBuf;)V
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // io.netty.handler.codec.dns.DefaultDnsRecordEncoder this
        start local 1 // io.netty.handler.codec.dns.DnsQuestion question
        start local 2 // io.netty.buffer.ByteBuf out
         0: .line 43
            aload 0 /* this */
            aload 1 /* question */
            invokeinterface io.netty.handler.codec.dns.DnsQuestion.name:()Ljava/lang/String;
            aload 2 /* out */
            invokevirtual io.netty.handler.codec.dns.DefaultDnsRecordEncoder.encodeName:(Ljava/lang/String;Lio/netty/buffer/ByteBuf;)V
         1: .line 44
            aload 2 /* out */
            aload 1 /* question */
            invokeinterface io.netty.handler.codec.dns.DnsQuestion.type:()Lio/netty/handler/codec/dns/DnsRecordType;
            invokevirtual io.netty.handler.codec.dns.DnsRecordType.intValue:()I
            invokevirtual io.netty.buffer.ByteBuf.writeShort:(I)Lio/netty/buffer/ByteBuf;
            pop
         2: .line 45
            aload 2 /* out */
            aload 1 /* question */
            invokeinterface io.netty.handler.codec.dns.DnsQuestion.dnsClass:()I
            invokevirtual io.netty.buffer.ByteBuf.writeShort:(I)Lio/netty/buffer/ByteBuf;
            pop
         3: .line 46
            return
        end local 2 // io.netty.buffer.ByteBuf out
        end local 1 // io.netty.handler.codec.dns.DnsQuestion question
        end local 0 // io.netty.handler.codec.dns.DefaultDnsRecordEncoder this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    4     0      this  Lio/netty/handler/codec/dns/DefaultDnsRecordEncoder;
            0    4     1  question  Lio/netty/handler/codec/dns/DnsQuestion;
            0    4     2       out  Lio/netty/buffer/ByteBuf;
    Exceptions:
      throws java.lang.Exception
    MethodParameters:
          Name  Flags
      question  
      out       

  public void encodeRecord(io.netty.handler.codec.dns.DnsRecord, io.netty.buffer.ByteBuf);
    descriptor: (Lio/netty/handler/codec/dns/DnsRecord;Lio/netty/buffer/ByteBuf;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // io.netty.handler.codec.dns.DefaultDnsRecordEncoder this
        start local 1 // io.netty.handler.codec.dns.DnsRecord record
        start local 2 // io.netty.buffer.ByteBuf out
         0: .line 50
            aload 1 /* record */
            instanceof io.netty.handler.codec.dns.DnsQuestion
            ifeq 3
         1: .line 51
            aload 0 /* this */
            aload 1 /* record */
            checkcast io.netty.handler.codec.dns.DnsQuestion
            aload 2 /* out */
            invokevirtual io.netty.handler.codec.dns.DefaultDnsRecordEncoder.encodeQuestion:(Lio/netty/handler/codec/dns/DnsQuestion;Lio/netty/buffer/ByteBuf;)V
         2: .line 52
            goto 16
      StackMap locals:
      StackMap stack:
         3: aload 1 /* record */
            instanceof io.netty.handler.codec.dns.DnsPtrRecord
            ifeq 6
         4: .line 53
            aload 0 /* this */
            aload 1 /* record */
            checkcast io.netty.handler.codec.dns.DnsPtrRecord
            aload 2 /* out */
            invokevirtual io.netty.handler.codec.dns.DefaultDnsRecordEncoder.encodePtrRecord:(Lio/netty/handler/codec/dns/DnsPtrRecord;Lio/netty/buffer/ByteBuf;)V
         5: .line 54
            goto 16
      StackMap locals:
      StackMap stack:
         6: aload 1 /* record */
            instanceof io.netty.handler.codec.dns.DnsOptEcsRecord
            ifeq 9
         7: .line 55
            aload 0 /* this */
            aload 1 /* record */
            checkcast io.netty.handler.codec.dns.DnsOptEcsRecord
            aload 2 /* out */
            invokevirtual io.netty.handler.codec.dns.DefaultDnsRecordEncoder.encodeOptEcsRecord:(Lio/netty/handler/codec/dns/DnsOptEcsRecord;Lio/netty/buffer/ByteBuf;)V
         8: .line 56
            goto 16
      StackMap locals:
      StackMap stack:
         9: aload 1 /* record */
            instanceof io.netty.handler.codec.dns.DnsOptPseudoRecord
            ifeq 12
        10: .line 57
            aload 0 /* this */
            aload 1 /* record */
            checkcast io.netty.handler.codec.dns.DnsOptPseudoRecord
            aload 2 /* out */
            invokevirtual io.netty.handler.codec.dns.DefaultDnsRecordEncoder.encodeOptPseudoRecord:(Lio/netty/handler/codec/dns/DnsOptPseudoRecord;Lio/netty/buffer/ByteBuf;)V
        11: .line 58
            goto 16
      StackMap locals:
      StackMap stack:
        12: aload 1 /* record */
            instanceof io.netty.handler.codec.dns.DnsRawRecord
            ifeq 15
        13: .line 59
            aload 0 /* this */
            aload 1 /* record */
            checkcast io.netty.handler.codec.dns.DnsRawRecord
            aload 2 /* out */
            invokevirtual io.netty.handler.codec.dns.DefaultDnsRecordEncoder.encodeRawRecord:(Lio/netty/handler/codec/dns/DnsRawRecord;Lio/netty/buffer/ByteBuf;)V
        14: .line 60
            goto 16
        15: .line 61
      StackMap locals:
      StackMap stack:
            new io.netty.handler.codec.UnsupportedMessageTypeException
            dup
            aload 1 /* record */
            invokestatic io.netty.util.internal.StringUtil.simpleClassName:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial io.netty.handler.codec.UnsupportedMessageTypeException.<init>:(Ljava/lang/String;)V
            athrow
        16: .line 63
      StackMap locals:
      StackMap stack:
            return
        end local 2 // io.netty.buffer.ByteBuf out
        end local 1 // io.netty.handler.codec.dns.DnsRecord record
        end local 0 // io.netty.handler.codec.dns.DefaultDnsRecordEncoder this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   17     0    this  Lio/netty/handler/codec/dns/DefaultDnsRecordEncoder;
            0   17     1  record  Lio/netty/handler/codec/dns/DnsRecord;
            0   17     2     out  Lio/netty/buffer/ByteBuf;
    Exceptions:
      throws java.lang.Exception
    MethodParameters:
        Name  Flags
      record  
      out     

  private void encodeRecord0(io.netty.handler.codec.dns.DnsRecord, io.netty.buffer.ByteBuf);
    descriptor: (Lio/netty/handler/codec/dns/DnsRecord;Lio/netty/buffer/ByteBuf;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // io.netty.handler.codec.dns.DefaultDnsRecordEncoder this
        start local 1 // io.netty.handler.codec.dns.DnsRecord record
        start local 2 // io.netty.buffer.ByteBuf out
         0: .line 66
            aload 0 /* this */
            aload 1 /* record */
            invokeinterface io.netty.handler.codec.dns.DnsRecord.name:()Ljava/lang/String;
            aload 2 /* out */
            invokevirtual io.netty.handler.codec.dns.DefaultDnsRecordEncoder.encodeName:(Ljava/lang/String;Lio/netty/buffer/ByteBuf;)V
         1: .line 67
            aload 2 /* out */
            aload 1 /* record */
            invokeinterface io.netty.handler.codec.dns.DnsRecord.type:()Lio/netty/handler/codec/dns/DnsRecordType;
            invokevirtual io.netty.handler.codec.dns.DnsRecordType.intValue:()I
            invokevirtual io.netty.buffer.ByteBuf.writeShort:(I)Lio/netty/buffer/ByteBuf;
            pop
         2: .line 68
            aload 2 /* out */
            aload 1 /* record */
            invokeinterface io.netty.handler.codec.dns.DnsRecord.dnsClass:()I
            invokevirtual io.netty.buffer.ByteBuf.writeShort:(I)Lio/netty/buffer/ByteBuf;
            pop
         3: .line 69
            aload 2 /* out */
            aload 1 /* record */
            invokeinterface io.netty.handler.codec.dns.DnsRecord.timeToLive:()J
            l2i
            invokevirtual io.netty.buffer.ByteBuf.writeInt:(I)Lio/netty/buffer/ByteBuf;
            pop
         4: .line 70
            return
        end local 2 // io.netty.buffer.ByteBuf out
        end local 1 // io.netty.handler.codec.dns.DnsRecord record
        end local 0 // io.netty.handler.codec.dns.DefaultDnsRecordEncoder this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    5     0    this  Lio/netty/handler/codec/dns/DefaultDnsRecordEncoder;
            0    5     1  record  Lio/netty/handler/codec/dns/DnsRecord;
            0    5     2     out  Lio/netty/buffer/ByteBuf;
    Exceptions:
      throws java.lang.Exception
    MethodParameters:
        Name  Flags
      record  
      out     

  private void encodePtrRecord(io.netty.handler.codec.dns.DnsPtrRecord, io.netty.buffer.ByteBuf);
    descriptor: (Lio/netty/handler/codec/dns/DnsPtrRecord;Lio/netty/buffer/ByteBuf;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // io.netty.handler.codec.dns.DefaultDnsRecordEncoder this
        start local 1 // io.netty.handler.codec.dns.DnsPtrRecord record
        start local 2 // io.netty.buffer.ByteBuf out
         0: .line 73
            aload 0 /* this */
            aload 1 /* record */
            aload 2 /* out */
            invokevirtual io.netty.handler.codec.dns.DefaultDnsRecordEncoder.encodeRecord0:(Lio/netty/handler/codec/dns/DnsRecord;Lio/netty/buffer/ByteBuf;)V
         1: .line 74
            aload 0 /* this */
            aload 1 /* record */
            invokeinterface io.netty.handler.codec.dns.DnsPtrRecord.hostname:()Ljava/lang/String;
            aload 2 /* out */
            invokevirtual io.netty.handler.codec.dns.DefaultDnsRecordEncoder.encodeName:(Ljava/lang/String;Lio/netty/buffer/ByteBuf;)V
         2: .line 75
            return
        end local 2 // io.netty.buffer.ByteBuf out
        end local 1 // io.netty.handler.codec.dns.DnsPtrRecord record
        end local 0 // io.netty.handler.codec.dns.DefaultDnsRecordEncoder this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    3     0    this  Lio/netty/handler/codec/dns/DefaultDnsRecordEncoder;
            0    3     1  record  Lio/netty/handler/codec/dns/DnsPtrRecord;
            0    3     2     out  Lio/netty/buffer/ByteBuf;
    Exceptions:
      throws java.lang.Exception
    MethodParameters:
        Name  Flags
      record  
      out     

  private void encodeOptPseudoRecord(io.netty.handler.codec.dns.DnsOptPseudoRecord, io.netty.buffer.ByteBuf);
    descriptor: (Lio/netty/handler/codec/dns/DnsOptPseudoRecord;Lio/netty/buffer/ByteBuf;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // io.netty.handler.codec.dns.DefaultDnsRecordEncoder this
        start local 1 // io.netty.handler.codec.dns.DnsOptPseudoRecord record
        start local 2 // io.netty.buffer.ByteBuf out
         0: .line 78
            aload 0 /* this */
            aload 1 /* record */
            aload 2 /* out */
            invokevirtual io.netty.handler.codec.dns.DefaultDnsRecordEncoder.encodeRecord0:(Lio/netty/handler/codec/dns/DnsRecord;Lio/netty/buffer/ByteBuf;)V
         1: .line 79
            aload 2 /* out */
            iconst_0
            invokevirtual io.netty.buffer.ByteBuf.writeShort:(I)Lio/netty/buffer/ByteBuf;
            pop
         2: .line 80
            return
        end local 2 // io.netty.buffer.ByteBuf out
        end local 1 // io.netty.handler.codec.dns.DnsOptPseudoRecord record
        end local 0 // io.netty.handler.codec.dns.DefaultDnsRecordEncoder this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    3     0    this  Lio/netty/handler/codec/dns/DefaultDnsRecordEncoder;
            0    3     1  record  Lio/netty/handler/codec/dns/DnsOptPseudoRecord;
            0    3     2     out  Lio/netty/buffer/ByteBuf;
    Exceptions:
      throws java.lang.Exception
    MethodParameters:
        Name  Flags
      record  
      out     

  private void encodeOptEcsRecord(io.netty.handler.codec.dns.DnsOptEcsRecord, io.netty.buffer.ByteBuf);
    descriptor: (Lio/netty/handler/codec/dns/DnsOptEcsRecord;Lio/netty/buffer/ByteBuf;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=12, args_size=3
        start local 0 // io.netty.handler.codec.dns.DefaultDnsRecordEncoder this
        start local 1 // io.netty.handler.codec.dns.DnsOptEcsRecord record
        start local 2 // io.netty.buffer.ByteBuf out
         0: .line 83
            aload 0 /* this */
            aload 1 /* record */
            aload 2 /* out */
            invokevirtual io.netty.handler.codec.dns.DefaultDnsRecordEncoder.encodeRecord0:(Lio/netty/handler/codec/dns/DnsRecord;Lio/netty/buffer/ByteBuf;)V
         1: .line 85
            aload 1 /* record */
            invokeinterface io.netty.handler.codec.dns.DnsOptEcsRecord.sourcePrefixLength:()I
            istore 3 /* sourcePrefixLength */
        start local 3 // int sourcePrefixLength
         2: .line 86
            aload 1 /* record */
            invokeinterface io.netty.handler.codec.dns.DnsOptEcsRecord.scopePrefixLength:()I
            istore 4 /* scopePrefixLength */
        start local 4 // int scopePrefixLength
         3: .line 87
            iload 3 /* sourcePrefixLength */
            bipush 7
            iand
            istore 5 /* lowOrderBitsToPreserve */
        start local 5 // int lowOrderBitsToPreserve
         4: .line 89
            aload 1 /* record */
            invokeinterface io.netty.handler.codec.dns.DnsOptEcsRecord.address:()[B
            astore 6 /* bytes */
        start local 6 // byte[] bytes
         5: .line 90
            aload 6 /* bytes */
            arraylength
            iconst_3
            ishl
            istore 7 /* addressBits */
        start local 7 // int addressBits
         6: .line 91
            iload 7 /* addressBits */
            iload 3 /* sourcePrefixLength */
            if_icmplt 7
            iload 3 /* sourcePrefixLength */
            ifge 10
         7: .line 92
      StackMap locals: io.netty.handler.codec.dns.DefaultDnsRecordEncoder io.netty.handler.codec.dns.DnsOptEcsRecord io.netty.buffer.ByteBuf int int int byte[] int
      StackMap stack:
            new java.lang.IllegalArgumentException
            dup
            new java.lang.StringBuilder
            dup
            iload 3 /* sourcePrefixLength */
            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;
         8: .line 93
            iload 3 /* sourcePrefixLength */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            ldc " (expected: 0 >= "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            iload 7 /* addressBits */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            bipush 41
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         9: .line 92
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        10: .line 97
      StackMap locals:
      StackMap stack:
            aload 6 /* bytes */
            arraylength
            iconst_4
            if_icmpne 12
        11: .line 98
            getstatic io.netty.channel.socket.InternetProtocolFamily.IPv4:Lio/netty/channel/socket/InternetProtocolFamily;
            invokevirtual io.netty.channel.socket.InternetProtocolFamily.addressNumber:()I
            goto 13
      StackMap locals:
      StackMap stack:
        12: getstatic io.netty.channel.socket.InternetProtocolFamily.IPv6:Lio/netty/channel/socket/InternetProtocolFamily;
            invokevirtual io.netty.channel.socket.InternetProtocolFamily.addressNumber:()I
        13: .line 97
      StackMap locals:
      StackMap stack: int
            i2s
            istore 8 /* addressNumber */
        start local 8 // short addressNumber
        14: .line 99
            iload 3 /* sourcePrefixLength */
            iload 5 /* lowOrderBitsToPreserve */
            invokestatic io.netty.handler.codec.dns.DefaultDnsRecordEncoder.calculateEcsAddressLength:(II)I
            istore 9 /* payloadLength */
        start local 9 // int payloadLength
        15: .line 101
            bipush 8
        16: .line 106
            iload 9 /* payloadLength */
        17: .line 101
            iadd
            istore 10 /* fullPayloadLength */
        start local 10 // int fullPayloadLength
        18: .line 108
            aload 2 /* out */
            iload 10 /* fullPayloadLength */
            invokevirtual io.netty.buffer.ByteBuf.writeShort:(I)Lio/netty/buffer/ByteBuf;
            pop
        19: .line 109
            aload 2 /* out */
            bipush 8
            invokevirtual io.netty.buffer.ByteBuf.writeShort:(I)Lio/netty/buffer/ByteBuf;
            pop
        20: .line 111
            aload 2 /* out */
            iload 10 /* fullPayloadLength */
            iconst_4
            isub
            invokevirtual io.netty.buffer.ByteBuf.writeShort:(I)Lio/netty/buffer/ByteBuf;
            pop
        21: .line 112
            aload 2 /* out */
            iload 8 /* addressNumber */
            invokevirtual io.netty.buffer.ByteBuf.writeShort:(I)Lio/netty/buffer/ByteBuf;
            pop
        22: .line 113
            aload 2 /* out */
            iload 3 /* sourcePrefixLength */
            invokevirtual io.netty.buffer.ByteBuf.writeByte:(I)Lio/netty/buffer/ByteBuf;
            pop
        23: .line 114
            aload 2 /* out */
            iload 4 /* scopePrefixLength */
            invokevirtual io.netty.buffer.ByteBuf.writeByte:(I)Lio/netty/buffer/ByteBuf;
            pop
        24: .line 116
            iload 5 /* lowOrderBitsToPreserve */
            ifle 29
        25: .line 117
            iload 9 /* payloadLength */
            iconst_1
            isub
            istore 11 /* bytesLength */
        start local 11 // int bytesLength
        26: .line 118
            aload 2 /* out */
            aload 6 /* bytes */
            iconst_0
            iload 11 /* bytesLength */
            invokevirtual io.netty.buffer.ByteBuf.writeBytes:([BII)Lio/netty/buffer/ByteBuf;
            pop
        27: .line 121
            aload 2 /* out */
            aload 6 /* bytes */
            iload 11 /* bytesLength */
            baload
            iload 5 /* lowOrderBitsToPreserve */
            invokestatic io.netty.handler.codec.dns.DefaultDnsRecordEncoder.padWithZeros:(BI)B
            invokevirtual io.netty.buffer.ByteBuf.writeByte:(I)Lio/netty/buffer/ByteBuf;
            pop
        end local 11 // int bytesLength
        28: .line 122
            goto 30
        29: .line 124
      StackMap locals: int int int
      StackMap stack:
            aload 2 /* out */
            aload 6 /* bytes */
            iconst_0
            iload 9 /* payloadLength */
            invokevirtual io.netty.buffer.ByteBuf.writeBytes:([BII)Lio/netty/buffer/ByteBuf;
            pop
        30: .line 126
      StackMap locals:
      StackMap stack:
            return
        end local 10 // int fullPayloadLength
        end local 9 // int payloadLength
        end local 8 // short addressNumber
        end local 7 // int addressBits
        end local 6 // byte[] bytes
        end local 5 // int lowOrderBitsToPreserve
        end local 4 // int scopePrefixLength
        end local 3 // int sourcePrefixLength
        end local 2 // io.netty.buffer.ByteBuf out
        end local 1 // io.netty.handler.codec.dns.DnsOptEcsRecord record
        end local 0 // io.netty.handler.codec.dns.DefaultDnsRecordEncoder this
      LocalVariableTable:
        Start  End  Slot                    Name  Signature
            0   31     0                    this  Lio/netty/handler/codec/dns/DefaultDnsRecordEncoder;
            0   31     1                  record  Lio/netty/handler/codec/dns/DnsOptEcsRecord;
            0   31     2                     out  Lio/netty/buffer/ByteBuf;
            2   31     3      sourcePrefixLength  I
            3   31     4       scopePrefixLength  I
            4   31     5  lowOrderBitsToPreserve  I
            5   31     6                   bytes  [B
            6   31     7             addressBits  I
           14   31     8           addressNumber  S
           15   31     9           payloadLength  I
           18   31    10       fullPayloadLength  I
           26   28    11             bytesLength  I
    Exceptions:
      throws java.lang.Exception
    MethodParameters:
        Name  Flags
      record  
      out     

  static int calculateEcsAddressLength(int, int);
    descriptor: (II)I
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // int sourcePrefixLength
        start local 1 // int lowOrderBitsToPreserve
         0: .line 130
            iload 0 /* sourcePrefixLength */
            iconst_3
            iushr
            iload 1 /* lowOrderBitsToPreserve */
            ifeq 1
            iconst_1
            goto 2
      StackMap locals:
      StackMap stack: int
         1: iconst_0
      StackMap locals: int int
      StackMap stack: int int
         2: iadd
            ireturn
        end local 1 // int lowOrderBitsToPreserve
        end local 0 // int sourcePrefixLength
      LocalVariableTable:
        Start  End  Slot                    Name  Signature
            0    3     0      sourcePrefixLength  I
            0    3     1  lowOrderBitsToPreserve  I
    MethodParameters:
                        Name  Flags
      sourcePrefixLength      
      lowOrderBitsToPreserve  

  private void encodeRawRecord(io.netty.handler.codec.dns.DnsRawRecord, io.netty.buffer.ByteBuf);
    descriptor: (Lio/netty/handler/codec/dns/DnsRawRecord;Lio/netty/buffer/ByteBuf;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=5, args_size=3
        start local 0 // io.netty.handler.codec.dns.DefaultDnsRecordEncoder this
        start local 1 // io.netty.handler.codec.dns.DnsRawRecord record
        start local 2 // io.netty.buffer.ByteBuf out
         0: .line 134
            aload 0 /* this */
            aload 1 /* record */
            aload 2 /* out */
            invokevirtual io.netty.handler.codec.dns.DefaultDnsRecordEncoder.encodeRecord0:(Lio/netty/handler/codec/dns/DnsRecord;Lio/netty/buffer/ByteBuf;)V
         1: .line 136
            aload 1 /* record */
            invokeinterface io.netty.handler.codec.dns.DnsRawRecord.content:()Lio/netty/buffer/ByteBuf;
            astore 3 /* content */
        start local 3 // io.netty.buffer.ByteBuf content
         2: .line 137
            aload 3 /* content */
            invokevirtual io.netty.buffer.ByteBuf.readableBytes:()I
            istore 4 /* contentLen */
        start local 4 // int contentLen
         3: .line 139
            aload 2 /* out */
            iload 4 /* contentLen */
            invokevirtual io.netty.buffer.ByteBuf.writeShort:(I)Lio/netty/buffer/ByteBuf;
            pop
         4: .line 140
            aload 2 /* out */
            aload 3 /* content */
            aload 3 /* content */
            invokevirtual io.netty.buffer.ByteBuf.readerIndex:()I
            iload 4 /* contentLen */
            invokevirtual io.netty.buffer.ByteBuf.writeBytes:(Lio/netty/buffer/ByteBuf;II)Lio/netty/buffer/ByteBuf;
            pop
         5: .line 141
            return
        end local 4 // int contentLen
        end local 3 // io.netty.buffer.ByteBuf content
        end local 2 // io.netty.buffer.ByteBuf out
        end local 1 // io.netty.handler.codec.dns.DnsRawRecord record
        end local 0 // io.netty.handler.codec.dns.DefaultDnsRecordEncoder this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    6     0        this  Lio/netty/handler/codec/dns/DefaultDnsRecordEncoder;
            0    6     1      record  Lio/netty/handler/codec/dns/DnsRawRecord;
            0    6     2         out  Lio/netty/buffer/ByteBuf;
            2    6     3     content  Lio/netty/buffer/ByteBuf;
            3    6     4  contentLen  I
    Exceptions:
      throws java.lang.Exception
    MethodParameters:
        Name  Flags
      record  
      out     

  protected void encodeName(java.lang.String, io.netty.buffer.ByteBuf);
    descriptor: (Ljava/lang/String;Lio/netty/buffer/ByteBuf;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=9, args_size=3
        start local 0 // io.netty.handler.codec.dns.DefaultDnsRecordEncoder this
        start local 1 // java.lang.String name
        start local 2 // io.netty.buffer.ByteBuf buf
         0: .line 144
            ldc "."
            aload 1 /* name */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 3
         1: .line 146
            aload 2 /* buf */
            iconst_0
            invokevirtual io.netty.buffer.ByteBuf.writeByte:(I)Lio/netty/buffer/ByteBuf;
            pop
         2: .line 147
            return
         3: .line 150
      StackMap locals:
      StackMap stack:
            aload 1 /* name */
            ldc "\\."
            invokevirtual java.lang.String.split:(Ljava/lang/String;)[Ljava/lang/String;
            astore 3 /* labels */
        start local 3 // java.lang.String[] labels
         4: .line 151
            aload 3 /* labels */
            dup
            astore 7
            arraylength
            istore 6
            iconst_0
            istore 5
            goto 12
      StackMap locals: io.netty.handler.codec.dns.DefaultDnsRecordEncoder java.lang.String io.netty.buffer.ByteBuf java.lang.String[] top int int java.lang.String[]
      StackMap stack:
         5: aload 7
            iload 5
            aaload
            astore 4 /* label */
        start local 4 // java.lang.String label
         6: .line 152
            aload 4 /* label */
            invokevirtual java.lang.String.length:()I
            istore 8 /* labelLen */
        start local 8 // int labelLen
         7: .line 153
            iload 8 /* labelLen */
            ifne 9
         8: .line 155
            goto 13
         9: .line 158
      StackMap locals: io.netty.handler.codec.dns.DefaultDnsRecordEncoder java.lang.String io.netty.buffer.ByteBuf java.lang.String[] java.lang.String int int java.lang.String[] int
      StackMap stack:
            aload 2 /* buf */
            iload 8 /* labelLen */
            invokevirtual io.netty.buffer.ByteBuf.writeByte:(I)Lio/netty/buffer/ByteBuf;
            pop
        10: .line 159
            aload 2 /* buf */
            aload 4 /* label */
            invokestatic io.netty.buffer.ByteBufUtil.writeAscii:(Lio/netty/buffer/ByteBuf;Ljava/lang/CharSequence;)I
            pop
        end local 8 // int labelLen
        end local 4 // java.lang.String label
        11: .line 151
            iinc 5 1
      StackMap locals: io.netty.handler.codec.dns.DefaultDnsRecordEncoder java.lang.String io.netty.buffer.ByteBuf java.lang.String[] top int int java.lang.String[]
      StackMap stack:
        12: iload 5
            iload 6
            if_icmplt 5
        13: .line 162
      StackMap locals: io.netty.handler.codec.dns.DefaultDnsRecordEncoder java.lang.String io.netty.buffer.ByteBuf java.lang.String[]
      StackMap stack:
            aload 2 /* buf */
            iconst_0
            invokevirtual io.netty.buffer.ByteBuf.writeByte:(I)Lio/netty/buffer/ByteBuf;
            pop
        14: .line 163
            return
        end local 3 // java.lang.String[] labels
        end local 2 // io.netty.buffer.ByteBuf buf
        end local 1 // java.lang.String name
        end local 0 // io.netty.handler.codec.dns.DefaultDnsRecordEncoder this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   15     0      this  Lio/netty/handler/codec/dns/DefaultDnsRecordEncoder;
            0   15     1      name  Ljava/lang/String;
            0   15     2       buf  Lio/netty/buffer/ByteBuf;
            4   15     3    labels  [Ljava/lang/String;
            6   11     4     label  Ljava/lang/String;
            7   11     8  labelLen  I
    Exceptions:
      throws java.lang.Exception
    MethodParameters:
      Name  Flags
      name  
      buf   

  private static byte padWithZeros(byte, int);
    descriptor: (BI)B
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=5, locals=2, args_size=2
        start local 0 // byte b
        start local 1 // int lowOrderBitsToPreserve
         0: .line 166
            iload 1 /* lowOrderBitsToPreserve */
            tableswitch { // 0 - 8
                    0: 1
                    1: 2
                    2: 3
                    3: 4
                    4: 5
                    5: 6
                    6: 7
                    7: 8
                    8: 9
              default: 10
          }
         1: .line 168
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
         2: .line 170
      StackMap locals:
      StackMap stack:
            sipush 128
            iload 0 /* b */
            iand
            i2b
            ireturn
         3: .line 172
      StackMap locals:
      StackMap stack:
            sipush 192
            iload 0 /* b */
            iand
            i2b
            ireturn
         4: .line 174
      StackMap locals:
      StackMap stack:
            sipush 224
            iload 0 /* b */
            iand
            i2b
            ireturn
         5: .line 176
      StackMap locals:
      StackMap stack:
            sipush 240
            iload 0 /* b */
            iand
            i2b
            ireturn
         6: .line 178
      StackMap locals:
      StackMap stack:
            sipush 248
            iload 0 /* b */
            iand
            i2b
            ireturn
         7: .line 180
      StackMap locals:
      StackMap stack:
            sipush 252
            iload 0 /* b */
            iand
            i2b
            ireturn
         8: .line 182
      StackMap locals:
      StackMap stack:
            sipush 254
            iload 0 /* b */
            iand
            i2b
            ireturn
         9: .line 184
      StackMap locals:
      StackMap stack:
            iload 0 /* b */
            ireturn
        10: .line 186
      StackMap locals:
      StackMap stack:
            new java.lang.IllegalArgumentException
            dup
            new java.lang.StringBuilder
            dup
            ldc "lowOrderBitsToPreserve: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 1 /* lowOrderBitsToPreserve */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        end local 1 // int lowOrderBitsToPreserve
        end local 0 // byte b
      LocalVariableTable:
        Start  End  Slot                    Name  Signature
            0   11     0                       b  B
            0   11     1  lowOrderBitsToPreserve  I
    MethodParameters:
                        Name  Flags
      b                       
      lowOrderBitsToPreserve  
}
SourceFile: "DefaultDnsRecordEncoder.java"