abstract class sun.nio.cs.ext.DBCS_IBM_ASCII_Encoder extends java.nio.charset.CharsetEncoder
  minor version: 0
  major version: 59
  flags: flags: (0x0420) ACC_SUPER, ACC_ABSTRACT
  this_class: sun.nio.cs.ext.DBCS_IBM_ASCII_Encoder
  super_class: java.nio.charset.CharsetEncoder
{
  protected static final char REPLACE_CHAR;
    descriptor: C
    flags: (0x001c) ACC_PROTECTED, ACC_STATIC, ACC_FINAL
    ConstantValue: 65533

  private byte b1;
    descriptor: B
    flags: (0x0002) ACC_PRIVATE

  private byte b2;
    descriptor: B
    flags: (0x0002) ACC_PRIVATE

  protected short[] index1;
    descriptor: [S
    flags: (0x0004) ACC_PROTECTED

  protected java.lang.String index2;
    descriptor: Ljava/lang/String;
    flags: (0x0004) ACC_PROTECTED

  protected java.lang.String index2a;
    descriptor: Ljava/lang/String;
    flags: (0x0004) ACC_PROTECTED

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

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

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

  private final sun.nio.cs.Surrogate$Parser sgp;
    descriptor: Lsun/nio/cs/Surrogate$Parser;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  protected void <init>(java.nio.charset.Charset);
    descriptor: (Ljava/nio/charset/Charset;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // sun.nio.cs.ext.DBCS_IBM_ASCII_Encoder this
        start local 1 // java.nio.charset.Charset cs
         0: .line 62
            aload 0 /* this */
            aload 1 /* cs */
            fconst_2
            fconst_2
            invokespecial java.nio.charset.CharsetEncoder.<init>:(Ljava/nio/charset/Charset;FF)V
         1: .line 59
            aload 0 /* this */
            new sun.nio.cs.Surrogate$Parser
            dup
            invokespecial sun.nio.cs.Surrogate$Parser.<init>:()V
            putfield sun.nio.cs.ext.DBCS_IBM_ASCII_Encoder.sgp:Lsun/nio/cs/Surrogate$Parser;
         2: .line 63
            return
        end local 1 // java.nio.charset.Charset cs
        end local 0 // sun.nio.cs.ext.DBCS_IBM_ASCII_Encoder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lsun/nio/cs/ext/DBCS_IBM_ASCII_Encoder;
            0    3     1    cs  Ljava/nio/charset/Charset;
    MethodParameters:
      Name  Flags
      cs    

  public boolean canEncode(char);
    descriptor: (C)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=4, args_size=2
        start local 0 // sun.nio.cs.ext.DBCS_IBM_ASCII_Encoder this
        start local 1 // char ch
         0: .line 73
            aload 0 /* this */
            getfield sun.nio.cs.ext.DBCS_IBM_ASCII_Encoder.index1:[S
            iload 1 /* ch */
            aload 0 /* this */
            getfield sun.nio.cs.ext.DBCS_IBM_ASCII_Encoder.mask1:I
            iand
            aload 0 /* this */
            getfield sun.nio.cs.ext.DBCS_IBM_ASCII_Encoder.shift:I
            ishr
            saload
            iload 1 /* ch */
            aload 0 /* this */
            getfield sun.nio.cs.ext.DBCS_IBM_ASCII_Encoder.mask2:I
            iand
            iadd
            istore 2 /* index */
        start local 2 // int index
         1: .line 74
            iload 2 /* index */
            sipush 15000
            if_icmpge 4
         2: .line 75
            aload 0 /* this */
            getfield sun.nio.cs.ext.DBCS_IBM_ASCII_Encoder.index2:Ljava/lang/String;
            iload 2 /* index */
            invokevirtual java.lang.String.charAt:(I)C
            istore 3 /* theBytes */
        start local 3 // int theBytes
         3: goto 5
        end local 3 // int theBytes
         4: .line 77
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield sun.nio.cs.ext.DBCS_IBM_ASCII_Encoder.index2a:Ljava/lang/String;
            iload 2 /* index */
            sipush 15000
            isub
            invokevirtual java.lang.String.charAt:(I)C
            istore 3 /* theBytes */
        start local 3 // int theBytes
         5: .line 79
      StackMap locals: int
      StackMap stack:
            iload 3 /* theBytes */
            ifeq 7
         6: .line 80
            iconst_1
            ireturn
         7: .line 84
      StackMap locals:
      StackMap stack:
            iload 1 /* ch */
            ifne 8
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         8: iconst_0
            ireturn
        end local 3 // int theBytes
        end local 2 // int index
        end local 1 // char ch
        end local 0 // sun.nio.cs.ext.DBCS_IBM_ASCII_Encoder this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    9     0      this  Lsun/nio/cs/ext/DBCS_IBM_ASCII_Encoder;
            0    9     1        ch  C
            1    9     2     index  I
            3    4     3  theBytes  I
            5    9     3  theBytes  I
    MethodParameters:
      Name  Flags
      ch    

  private java.nio.charset.CoderResult encodeArrayLoop(java.nio.CharBuffer, java.nio.ByteBuffer);
    descriptor: (Ljava/nio/CharBuffer;Ljava/nio/ByteBuffer;)Ljava/nio/charset/CoderResult;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=14, args_size=3
        start local 0 // sun.nio.cs.ext.DBCS_IBM_ASCII_Encoder this
        start local 1 // java.nio.CharBuffer src
        start local 2 // java.nio.ByteBuffer dst
         0: .line 89
            aload 1 /* src */
            invokevirtual java.nio.CharBuffer.array:()[C
            astore 3 /* sa */
        start local 3 // char[] sa
         1: .line 90
            aload 1 /* src */
            invokevirtual java.nio.CharBuffer.arrayOffset:()I
            aload 1 /* src */
            invokevirtual java.nio.CharBuffer.position:()I
            iadd
            istore 4 /* sp */
        start local 4 // int sp
         2: .line 91
            aload 1 /* src */
            invokevirtual java.nio.CharBuffer.arrayOffset:()I
            aload 1 /* src */
            invokevirtual java.nio.CharBuffer.limit:()I
            iadd
            istore 5 /* sl */
        start local 5 // int sl
         3: .line 92
            aload 2 /* dst */
            invokevirtual java.nio.ByteBuffer.array:()[B
            astore 6 /* da */
        start local 6 // byte[] da
         4: .line 93
            aload 2 /* dst */
            invokevirtual java.nio.ByteBuffer.arrayOffset:()I
            aload 2 /* dst */
            invokevirtual java.nio.ByteBuffer.position:()I
            iadd
            istore 7 /* dp */
        start local 7 // int dp
         5: .line 94
            aload 2 /* dst */
            invokevirtual java.nio.ByteBuffer.arrayOffset:()I
            aload 2 /* dst */
            invokevirtual java.nio.ByteBuffer.limit:()I
            iadd
            istore 8 /* dl */
        start local 8 // int dl
         6: .line 98
            goto 54
         7: .line 101
      StackMap locals: sun.nio.cs.ext.DBCS_IBM_ASCII_Encoder java.nio.CharBuffer java.nio.ByteBuffer char[] int int byte[] int int
      StackMap stack:
            aload 3 /* sa */
            iload 4 /* sp */
            caload
            istore 11 /* c */
        start local 11 // char c
         8: .line 102
            iload 11 /* c */
            invokestatic sun.nio.cs.Surrogate.is:(I)Z
            ifeq 18
         9: .line 103
            aload 0 /* this */
            getfield sun.nio.cs.ext.DBCS_IBM_ASCII_Encoder.sgp:Lsun/nio/cs/Surrogate$Parser;
            iload 11 /* c */
            aload 3 /* sa */
            iload 4 /* sp */
            iload 5 /* sl */
            invokevirtual sun.nio.cs.Surrogate$Parser.parse:(C[CII)I
            ifge 14
        10: .line 104
            aload 0 /* this */
            getfield sun.nio.cs.ext.DBCS_IBM_ASCII_Encoder.sgp:Lsun/nio/cs/Surrogate$Parser;
            invokevirtual sun.nio.cs.Surrogate$Parser.error:()Ljava/nio/charset/CoderResult;
            astore 13
        11: .line 138
            aload 1 /* src */
            iload 4 /* sp */
            aload 1 /* src */
            invokevirtual java.nio.CharBuffer.arrayOffset:()I
            isub
            invokevirtual java.nio.CharBuffer.position:(I)Ljava/nio/Buffer;
            pop
        12: .line 139
            aload 2 /* dst */
            iload 7 /* dp */
            aload 2 /* dst */
            invokevirtual java.nio.ByteBuffer.arrayOffset:()I
            isub
            invokevirtual java.nio.ByteBuffer.position:(I)Ljava/nio/Buffer;
            pop
        13: .line 104
            aload 13
            areturn
        14: .line 105
      StackMap locals: sun.nio.cs.ext.DBCS_IBM_ASCII_Encoder java.nio.CharBuffer java.nio.ByteBuffer char[] int int byte[] int int top top int
      StackMap stack:
            aload 0 /* this */
            getfield sun.nio.cs.ext.DBCS_IBM_ASCII_Encoder.sgp:Lsun/nio/cs/Surrogate$Parser;
            invokevirtual sun.nio.cs.Surrogate$Parser.unmappableResult:()Ljava/nio/charset/CoderResult;
            astore 13
        15: .line 138
            aload 1 /* src */
            iload 4 /* sp */
            aload 1 /* src */
            invokevirtual java.nio.CharBuffer.arrayOffset:()I
            isub
            invokevirtual java.nio.CharBuffer.position:(I)Ljava/nio/Buffer;
            pop
        16: .line 139
            aload 2 /* dst */
            iload 7 /* dp */
            aload 2 /* dst */
            invokevirtual java.nio.ByteBuffer.arrayOffset:()I
            isub
            invokevirtual java.nio.ByteBuffer.position:(I)Ljava/nio/Buffer;
            pop
        17: .line 105
            aload 13
            areturn
        18: .line 107
      StackMap locals:
      StackMap stack:
            iload 11 /* c */
            ldc 65534
            if_icmplt 23
        19: .line 108
            iconst_1
            invokestatic java.nio.charset.CoderResult.unmappableForLength:(I)Ljava/nio/charset/CoderResult;
            astore 13
        20: .line 138
            aload 1 /* src */
            iload 4 /* sp */
            aload 1 /* src */
            invokevirtual java.nio.CharBuffer.arrayOffset:()I
            isub
            invokevirtual java.nio.CharBuffer.position:(I)Ljava/nio/Buffer;
            pop
        21: .line 139
            aload 2 /* dst */
            iload 7 /* dp */
            aload 2 /* dst */
            invokevirtual java.nio.ByteBuffer.arrayOffset:()I
            isub
            invokevirtual java.nio.ByteBuffer.position:(I)Ljava/nio/Buffer;
            pop
        22: .line 108
            aload 13
            areturn
        23: .line 110
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.nio.cs.ext.DBCS_IBM_ASCII_Encoder.index1:[S
            iload 11 /* c */
            aload 0 /* this */
            getfield sun.nio.cs.ext.DBCS_IBM_ASCII_Encoder.mask1:I
            iand
            aload 0 /* this */
            getfield sun.nio.cs.ext.DBCS_IBM_ASCII_Encoder.shift:I
            ishr
            saload
        24: .line 111
            iload 11 /* c */
            aload 0 /* this */
            getfield sun.nio.cs.ext.DBCS_IBM_ASCII_Encoder.mask2:I
            iand
        25: .line 110
            iadd
            istore 9 /* index */
        start local 9 // int index
        26: .line 112
            iload 9 /* index */
            sipush 15000
            if_icmpge 29
        27: .line 113
            aload 0 /* this */
            getfield sun.nio.cs.ext.DBCS_IBM_ASCII_Encoder.index2:Ljava/lang/String;
            iload 9 /* index */
            invokevirtual java.lang.String.charAt:(I)C
            istore 10 /* theBytes */
        start local 10 // int theBytes
        28: goto 30
        end local 10 // int theBytes
        29: .line 115
      StackMap locals: sun.nio.cs.ext.DBCS_IBM_ASCII_Encoder java.nio.CharBuffer java.nio.ByteBuffer char[] int int byte[] int int int top int
      StackMap stack:
            aload 0 /* this */
            getfield sun.nio.cs.ext.DBCS_IBM_ASCII_Encoder.index2a:Ljava/lang/String;
            iload 9 /* index */
            sipush 15000
            isub
            invokevirtual java.lang.String.charAt:(I)C
            istore 10 /* theBytes */
        start local 10 // int theBytes
        30: .line 116
      StackMap locals: sun.nio.cs.ext.DBCS_IBM_ASCII_Encoder java.nio.CharBuffer java.nio.ByteBuffer char[] int int byte[] int int int int int
      StackMap stack:
            aload 0 /* this */
            iload 10 /* theBytes */
            ldc 65280
            iand
            bipush 8
            ishr
            i2b
            putfield sun.nio.cs.ext.DBCS_IBM_ASCII_Encoder.b1:B
        31: .line 117
            aload 0 /* this */
            iload 10 /* theBytes */
            sipush 255
            iand
            i2b
            putfield sun.nio.cs.ext.DBCS_IBM_ASCII_Encoder.b2:B
        32: .line 119
            aload 0 /* this */
            getfield sun.nio.cs.ext.DBCS_IBM_ASCII_Encoder.b1:B
            ifne 38
            aload 0 /* this */
            getfield sun.nio.cs.ext.DBCS_IBM_ASCII_Encoder.b2:B
            ifne 38
        33: .line 120
            iload 11 /* c */
            ifeq 38
        34: .line 121
            iconst_1
            invokestatic java.nio.charset.CoderResult.unmappableForLength:(I)Ljava/nio/charset/CoderResult;
            astore 13
        35: .line 138
            aload 1 /* src */
            iload 4 /* sp */
            aload 1 /* src */
            invokevirtual java.nio.CharBuffer.arrayOffset:()I
            isub
            invokevirtual java.nio.CharBuffer.position:(I)Ljava/nio/Buffer;
            pop
        36: .line 139
            aload 2 /* dst */
            iload 7 /* dp */
            aload 2 /* dst */
            invokevirtual java.nio.ByteBuffer.arrayOffset:()I
            isub
            invokevirtual java.nio.ByteBuffer.position:(I)Ljava/nio/Buffer;
            pop
        37: .line 121
            aload 13
            areturn
        38: .line 124
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.nio.cs.ext.DBCS_IBM_ASCII_Encoder.b1:B
            ifne 46
        39: .line 125
            iload 8 /* dl */
            iload 7 /* dp */
            isub
            iconst_1
            if_icmpge 44
        40: .line 126
            getstatic java.nio.charset.CoderResult.OVERFLOW:Ljava/nio/charset/CoderResult;
            astore 13
        41: .line 138
            aload 1 /* src */
            iload 4 /* sp */
            aload 1 /* src */
            invokevirtual java.nio.CharBuffer.arrayOffset:()I
            isub
            invokevirtual java.nio.CharBuffer.position:(I)Ljava/nio/Buffer;
            pop
        42: .line 139
            aload 2 /* dst */
            iload 7 /* dp */
            aload 2 /* dst */
            invokevirtual java.nio.ByteBuffer.arrayOffset:()I
            isub
            invokevirtual java.nio.ByteBuffer.position:(I)Ljava/nio/Buffer;
            pop
        43: .line 126
            aload 13
            areturn
        44: .line 127
      StackMap locals:
      StackMap stack:
            aload 6 /* da */
            iload 7 /* dp */
            iinc 7 /* dp */ 1
            aload 0 /* this */
            getfield sun.nio.cs.ext.DBCS_IBM_ASCII_Encoder.b2:B
            bastore
        45: .line 128
            goto 53
        46: .line 129
      StackMap locals:
      StackMap stack:
            iload 8 /* dl */
            iload 7 /* dp */
            isub
            iconst_2
            if_icmpge 51
        47: .line 130
            getstatic java.nio.charset.CoderResult.OVERFLOW:Ljava/nio/charset/CoderResult;
            astore 13
        48: .line 138
            aload 1 /* src */
            iload 4 /* sp */
            aload 1 /* src */
            invokevirtual java.nio.CharBuffer.arrayOffset:()I
            isub
            invokevirtual java.nio.CharBuffer.position:(I)Ljava/nio/Buffer;
            pop
        49: .line 139
            aload 2 /* dst */
            iload 7 /* dp */
            aload 2 /* dst */
            invokevirtual java.nio.ByteBuffer.arrayOffset:()I
            isub
            invokevirtual java.nio.ByteBuffer.position:(I)Ljava/nio/Buffer;
            pop
        50: .line 130
            aload 13
            areturn
        51: .line 131
      StackMap locals:
      StackMap stack:
            aload 6 /* da */
            iload 7 /* dp */
            iinc 7 /* dp */ 1
            aload 0 /* this */
            getfield sun.nio.cs.ext.DBCS_IBM_ASCII_Encoder.b1:B
            bastore
        52: .line 132
            aload 6 /* da */
            iload 7 /* dp */
            iinc 7 /* dp */ 1
            aload 0 /* this */
            getfield sun.nio.cs.ext.DBCS_IBM_ASCII_Encoder.b2:B
            bastore
        53: .line 134
      StackMap locals:
      StackMap stack:
            iinc 4 /* sp */ 1
        end local 11 // char c
        end local 10 // int theBytes
        end local 9 // int index
        54: .line 98
      StackMap locals:
      StackMap stack:
            iload 4 /* sp */
            iload 5 /* sl */
            if_icmplt 7
        55: .line 136
            getstatic java.nio.charset.CoderResult.UNDERFLOW:Ljava/nio/charset/CoderResult;
            astore 13
        56: .line 138
            aload 1 /* src */
            iload 4 /* sp */
            aload 1 /* src */
            invokevirtual java.nio.CharBuffer.arrayOffset:()I
            isub
            invokevirtual java.nio.CharBuffer.position:(I)Ljava/nio/Buffer;
            pop
        57: .line 139
            aload 2 /* dst */
            iload 7 /* dp */
            aload 2 /* dst */
            invokevirtual java.nio.ByteBuffer.arrayOffset:()I
            isub
            invokevirtual java.nio.ByteBuffer.position:(I)Ljava/nio/Buffer;
            pop
        58: .line 136
            aload 13
            areturn
        59: .line 137
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 12
        60: .line 138
            aload 1 /* src */
            iload 4 /* sp */
            aload 1 /* src */
            invokevirtual java.nio.CharBuffer.arrayOffset:()I
            isub
            invokevirtual java.nio.CharBuffer.position:(I)Ljava/nio/Buffer;
            pop
        61: .line 139
            aload 2 /* dst */
            iload 7 /* dp */
            aload 2 /* dst */
            invokevirtual java.nio.ByteBuffer.arrayOffset:()I
            isub
            invokevirtual java.nio.ByteBuffer.position:(I)Ljava/nio/Buffer;
            pop
        62: .line 140
            aload 12
            athrow
        end local 8 // int dl
        end local 7 // int dp
        end local 6 // byte[] da
        end local 5 // int sl
        end local 4 // int sp
        end local 3 // char[] sa
        end local 2 // java.nio.ByteBuffer dst
        end local 1 // java.nio.CharBuffer src
        end local 0 // sun.nio.cs.ext.DBCS_IBM_ASCII_Encoder this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   63     0      this  Lsun/nio/cs/ext/DBCS_IBM_ASCII_Encoder;
            0   63     1       src  Ljava/nio/CharBuffer;
            0   63     2       dst  Ljava/nio/ByteBuffer;
            1   63     3        sa  [C
            2   63     4        sp  I
            3   63     5        sl  I
            4   63     6        da  [B
            5   63     7        dp  I
            6   63     8        dl  I
           26   54     9     index  I
           28   29    10  theBytes  I
           30   54    10  theBytes  I
            8   54    11         c  C
      Exception table:
        from    to  target  type
           6    11      59  any
          14    15      59  any
          18    20      59  any
          23    35      59  any
          38    41      59  any
          44    48      59  any
          51    56      59  any
    MethodParameters:
      Name  Flags
      src   
      dst   

  private java.nio.charset.CoderResult encodeBufferLoop(java.nio.CharBuffer, java.nio.ByteBuffer);
    descriptor: (Ljava/nio/CharBuffer;Ljava/nio/ByteBuffer;)Ljava/nio/charset/CoderResult;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=9, args_size=3
        start local 0 // sun.nio.cs.ext.DBCS_IBM_ASCII_Encoder this
        start local 1 // java.nio.CharBuffer src
        start local 2 // java.nio.ByteBuffer dst
         0: .line 144
            aload 1 /* src */
            invokevirtual java.nio.CharBuffer.position:()I
            istore 3 /* mark */
        start local 3 // int mark
         1: .line 148
            goto 43
         2: .line 151
      StackMap locals: int
      StackMap stack:
            aload 1 /* src */
            invokevirtual java.nio.CharBuffer.get:()C
            istore 6 /* c */
        start local 6 // char c
         3: .line 152
            iload 6 /* c */
            invokestatic sun.nio.cs.Surrogate.is:(I)Z
            ifeq 11
         4: .line 153
            aload 0 /* this */
            getfield sun.nio.cs.ext.DBCS_IBM_ASCII_Encoder.sgp:Lsun/nio/cs/Surrogate$Parser;
            iload 6 /* c */
            aload 1 /* src */
            invokevirtual sun.nio.cs.Surrogate$Parser.parse:(CLjava/nio/CharBuffer;)I
            ifge 8
         5: .line 154
            aload 0 /* this */
            getfield sun.nio.cs.ext.DBCS_IBM_ASCII_Encoder.sgp:Lsun/nio/cs/Surrogate$Parser;
            invokevirtual sun.nio.cs.Surrogate$Parser.error:()Ljava/nio/charset/CoderResult;
            astore 8
         6: .line 188
            aload 1 /* src */
            iload 3 /* mark */
            invokevirtual java.nio.CharBuffer.position:(I)Ljava/nio/Buffer;
            pop
         7: .line 154
            aload 8
            areturn
         8: .line 155
      StackMap locals: sun.nio.cs.ext.DBCS_IBM_ASCII_Encoder java.nio.CharBuffer java.nio.ByteBuffer int top top int
      StackMap stack:
            aload 0 /* this */
            getfield sun.nio.cs.ext.DBCS_IBM_ASCII_Encoder.sgp:Lsun/nio/cs/Surrogate$Parser;
            invokevirtual sun.nio.cs.Surrogate$Parser.unmappableResult:()Ljava/nio/charset/CoderResult;
            astore 8
         9: .line 188
            aload 1 /* src */
            iload 3 /* mark */
            invokevirtual java.nio.CharBuffer.position:(I)Ljava/nio/Buffer;
            pop
        10: .line 155
            aload 8
            areturn
        11: .line 157
      StackMap locals:
      StackMap stack:
            iload 6 /* c */
            ldc 65534
            if_icmplt 15
        12: .line 158
            iconst_1
            invokestatic java.nio.charset.CoderResult.unmappableForLength:(I)Ljava/nio/charset/CoderResult;
            astore 8
        13: .line 188
            aload 1 /* src */
            iload 3 /* mark */
            invokevirtual java.nio.CharBuffer.position:(I)Ljava/nio/Buffer;
            pop
        14: .line 158
            aload 8
            areturn
        15: .line 160
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.nio.cs.ext.DBCS_IBM_ASCII_Encoder.index1:[S
            iload 6 /* c */
            aload 0 /* this */
            getfield sun.nio.cs.ext.DBCS_IBM_ASCII_Encoder.mask1:I
            iand
            aload 0 /* this */
            getfield sun.nio.cs.ext.DBCS_IBM_ASCII_Encoder.shift:I
            ishr
            saload
        16: .line 161
            iload 6 /* c */
            aload 0 /* this */
            getfield sun.nio.cs.ext.DBCS_IBM_ASCII_Encoder.mask2:I
            iand
        17: .line 160
            iadd
            istore 4 /* index */
        start local 4 // int index
        18: .line 162
            iload 4 /* index */
            sipush 15000
            if_icmpge 21
        19: .line 163
            aload 0 /* this */
            getfield sun.nio.cs.ext.DBCS_IBM_ASCII_Encoder.index2:Ljava/lang/String;
            iload 4 /* index */
            invokevirtual java.lang.String.charAt:(I)C
            istore 5 /* theBytes */
        start local 5 // int theBytes
        20: goto 22
        end local 5 // int theBytes
        21: .line 165
      StackMap locals: sun.nio.cs.ext.DBCS_IBM_ASCII_Encoder java.nio.CharBuffer java.nio.ByteBuffer int int top int
      StackMap stack:
            aload 0 /* this */
            getfield sun.nio.cs.ext.DBCS_IBM_ASCII_Encoder.index2a:Ljava/lang/String;
            iload 4 /* index */
            sipush 15000
            isub
            invokevirtual java.lang.String.charAt:(I)C
            istore 5 /* theBytes */
        start local 5 // int theBytes
        22: .line 166
      StackMap locals: sun.nio.cs.ext.DBCS_IBM_ASCII_Encoder java.nio.CharBuffer java.nio.ByteBuffer int int int int
      StackMap stack:
            aload 0 /* this */
            iload 5 /* theBytes */
            ldc 65280
            iand
            bipush 8
            ishr
            i2b
            putfield sun.nio.cs.ext.DBCS_IBM_ASCII_Encoder.b1:B
        23: .line 167
            aload 0 /* this */
            iload 5 /* theBytes */
            sipush 255
            iand
            i2b
            putfield sun.nio.cs.ext.DBCS_IBM_ASCII_Encoder.b2:B
        24: .line 169
            aload 0 /* this */
            getfield sun.nio.cs.ext.DBCS_IBM_ASCII_Encoder.b1:B
            ifne 29
            aload 0 /* this */
            getfield sun.nio.cs.ext.DBCS_IBM_ASCII_Encoder.b2:B
            ifne 29
        25: .line 170
            iload 6 /* c */
            ifeq 29
        26: .line 171
            iconst_1
            invokestatic java.nio.charset.CoderResult.unmappableForLength:(I)Ljava/nio/charset/CoderResult;
            astore 8
        27: .line 188
            aload 1 /* src */
            iload 3 /* mark */
            invokevirtual java.nio.CharBuffer.position:(I)Ljava/nio/Buffer;
            pop
        28: .line 171
            aload 8
            areturn
        29: .line 174
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.nio.cs.ext.DBCS_IBM_ASCII_Encoder.b1:B
            ifne 36
        30: .line 175
            aload 2 /* dst */
            invokevirtual java.nio.ByteBuffer.remaining:()I
            iconst_1
            if_icmpge 34
        31: .line 176
            getstatic java.nio.charset.CoderResult.OVERFLOW:Ljava/nio/charset/CoderResult;
            astore 8
        32: .line 188
            aload 1 /* src */
            iload 3 /* mark */
            invokevirtual java.nio.CharBuffer.position:(I)Ljava/nio/Buffer;
            pop
        33: .line 176
            aload 8
            areturn
        34: .line 177
      StackMap locals:
      StackMap stack:
            aload 2 /* dst */
            aload 0 /* this */
            getfield sun.nio.cs.ext.DBCS_IBM_ASCII_Encoder.b2:B
            invokevirtual java.nio.ByteBuffer.put:(B)Ljava/nio/ByteBuffer;
            pop
        35: .line 178
            goto 42
        36: .line 179
      StackMap locals:
      StackMap stack:
            aload 2 /* dst */
            invokevirtual java.nio.ByteBuffer.remaining:()I
            iconst_2
            if_icmpge 40
        37: .line 180
            getstatic java.nio.charset.CoderResult.OVERFLOW:Ljava/nio/charset/CoderResult;
            astore 8
        38: .line 188
            aload 1 /* src */
            iload 3 /* mark */
            invokevirtual java.nio.CharBuffer.position:(I)Ljava/nio/Buffer;
            pop
        39: .line 180
            aload 8
            areturn
        40: .line 181
      StackMap locals:
      StackMap stack:
            aload 2 /* dst */
            aload 0 /* this */
            getfield sun.nio.cs.ext.DBCS_IBM_ASCII_Encoder.b1:B
            invokevirtual java.nio.ByteBuffer.put:(B)Ljava/nio/ByteBuffer;
            pop
        41: .line 182
            aload 2 /* dst */
            aload 0 /* this */
            getfield sun.nio.cs.ext.DBCS_IBM_ASCII_Encoder.b2:B
            invokevirtual java.nio.ByteBuffer.put:(B)Ljava/nio/ByteBuffer;
            pop
        42: .line 184
      StackMap locals:
      StackMap stack:
            iinc 3 /* mark */ 1
        end local 6 // char c
        end local 5 // int theBytes
        end local 4 // int index
        43: .line 148
      StackMap locals:
      StackMap stack:
            aload 1 /* src */
            invokevirtual java.nio.CharBuffer.hasRemaining:()Z
            ifne 2
        44: .line 186
            getstatic java.nio.charset.CoderResult.UNDERFLOW:Ljava/nio/charset/CoderResult;
            astore 8
        45: .line 188
            aload 1 /* src */
            iload 3 /* mark */
            invokevirtual java.nio.CharBuffer.position:(I)Ljava/nio/Buffer;
            pop
        46: .line 186
            aload 8
            areturn
        47: .line 187
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 7
        48: .line 188
            aload 1 /* src */
            iload 3 /* mark */
            invokevirtual java.nio.CharBuffer.position:(I)Ljava/nio/Buffer;
            pop
        49: .line 189
            aload 7
            athrow
        end local 3 // int mark
        end local 2 // java.nio.ByteBuffer dst
        end local 1 // java.nio.CharBuffer src
        end local 0 // sun.nio.cs.ext.DBCS_IBM_ASCII_Encoder this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   50     0      this  Lsun/nio/cs/ext/DBCS_IBM_ASCII_Encoder;
            0   50     1       src  Ljava/nio/CharBuffer;
            0   50     2       dst  Ljava/nio/ByteBuffer;
            1   50     3      mark  I
           18   43     4     index  I
           20   21     5  theBytes  I
           22   43     5  theBytes  I
            3   43     6         c  C
      Exception table:
        from    to  target  type
           1     6      47  any
           8     9      47  any
          11    13      47  any
          15    27      47  any
          29    32      47  any
          34    38      47  any
          40    45      47  any
    MethodParameters:
      Name  Flags
      src   
      dst   

  protected java.nio.charset.CoderResult encodeLoop(java.nio.CharBuffer, java.nio.ByteBuffer);
    descriptor: (Ljava/nio/CharBuffer;Ljava/nio/ByteBuffer;)Ljava/nio/charset/CoderResult;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // sun.nio.cs.ext.DBCS_IBM_ASCII_Encoder this
        start local 1 // java.nio.CharBuffer src
        start local 2 // java.nio.ByteBuffer dst
         0: .line 193
            aload 1 /* src */
            invokevirtual java.nio.CharBuffer.hasArray:()Z
            ifeq 2
            aload 2 /* dst */
            invokevirtual java.nio.ByteBuffer.hasArray:()Z
            ifeq 2
         1: .line 194
            aload 0 /* this */
            aload 1 /* src */
            aload 2 /* dst */
            invokevirtual sun.nio.cs.ext.DBCS_IBM_ASCII_Encoder.encodeArrayLoop:(Ljava/nio/CharBuffer;Ljava/nio/ByteBuffer;)Ljava/nio/charset/CoderResult;
            areturn
         2: .line 196
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* src */
            aload 2 /* dst */
            invokevirtual sun.nio.cs.ext.DBCS_IBM_ASCII_Encoder.encodeBufferLoop:(Ljava/nio/CharBuffer;Ljava/nio/ByteBuffer;)Ljava/nio/charset/CoderResult;
            areturn
        end local 2 // java.nio.ByteBuffer dst
        end local 1 // java.nio.CharBuffer src
        end local 0 // sun.nio.cs.ext.DBCS_IBM_ASCII_Encoder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lsun/nio/cs/ext/DBCS_IBM_ASCII_Encoder;
            0    3     1   src  Ljava/nio/CharBuffer;
            0    3     2   dst  Ljava/nio/ByteBuffer;
    MethodParameters:
      Name  Flags
      src   
      dst   
}
SourceFile: "DBCS_IBM_ASCII_Encoder.java"
InnerClasses:
  public Parser = sun.nio.cs.Surrogate$Parser of sun.nio.cs.Surrogate