class sun.security.jgss.krb5.MessageToken_v2$MessageTokenHeader
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: sun.security.jgss.krb5.MessageToken_v2$MessageTokenHeader
  super_class: java.lang.Object
{
  private int tokenId;
    descriptor: I
    flags: (0x0002) ACC_PRIVATE

  private byte[] bytes;
    descriptor: [B
    flags: (0x0002) ACC_PRIVATE

  final sun.security.jgss.krb5.MessageToken_v2 this$0;
    descriptor: Lsun/security/jgss/krb5/MessageToken_v2;
    flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC

  public void <init>(sun.security.jgss.krb5.MessageToken_v2, int, boolean, boolean);
    descriptor: (Lsun/security/jgss/krb5/MessageToken_v2;IZZ)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=7, args_size=5
        start local 0 // sun.security.jgss.krb5.MessageToken_v2$MessageTokenHeader this
        start local 2 // int tokenId
        start local 3 // boolean conf
        start local 4 // boolean have_acceptor_subkey
         0: .line 504
            aload 0 /* this */
            aload 1
            putfield sun.security.jgss.krb5.MessageToken_v2$MessageTokenHeader.this$0:Lsun/security/jgss/krb5/MessageToken_v2;
         1: .line 503
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         2: .line 500
            aload 0 /* this */
            bipush 16
            newarray 8
            putfield sun.security.jgss.krb5.MessageToken_v2$MessageTokenHeader.bytes:[B
         3: .line 506
            aload 0 /* this */
            iload 2 /* tokenId */
            putfield sun.security.jgss.krb5.MessageToken_v2$MessageTokenHeader.tokenId:I
         4: .line 508
            aload 0 /* this */
            getfield sun.security.jgss.krb5.MessageToken_v2$MessageTokenHeader.bytes:[B
            iconst_0
            iload 2 /* tokenId */
            bipush 8
            iushr
            i2b
            bastore
         5: .line 509
            aload 0 /* this */
            getfield sun.security.jgss.krb5.MessageToken_v2$MessageTokenHeader.bytes:[B
            iconst_1
            iload 2 /* tokenId */
            i2b
            bastore
         6: .line 512
            iconst_0
            istore 5 /* flags */
        start local 5 // int flags
         7: .line 513
            aload 1
            getfield sun.security.jgss.krb5.MessageToken_v2.initiator:Z
            ifeq 8
            iconst_0
            goto 9
      StackMap locals: sun.security.jgss.krb5.MessageToken_v2$MessageTokenHeader sun.security.jgss.krb5.MessageToken_v2 int int int int
      StackMap stack:
         8: iconst_1
         9: .line 514
      StackMap locals:
      StackMap stack: int
            iload 3 /* conf */
            ifeq 11
            iload 2 /* tokenId */
            sipush 1028
            if_icmpeq 11
        10: .line 515
            iconst_2
            goto 12
      StackMap locals:
      StackMap stack: int
        11: iconst_0
        12: .line 513
      StackMap locals: sun.security.jgss.krb5.MessageToken_v2$MessageTokenHeader sun.security.jgss.krb5.MessageToken_v2 int int int int
      StackMap stack: int int
            ior
        13: .line 516
            iload 4 /* have_acceptor_subkey */
            ifeq 14
            iconst_4
            goto 15
      StackMap locals:
      StackMap stack: int
        14: iconst_0
        15: .line 513
      StackMap locals: sun.security.jgss.krb5.MessageToken_v2$MessageTokenHeader sun.security.jgss.krb5.MessageToken_v2 int int int int
      StackMap stack: int int
            ior
            istore 5 /* flags */
        16: .line 517
            aload 0 /* this */
            getfield sun.security.jgss.krb5.MessageToken_v2$MessageTokenHeader.bytes:[B
            iconst_2
            iload 5 /* flags */
            i2b
            bastore
        17: .line 520
            aload 0 /* this */
            getfield sun.security.jgss.krb5.MessageToken_v2$MessageTokenHeader.bytes:[B
            iconst_3
            iconst_m1
            bastore
        18: .line 522
            iload 2 /* tokenId */
            sipush 1284
            if_icmpne 24
        19: .line 524
            aload 0 /* this */
            getfield sun.security.jgss.krb5.MessageToken_v2$MessageTokenHeader.bytes:[B
            iconst_4
            iconst_0
            bastore
        20: .line 525
            aload 0 /* this */
            getfield sun.security.jgss.krb5.MessageToken_v2$MessageTokenHeader.bytes:[B
            iconst_5
            iconst_0
            bastore
        21: .line 527
            aload 0 /* this */
            getfield sun.security.jgss.krb5.MessageToken_v2$MessageTokenHeader.bytes:[B
            bipush 6
            iconst_0
            bastore
        22: .line 528
            aload 0 /* this */
            getfield sun.security.jgss.krb5.MessageToken_v2$MessageTokenHeader.bytes:[B
            bipush 7
            iconst_0
            bastore
        23: .line 529
            goto 30
      StackMap locals:
      StackMap stack:
        24: iload 2 /* tokenId */
            sipush 1028
            if_icmpne 30
        25: .line 531
            iconst_4
            istore 6 /* i */
        start local 6 // int i
        26: goto 29
        27: .line 532
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield sun.security.jgss.krb5.MessageToken_v2$MessageTokenHeader.bytes:[B
            iload 6 /* i */
            iconst_m1
            bastore
        28: .line 531
            iinc 6 /* i */ 1
      StackMap locals:
      StackMap stack:
        29: iload 6 /* i */
            bipush 8
            if_icmplt 27
        end local 6 // int i
        30: .line 537
      StackMap locals:
      StackMap stack:
            aload 1
            getfield sun.security.jgss.krb5.MessageToken_v2.seqNumber:I
            aload 0 /* this */
            getfield sun.security.jgss.krb5.MessageToken_v2$MessageTokenHeader.bytes:[B
            bipush 12
            invokestatic sun.security.jgss.krb5.MessageToken_v2.writeBigEndian:(I[BI)V
        31: .line 538
            return
        end local 5 // int flags
        end local 4 // boolean have_acceptor_subkey
        end local 3 // boolean conf
        end local 2 // int tokenId
        end local 0 // sun.security.jgss.krb5.MessageToken_v2$MessageTokenHeader this
      LocalVariableTable:
        Start  End  Slot                  Name  Signature
            0   32     0                  this  Lsun/security/jgss/krb5/MessageToken_v2$MessageTokenHeader;
            0   32     2               tokenId  I
            0   32     3                  conf  Z
            0   32     4  have_acceptor_subkey  Z
            7   32     5                 flags  I
           26   30     6                     i  I
    Exceptions:
      throws org.ietf.jgss.GSSException
    MethodParameters:
                      Name  Flags
      this$0                final
      tokenId               
      conf                  
      have_acceptor_subkey  

  public void <init>(sun.security.jgss.krb5.MessageToken_v2, java.io.InputStream, org.ietf.jgss.MessageProp, int);
    descriptor: (Lsun/security/jgss/krb5/MessageToken_v2;Ljava/io/InputStream;Lorg/ietf/jgss/MessageProp;I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=9, args_size=5
        start local 0 // sun.security.jgss.krb5.MessageToken_v2$MessageTokenHeader this
        start local 2 // java.io.InputStream is
        start local 3 // org.ietf.jgss.MessageProp prop
        start local 4 // int tokId
         0: .line 551
            aload 0 /* this */
            aload 1
            putfield sun.security.jgss.krb5.MessageToken_v2$MessageTokenHeader.this$0:Lsun/security/jgss/krb5/MessageToken_v2;
         1: .line 550
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         2: .line 500
            aload 0 /* this */
            bipush 16
            newarray 8
            putfield sun.security.jgss.krb5.MessageToken_v2$MessageTokenHeader.bytes:[B
         3: .line 553
            aload 2 /* is */
            aload 0 /* this */
            getfield sun.security.jgss.krb5.MessageToken_v2$MessageTokenHeader.bytes:[B
            iconst_0
            bipush 16
            invokestatic sun.security.jgss.krb5.MessageToken_v2.readFully:(Ljava/io/InputStream;[BII)V
         4: .line 554
            aload 0 /* this */
            aload 0 /* this */
            getfield sun.security.jgss.krb5.MessageToken_v2$MessageTokenHeader.bytes:[B
            iconst_0
            invokestatic sun.security.jgss.krb5.MessageToken_v2.readInt:([BI)I
            putfield sun.security.jgss.krb5.MessageToken_v2$MessageTokenHeader.tokenId:I
         5: .line 557
            aload 0 /* this */
            getfield sun.security.jgss.krb5.MessageToken_v2$MessageTokenHeader.tokenId:I
            iload 4 /* tokId */
            if_icmpeq 9
         6: .line 558
            new org.ietf.jgss.GSSException
            dup
            bipush 10
            iconst_m1
         7: .line 559
            new java.lang.StringBuilder
            dup
            aload 0 /* this */
            getfield sun.security.jgss.krb5.MessageToken_v2$MessageTokenHeader.tokenId:I
            invokestatic sun.security.jgss.krb5.MessageToken_v2.getTokenName:(I)Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc ":"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "Defective Token ID!"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         8: .line 558
            invokespecial org.ietf.jgss.GSSException.<init>:(IILjava/lang/String;)V
            athrow
         9: .line 568
      StackMap locals: sun.security.jgss.krb5.MessageToken_v2$MessageTokenHeader sun.security.jgss.krb5.MessageToken_v2 java.io.InputStream org.ietf.jgss.MessageProp int
      StackMap stack:
            aload 1
            getfield sun.security.jgss.krb5.MessageToken_v2.initiator:Z
            ifeq 10
            iconst_1
            goto 11
      StackMap locals:
      StackMap stack:
        10: iconst_0
      StackMap locals:
      StackMap stack: int
        11: istore 5 /* acceptor_flag */
        start local 5 // int acceptor_flag
        12: .line 569
            aload 0 /* this */
            getfield sun.security.jgss.krb5.MessageToken_v2$MessageTokenHeader.bytes:[B
            iconst_2
            baload
            iconst_1
            iand
            istore 6 /* flag */
        start local 6 // int flag
        13: .line 570
            iload 6 /* flag */
            iload 5 /* acceptor_flag */
            if_icmpeq 17
        14: .line 571
            new org.ietf.jgss.GSSException
            dup
            bipush 10
            iconst_m1
        15: .line 572
            new java.lang.StringBuilder
            dup
            aload 0 /* this */
            getfield sun.security.jgss.krb5.MessageToken_v2$MessageTokenHeader.tokenId:I
            invokestatic sun.security.jgss.krb5.MessageToken_v2.getTokenName:(I)Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc ":"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "Acceptor Flag Error!"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        16: .line 571
            invokespecial org.ietf.jgss.GSSException.<init>:(IILjava/lang/String;)V
            athrow
        17: .line 576
      StackMap locals: int int
      StackMap stack:
            aload 0 /* this */
            getfield sun.security.jgss.krb5.MessageToken_v2$MessageTokenHeader.bytes:[B
            iconst_2
            baload
            iconst_2
            iand
            istore 7 /* conf_flag */
        start local 7 // int conf_flag
        18: .line 577
            iload 7 /* conf_flag */
            iconst_2
            if_icmpne 22
        19: .line 578
            aload 0 /* this */
            getfield sun.security.jgss.krb5.MessageToken_v2$MessageTokenHeader.tokenId:I
            sipush 1284
            if_icmpne 22
        20: .line 579
            aload 3 /* prop */
            iconst_1
            invokevirtual org.ietf.jgss.MessageProp.setPrivacy:(Z)V
        21: .line 580
            goto 23
        22: .line 581
      StackMap locals: int
      StackMap stack:
            aload 3 /* prop */
            iconst_0
            invokevirtual org.ietf.jgss.MessageProp.setPrivacy:(Z)V
        23: .line 584
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.security.jgss.krb5.MessageToken_v2$MessageTokenHeader.tokenId:I
            sipush 1284
            if_icmpne 31
        24: .line 586
            aload 0 /* this */
            getfield sun.security.jgss.krb5.MessageToken_v2$MessageTokenHeader.bytes:[B
            iconst_3
            baload
            sipush 255
            iand
            sipush 255
            if_icmpeq 28
        25: .line 587
            new org.ietf.jgss.GSSException
            dup
            bipush 10
            iconst_m1
        26: .line 588
            new java.lang.StringBuilder
            dup
            aload 0 /* this */
            getfield sun.security.jgss.krb5.MessageToken_v2$MessageTokenHeader.tokenId:I
            invokestatic sun.security.jgss.krb5.MessageToken_v2.getTokenName:(I)Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc ":"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "Defective Token Filler!"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        27: .line 587
            invokespecial org.ietf.jgss.GSSException.<init>:(IILjava/lang/String;)V
            athrow
        28: .line 592
      StackMap locals:
      StackMap stack:
            aload 1
            aload 0 /* this */
            getfield sun.security.jgss.krb5.MessageToken_v2$MessageTokenHeader.bytes:[B
            iconst_4
            iconst_2
            invokestatic sun.security.jgss.krb5.MessageToken_v2.readBigEndian:([BII)I
            putfield sun.security.jgss.krb5.MessageToken_v2.ec:I
        29: .line 595
            aload 1
            aload 0 /* this */
            getfield sun.security.jgss.krb5.MessageToken_v2$MessageTokenHeader.bytes:[B
            bipush 6
            iconst_2
            invokestatic sun.security.jgss.krb5.MessageToken_v2.readBigEndian:([BII)I
            putfield sun.security.jgss.krb5.MessageToken_v2.rrc:I
        30: .line 596
            goto 41
      StackMap locals:
      StackMap stack:
        31: aload 0 /* this */
            getfield sun.security.jgss.krb5.MessageToken_v2$MessageTokenHeader.tokenId:I
            sipush 1028
            if_icmpne 41
        32: .line 597
            iconst_3
            istore 8 /* i */
        start local 8 // int i
        33: goto 40
        34: .line 598
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield sun.security.jgss.krb5.MessageToken_v2$MessageTokenHeader.bytes:[B
            iload 8 /* i */
            baload
            sipush 255
            iand
            sipush 255
            if_icmpeq 39
        35: .line 599
            new org.ietf.jgss.GSSException
            dup
            bipush 10
        36: .line 600
            iconst_m1
            new java.lang.StringBuilder
            dup
            aload 0 /* this */
            getfield sun.security.jgss.krb5.MessageToken_v2$MessageTokenHeader.tokenId:I
            invokestatic sun.security.jgss.krb5.MessageToken_v2.getTokenName:(I)Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc ":"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        37: .line 601
            ldc "Defective Token Filler!"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        38: .line 599
            invokespecial org.ietf.jgss.GSSException.<init>:(IILjava/lang/String;)V
            athrow
        39: .line 597
      StackMap locals:
      StackMap stack:
            iinc 8 /* i */ 1
      StackMap locals:
      StackMap stack:
        40: iload 8 /* i */
            bipush 8
            if_icmplt 34
        end local 8 // int i
        41: .line 607
      StackMap locals:
      StackMap stack:
            aload 3 /* prop */
            iconst_0
            invokevirtual org.ietf.jgss.MessageProp.setQOP:(I)V
        42: .line 610
            aload 1
            aload 0 /* this */
            getfield sun.security.jgss.krb5.MessageToken_v2$MessageTokenHeader.bytes:[B
            iconst_0
            bipush 8
            invokestatic sun.security.jgss.krb5.MessageToken_v2.readBigEndian:([BII)I
            putfield sun.security.jgss.krb5.MessageToken_v2.seqNumber:I
        43: .line 611
            return
        end local 7 // int conf_flag
        end local 6 // int flag
        end local 5 // int acceptor_flag
        end local 4 // int tokId
        end local 3 // org.ietf.jgss.MessageProp prop
        end local 2 // java.io.InputStream is
        end local 0 // sun.security.jgss.krb5.MessageToken_v2$MessageTokenHeader this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   44     0           this  Lsun/security/jgss/krb5/MessageToken_v2$MessageTokenHeader;
            0   44     2             is  Ljava/io/InputStream;
            0   44     3           prop  Lorg/ietf/jgss/MessageProp;
            0   44     4          tokId  I
           12   44     5  acceptor_flag  I
           13   44     6           flag  I
           18   44     7      conf_flag  I
           33   41     8              i  I
    Exceptions:
      throws java.io.IOException, org.ietf.jgss.GSSException
    MethodParameters:
        Name  Flags
      this$0  final
      is      
      prop    
      tokId   

  public final void encode(java.io.OutputStream);
    descriptor: (Ljava/io/OutputStream;)V
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // sun.security.jgss.krb5.MessageToken_v2$MessageTokenHeader this
        start local 1 // java.io.OutputStream os
         0: .line 619
            aload 1 /* os */
            aload 0 /* this */
            getfield sun.security.jgss.krb5.MessageToken_v2$MessageTokenHeader.bytes:[B
            invokevirtual java.io.OutputStream.write:([B)V
         1: .line 620
            return
        end local 1 // java.io.OutputStream os
        end local 0 // sun.security.jgss.krb5.MessageToken_v2$MessageTokenHeader this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lsun/security/jgss/krb5/MessageToken_v2$MessageTokenHeader;
            0    2     1    os  Ljava/io/OutputStream;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      os    

  public final int getTokenId();
    descriptor: ()I
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.security.jgss.krb5.MessageToken_v2$MessageTokenHeader this
         0: .line 630
            aload 0 /* this */
            getfield sun.security.jgss.krb5.MessageToken_v2$MessageTokenHeader.tokenId:I
            ireturn
        end local 0 // sun.security.jgss.krb5.MessageToken_v2$MessageTokenHeader this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/security/jgss/krb5/MessageToken_v2$MessageTokenHeader;

  public final byte[] getBytes();
    descriptor: ()[B
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.security.jgss.krb5.MessageToken_v2$MessageTokenHeader this
         0: .line 638
            aload 0 /* this */
            getfield sun.security.jgss.krb5.MessageToken_v2$MessageTokenHeader.bytes:[B
            areturn
        end local 0 // sun.security.jgss.krb5.MessageToken_v2$MessageTokenHeader this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/security/jgss/krb5/MessageToken_v2$MessageTokenHeader;
}
SourceFile: "MessageToken_v2.java"
NestHost: sun.security.jgss.krb5.MessageToken_v2
InnerClasses:
  MessageTokenHeader = sun.security.jgss.krb5.MessageToken_v2$MessageTokenHeader of sun.security.jgss.krb5.MessageToken_v2