class com.caucho.hessian.io.HessianDebugState$BinaryState extends com.caucho.hessian.io.HessianDebugState$State
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: com.caucho.hessian.io.HessianDebugState$BinaryState
  super_class: com.caucho.hessian.io.HessianDebugState$State
{
  char _typeCode;
    descriptor: C
    flags: (0x0000) 

  int _totalLength;
    descriptor: I
    flags: (0x0000) 

  int _lengthIndex;
    descriptor: I
    flags: (0x0000) 

  int _length;
    descriptor: I
    flags: (0x0000) 

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

  final com.caucho.hessian.io.HessianDebugState this$0;
    descriptor: Lcom/caucho/hessian/io/HessianDebugState;
    flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC

  void <init>(com.caucho.hessian.io.HessianDebugState, com.caucho.hessian.io.HessianDebugState$State, char, boolean);
    descriptor: (Lcom/caucho/hessian/io/HessianDebugState;Lcom/caucho/hessian/io/HessianDebugState$State;CZ)V
    flags: (0x0000) 
    Code:
      stack=3, locals=5, args_size=5
        start local 0 // com.caucho.hessian.io.HessianDebugState$BinaryState this
        start local 2 // com.caucho.hessian.io.HessianDebugState$State next
        start local 3 // char typeCode
        start local 4 // boolean isLastChunk
         0: .line 1157
            aload 0 /* this */
            aload 1
            putfield com.caucho.hessian.io.HessianDebugState$BinaryState.this$0:Lcom/caucho/hessian/io/HessianDebugState;
         1: .line 1158
            aload 0 /* this */
            aload 1
            aload 2 /* next */
            invokespecial com.caucho.hessian.io.HessianDebugState$State.<init>:(Lcom/caucho/hessian/io/HessianDebugState;Lcom/caucho/hessian/io/HessianDebugState$State;)V
         2: .line 1160
            aload 0 /* this */
            iload 3 /* typeCode */
            putfield com.caucho.hessian.io.HessianDebugState$BinaryState._typeCode:C
         3: .line 1161
            aload 0 /* this */
            iload 4 /* isLastChunk */
            putfield com.caucho.hessian.io.HessianDebugState$BinaryState._isLastChunk:Z
         4: .line 1162
            return
        end local 4 // boolean isLastChunk
        end local 3 // char typeCode
        end local 2 // com.caucho.hessian.io.HessianDebugState$State next
        end local 0 // com.caucho.hessian.io.HessianDebugState$BinaryState this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    5     0         this  Lcom/caucho/hessian/io/HessianDebugState$BinaryState;
            0    5     2         next  Lcom/caucho/hessian/io/HessianDebugState$State;
            0    5     3     typeCode  C
            0    5     4  isLastChunk  Z
    MethodParameters:
             Name  Flags
      this$0       final
      next         
      typeCode     
      isLastChunk  

  void <init>(com.caucho.hessian.io.HessianDebugState, com.caucho.hessian.io.HessianDebugState$State, char, int);
    descriptor: (Lcom/caucho/hessian/io/HessianDebugState;Lcom/caucho/hessian/io/HessianDebugState$State;CI)V
    flags: (0x0000) 
    Code:
      stack=3, locals=5, args_size=5
        start local 0 // com.caucho.hessian.io.HessianDebugState$BinaryState this
        start local 2 // com.caucho.hessian.io.HessianDebugState$State next
        start local 3 // char typeCode
        start local 4 // int length
         0: .line 1165
            aload 0 /* this */
            aload 1
            putfield com.caucho.hessian.io.HessianDebugState$BinaryState.this$0:Lcom/caucho/hessian/io/HessianDebugState;
         1: .line 1166
            aload 0 /* this */
            aload 1
            aload 2 /* next */
            invokespecial com.caucho.hessian.io.HessianDebugState$State.<init>:(Lcom/caucho/hessian/io/HessianDebugState;Lcom/caucho/hessian/io/HessianDebugState$State;)V
         2: .line 1168
            aload 0 /* this */
            iload 3 /* typeCode */
            putfield com.caucho.hessian.io.HessianDebugState$BinaryState._typeCode:C
         3: .line 1169
            aload 0 /* this */
            iconst_1
            putfield com.caucho.hessian.io.HessianDebugState$BinaryState._isLastChunk:Z
         4: .line 1170
            aload 0 /* this */
            iload 4 /* length */
            putfield com.caucho.hessian.io.HessianDebugState$BinaryState._length:I
         5: .line 1171
            aload 0 /* this */
            iconst_2
            putfield com.caucho.hessian.io.HessianDebugState$BinaryState._lengthIndex:I
         6: .line 1172
            return
        end local 4 // int length
        end local 3 // char typeCode
        end local 2 // com.caucho.hessian.io.HessianDebugState$State next
        end local 0 // com.caucho.hessian.io.HessianDebugState$BinaryState this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    7     0      this  Lcom/caucho/hessian/io/HessianDebugState$BinaryState;
            0    7     2      next  Lcom/caucho/hessian/io/HessianDebugState$State;
            0    7     3  typeCode  C
            0    7     4    length  I
    MethodParameters:
          Name  Flags
      this$0    final
      next      
      typeCode  
      length    

  void <init>(com.caucho.hessian.io.HessianDebugState, com.caucho.hessian.io.HessianDebugState$State, char, int, boolean);
    descriptor: (Lcom/caucho/hessian/io/HessianDebugState;Lcom/caucho/hessian/io/HessianDebugState$State;CIZ)V
    flags: (0x0000) 
    Code:
      stack=3, locals=6, args_size=6
        start local 0 // com.caucho.hessian.io.HessianDebugState$BinaryState this
        start local 2 // com.caucho.hessian.io.HessianDebugState$State next
        start local 3 // char typeCode
        start local 4 // int length
        start local 5 // boolean isLastChunk
         0: .line 1175
            aload 0 /* this */
            aload 1
            putfield com.caucho.hessian.io.HessianDebugState$BinaryState.this$0:Lcom/caucho/hessian/io/HessianDebugState;
         1: .line 1176
            aload 0 /* this */
            aload 1
            aload 2 /* next */
            invokespecial com.caucho.hessian.io.HessianDebugState$State.<init>:(Lcom/caucho/hessian/io/HessianDebugState;Lcom/caucho/hessian/io/HessianDebugState$State;)V
         2: .line 1178
            aload 0 /* this */
            iload 3 /* typeCode */
            putfield com.caucho.hessian.io.HessianDebugState$BinaryState._typeCode:C
         3: .line 1179
            aload 0 /* this */
            iload 5 /* isLastChunk */
            putfield com.caucho.hessian.io.HessianDebugState$BinaryState._isLastChunk:Z
         4: .line 1180
            aload 0 /* this */
            iload 4 /* length */
            putfield com.caucho.hessian.io.HessianDebugState$BinaryState._length:I
         5: .line 1181
            aload 0 /* this */
            iconst_1
            putfield com.caucho.hessian.io.HessianDebugState$BinaryState._lengthIndex:I
         6: .line 1182
            return
        end local 5 // boolean isLastChunk
        end local 4 // int length
        end local 3 // char typeCode
        end local 2 // com.caucho.hessian.io.HessianDebugState$State next
        end local 0 // com.caucho.hessian.io.HessianDebugState$BinaryState this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    7     0         this  Lcom/caucho/hessian/io/HessianDebugState$BinaryState;
            0    7     2         next  Lcom/caucho/hessian/io/HessianDebugState$State;
            0    7     3     typeCode  C
            0    7     4       length  I
            0    7     5  isLastChunk  Z
    MethodParameters:
             Name  Flags
      this$0       final
      next         
      typeCode     
      length       
      isLastChunk  

  com.caucho.hessian.io.HessianDebugState$State next(int);
    descriptor: (I)Lcom/caucho/hessian/io/HessianDebugState$State;
    flags: (0x0000) 
    Code:
      stack=4, locals=3, args_size=2
        start local 0 // com.caucho.hessian.io.HessianDebugState$BinaryState this
        start local 1 // int ch
         0: .line 1187
            aload 0 /* this */
            getfield com.caucho.hessian.io.HessianDebugState$BinaryState._lengthIndex:I
            iconst_2
            if_icmpge 9
         1: .line 1188
            aload 0 /* this */
            sipush 256
            aload 0 /* this */
            getfield com.caucho.hessian.io.HessianDebugState$BinaryState._length:I
            imul
            iload 1 /* ch */
            sipush 255
            iand
            iadd
            putfield com.caucho.hessian.io.HessianDebugState$BinaryState._length:I
         2: .line 1190
            aload 0 /* this */
            dup
            getfield com.caucho.hessian.io.HessianDebugState$BinaryState._lengthIndex:I
            iconst_1
            iadd
            dup_x1
            putfield com.caucho.hessian.io.HessianDebugState$BinaryState._lengthIndex:I
            iconst_2
            if_icmpne 8
            aload 0 /* this */
            getfield com.caucho.hessian.io.HessianDebugState$BinaryState._length:I
            ifne 8
            aload 0 /* this */
            getfield com.caucho.hessian.io.HessianDebugState$BinaryState._isLastChunk:Z
            ifeq 8
         3: .line 1191
            new java.lang.StringBuilder
            dup
            ldc "binary("
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            getfield com.caucho.hessian.io.HessianDebugState$BinaryState._totalLength:I
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            ldc ")"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 2 /* value */
        start local 2 // java.lang.String value
         4: .line 1193
            aload 0 /* this */
            getfield com.caucho.hessian.io.HessianDebugState$BinaryState._next:Lcom/caucho/hessian/io/HessianDebugState$State;
            aload 2 /* value */
            invokevirtual com.caucho.hessian.io.HessianDebugState$State.isShift:(Ljava/lang/Object;)Z
            ifeq 6
         5: .line 1194
            aload 0 /* this */
            getfield com.caucho.hessian.io.HessianDebugState$BinaryState._next:Lcom/caucho/hessian/io/HessianDebugState$State;
            aload 2 /* value */
            invokevirtual com.caucho.hessian.io.HessianDebugState$State.shift:(Ljava/lang/Object;)Lcom/caucho/hessian/io/HessianDebugState$State;
            areturn
         6: .line 1196
      StackMap locals: java.lang.String
      StackMap stack:
            aload 0 /* this */
            aload 2 /* value */
            invokevirtual com.caucho.hessian.io.HessianDebugState$BinaryState.printObject:(Ljava/lang/String;)V
         7: .line 1197
            aload 0 /* this */
            getfield com.caucho.hessian.io.HessianDebugState$BinaryState._next:Lcom/caucho/hessian/io/HessianDebugState$State;
            areturn
        end local 2 // java.lang.String value
         8: .line 1201
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            areturn
         9: .line 1203
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.caucho.hessian.io.HessianDebugState$BinaryState._length:I
            ifne 31
        10: .line 1204
            iload 1 /* ch */
            bipush 98
            if_icmpeq 11
            iload 1 /* ch */
            bipush 65
            if_icmpne 14
        11: .line 1205
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_0
            putfield com.caucho.hessian.io.HessianDebugState$BinaryState._isLastChunk:Z
        12: .line 1206
            aload 0 /* this */
            iconst_0
            putfield com.caucho.hessian.io.HessianDebugState$BinaryState._lengthIndex:I
        13: .line 1207
            aload 0 /* this */
            areturn
        14: .line 1209
      StackMap locals:
      StackMap stack:
            iload 1 /* ch */
            bipush 66
            if_icmpne 18
        15: .line 1210
            aload 0 /* this */
            iconst_1
            putfield com.caucho.hessian.io.HessianDebugState$BinaryState._isLastChunk:Z
        16: .line 1211
            aload 0 /* this */
            iconst_0
            putfield com.caucho.hessian.io.HessianDebugState$BinaryState._lengthIndex:I
        17: .line 1212
            aload 0 /* this */
            areturn
        18: .line 1214
      StackMap locals:
      StackMap stack:
            iload 1 /* ch */
            bipush 32
            if_icmpne 24
        19: .line 1215
            new java.lang.StringBuilder
            dup
            ldc "binary("
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            getfield com.caucho.hessian.io.HessianDebugState$BinaryState._totalLength:I
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            ldc ")"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 2 /* value */
        start local 2 // java.lang.String value
        20: .line 1217
            aload 0 /* this */
            getfield com.caucho.hessian.io.HessianDebugState$BinaryState._next:Lcom/caucho/hessian/io/HessianDebugState$State;
            aload 2 /* value */
            invokevirtual com.caucho.hessian.io.HessianDebugState$State.isShift:(Ljava/lang/Object;)Z
            ifeq 22
        21: .line 1218
            aload 0 /* this */
            getfield com.caucho.hessian.io.HessianDebugState$BinaryState._next:Lcom/caucho/hessian/io/HessianDebugState$State;
            aload 2 /* value */
            invokevirtual com.caucho.hessian.io.HessianDebugState$State.shift:(Ljava/lang/Object;)Lcom/caucho/hessian/io/HessianDebugState$State;
            areturn
        22: .line 1220
      StackMap locals: java.lang.String
      StackMap stack:
            aload 0 /* this */
            aload 2 /* value */
            invokevirtual com.caucho.hessian.io.HessianDebugState$BinaryState.printObject:(Ljava/lang/String;)V
        23: .line 1221
            aload 0 /* this */
            getfield com.caucho.hessian.io.HessianDebugState$BinaryState._next:Lcom/caucho/hessian/io/HessianDebugState$State;
            areturn
        end local 2 // java.lang.String value
        24: .line 1224
      StackMap locals:
      StackMap stack:
            bipush 32
            iload 1 /* ch */
            if_icmpgt 29
            iload 1 /* ch */
            bipush 48
            if_icmpge 29
        25: .line 1225
            aload 0 /* this */
            iconst_1
            putfield com.caucho.hessian.io.HessianDebugState$BinaryState._isLastChunk:Z
        26: .line 1226
            aload 0 /* this */
            iconst_2
            putfield com.caucho.hessian.io.HessianDebugState$BinaryState._lengthIndex:I
        27: .line 1227
            aload 0 /* this */
            iload 1 /* ch */
            sipush 255
            iand
            bipush 32
            isub
            putfield com.caucho.hessian.io.HessianDebugState$BinaryState._length:I
        28: .line 1228
            aload 0 /* this */
            areturn
        29: .line 1231
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            aload 0 /* this */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc " 0x"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            iload 1 /* ch */
            invokestatic java.lang.Integer.toHexString:(I)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc " "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            iload 1 /* ch */
            i2c
            invokestatic java.lang.String.valueOf:(C)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc ": unexpected character"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual com.caucho.hessian.io.HessianDebugState$BinaryState.println:(Ljava/lang/String;)V
        30: .line 1232
            aload 0 /* this */
            getfield com.caucho.hessian.io.HessianDebugState$BinaryState._next:Lcom/caucho/hessian/io/HessianDebugState$State;
            areturn
        31: .line 1236
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            dup
            getfield com.caucho.hessian.io.HessianDebugState$BinaryState._length:I
            iconst_1
            isub
            putfield com.caucho.hessian.io.HessianDebugState$BinaryState._length:I
        32: .line 1237
            aload 0 /* this */
            dup
            getfield com.caucho.hessian.io.HessianDebugState$BinaryState._totalLength:I
            iconst_1
            iadd
            putfield com.caucho.hessian.io.HessianDebugState$BinaryState._totalLength:I
        33: .line 1239
            aload 0 /* this */
            getfield com.caucho.hessian.io.HessianDebugState$BinaryState._length:I
            ifne 39
            aload 0 /* this */
            getfield com.caucho.hessian.io.HessianDebugState$BinaryState._isLastChunk:Z
            ifeq 39
        34: .line 1240
            new java.lang.StringBuilder
            dup
            ldc "binary("
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            getfield com.caucho.hessian.io.HessianDebugState$BinaryState._totalLength:I
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            ldc ")"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 2 /* value */
        start local 2 // java.lang.String value
        35: .line 1242
            aload 0 /* this */
            getfield com.caucho.hessian.io.HessianDebugState$BinaryState._next:Lcom/caucho/hessian/io/HessianDebugState$State;
            aload 2 /* value */
            invokevirtual com.caucho.hessian.io.HessianDebugState$State.isShift:(Ljava/lang/Object;)Z
            ifeq 37
        36: .line 1243
            aload 0 /* this */
            getfield com.caucho.hessian.io.HessianDebugState$BinaryState._next:Lcom/caucho/hessian/io/HessianDebugState$State;
            aload 2 /* value */
            invokevirtual com.caucho.hessian.io.HessianDebugState$State.shift:(Ljava/lang/Object;)Lcom/caucho/hessian/io/HessianDebugState$State;
            areturn
        37: .line 1245
      StackMap locals: java.lang.String
      StackMap stack:
            aload 0 /* this */
            aload 2 /* value */
            invokevirtual com.caucho.hessian.io.HessianDebugState$BinaryState.printObject:(Ljava/lang/String;)V
        38: .line 1247
            aload 0 /* this */
            getfield com.caucho.hessian.io.HessianDebugState$BinaryState._next:Lcom/caucho/hessian/io/HessianDebugState$State;
            areturn
        end local 2 // java.lang.String value
        39: .line 1251
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            areturn
        end local 1 // int ch
        end local 0 // com.caucho.hessian.io.HessianDebugState$BinaryState this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   40     0   this  Lcom/caucho/hessian/io/HessianDebugState$BinaryState;
            0   40     1     ch  I
            4    8     2  value  Ljava/lang/String;
           20   24     2  value  Ljava/lang/String;
           35   39     2  value  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      ch    
}
SourceFile: "HessianDebugState.java"
NestHost: com.caucho.hessian.io.HessianDebugState
InnerClasses:
  BinaryState = com.caucho.hessian.io.HessianDebugState$BinaryState of com.caucho.hessian.io.HessianDebugState
  abstract State = com.caucho.hessian.io.HessianDebugState$State of com.caucho.hessian.io.HessianDebugState