public class sun.nio.cs.ext.DoubleByte$Encoder_EBCDIC extends sun.nio.cs.ext.DoubleByte$Encoder
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: sun.nio.cs.ext.DoubleByte$Encoder_EBCDIC
  super_class: sun.nio.cs.ext.DoubleByte$Encoder
{
  static final int SBCS;
    descriptor: I
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: 0

  static final int DBCS;
    descriptor: I
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: 1

  static final byte SO;
    descriptor: B
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: 14

  static final byte SI;
    descriptor: B
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: 15

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

  void <init>(java.nio.charset.Charset, char[], char[]);
    descriptor: (Ljava/nio/charset/Charset;[C[C)V
    flags: (0x0000) 
    Code:
      stack=8, locals=4, args_size=4
        start local 0 // sun.nio.cs.ext.DoubleByte$Encoder_EBCDIC this
        start local 1 // java.nio.charset.Charset cs
        start local 2 // char[] c2b
        start local 3 // char[] c2bIndex
         0: .line 768
            aload 0 /* this */
            aload 1 /* cs */
            ldc 4.0
            ldc 5.0
            iconst_1
            newarray 8
            dup
            iconst_0
            bipush 111
            bastore
            aload 2 /* c2b */
            aload 3 /* c2bIndex */
            invokespecial sun.nio.cs.ext.DoubleByte$Encoder.<init>:(Ljava/nio/charset/Charset;FF[B[C[C)V
         1: .line 765
            aload 0 /* this */
            iconst_0
            putfield sun.nio.cs.ext.DoubleByte$Encoder_EBCDIC.currentState:I
         2: .line 769
            return
        end local 3 // char[] c2bIndex
        end local 2 // char[] c2b
        end local 1 // java.nio.charset.Charset cs
        end local 0 // sun.nio.cs.ext.DoubleByte$Encoder_EBCDIC this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    3     0      this  Lsun/nio/cs/ext/DoubleByte$Encoder_EBCDIC;
            0    3     1        cs  Ljava/nio/charset/Charset;
            0    3     2       c2b  [C
            0    3     3  c2bIndex  [C
    MethodParameters:
          Name  Flags
      cs        
      c2b       
      c2bIndex  

  protected void implReset();
    descriptor: ()V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // sun.nio.cs.ext.DoubleByte$Encoder_EBCDIC this
         0: .line 772
            aload 0 /* this */
            iconst_0
            putfield sun.nio.cs.ext.DoubleByte$Encoder_EBCDIC.currentState:I
         1: .line 773
            return
        end local 0 // sun.nio.cs.ext.DoubleByte$Encoder_EBCDIC this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lsun/nio/cs/ext/DoubleByte$Encoder_EBCDIC;

  protected java.nio.charset.CoderResult implFlush(java.nio.ByteBuffer);
    descriptor: (Ljava/nio/ByteBuffer;)Ljava/nio/charset/CoderResult;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // sun.nio.cs.ext.DoubleByte$Encoder_EBCDIC this
        start local 1 // java.nio.ByteBuffer out
         0: .line 776
            aload 0 /* this */
            getfield sun.nio.cs.ext.DoubleByte$Encoder_EBCDIC.currentState:I
            iconst_1
            if_icmpne 4
         1: .line 777
            aload 1 /* out */
            invokevirtual java.nio.ByteBuffer.remaining:()I
            iconst_1
            if_icmpge 3
         2: .line 778
            getstatic java.nio.charset.CoderResult.OVERFLOW:Ljava/nio/charset/CoderResult;
            areturn
         3: .line 779
      StackMap locals:
      StackMap stack:
            aload 1 /* out */
            bipush 15
            invokevirtual java.nio.ByteBuffer.put:(B)Ljava/nio/ByteBuffer;
            pop
         4: .line 781
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual sun.nio.cs.ext.DoubleByte$Encoder_EBCDIC.implReset:()V
         5: .line 782
            getstatic java.nio.charset.CoderResult.UNDERFLOW:Ljava/nio/charset/CoderResult;
            areturn
        end local 1 // java.nio.ByteBuffer out
        end local 0 // sun.nio.cs.ext.DoubleByte$Encoder_EBCDIC this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0  this  Lsun/nio/cs/ext/DoubleByte$Encoder_EBCDIC;
            0    6     1   out  Ljava/nio/ByteBuffer;
    MethodParameters:
      Name  Flags
      out   

  protected java.nio.charset.CoderResult encodeArrayLoop(java.nio.CharBuffer, java.nio.ByteBuffer);
    descriptor: (Ljava/nio/CharBuffer;Ljava/nio/ByteBuffer;)Ljava/nio/charset/CoderResult;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=5, locals=13, args_size=3
        start local 0 // sun.nio.cs.ext.DoubleByte$Encoder_EBCDIC this
        start local 1 // java.nio.CharBuffer src
        start local 2 // java.nio.ByteBuffer dst
         0: .line 786
            aload 1 /* src */
            invokevirtual java.nio.CharBuffer.array:()[C
            astore 3 /* sa */
        start local 3 // char[] sa
         1: .line 787
            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 788
            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 789
            aload 2 /* dst */
            invokevirtual java.nio.ByteBuffer.array:()[B
            astore 6 /* da */
        start local 6 // byte[] da
         4: .line 790
            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 791
            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 794
            goto 56
         7: .line 795
      StackMap locals: sun.nio.cs.ext.DoubleByte$Encoder_EBCDIC java.nio.CharBuffer java.nio.ByteBuffer char[] int int byte[] int int
      StackMap stack:
            aload 3 /* sa */
            iload 4 /* sp */
            caload
            istore 9 /* c */
        start local 9 // char c
         8: .line 796
            aload 0 /* this */
            iload 9 /* c */
            invokevirtual sun.nio.cs.ext.DoubleByte$Encoder_EBCDIC.encodeChar:(C)I
            istore 10 /* bb */
        start local 10 // int bb
         9: .line 797
            iload 10 /* bb */
            ldc 65533
            if_icmpne 24
        10: .line 798
            iload 9 /* c */
            invokestatic java.lang.Character.isSurrogate:(C)Z
            ifeq 20
        11: .line 799
            aload 0 /* this */
            invokevirtual sun.nio.cs.ext.DoubleByte$Encoder_EBCDIC.sgp:()Lsun/nio/cs/Surrogate$Parser;
            iload 9 /* c */
            aload 3 /* sa */
            iload 4 /* sp */
            iload 5 /* sl */
            invokevirtual sun.nio.cs.Surrogate$Parser.parse:(C[CII)I
            ifge 16
        12: .line 800
            aload 0 /* this */
            getfield sun.nio.cs.ext.DoubleByte$Encoder_EBCDIC.sgp:Lsun/nio/cs/Surrogate$Parser;
            invokevirtual sun.nio.cs.Surrogate$Parser.error:()Ljava/nio/charset/CoderResult;
            astore 12
        13: .line 832
            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
        14: .line 833
            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
        15: .line 800
            aload 12
            areturn
        16: .line 801
      StackMap locals: int int
      StackMap stack:
            aload 0 /* this */
            getfield sun.nio.cs.ext.DoubleByte$Encoder_EBCDIC.sgp:Lsun/nio/cs/Surrogate$Parser;
            invokevirtual sun.nio.cs.Surrogate$Parser.unmappableResult:()Ljava/nio/charset/CoderResult;
            astore 12
        17: .line 832
            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
        18: .line 833
            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
        19: .line 801
            aload 12
            areturn
        20: .line 803
      StackMap locals:
      StackMap stack:
            iconst_1
            invokestatic java.nio.charset.CoderResult.unmappableForLength:(I)Ljava/nio/charset/CoderResult;
            astore 12
        21: .line 832
            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
        22: .line 833
            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
        23: .line 803
            aload 12
            areturn
        24: .line 805
      StackMap locals:
      StackMap stack:
            iload 10 /* bb */
            sipush 255
            if_icmple 41
        25: .line 806
            aload 0 /* this */
            getfield sun.nio.cs.ext.DoubleByte$Encoder_EBCDIC.currentState:I
            ifne 33
        26: .line 807
            iload 8 /* dl */
            iload 7 /* dp */
            isub
            iconst_1
            if_icmpge 31
        27: .line 808
            getstatic java.nio.charset.CoderResult.OVERFLOW:Ljava/nio/charset/CoderResult;
            astore 12
        28: .line 832
            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
        29: .line 833
            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
        30: .line 808
            aload 12
            areturn
        31: .line 809
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_1
            putfield sun.nio.cs.ext.DoubleByte$Encoder_EBCDIC.currentState:I
        32: .line 810
            aload 6 /* da */
            iload 7 /* dp */
            iinc 7 /* dp */ 1
            bipush 14
            bastore
        33: .line 812
      StackMap locals:
      StackMap stack:
            iload 8 /* dl */
            iload 7 /* dp */
            isub
            iconst_2
            if_icmpge 38
        34: .line 813
            getstatic java.nio.charset.CoderResult.OVERFLOW:Ljava/nio/charset/CoderResult;
            astore 12
        35: .line 832
            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 833
            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 813
            aload 12
            areturn
        38: .line 814
      StackMap locals:
      StackMap stack:
            aload 6 /* da */
            iload 7 /* dp */
            iinc 7 /* dp */ 1
            iload 10 /* bb */
            bipush 8
            ishr
            i2b
            bastore
        39: .line 815
            aload 6 /* da */
            iload 7 /* dp */
            iinc 7 /* dp */ 1
            iload 10 /* bb */
            i2b
            bastore
        40: .line 816
            goto 55
        41: .line 817
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.nio.cs.ext.DoubleByte$Encoder_EBCDIC.currentState:I
            iconst_1
            if_icmpne 49
        42: .line 818
            iload 8 /* dl */
            iload 7 /* dp */
            isub
            iconst_1
            if_icmpge 47
        43: .line 819
            getstatic java.nio.charset.CoderResult.OVERFLOW:Ljava/nio/charset/CoderResult;
            astore 12
        44: .line 832
            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
        45: .line 833
            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
        46: .line 819
            aload 12
            areturn
        47: .line 820
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_0
            putfield sun.nio.cs.ext.DoubleByte$Encoder_EBCDIC.currentState:I
        48: .line 821
            aload 6 /* da */
            iload 7 /* dp */
            iinc 7 /* dp */ 1
            bipush 15
            bastore
        49: .line 823
      StackMap locals:
      StackMap stack:
            iload 8 /* dl */
            iload 7 /* dp */
            isub
            iconst_1
            if_icmpge 54
        50: .line 824
            getstatic java.nio.charset.CoderResult.OVERFLOW:Ljava/nio/charset/CoderResult;
            astore 12
        51: .line 832
            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
        52: .line 833
            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
        53: .line 824
            aload 12
            areturn
        54: .line 825
      StackMap locals:
      StackMap stack:
            aload 6 /* da */
            iload 7 /* dp */
            iinc 7 /* dp */ 1
            iload 10 /* bb */
            i2b
            bastore
        55: .line 828
      StackMap locals:
      StackMap stack:
            iinc 4 /* sp */ 1
        end local 10 // int bb
        end local 9 // char c
        56: .line 794
      StackMap locals:
      StackMap stack:
            iload 4 /* sp */
            iload 5 /* sl */
            if_icmplt 7
        57: .line 830
            getstatic java.nio.charset.CoderResult.UNDERFLOW:Ljava/nio/charset/CoderResult;
            astore 12
        58: .line 832
            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
        59: .line 833
            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
        60: .line 830
            aload 12
            areturn
        61: .line 831
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 11
        62: .line 832
            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
        63: .line 833
            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
        64: .line 834
            aload 11
            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.DoubleByte$Encoder_EBCDIC this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   65     0  this  Lsun/nio/cs/ext/DoubleByte$Encoder_EBCDIC;
            0   65     1   src  Ljava/nio/CharBuffer;
            0   65     2   dst  Ljava/nio/ByteBuffer;
            1   65     3    sa  [C
            2   65     4    sp  I
            3   65     5    sl  I
            4   65     6    da  [B
            5   65     7    dp  I
            6   65     8    dl  I
            8   56     9     c  C
            9   56    10    bb  I
      Exception table:
        from    to  target  type
           6    13      61  any
          16    17      61  any
          20    21      61  any
          24    28      61  any
          31    35      61  any
          38    44      61  any
          47    51      61  any
          54    58      61  any
    MethodParameters:
      Name  Flags
      src   
      dst   

  protected java.nio.charset.CoderResult encodeBufferLoop(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=8, args_size=3
        start local 0 // sun.nio.cs.ext.DoubleByte$Encoder_EBCDIC this
        start local 1 // java.nio.CharBuffer src
        start local 2 // java.nio.ByteBuffer dst
         0: .line 838
            aload 1 /* src */
            invokevirtual java.nio.CharBuffer.position:()I
            istore 3 /* mark */
        start local 3 // int mark
         1: .line 840
            goto 44
         2: .line 841
      StackMap locals: int
      StackMap stack:
            aload 1 /* src */
            invokevirtual java.nio.CharBuffer.get:()C
            istore 4 /* c */
        start local 4 // char c
         3: .line 842
            aload 0 /* this */
            iload 4 /* c */
            invokevirtual sun.nio.cs.ext.DoubleByte$Encoder_EBCDIC.encodeChar:(C)I
            istore 5 /* bb */
        start local 5 // int bb
         4: .line 843
            iload 5 /* bb */
            ldc 65533
            if_icmpne 16
         5: .line 844
            iload 4 /* c */
            invokestatic java.lang.Character.isSurrogate:(C)Z
            ifeq 13
         6: .line 845
            aload 0 /* this */
            invokevirtual sun.nio.cs.ext.DoubleByte$Encoder_EBCDIC.sgp:()Lsun/nio/cs/Surrogate$Parser;
            iload 4 /* c */
            aload 1 /* src */
            invokevirtual sun.nio.cs.Surrogate$Parser.parse:(CLjava/nio/CharBuffer;)I
            ifge 10
         7: .line 846
            aload 0 /* this */
            getfield sun.nio.cs.ext.DoubleByte$Encoder_EBCDIC.sgp:Lsun/nio/cs/Surrogate$Parser;
            invokevirtual sun.nio.cs.Surrogate$Parser.error:()Ljava/nio/charset/CoderResult;
            astore 7
         8: .line 877
            aload 1 /* src */
            iload 3 /* mark */
            invokevirtual java.nio.CharBuffer.position:(I)Ljava/nio/Buffer;
            pop
         9: .line 846
            aload 7
            areturn
        10: .line 847
      StackMap locals: int int
      StackMap stack:
            aload 0 /* this */
            getfield sun.nio.cs.ext.DoubleByte$Encoder_EBCDIC.sgp:Lsun/nio/cs/Surrogate$Parser;
            invokevirtual sun.nio.cs.Surrogate$Parser.unmappableResult:()Ljava/nio/charset/CoderResult;
            astore 7
        11: .line 877
            aload 1 /* src */
            iload 3 /* mark */
            invokevirtual java.nio.CharBuffer.position:(I)Ljava/nio/Buffer;
            pop
        12: .line 847
            aload 7
            areturn
        13: .line 849
      StackMap locals:
      StackMap stack:
            iconst_1
            invokestatic java.nio.charset.CoderResult.unmappableForLength:(I)Ljava/nio/charset/CoderResult;
            astore 7
        14: .line 877
            aload 1 /* src */
            iload 3 /* mark */
            invokevirtual java.nio.CharBuffer.position:(I)Ljava/nio/Buffer;
            pop
        15: .line 849
            aload 7
            areturn
        16: .line 851
      StackMap locals:
      StackMap stack:
            iload 5 /* bb */
            sipush 255
            if_icmple 31
        17: .line 852
            aload 0 /* this */
            getfield sun.nio.cs.ext.DoubleByte$Encoder_EBCDIC.currentState:I
            ifne 24
        18: .line 853
            aload 2 /* dst */
            invokevirtual java.nio.ByteBuffer.remaining:()I
            iconst_1
            if_icmpge 22
        19: .line 854
            getstatic java.nio.charset.CoderResult.OVERFLOW:Ljava/nio/charset/CoderResult;
            astore 7
        20: .line 877
            aload 1 /* src */
            iload 3 /* mark */
            invokevirtual java.nio.CharBuffer.position:(I)Ljava/nio/Buffer;
            pop
        21: .line 854
            aload 7
            areturn
        22: .line 855
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_1
            putfield sun.nio.cs.ext.DoubleByte$Encoder_EBCDIC.currentState:I
        23: .line 856
            aload 2 /* dst */
            bipush 14
            invokevirtual java.nio.ByteBuffer.put:(B)Ljava/nio/ByteBuffer;
            pop
        24: .line 858
      StackMap locals:
      StackMap stack:
            aload 2 /* dst */
            invokevirtual java.nio.ByteBuffer.remaining:()I
            iconst_2
            if_icmpge 28
        25: .line 859
            getstatic java.nio.charset.CoderResult.OVERFLOW:Ljava/nio/charset/CoderResult;
            astore 7
        26: .line 877
            aload 1 /* src */
            iload 3 /* mark */
            invokevirtual java.nio.CharBuffer.position:(I)Ljava/nio/Buffer;
            pop
        27: .line 859
            aload 7
            areturn
        28: .line 860
      StackMap locals:
      StackMap stack:
            aload 2 /* dst */
            iload 5 /* bb */
            bipush 8
            ishr
            i2b
            invokevirtual java.nio.ByteBuffer.put:(B)Ljava/nio/ByteBuffer;
            pop
        29: .line 861
            aload 2 /* dst */
            iload 5 /* bb */
            i2b
            invokevirtual java.nio.ByteBuffer.put:(B)Ljava/nio/ByteBuffer;
            pop
        30: .line 862
            goto 43
        31: .line 863
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.nio.cs.ext.DoubleByte$Encoder_EBCDIC.currentState:I
            iconst_1
            if_icmpne 38
        32: .line 864
            aload 2 /* dst */
            invokevirtual java.nio.ByteBuffer.remaining:()I
            iconst_1
            if_icmpge 36
        33: .line 865
            getstatic java.nio.charset.CoderResult.OVERFLOW:Ljava/nio/charset/CoderResult;
            astore 7
        34: .line 877
            aload 1 /* src */
            iload 3 /* mark */
            invokevirtual java.nio.CharBuffer.position:(I)Ljava/nio/Buffer;
            pop
        35: .line 865
            aload 7
            areturn
        36: .line 866
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_0
            putfield sun.nio.cs.ext.DoubleByte$Encoder_EBCDIC.currentState:I
        37: .line 867
            aload 2 /* dst */
            bipush 15
            invokevirtual java.nio.ByteBuffer.put:(B)Ljava/nio/ByteBuffer;
            pop
        38: .line 869
      StackMap locals:
      StackMap stack:
            aload 2 /* dst */
            invokevirtual java.nio.ByteBuffer.remaining:()I
            iconst_1
            if_icmpge 42
        39: .line 870
            getstatic java.nio.charset.CoderResult.OVERFLOW:Ljava/nio/charset/CoderResult;
            astore 7
        40: .line 877
            aload 1 /* src */
            iload 3 /* mark */
            invokevirtual java.nio.CharBuffer.position:(I)Ljava/nio/Buffer;
            pop
        41: .line 870
            aload 7
            areturn
        42: .line 871
      StackMap locals:
      StackMap stack:
            aload 2 /* dst */
            iload 5 /* bb */
            i2b
            invokevirtual java.nio.ByteBuffer.put:(B)Ljava/nio/ByteBuffer;
            pop
        43: .line 873
      StackMap locals:
      StackMap stack:
            iinc 3 /* mark */ 1
        end local 5 // int bb
        end local 4 // char c
        44: .line 840
      StackMap locals:
      StackMap stack:
            aload 1 /* src */
            invokevirtual java.nio.CharBuffer.hasRemaining:()Z
            ifne 2
        45: .line 875
            getstatic java.nio.charset.CoderResult.UNDERFLOW:Ljava/nio/charset/CoderResult;
            astore 7
        46: .line 877
            aload 1 /* src */
            iload 3 /* mark */
            invokevirtual java.nio.CharBuffer.position:(I)Ljava/nio/Buffer;
            pop
        47: .line 875
            aload 7
            areturn
        48: .line 876
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 6
        49: .line 877
            aload 1 /* src */
            iload 3 /* mark */
            invokevirtual java.nio.CharBuffer.position:(I)Ljava/nio/Buffer;
            pop
        50: .line 878
            aload 6
            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.DoubleByte$Encoder_EBCDIC this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   51     0  this  Lsun/nio/cs/ext/DoubleByte$Encoder_EBCDIC;
            0   51     1   src  Ljava/nio/CharBuffer;
            0   51     2   dst  Ljava/nio/ByteBuffer;
            1   51     3  mark  I
            3   44     4     c  C
            4   44     5    bb  I
      Exception table:
        from    to  target  type
           1     8      48  any
          10    11      48  any
          13    14      48  any
          16    20      48  any
          22    26      48  any
          28    34      48  any
          36    40      48  any
          42    46      48  any
    MethodParameters:
      Name  Flags
      src   
      dst   

  public int encode(char[], int, int, byte[]);
    descriptor: ([CII[B)I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=9, args_size=5
        start local 0 // sun.nio.cs.ext.DoubleByte$Encoder_EBCDIC this
        start local 1 // char[] src
        start local 2 // int sp
        start local 3 // int len
        start local 4 // byte[] dst
         0: .line 882
            iconst_0
            istore 5 /* dp */
        start local 5 // int dp
         1: .line 883
            iload 2 /* sp */
            iload 3 /* len */
            iadd
            istore 6 /* sl */
        start local 6 // int sl
         2: .line 884
            goto 24
         3: .line 885
      StackMap locals: int int
      StackMap stack:
            aload 1 /* src */
            iload 2 /* sp */
            iinc 2 /* sp */ 1
            caload
            istore 7 /* c */
        start local 7 // char c
         4: .line 886
            aload 0 /* this */
            iload 7 /* c */
            invokevirtual sun.nio.cs.ext.DoubleByte$Encoder_EBCDIC.encodeChar:(C)I
            istore 8 /* bb */
        start local 8 // int bb
         5: .line 888
            iload 8 /* bb */
            ldc 65533
            if_icmpne 13
         6: .line 889
            iload 7 /* c */
            invokestatic java.lang.Character.isHighSurrogate:(C)Z
            ifeq 9
            iload 2 /* sp */
            iload 6 /* sl */
            if_icmpge 9
         7: .line 890
            aload 1 /* src */
            iload 2 /* sp */
            caload
            invokestatic java.lang.Character.isLowSurrogate:(C)Z
            ifeq 9
         8: .line 891
            iinc 2 /* sp */ 1
         9: .line 893
      StackMap locals: int int
      StackMap stack:
            aload 4 /* dst */
            iload 5 /* dp */
            iinc 5 /* dp */ 1
            aload 0 /* this */
            getfield sun.nio.cs.ext.DoubleByte$Encoder_EBCDIC.repl:[B
            iconst_0
            baload
            bastore
        10: .line 894
            aload 0 /* this */
            getfield sun.nio.cs.ext.DoubleByte$Encoder_EBCDIC.repl:[B
            arraylength
            iconst_1
            if_icmple 24
        11: .line 895
            aload 4 /* dst */
            iload 5 /* dp */
            iinc 5 /* dp */ 1
            aload 0 /* this */
            getfield sun.nio.cs.ext.DoubleByte$Encoder_EBCDIC.repl:[B
            iconst_1
            baload
            bastore
        12: .line 896
            goto 24
        13: .line 898
      StackMap locals:
      StackMap stack:
            iload 8 /* bb */
            sipush 255
            if_icmple 20
        14: .line 899
            aload 0 /* this */
            getfield sun.nio.cs.ext.DoubleByte$Encoder_EBCDIC.currentState:I
            ifne 17
        15: .line 900
            aload 0 /* this */
            iconst_1
            putfield sun.nio.cs.ext.DoubleByte$Encoder_EBCDIC.currentState:I
        16: .line 901
            aload 4 /* dst */
            iload 5 /* dp */
            iinc 5 /* dp */ 1
            bipush 14
            bastore
        17: .line 903
      StackMap locals:
      StackMap stack:
            aload 4 /* dst */
            iload 5 /* dp */
            iinc 5 /* dp */ 1
            iload 8 /* bb */
            bipush 8
            ishr
            i2b
            bastore
        18: .line 904
            aload 4 /* dst */
            iload 5 /* dp */
            iinc 5 /* dp */ 1
            iload 8 /* bb */
            i2b
            bastore
        19: .line 905
            goto 24
        20: .line 906
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.nio.cs.ext.DoubleByte$Encoder_EBCDIC.currentState:I
            iconst_1
            if_icmpne 23
        21: .line 907
            aload 0 /* this */
            iconst_0
            putfield sun.nio.cs.ext.DoubleByte$Encoder_EBCDIC.currentState:I
        22: .line 908
            aload 4 /* dst */
            iload 5 /* dp */
            iinc 5 /* dp */ 1
            bipush 15
            bastore
        23: .line 910
      StackMap locals:
      StackMap stack:
            aload 4 /* dst */
            iload 5 /* dp */
            iinc 5 /* dp */ 1
            iload 8 /* bb */
            i2b
            bastore
        end local 8 // int bb
        end local 7 // char c
        24: .line 884
      StackMap locals:
      StackMap stack:
            iload 2 /* sp */
            iload 6 /* sl */
            if_icmplt 3
        25: .line 914
            aload 0 /* this */
            getfield sun.nio.cs.ext.DoubleByte$Encoder_EBCDIC.currentState:I
            iconst_1
            if_icmpne 28
        26: .line 915
            aload 0 /* this */
            iconst_0
            putfield sun.nio.cs.ext.DoubleByte$Encoder_EBCDIC.currentState:I
        27: .line 916
            aload 4 /* dst */
            iload 5 /* dp */
            iinc 5 /* dp */ 1
            bipush 15
            bastore
        28: .line 918
      StackMap locals:
      StackMap stack:
            iload 5 /* dp */
            ireturn
        end local 6 // int sl
        end local 5 // int dp
        end local 4 // byte[] dst
        end local 3 // int len
        end local 2 // int sp
        end local 1 // char[] src
        end local 0 // sun.nio.cs.ext.DoubleByte$Encoder_EBCDIC this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   29     0  this  Lsun/nio/cs/ext/DoubleByte$Encoder_EBCDIC;
            0   29     1   src  [C
            0   29     2    sp  I
            0   29     3   len  I
            0   29     4   dst  [B
            1   29     5    dp  I
            2   29     6    sl  I
            4   24     7     c  C
            5   24     8    bb  I
    MethodParameters:
      Name  Flags
      src   
      sp    
      len   
      dst   
}
SourceFile: "DoubleByte.java"
NestHost: sun.nio.cs.ext.DoubleByte
InnerClasses:
  public Parser = sun.nio.cs.Surrogate$Parser of sun.nio.cs.Surrogate
  public Encoder = sun.nio.cs.ext.DoubleByte$Encoder of sun.nio.cs.ext.DoubleByte
  public Encoder_EBCDIC = sun.nio.cs.ext.DoubleByte$Encoder_EBCDIC of sun.nio.cs.ext.DoubleByte