public final class com.fasterxml.aalto.in.Utf32Reader extends java.io.Reader
  minor version: 0
  major version: 59
  flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
  this_class: com.fasterxml.aalto.in.Utf32Reader
  super_class: java.io.Reader
{
  static final char NULL_CHAR;
    descriptor: C
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: 0

  final com.fasterxml.aalto.in.ReaderConfig mConfig;
    descriptor: Lcom/fasterxml/aalto/in/ReaderConfig;
    flags: (0x0010) ACC_FINAL

  protected java.io.InputStream mIn;
    descriptor: Ljava/io/InputStream;
    flags: (0x0004) ACC_PROTECTED

  protected byte[] mBuffer;
    descriptor: [B
    flags: (0x0004) ACC_PROTECTED

  protected int mPtr;
    descriptor: I
    flags: (0x0004) ACC_PROTECTED

  protected int mLength;
    descriptor: I
    flags: (0x0004) ACC_PROTECTED

  final boolean mBigEndian;
    descriptor: Z
    flags: (0x0010) ACC_FINAL

  char mSurrogate;
    descriptor: C
    flags: (0x0000) 

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

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

  char[] mTmpBuf;
    descriptor: [C
    flags: (0x0000) 

  public void <init>(com.fasterxml.aalto.in.ReaderConfig, java.io.InputStream, byte[], int, int, boolean);
    descriptor: (Lcom/fasterxml/aalto/in/ReaderConfig;Ljava/io/InputStream;[BIIZ)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=7, args_size=7
        start local 0 // com.fasterxml.aalto.in.Utf32Reader this
        start local 1 // com.fasterxml.aalto.in.ReaderConfig cfg
        start local 2 // java.io.InputStream in
        start local 3 // byte[] buf
        start local 4 // int ptr
        start local 5 // int len
        start local 6 // boolean isBigEndian
         0: .line 67
            aload 0 /* this */
            invokespecial java.io.Reader.<init>:()V
         1: .line 49
            aload 0 /* this */
            iconst_0
            putfield com.fasterxml.aalto.in.Utf32Reader.mSurrogate:C
         2: .line 54
            aload 0 /* this */
            iconst_0
            putfield com.fasterxml.aalto.in.Utf32Reader.mCharCount:I
         3: .line 59
            aload 0 /* this */
            iconst_0
            putfield com.fasterxml.aalto.in.Utf32Reader.mByteCount:I
         4: .line 93
            aload 0 /* this */
            aconst_null
            putfield com.fasterxml.aalto.in.Utf32Reader.mTmpBuf:[C
         5: .line 71
            aload 0 /* this */
            aload 1 /* cfg */
            putfield com.fasterxml.aalto.in.Utf32Reader.mConfig:Lcom/fasterxml/aalto/in/ReaderConfig;
         6: .line 72
            aload 0 /* this */
            iload 6 /* isBigEndian */
            putfield com.fasterxml.aalto.in.Utf32Reader.mBigEndian:Z
         7: .line 73
            return
        end local 6 // boolean isBigEndian
        end local 5 // int len
        end local 4 // int ptr
        end local 3 // byte[] buf
        end local 2 // java.io.InputStream in
        end local 1 // com.fasterxml.aalto.in.ReaderConfig cfg
        end local 0 // com.fasterxml.aalto.in.Utf32Reader this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    8     0         this  Lcom/fasterxml/aalto/in/Utf32Reader;
            0    8     1          cfg  Lcom/fasterxml/aalto/in/ReaderConfig;
            0    8     2           in  Ljava/io/InputStream;
            0    8     3          buf  [B
            0    8     4          ptr  I
            0    8     5          len  I
            0    8     6  isBigEndian  Z
    MethodParameters:
             Name  Flags
      cfg          
      in           
      buf          
      ptr          
      len          
      isBigEndian  

  public void close();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // com.fasterxml.aalto.in.Utf32Reader this
         0: .line 84
            aload 0 /* this */
            getfield com.fasterxml.aalto.in.Utf32Reader.mIn:Ljava/io/InputStream;
            astore 1 /* in */
        start local 1 // java.io.InputStream in
         1: .line 86
            aload 1 /* in */
            ifnull 5
         2: .line 87
            aload 0 /* this */
            aconst_null
            putfield com.fasterxml.aalto.in.Utf32Reader.mIn:Ljava/io/InputStream;
         3: .line 88
            aload 0 /* this */
            invokevirtual com.fasterxml.aalto.in.Utf32Reader.freeBuffers:()V
         4: .line 89
            aload 1 /* in */
            invokevirtual java.io.InputStream.close:()V
         5: .line 91
      StackMap locals: java.io.InputStream
      StackMap stack:
            return
        end local 1 // java.io.InputStream in
        end local 0 // com.fasterxml.aalto.in.Utf32Reader this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0  this  Lcom/fasterxml/aalto/in/Utf32Reader;
            1    6     1    in  Ljava/io/InputStream;
    Exceptions:
      throws java.io.IOException

  public int read();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // com.fasterxml.aalto.in.Utf32Reader this
         0: .line 103
            aload 0 /* this */
            getfield com.fasterxml.aalto.in.Utf32Reader.mTmpBuf:[C
            ifnonnull 2
         1: .line 104
            aload 0 /* this */
            iconst_1
            newarray 5
            putfield com.fasterxml.aalto.in.Utf32Reader.mTmpBuf:[C
         2: .line 106
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield com.fasterxml.aalto.in.Utf32Reader.mTmpBuf:[C
            iconst_0
            iconst_1
            invokevirtual com.fasterxml.aalto.in.Utf32Reader.read:([CII)I
            iconst_1
            if_icmpge 4
         3: .line 107
            iconst_m1
            ireturn
         4: .line 109
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.fasterxml.aalto.in.Utf32Reader.mTmpBuf:[C
            iconst_0
            caload
            ireturn
        end local 0 // com.fasterxml.aalto.in.Utf32Reader this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lcom/fasterxml/aalto/in/Utf32Reader;
    Exceptions:
      throws java.io.IOException

  public int read(char[], int, int);
    descriptor: ([CII)I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=8, args_size=4
        start local 0 // com.fasterxml.aalto.in.Utf32Reader this
        start local 1 // char[] cbuf
        start local 2 // int start
        start local 3 // int len
         0: .line 122
            aload 0 /* this */
            getfield com.fasterxml.aalto.in.Utf32Reader.mBuffer:[B
            ifnonnull 2
         1: .line 123
            iconst_m1
            ireturn
         2: .line 125
      StackMap locals:
      StackMap stack:
            iload 3 /* len */
            iconst_1
            if_icmpge 4
         3: .line 126
            iload 3 /* len */
            ireturn
         4: .line 129
      StackMap locals:
      StackMap stack:
            iload 2 /* start */
            iflt 5
            iload 2 /* start */
            iload 3 /* len */
            iadd
            aload 1 /* cbuf */
            arraylength
            if_icmple 6
         5: .line 130
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* cbuf */
            iload 2 /* start */
            iload 3 /* len */
            invokevirtual com.fasterxml.aalto.in.Utf32Reader.reportBounds:([CII)V
         6: .line 133
      StackMap locals:
      StackMap stack:
            iload 3 /* len */
            iload 2 /* start */
            iadd
            istore 3 /* len */
         7: .line 134
            iload 2 /* start */
            istore 4 /* outPtr */
        start local 4 // int outPtr
         8: .line 137
            aload 0 /* this */
            getfield com.fasterxml.aalto.in.Utf32Reader.mSurrogate:C
            ifeq 12
         9: .line 138
            aload 1 /* cbuf */
            iload 4 /* outPtr */
            iinc 4 /* outPtr */ 1
            aload 0 /* this */
            getfield com.fasterxml.aalto.in.Utf32Reader.mSurrogate:C
            castore
        10: .line 139
            aload 0 /* this */
            iconst_0
            putfield com.fasterxml.aalto.in.Utf32Reader.mSurrogate:C
        11: .line 141
            goto 16
        12: .line 145
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield com.fasterxml.aalto.in.Utf32Reader.mLength:I
            aload 0 /* this */
            getfield com.fasterxml.aalto.in.Utf32Reader.mPtr:I
            isub
            istore 5 /* left */
        start local 5 // int left
        13: .line 146
            iload 5 /* left */
            iconst_4
            if_icmpge 16
        14: .line 147
            aload 0 /* this */
            iload 5 /* left */
            invokevirtual com.fasterxml.aalto.in.Utf32Reader.loadMore:(I)Z
            ifne 16
        15: .line 148
            iconst_m1
            ireturn
        end local 5 // int left
        16: .line 153
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.fasterxml.aalto.in.Utf32Reader.mBuffer:[B
            astore 5 /* buf */
        start local 5 // byte[] buf
        17: .line 156
            goto 52
        18: .line 157
      StackMap locals: byte[]
      StackMap stack:
            aload 0 /* this */
            getfield com.fasterxml.aalto.in.Utf32Reader.mPtr:I
            istore 6 /* ptr */
        start local 6 // int ptr
        19: .line 160
            aload 0 /* this */
            getfield com.fasterxml.aalto.in.Utf32Reader.mBigEndian:Z
            ifeq 26
        20: .line 161
            aload 5 /* buf */
            iload 6 /* ptr */
            baload
            bipush 24
            ishl
            aload 5 /* buf */
            iload 6 /* ptr */
            iconst_1
            iadd
            baload
            sipush 255
            iand
            bipush 16
            ishl
            ior
        21: .line 162
            aload 5 /* buf */
            iload 6 /* ptr */
            iconst_2
            iadd
            baload
            sipush 255
            iand
            bipush 8
            ishl
        22: .line 161
            ior
        23: .line 162
            aload 5 /* buf */
            iload 6 /* ptr */
            iconst_3
            iadd
            baload
            sipush 255
            iand
        24: .line 161
            ior
            istore 7 /* ch */
        start local 7 // int ch
        25: .line 163
            goto 31
        end local 7 // int ch
        26: .line 164
      StackMap locals: int
      StackMap stack:
            aload 5 /* buf */
            iload 6 /* ptr */
            baload
            sipush 255
            iand
            aload 5 /* buf */
            iload 6 /* ptr */
            iconst_1
            iadd
            baload
            sipush 255
            iand
            bipush 8
            ishl
            ior
        27: .line 165
            aload 5 /* buf */
            iload 6 /* ptr */
            iconst_2
            iadd
            baload
            sipush 255
            iand
            bipush 16
            ishl
        28: .line 164
            ior
        29: .line 165
            aload 5 /* buf */
            iload 6 /* ptr */
            iconst_3
            iadd
            baload
            bipush 24
            ishl
        30: .line 164
            ior
            istore 7 /* ch */
        start local 7 // int ch
        31: .line 167
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            dup
            getfield com.fasterxml.aalto.in.Utf32Reader.mPtr:I
            iconst_4
            iadd
            putfield com.fasterxml.aalto.in.Utf32Reader.mPtr:I
        32: .line 170
            iload 7 /* ch */
            ldc 55296
            if_icmplt 49
        33: .line 172
            iload 7 /* ch */
            ldc 1114111
            if_icmple 37
        34: .line 173
            aload 0 /* this */
            iload 7 /* ch */
            iload 4 /* outPtr */
            iload 2 /* start */
            isub
        35: .line 174
            new java.lang.StringBuilder
            dup
            ldc "(above "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc 1114111
            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;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        36: .line 173
            invokevirtual com.fasterxml.aalto.in.Utf32Reader.reportInvalid:(IILjava/lang/String;)V
        37: .line 176
      StackMap locals:
      StackMap stack:
            iload 7 /* ch */
            ldc 65535
            if_icmple 44
        38: .line 177
            iload 7 /* ch */
            ldc 65536
            isub
            istore 7 /* ch */
        39: .line 178
            aload 1 /* cbuf */
            iload 4 /* outPtr */
            iinc 4 /* outPtr */ 1
            ldc 55296
            iload 7 /* ch */
            bipush 10
            ishr
            iadd
            i2c
            castore
        40: .line 180
            ldc 56320
            iload 7 /* ch */
            sipush 1023
            iand
            ior
            istore 7 /* ch */
        41: .line 182
            iload 4 /* outPtr */
            iload 3 /* len */
            if_icmplt 49
        42: .line 183
            aload 0 /* this */
            iload 7 /* ch */
            i2c
            putfield com.fasterxml.aalto.in.Utf32Reader.mSurrogate:C
        43: .line 184
            goto 53
        44: .line 187
      StackMap locals:
      StackMap stack:
            iload 7 /* ch */
            ldc 57344
            if_icmpge 47
        45: .line 188
            aload 0 /* this */
            iload 7 /* ch */
            iload 4 /* outPtr */
            iload 2 /* start */
            isub
            ldc "(a surrogate char) "
            invokevirtual com.fasterxml.aalto.in.Utf32Reader.reportInvalid:(IILjava/lang/String;)V
        46: .line 189
            goto 49
      StackMap locals:
      StackMap stack:
        47: iload 7 /* ch */
            ldc 65534
            if_icmplt 49
        48: .line 190
            aload 0 /* this */
            iload 7 /* ch */
            iload 4 /* outPtr */
            iload 2 /* start */
            isub
            ldc ""
            invokevirtual com.fasterxml.aalto.in.Utf32Reader.reportInvalid:(IILjava/lang/String;)V
        49: .line 194
      StackMap locals:
      StackMap stack:
            aload 1 /* cbuf */
            iload 4 /* outPtr */
            iinc 4 /* outPtr */ 1
            iload 7 /* ch */
            i2c
            castore
        50: .line 195
            aload 0 /* this */
            getfield com.fasterxml.aalto.in.Utf32Reader.mPtr:I
            aload 0 /* this */
            getfield com.fasterxml.aalto.in.Utf32Reader.mLength:I
            if_icmplt 52
        51: .line 196
            goto 53
        end local 7 // int ch
        end local 6 // int ptr
        52: .line 156
      StackMap locals:
      StackMap stack:
            iload 4 /* outPtr */
            iload 3 /* len */
            if_icmplt 18
        53: .line 200
      StackMap locals:
      StackMap stack:
            iload 4 /* outPtr */
            iload 2 /* start */
            isub
            istore 3 /* len */
        54: .line 201
            aload 0 /* this */
            dup
            getfield com.fasterxml.aalto.in.Utf32Reader.mCharCount:I
            iload 3 /* len */
            iadd
            putfield com.fasterxml.aalto.in.Utf32Reader.mCharCount:I
        55: .line 202
            iload 3 /* len */
            ireturn
        end local 5 // byte[] buf
        end local 4 // int outPtr
        end local 3 // int len
        end local 2 // int start
        end local 1 // char[] cbuf
        end local 0 // com.fasterxml.aalto.in.Utf32Reader this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   56     0    this  Lcom/fasterxml/aalto/in/Utf32Reader;
            0   56     1    cbuf  [C
            0   56     2   start  I
            0   56     3     len  I
            8   56     4  outPtr  I
           13   16     5    left  I
           17   56     5     buf  [B
           19   52     6     ptr  I
           25   26     7      ch  I
           31   52     7      ch  I
    Exceptions:
      throws java.io.IOException
    MethodParameters:
       Name  Flags
      cbuf   
      start  
      len    

  private boolean loadMore(int);
    descriptor: (I)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=3, args_size=2
        start local 0 // com.fasterxml.aalto.in.Utf32Reader this
        start local 1 // int available
         0: .line 221
            aload 0 /* this */
            dup
            getfield com.fasterxml.aalto.in.Utf32Reader.mByteCount:I
            aload 0 /* this */
            getfield com.fasterxml.aalto.in.Utf32Reader.mLength:I
            iload 1 /* available */
            isub
            iadd
            putfield com.fasterxml.aalto.in.Utf32Reader.mByteCount:I
         1: .line 224
            iload 1 /* available */
            ifle 11
         2: .line 225
            aload 0 /* this */
            getfield com.fasterxml.aalto.in.Utf32Reader.mPtr:I
            ifle 9
         3: .line 226
            iconst_0
            istore 2 /* i */
        start local 2 // int i
         4: goto 7
         5: .line 227
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield com.fasterxml.aalto.in.Utf32Reader.mBuffer:[B
            iload 2 /* i */
            aload 0 /* this */
            getfield com.fasterxml.aalto.in.Utf32Reader.mBuffer:[B
            aload 0 /* this */
            getfield com.fasterxml.aalto.in.Utf32Reader.mPtr:I
            iload 2 /* i */
            iadd
            baload
            bastore
         6: .line 226
            iinc 2 /* i */ 1
      StackMap locals:
      StackMap stack:
         7: iload 2 /* i */
            iload 1 /* available */
            if_icmplt 5
        end local 2 // int i
         8: .line 229
            aload 0 /* this */
            iconst_0
            putfield com.fasterxml.aalto.in.Utf32Reader.mPtr:I
         9: .line 231
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 1 /* available */
            putfield com.fasterxml.aalto.in.Utf32Reader.mLength:I
        10: .line 232
            goto 28
        11: .line 236
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_0
            putfield com.fasterxml.aalto.in.Utf32Reader.mPtr:I
        12: .line 237
            aload 0 /* this */
            getfield com.fasterxml.aalto.in.Utf32Reader.mIn:Ljava/io/InputStream;
            aload 0 /* this */
            getfield com.fasterxml.aalto.in.Utf32Reader.mBuffer:[B
            invokevirtual java.io.InputStream.read:([B)I
            istore 2 /* count */
        start local 2 // int count
        13: .line 238
            iload 2 /* count */
            iconst_1
            if_icmpge 19
        14: .line 239
            aload 0 /* this */
            iconst_0
            putfield com.fasterxml.aalto.in.Utf32Reader.mLength:I
        15: .line 240
            iload 2 /* count */
            ifge 18
        16: .line 241
            aload 0 /* this */
            invokevirtual com.fasterxml.aalto.in.Utf32Reader.freeBuffers:()V
        17: .line 242
            iconst_0
            ireturn
        18: .line 245
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            invokevirtual com.fasterxml.aalto.in.Utf32Reader.reportStrangeStream:()V
        19: .line 247
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 2 /* count */
            putfield com.fasterxml.aalto.in.Utf32Reader.mLength:I
        end local 2 // int count
        20: .line 253
            goto 28
        21: .line 254
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.fasterxml.aalto.in.Utf32Reader.mIn:Ljava/io/InputStream;
            aload 0 /* this */
            getfield com.fasterxml.aalto.in.Utf32Reader.mBuffer:[B
            aload 0 /* this */
            getfield com.fasterxml.aalto.in.Utf32Reader.mLength:I
            aload 0 /* this */
            getfield com.fasterxml.aalto.in.Utf32Reader.mBuffer:[B
            arraylength
            aload 0 /* this */
            getfield com.fasterxml.aalto.in.Utf32Reader.mLength:I
            isub
            invokevirtual java.io.InputStream.read:([BII)I
            istore 2 /* count */
        start local 2 // int count
        22: .line 255
            iload 2 /* count */
            iconst_1
            if_icmpge 27
        23: .line 256
            iload 2 /* count */
            ifge 26
        24: .line 257
            aload 0 /* this */
            invokevirtual com.fasterxml.aalto.in.Utf32Reader.freeBuffers:()V
        25: .line 258
            aload 0 /* this */
            aload 0 /* this */
            getfield com.fasterxml.aalto.in.Utf32Reader.mLength:I
            iconst_4
            invokevirtual com.fasterxml.aalto.in.Utf32Reader.reportUnexpectedEOF:(II)V
        26: .line 261
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            invokevirtual com.fasterxml.aalto.in.Utf32Reader.reportStrangeStream:()V
        27: .line 263
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            dup
            getfield com.fasterxml.aalto.in.Utf32Reader.mLength:I
            iload 2 /* count */
            iadd
            putfield com.fasterxml.aalto.in.Utf32Reader.mLength:I
        end local 2 // int count
        28: .line 253
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.fasterxml.aalto.in.Utf32Reader.mLength:I
            iconst_4
            if_icmplt 21
        29: .line 265
            iconst_1
            ireturn
        end local 1 // int available
        end local 0 // com.fasterxml.aalto.in.Utf32Reader this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   30     0       this  Lcom/fasterxml/aalto/in/Utf32Reader;
            0   30     1  available  I
            4    8     2          i  I
           13   20     2      count  I
           22   28     2      count  I
    Exceptions:
      throws java.io.IOException
    MethodParameters:
           Name  Flags
      available  

  public final void freeBuffers();
    descriptor: ()V
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // com.fasterxml.aalto.in.Utf32Reader this
         0: .line 270
            aload 0 /* this */
            getfield com.fasterxml.aalto.in.Utf32Reader.mBuffer:[B
            astore 1 /* buf */
        start local 1 // byte[] buf
         1: .line 271
            aload 1 /* buf */
            ifnull 5
         2: .line 272
            aload 0 /* this */
            aconst_null
            putfield com.fasterxml.aalto.in.Utf32Reader.mBuffer:[B
         3: .line 273
            aload 0 /* this */
            getfield com.fasterxml.aalto.in.Utf32Reader.mConfig:Lcom/fasterxml/aalto/in/ReaderConfig;
            ifnull 5
         4: .line 274
            aload 0 /* this */
            getfield com.fasterxml.aalto.in.Utf32Reader.mConfig:Lcom/fasterxml/aalto/in/ReaderConfig;
            aload 1 /* buf */
            invokevirtual com.fasterxml.aalto.in.ReaderConfig.freeFullBBuffer:([B)V
         5: .line 277
      StackMap locals: byte[]
      StackMap stack:
            return
        end local 1 // byte[] buf
        end local 0 // com.fasterxml.aalto.in.Utf32Reader this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0  this  Lcom/fasterxml/aalto/in/Utf32Reader;
            1    6     1   buf  [B

  private void reportUnexpectedEOF(int, int);
    descriptor: (II)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=5, args_size=3
        start local 0 // com.fasterxml.aalto.in.Utf32Reader this
        start local 1 // int gotBytes
        start local 2 // int needed
         0: .line 288
            aload 0 /* this */
            getfield com.fasterxml.aalto.in.Utf32Reader.mByteCount:I
            iload 1 /* gotBytes */
            iadd
            istore 3 /* bytePos */
        start local 3 // int bytePos
         1: .line 289
            aload 0 /* this */
            getfield com.fasterxml.aalto.in.Utf32Reader.mCharCount:I
            istore 4 /* charPos */
        start local 4 // int charPos
         2: .line 291
            new java.io.CharConversionException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Unexpected EOF in the middle of a 4-byte UTF-32 char: got "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
         3: .line 292
            iload 1 /* gotBytes */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            ldc ", needed "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            iload 2 /* needed */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
         4: .line 293
            ldc ", at char #"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            iload 4 /* charPos */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            ldc ", byte #"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            iload 3 /* bytePos */
            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;
         5: .line 291
            invokespecial java.io.CharConversionException.<init>:(Ljava/lang/String;)V
            athrow
        end local 4 // int charPos
        end local 3 // int bytePos
        end local 2 // int needed
        end local 1 // int gotBytes
        end local 0 // com.fasterxml.aalto.in.Utf32Reader this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    6     0      this  Lcom/fasterxml/aalto/in/Utf32Reader;
            0    6     1  gotBytes  I
            0    6     2    needed  I
            1    6     3   bytePos  I
            2    6     4   charPos  I
    Exceptions:
      throws java.io.IOException
    MethodParameters:
          Name  Flags
      gotBytes  
      needed    

  private void reportInvalid(int, int, java.lang.String);
    descriptor: (IILjava/lang/String;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=6, args_size=4
        start local 0 // com.fasterxml.aalto.in.Utf32Reader this
        start local 1 // int value
        start local 2 // int offset
        start local 3 // java.lang.String msg
         0: .line 299
            aload 0 /* this */
            getfield com.fasterxml.aalto.in.Utf32Reader.mByteCount:I
            aload 0 /* this */
            getfield com.fasterxml.aalto.in.Utf32Reader.mPtr:I
            iadd
            iconst_1
            isub
            istore 4 /* bytePos */
        start local 4 // int bytePos
         1: .line 300
            aload 0 /* this */
            getfield com.fasterxml.aalto.in.Utf32Reader.mCharCount:I
            iload 2 /* offset */
            iadd
            istore 5 /* charPos */
        start local 5 // int charPos
         2: .line 302
            new java.io.CharConversionException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Invalid UTF-32 character 0x"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
         3: .line 303
            iload 1 /* value */
            invokestatic java.lang.Integer.toHexString:(I)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         4: .line 304
            aload 3 /* msg */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc " at char #"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            iload 5 /* charPos */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            ldc ", byte #"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            iload 4 /* bytePos */
            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;
         5: .line 302
            invokespecial java.io.CharConversionException.<init>:(Ljava/lang/String;)V
            athrow
        end local 5 // int charPos
        end local 4 // int bytePos
        end local 3 // java.lang.String msg
        end local 2 // int offset
        end local 1 // int value
        end local 0 // com.fasterxml.aalto.in.Utf32Reader this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    6     0     this  Lcom/fasterxml/aalto/in/Utf32Reader;
            0    6     1    value  I
            0    6     2   offset  I
            0    6     3      msg  Ljava/lang/String;
            1    6     4  bytePos  I
            2    6     5  charPos  I
    Exceptions:
      throws java.io.IOException
    MethodParameters:
        Name  Flags
      value   
      offset  
      msg     

  protected void reportBounds(char[], int, int);
    descriptor: ([CII)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=5, locals=4, args_size=4
        start local 0 // com.fasterxml.aalto.in.Utf32Reader this
        start local 1 // char[] cbuf
        start local 2 // int start
        start local 3 // int len
         0: .line 310
            new java.lang.ArrayIndexOutOfBoundsException
            dup
            new java.lang.StringBuilder
            dup
            ldc "read(buf,"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 2 /* start */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            ldc ","
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            iload 3 /* len */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            ldc "), cbuf["
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 1 /* cbuf */
            arraylength
            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;
            invokespecial java.lang.ArrayIndexOutOfBoundsException.<init>:(Ljava/lang/String;)V
            athrow
        end local 3 // int len
        end local 2 // int start
        end local 1 // char[] cbuf
        end local 0 // com.fasterxml.aalto.in.Utf32Reader this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0   this  Lcom/fasterxml/aalto/in/Utf32Reader;
            0    1     1   cbuf  [C
            0    1     2  start  I
            0    1     3    len  I
    Exceptions:
      throws java.io.IOException
    MethodParameters:
       Name  Flags
      cbuf   
      start  
      len    

  protected void reportStrangeStream();
    descriptor: ()V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // com.fasterxml.aalto.in.Utf32Reader this
         0: .line 316
            new java.io.IOException
            dup
            ldc "Strange I/O stream, returned 0 bytes on read"
            invokespecial java.io.IOException.<init>:(Ljava/lang/String;)V
            athrow
        end local 0 // com.fasterxml.aalto.in.Utf32Reader this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/fasterxml/aalto/in/Utf32Reader;
    Exceptions:
      throws java.io.IOException
}
SourceFile: "Utf32Reader.java"