public class org.apache.tomcat.util.codec.binary.Base64 extends org.apache.tomcat.util.codec.binary.BaseNCodec
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.apache.tomcat.util.codec.binary.Base64
  super_class: org.apache.tomcat.util.codec.binary.BaseNCodec
{
  private static final int BITS_PER_ENCODED_BYTE;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 6

  private static final int BYTES_PER_UNENCODED_BLOCK;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 3

  private static final int BYTES_PER_ENCODED_BLOCK;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 4

  static final byte[] CHUNK_SEPARATOR;
    descriptor: [B
    flags: (0x0018) ACC_STATIC, ACC_FINAL

  private static final byte[] STANDARD_ENCODE_TABLE;
    descriptor: [B
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final byte[] URL_SAFE_ENCODE_TABLE;
    descriptor: [B
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final byte[] DECODE_TABLE;
    descriptor: [B
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final int MASK_6BITS;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 63

  private final byte[] encodeTable;
    descriptor: [B
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final byte[] decodeTable;
    descriptor: [B
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final byte[] lineSeparator;
    descriptor: [B
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final int decodeSize;
    descriptor: I
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final int encodeSize;
    descriptor: I
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=4, locals=0, args_size=0
         0: .line 72
            iconst_2
            newarray 8
            dup
            iconst_0
            bipush 13
            bastore
            dup
            iconst_1
            bipush 10
            bastore
            putstatic org.apache.tomcat.util.codec.binary.Base64.CHUNK_SEPARATOR:[B
         1: .line 81
            bipush 64
            newarray 8
            dup
            iconst_0
         2: .line 82
            bipush 65
            bastore
            dup
            iconst_1
            bipush 66
            bastore
            dup
            iconst_2
            bipush 67
            bastore
            dup
            iconst_3
            bipush 68
            bastore
            dup
            iconst_4
            bipush 69
            bastore
            dup
            iconst_5
            bipush 70
            bastore
            dup
            bipush 6
            bipush 71
            bastore
            dup
            bipush 7
            bipush 72
            bastore
            dup
            bipush 8
            bipush 73
            bastore
            dup
            bipush 9
            bipush 74
            bastore
            dup
            bipush 10
            bipush 75
            bastore
            dup
            bipush 11
            bipush 76
            bastore
            dup
            bipush 12
            bipush 77
            bastore
            dup
            bipush 13
         3: .line 83
            bipush 78
            bastore
            dup
            bipush 14
            bipush 79
            bastore
            dup
            bipush 15
            bipush 80
            bastore
            dup
            bipush 16
            bipush 81
            bastore
            dup
            bipush 17
            bipush 82
            bastore
            dup
            bipush 18
            bipush 83
            bastore
            dup
            bipush 19
            bipush 84
            bastore
            dup
            bipush 20
            bipush 85
            bastore
            dup
            bipush 21
            bipush 86
            bastore
            dup
            bipush 22
            bipush 87
            bastore
            dup
            bipush 23
            bipush 88
            bastore
            dup
            bipush 24
            bipush 89
            bastore
            dup
            bipush 25
            bipush 90
            bastore
            dup
            bipush 26
         4: .line 84
            bipush 97
            bastore
            dup
            bipush 27
            bipush 98
            bastore
            dup
            bipush 28
            bipush 99
            bastore
            dup
            bipush 29
            bipush 100
            bastore
            dup
            bipush 30
            bipush 101
            bastore
            dup
            bipush 31
            bipush 102
            bastore
            dup
            bipush 32
            bipush 103
            bastore
            dup
            bipush 33
            bipush 104
            bastore
            dup
            bipush 34
            bipush 105
            bastore
            dup
            bipush 35
            bipush 106
            bastore
            dup
            bipush 36
            bipush 107
            bastore
            dup
            bipush 37
            bipush 108
            bastore
            dup
            bipush 38
            bipush 109
            bastore
            dup
            bipush 39
         5: .line 85
            bipush 110
            bastore
            dup
            bipush 40
            bipush 111
            bastore
            dup
            bipush 41
            bipush 112
            bastore
            dup
            bipush 42
            bipush 113
            bastore
            dup
            bipush 43
            bipush 114
            bastore
            dup
            bipush 44
            bipush 115
            bastore
            dup
            bipush 45
            bipush 116
            bastore
            dup
            bipush 46
            bipush 117
            bastore
            dup
            bipush 47
            bipush 118
            bastore
            dup
            bipush 48
            bipush 119
            bastore
            dup
            bipush 49
            bipush 120
            bastore
            dup
            bipush 50
            bipush 121
            bastore
            dup
            bipush 51
            bipush 122
            bastore
            dup
            bipush 52
         6: .line 86
            bipush 48
            bastore
            dup
            bipush 53
            bipush 49
            bastore
            dup
            bipush 54
            bipush 50
            bastore
            dup
            bipush 55
            bipush 51
            bastore
            dup
            bipush 56
            bipush 52
            bastore
            dup
            bipush 57
            bipush 53
            bastore
            dup
            bipush 58
            bipush 54
            bastore
            dup
            bipush 59
            bipush 55
            bastore
            dup
            bipush 60
            bipush 56
            bastore
            dup
            bipush 61
            bipush 57
            bastore
            dup
            bipush 62
            bipush 43
            bastore
            dup
            bipush 63
            bipush 47
            bastore
         7: .line 81
            putstatic org.apache.tomcat.util.codec.binary.Base64.STANDARD_ENCODE_TABLE:[B
         8: .line 94
            bipush 64
            newarray 8
            dup
            iconst_0
         9: .line 95
            bipush 65
            bastore
            dup
            iconst_1
            bipush 66
            bastore
            dup
            iconst_2
            bipush 67
            bastore
            dup
            iconst_3
            bipush 68
            bastore
            dup
            iconst_4
            bipush 69
            bastore
            dup
            iconst_5
            bipush 70
            bastore
            dup
            bipush 6
            bipush 71
            bastore
            dup
            bipush 7
            bipush 72
            bastore
            dup
            bipush 8
            bipush 73
            bastore
            dup
            bipush 9
            bipush 74
            bastore
            dup
            bipush 10
            bipush 75
            bastore
            dup
            bipush 11
            bipush 76
            bastore
            dup
            bipush 12
            bipush 77
            bastore
            dup
            bipush 13
        10: .line 96
            bipush 78
            bastore
            dup
            bipush 14
            bipush 79
            bastore
            dup
            bipush 15
            bipush 80
            bastore
            dup
            bipush 16
            bipush 81
            bastore
            dup
            bipush 17
            bipush 82
            bastore
            dup
            bipush 18
            bipush 83
            bastore
            dup
            bipush 19
            bipush 84
            bastore
            dup
            bipush 20
            bipush 85
            bastore
            dup
            bipush 21
            bipush 86
            bastore
            dup
            bipush 22
            bipush 87
            bastore
            dup
            bipush 23
            bipush 88
            bastore
            dup
            bipush 24
            bipush 89
            bastore
            dup
            bipush 25
            bipush 90
            bastore
            dup
            bipush 26
        11: .line 97
            bipush 97
            bastore
            dup
            bipush 27
            bipush 98
            bastore
            dup
            bipush 28
            bipush 99
            bastore
            dup
            bipush 29
            bipush 100
            bastore
            dup
            bipush 30
            bipush 101
            bastore
            dup
            bipush 31
            bipush 102
            bastore
            dup
            bipush 32
            bipush 103
            bastore
            dup
            bipush 33
            bipush 104
            bastore
            dup
            bipush 34
            bipush 105
            bastore
            dup
            bipush 35
            bipush 106
            bastore
            dup
            bipush 36
            bipush 107
            bastore
            dup
            bipush 37
            bipush 108
            bastore
            dup
            bipush 38
            bipush 109
            bastore
            dup
            bipush 39
        12: .line 98
            bipush 110
            bastore
            dup
            bipush 40
            bipush 111
            bastore
            dup
            bipush 41
            bipush 112
            bastore
            dup
            bipush 42
            bipush 113
            bastore
            dup
            bipush 43
            bipush 114
            bastore
            dup
            bipush 44
            bipush 115
            bastore
            dup
            bipush 45
            bipush 116
            bastore
            dup
            bipush 46
            bipush 117
            bastore
            dup
            bipush 47
            bipush 118
            bastore
            dup
            bipush 48
            bipush 119
            bastore
            dup
            bipush 49
            bipush 120
            bastore
            dup
            bipush 50
            bipush 121
            bastore
            dup
            bipush 51
            bipush 122
            bastore
            dup
            bipush 52
        13: .line 99
            bipush 48
            bastore
            dup
            bipush 53
            bipush 49
            bastore
            dup
            bipush 54
            bipush 50
            bastore
            dup
            bipush 55
            bipush 51
            bastore
            dup
            bipush 56
            bipush 52
            bastore
            dup
            bipush 57
            bipush 53
            bastore
            dup
            bipush 58
            bipush 54
            bastore
            dup
            bipush 59
            bipush 55
            bastore
            dup
            bipush 60
            bipush 56
            bastore
            dup
            bipush 61
            bipush 57
            bastore
            dup
            bipush 62
            bipush 45
            bastore
            dup
            bipush 63
            bipush 95
            bastore
        14: .line 94
            putstatic org.apache.tomcat.util.codec.binary.Base64.URL_SAFE_ENCODE_TABLE:[B
        15: .line 112
            bipush 123
            newarray 8
            dup
            iconst_0
        16: .line 114
            iconst_m1
            bastore
            dup
            iconst_1
            iconst_m1
            bastore
            dup
            iconst_2
            iconst_m1
            bastore
            dup
            iconst_3
            iconst_m1
            bastore
            dup
            iconst_4
            iconst_m1
            bastore
            dup
            iconst_5
            iconst_m1
            bastore
            dup
            bipush 6
            iconst_m1
            bastore
            dup
            bipush 7
            iconst_m1
            bastore
            dup
            bipush 8
            iconst_m1
            bastore
            dup
            bipush 9
            iconst_m1
            bastore
            dup
            bipush 10
            iconst_m1
            bastore
            dup
            bipush 11
            iconst_m1
            bastore
            dup
            bipush 12
            iconst_m1
            bastore
            dup
            bipush 13
            iconst_m1
            bastore
            dup
            bipush 14
            iconst_m1
            bastore
            dup
            bipush 15
            iconst_m1
            bastore
            dup
            bipush 16
        17: .line 115
            iconst_m1
            bastore
            dup
            bipush 17
            iconst_m1
            bastore
            dup
            bipush 18
            iconst_m1
            bastore
            dup
            bipush 19
            iconst_m1
            bastore
            dup
            bipush 20
            iconst_m1
            bastore
            dup
            bipush 21
            iconst_m1
            bastore
            dup
            bipush 22
            iconst_m1
            bastore
            dup
            bipush 23
            iconst_m1
            bastore
            dup
            bipush 24
            iconst_m1
            bastore
            dup
            bipush 25
            iconst_m1
            bastore
            dup
            bipush 26
            iconst_m1
            bastore
            dup
            bipush 27
            iconst_m1
            bastore
            dup
            bipush 28
            iconst_m1
            bastore
            dup
            bipush 29
            iconst_m1
            bastore
            dup
            bipush 30
            iconst_m1
            bastore
            dup
            bipush 31
            iconst_m1
            bastore
            dup
            bipush 32
        18: .line 116
            iconst_m1
            bastore
            dup
            bipush 33
            iconst_m1
            bastore
            dup
            bipush 34
            iconst_m1
            bastore
            dup
            bipush 35
            iconst_m1
            bastore
            dup
            bipush 36
            iconst_m1
            bastore
            dup
            bipush 37
            iconst_m1
            bastore
            dup
            bipush 38
            iconst_m1
            bastore
            dup
            bipush 39
            iconst_m1
            bastore
            dup
            bipush 40
            iconst_m1
            bastore
            dup
            bipush 41
            iconst_m1
            bastore
            dup
            bipush 42
            iconst_m1
            bastore
            dup
            bipush 43
            bipush 62
            bastore
            dup
            bipush 44
            iconst_m1
            bastore
            dup
            bipush 45
            iconst_m1
            bastore
            dup
            bipush 46
            iconst_m1
            bastore
            dup
            bipush 47
            bipush 63
            bastore
            dup
            bipush 48
        19: .line 117
            bipush 52
            bastore
            dup
            bipush 49
            bipush 53
            bastore
            dup
            bipush 50
            bipush 54
            bastore
            dup
            bipush 51
            bipush 55
            bastore
            dup
            bipush 52
            bipush 56
            bastore
            dup
            bipush 53
            bipush 57
            bastore
            dup
            bipush 54
            bipush 58
            bastore
            dup
            bipush 55
            bipush 59
            bastore
            dup
            bipush 56
            bipush 60
            bastore
            dup
            bipush 57
            bipush 61
            bastore
            dup
            bipush 58
            iconst_m1
            bastore
            dup
            bipush 59
            iconst_m1
            bastore
            dup
            bipush 60
            iconst_m1
            bastore
            dup
            bipush 61
            iconst_m1
            bastore
            dup
            bipush 62
            iconst_m1
            bastore
            dup
            bipush 63
            iconst_m1
            bastore
            dup
            bipush 64
        20: .line 118
            iconst_m1
            bastore
            dup
            bipush 66
            iconst_1
            bastore
            dup
            bipush 67
            iconst_2
            bastore
            dup
            bipush 68
            iconst_3
            bastore
            dup
            bipush 69
            iconst_4
            bastore
            dup
            bipush 70
            iconst_5
            bastore
            dup
            bipush 71
            bipush 6
            bastore
            dup
            bipush 72
            bipush 7
            bastore
            dup
            bipush 73
            bipush 8
            bastore
            dup
            bipush 74
            bipush 9
            bastore
            dup
            bipush 75
            bipush 10
            bastore
            dup
            bipush 76
            bipush 11
            bastore
            dup
            bipush 77
            bipush 12
            bastore
            dup
            bipush 78
            bipush 13
            bastore
            dup
            bipush 79
            bipush 14
            bastore
            dup
            bipush 80
        21: .line 119
            bipush 15
            bastore
            dup
            bipush 81
            bipush 16
            bastore
            dup
            bipush 82
            bipush 17
            bastore
            dup
            bipush 83
            bipush 18
            bastore
            dup
            bipush 84
            bipush 19
            bastore
            dup
            bipush 85
            bipush 20
            bastore
            dup
            bipush 86
            bipush 21
            bastore
            dup
            bipush 87
            bipush 22
            bastore
            dup
            bipush 88
            bipush 23
            bastore
            dup
            bipush 89
            bipush 24
            bastore
            dup
            bipush 90
            bipush 25
            bastore
            dup
            bipush 91
            iconst_m1
            bastore
            dup
            bipush 92
            iconst_m1
            bastore
            dup
            bipush 93
            iconst_m1
            bastore
            dup
            bipush 94
            iconst_m1
            bastore
            dup
            bipush 95
            iconst_m1
            bastore
            dup
            bipush 96
        22: .line 120
            iconst_m1
            bastore
            dup
            bipush 97
            bipush 26
            bastore
            dup
            bipush 98
            bipush 27
            bastore
            dup
            bipush 99
            bipush 28
            bastore
            dup
            bipush 100
            bipush 29
            bastore
            dup
            bipush 101
            bipush 30
            bastore
            dup
            bipush 102
            bipush 31
            bastore
            dup
            bipush 103
            bipush 32
            bastore
            dup
            bipush 104
            bipush 33
            bastore
            dup
            bipush 105
            bipush 34
            bastore
            dup
            bipush 106
            bipush 35
            bastore
            dup
            bipush 107
            bipush 36
            bastore
            dup
            bipush 108
            bipush 37
            bastore
            dup
            bipush 109
            bipush 38
            bastore
            dup
            bipush 110
            bipush 39
            bastore
            dup
            bipush 111
            bipush 40
            bastore
            dup
            bipush 112
        23: .line 121
            bipush 41
            bastore
            dup
            bipush 113
            bipush 42
            bastore
            dup
            bipush 114
            bipush 43
            bastore
            dup
            bipush 115
            bipush 44
            bastore
            dup
            bipush 116
            bipush 45
            bastore
            dup
            bipush 117
            bipush 46
            bastore
            dup
            bipush 118
            bipush 47
            bastore
            dup
            bipush 119
            bipush 48
            bastore
            dup
            bipush 120
            bipush 49
            bastore
            dup
            bipush 121
            bipush 50
            bastore
            dup
            bipush 122
            bipush 51
            bastore
        24: .line 112
            putstatic org.apache.tomcat.util.codec.binary.Base64.DECODE_TABLE:[B
        25: .line 128
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.apache.tomcat.util.codec.binary.Base64 this
         0: .line 172
            aload 0 /* this */
            iconst_0
            invokespecial org.apache.tomcat.util.codec.binary.Base64.<init>:(I)V
         1: .line 173
            return
        end local 0 // org.apache.tomcat.util.codec.binary.Base64 this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/apache/tomcat/util/codec/binary/Base64;

  public void <init>(boolean);
    descriptor: (Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // org.apache.tomcat.util.codec.binary.Base64 this
        start local 1 // boolean urlSafe
         0: .line 191
            aload 0 /* this */
            bipush 76
            getstatic org.apache.tomcat.util.codec.binary.Base64.CHUNK_SEPARATOR:[B
            iload 1 /* urlSafe */
            invokespecial org.apache.tomcat.util.codec.binary.Base64.<init>:(I[BZ)V
         1: .line 192
            return
        end local 1 // boolean urlSafe
        end local 0 // org.apache.tomcat.util.codec.binary.Base64 this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lorg/apache/tomcat/util/codec/binary/Base64;
            0    2     1  urlSafe  Z
    MethodParameters:
         Name  Flags
      urlSafe  final

  public void <init>(int);
    descriptor: (I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.apache.tomcat.util.codec.binary.Base64 this
        start local 1 // int lineLength
         0: .line 214
            aload 0 /* this */
            iload 1 /* lineLength */
            getstatic org.apache.tomcat.util.codec.binary.Base64.CHUNK_SEPARATOR:[B
            invokespecial org.apache.tomcat.util.codec.binary.Base64.<init>:(I[B)V
         1: .line 215
            return
        end local 1 // int lineLength
        end local 0 // org.apache.tomcat.util.codec.binary.Base64 this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    2     0        this  Lorg/apache/tomcat/util/codec/binary/Base64;
            0    2     1  lineLength  I
    MethodParameters:
            Name  Flags
      lineLength  final

  public void <init>(int, byte[]);
    descriptor: (I[B)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // org.apache.tomcat.util.codec.binary.Base64 this
        start local 1 // int lineLength
        start local 2 // byte[] lineSeparator
         0: .line 241
            aload 0 /* this */
            iload 1 /* lineLength */
            aload 2 /* lineSeparator */
            iconst_0
            invokespecial org.apache.tomcat.util.codec.binary.Base64.<init>:(I[BZ)V
         1: .line 242
            return
        end local 2 // byte[] lineSeparator
        end local 1 // int lineLength
        end local 0 // org.apache.tomcat.util.codec.binary.Base64 this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    2     0           this  Lorg/apache/tomcat/util/codec/binary/Base64;
            0    2     1     lineLength  I
            0    2     2  lineSeparator  [B
    MethodParameters:
               Name  Flags
      lineLength     final
      lineSeparator  final

  public void <init>(int, byte[], boolean);
    descriptor: (I[BZ)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=8, locals=5, args_size=4
        start local 0 // org.apache.tomcat.util.codec.binary.Base64 this
        start local 1 // int lineLength
        start local 2 // byte[] lineSeparator
        start local 3 // boolean urlSafe
         0: .line 272
            aload 0 /* this */
            iconst_3
            iconst_4
         1: .line 273
            iload 1 /* lineLength */
         2: .line 274
            aload 2 /* lineSeparator */
            ifnonnull 3
            iconst_0
            goto 4
      StackMap locals: uninitialized-this int byte[] int
      StackMap stack: uninitialized-this int int int
         3: aload 2 /* lineSeparator */
            arraylength
      StackMap locals: uninitialized-this int byte[] int
      StackMap stack: uninitialized-this int int int int
         4: invokespecial org.apache.tomcat.util.codec.binary.BaseNCodec.<init>:(IIII)V
         5: .line 142
            aload 0 /* this */
            getstatic org.apache.tomcat.util.codec.binary.Base64.DECODE_TABLE:[B
            putfield org.apache.tomcat.util.codec.binary.Base64.decodeTable:[B
         6: .line 277
            aload 2 /* lineSeparator */
            ifnull 18
         7: .line 278
            aload 0 /* this */
            aload 2 /* lineSeparator */
            invokevirtual org.apache.tomcat.util.codec.binary.Base64.containsAlphabetOrPad:([B)Z
            ifeq 10
         8: .line 279
            aload 2 /* lineSeparator */
            invokestatic org.apache.tomcat.util.codec.binary.StringUtils.newStringUtf8:([B)Ljava/lang/String;
            astore 4 /* sep */
        start local 4 // java.lang.String sep
         9: .line 280
            new java.lang.IllegalArgumentException
            dup
            getstatic org.apache.tomcat.util.codec.binary.Base64.sm:Lorg/apache/tomcat/util/res/StringManager;
            ldc "base64.lineSeparator"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 4 /* sep */
            aastore
            invokevirtual org.apache.tomcat.util.res.StringManager.getString:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        end local 4 // java.lang.String sep
        10: .line 282
      StackMap locals: org.apache.tomcat.util.codec.binary.Base64 int byte[] int
      StackMap stack:
            iload 1 /* lineLength */
            ifle 15
        11: .line 283
            aload 0 /* this */
            iconst_4
            aload 2 /* lineSeparator */
            arraylength
            iadd
            putfield org.apache.tomcat.util.codec.binary.Base64.encodeSize:I
        12: .line 284
            aload 0 /* this */
            aload 2 /* lineSeparator */
            arraylength
            newarray 8
            putfield org.apache.tomcat.util.codec.binary.Base64.lineSeparator:[B
        13: .line 285
            aload 2 /* lineSeparator */
            iconst_0
            aload 0 /* this */
            getfield org.apache.tomcat.util.codec.binary.Base64.lineSeparator:[B
            iconst_0
            aload 2 /* lineSeparator */
            arraylength
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
        14: .line 286
            goto 20
        15: .line 287
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_4
            putfield org.apache.tomcat.util.codec.binary.Base64.encodeSize:I
        16: .line 288
            aload 0 /* this */
            aconst_null
            putfield org.apache.tomcat.util.codec.binary.Base64.lineSeparator:[B
        17: .line 290
            goto 20
        18: .line 291
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_4
            putfield org.apache.tomcat.util.codec.binary.Base64.encodeSize:I
        19: .line 292
            aload 0 /* this */
            aconst_null
            putfield org.apache.tomcat.util.codec.binary.Base64.lineSeparator:[B
        20: .line 294
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield org.apache.tomcat.util.codec.binary.Base64.encodeSize:I
            iconst_1
            isub
            putfield org.apache.tomcat.util.codec.binary.Base64.decodeSize:I
        21: .line 295
            aload 0 /* this */
            iload 3 /* urlSafe */
            ifeq 22
            getstatic org.apache.tomcat.util.codec.binary.Base64.URL_SAFE_ENCODE_TABLE:[B
            goto 23
      StackMap locals:
      StackMap stack: org.apache.tomcat.util.codec.binary.Base64
        22: getstatic org.apache.tomcat.util.codec.binary.Base64.STANDARD_ENCODE_TABLE:[B
      StackMap locals: org.apache.tomcat.util.codec.binary.Base64 int byte[] int
      StackMap stack: org.apache.tomcat.util.codec.binary.Base64 byte[]
        23: putfield org.apache.tomcat.util.codec.binary.Base64.encodeTable:[B
        24: .line 296
            return
        end local 3 // boolean urlSafe
        end local 2 // byte[] lineSeparator
        end local 1 // int lineLength
        end local 0 // org.apache.tomcat.util.codec.binary.Base64 this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   25     0           this  Lorg/apache/tomcat/util/codec/binary/Base64;
            0   25     1     lineLength  I
            0   25     2  lineSeparator  [B
            0   25     3        urlSafe  Z
            9   10     4            sep  Ljava/lang/String;
    MethodParameters:
               Name  Flags
      lineLength     final
      lineSeparator  final
      urlSafe        final

  public boolean isUrlSafe();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.apache.tomcat.util.codec.binary.Base64 this
         0: .line 305
            aload 0 /* this */
            getfield org.apache.tomcat.util.codec.binary.Base64.encodeTable:[B
            getstatic org.apache.tomcat.util.codec.binary.Base64.URL_SAFE_ENCODE_TABLE:[B
            if_acmpne 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // org.apache.tomcat.util.codec.binary.Base64 this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/apache/tomcat/util/codec/binary/Base64;

  void encode(byte[], int, int, org.apache.tomcat.util.codec.binary.BaseNCodec$Context);
    descriptor: ([BIILorg/apache/tomcat/util/codec/binary/BaseNCodec$Context;)V
    flags: (0x0000) 
    Code:
      stack=8, locals=8, args_size=5
        start local 0 // org.apache.tomcat.util.codec.binary.Base64 this
        start local 1 // byte[] in
        start local 2 // int inPos
        start local 3 // int inAvail
        start local 4 // org.apache.tomcat.util.codec.binary.BaseNCodec$Context context
         0: .line 331
            aload 4 /* context */
            getfield org.apache.tomcat.util.codec.binary.BaseNCodec$Context.eof:Z
            ifeq 2
         1: .line 332
            return
         2: .line 336
      StackMap locals:
      StackMap stack:
            iload 3 /* inAvail */
            ifge 30
         3: .line 337
            aload 4 /* context */
            iconst_1
            putfield org.apache.tomcat.util.codec.binary.BaseNCodec$Context.eof:Z
         4: .line 338
            aload 4 /* context */
            getfield org.apache.tomcat.util.codec.binary.BaseNCodec$Context.modulus:I
            ifne 6
            aload 0 /* this */
            getfield org.apache.tomcat.util.codec.binary.Base64.lineLength:I
            ifne 6
         5: .line 339
            return
         6: .line 341
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield org.apache.tomcat.util.codec.binary.Base64.encodeSize:I
            aload 4 /* context */
            invokevirtual org.apache.tomcat.util.codec.binary.Base64.ensureBufferSize:(ILorg/apache/tomcat/util/codec/binary/BaseNCodec$Context;)[B
            astore 5 /* buffer */
        start local 5 // byte[] buffer
         7: .line 342
            aload 4 /* context */
            getfield org.apache.tomcat.util.codec.binary.BaseNCodec$Context.pos:I
            istore 6 /* savedPos */
        start local 6 // int savedPos
         8: .line 343
            aload 4 /* context */
            getfield org.apache.tomcat.util.codec.binary.BaseNCodec$Context.modulus:I
            tableswitch { // 0 - 2
                    0: 9
                    1: 10
                    2: 16
              default: 22
          }
         9: .line 345
      StackMap locals: byte[] int
      StackMap stack:
            goto 25
        10: .line 348
      StackMap locals:
      StackMap stack:
            aload 5 /* buffer */
            aload 4 /* context */
            dup
            getfield org.apache.tomcat.util.codec.binary.BaseNCodec$Context.pos:I
            dup_x1
            iconst_1
            iadd
            putfield org.apache.tomcat.util.codec.binary.BaseNCodec$Context.pos:I
            aload 0 /* this */
            getfield org.apache.tomcat.util.codec.binary.Base64.encodeTable:[B
            aload 4 /* context */
            getfield org.apache.tomcat.util.codec.binary.BaseNCodec$Context.ibitWorkArea:I
            iconst_2
            ishr
            bipush 63
            iand
            baload
            bastore
        11: .line 350
            aload 5 /* buffer */
            aload 4 /* context */
            dup
            getfield org.apache.tomcat.util.codec.binary.BaseNCodec$Context.pos:I
            dup_x1
            iconst_1
            iadd
            putfield org.apache.tomcat.util.codec.binary.BaseNCodec$Context.pos:I
            aload 0 /* this */
            getfield org.apache.tomcat.util.codec.binary.Base64.encodeTable:[B
            aload 4 /* context */
            getfield org.apache.tomcat.util.codec.binary.BaseNCodec$Context.ibitWorkArea:I
            iconst_4
            ishl
            bipush 63
            iand
            baload
            bastore
        12: .line 352
            aload 0 /* this */
            getfield org.apache.tomcat.util.codec.binary.Base64.encodeTable:[B
            getstatic org.apache.tomcat.util.codec.binary.Base64.STANDARD_ENCODE_TABLE:[B
            if_acmpne 25
        13: .line 353
            aload 5 /* buffer */
            aload 4 /* context */
            dup
            getfield org.apache.tomcat.util.codec.binary.BaseNCodec$Context.pos:I
            dup_x1
            iconst_1
            iadd
            putfield org.apache.tomcat.util.codec.binary.BaseNCodec$Context.pos:I
            aload 0 /* this */
            getfield org.apache.tomcat.util.codec.binary.Base64.pad:B
            bastore
        14: .line 354
            aload 5 /* buffer */
            aload 4 /* context */
            dup
            getfield org.apache.tomcat.util.codec.binary.BaseNCodec$Context.pos:I
            dup_x1
            iconst_1
            iadd
            putfield org.apache.tomcat.util.codec.binary.BaseNCodec$Context.pos:I
            aload 0 /* this */
            getfield org.apache.tomcat.util.codec.binary.Base64.pad:B
            bastore
        15: .line 356
            goto 25
        16: .line 359
      StackMap locals:
      StackMap stack:
            aload 5 /* buffer */
            aload 4 /* context */
            dup
            getfield org.apache.tomcat.util.codec.binary.BaseNCodec$Context.pos:I
            dup_x1
            iconst_1
            iadd
            putfield org.apache.tomcat.util.codec.binary.BaseNCodec$Context.pos:I
            aload 0 /* this */
            getfield org.apache.tomcat.util.codec.binary.Base64.encodeTable:[B
            aload 4 /* context */
            getfield org.apache.tomcat.util.codec.binary.BaseNCodec$Context.ibitWorkArea:I
            bipush 10
            ishr
            bipush 63
            iand
            baload
            bastore
        17: .line 360
            aload 5 /* buffer */
            aload 4 /* context */
            dup
            getfield org.apache.tomcat.util.codec.binary.BaseNCodec$Context.pos:I
            dup_x1
            iconst_1
            iadd
            putfield org.apache.tomcat.util.codec.binary.BaseNCodec$Context.pos:I
            aload 0 /* this */
            getfield org.apache.tomcat.util.codec.binary.Base64.encodeTable:[B
            aload 4 /* context */
            getfield org.apache.tomcat.util.codec.binary.BaseNCodec$Context.ibitWorkArea:I
            iconst_4
            ishr
            bipush 63
            iand
            baload
            bastore
        18: .line 361
            aload 5 /* buffer */
            aload 4 /* context */
            dup
            getfield org.apache.tomcat.util.codec.binary.BaseNCodec$Context.pos:I
            dup_x1
            iconst_1
            iadd
            putfield org.apache.tomcat.util.codec.binary.BaseNCodec$Context.pos:I
            aload 0 /* this */
            getfield org.apache.tomcat.util.codec.binary.Base64.encodeTable:[B
            aload 4 /* context */
            getfield org.apache.tomcat.util.codec.binary.BaseNCodec$Context.ibitWorkArea:I
            iconst_2
            ishl
            bipush 63
            iand
            baload
            bastore
        19: .line 363
            aload 0 /* this */
            getfield org.apache.tomcat.util.codec.binary.Base64.encodeTable:[B
            getstatic org.apache.tomcat.util.codec.binary.Base64.STANDARD_ENCODE_TABLE:[B
            if_acmpne 25
        20: .line 364
            aload 5 /* buffer */
            aload 4 /* context */
            dup
            getfield org.apache.tomcat.util.codec.binary.BaseNCodec$Context.pos:I
            dup_x1
            iconst_1
            iadd
            putfield org.apache.tomcat.util.codec.binary.BaseNCodec$Context.pos:I
            aload 0 /* this */
            getfield org.apache.tomcat.util.codec.binary.Base64.pad:B
            bastore
        21: .line 366
            goto 25
        22: .line 368
      StackMap locals:
      StackMap stack:
            new java.lang.IllegalStateException
            dup
            getstatic org.apache.tomcat.util.codec.binary.Base64.sm:Lorg/apache/tomcat/util/res/StringManager;
        23: .line 369
            ldc "base64.impossibleModulus"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 4 /* context */
            getfield org.apache.tomcat.util.codec.binary.BaseNCodec$Context.modulus:I
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
        24: .line 368
            invokevirtual org.apache.tomcat.util.res.StringManager.getString:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
            athrow
        25: .line 371
      StackMap locals:
      StackMap stack:
            aload 4 /* context */
            dup
            getfield org.apache.tomcat.util.codec.binary.BaseNCodec$Context.currentLinePos:I
            aload 4 /* context */
            getfield org.apache.tomcat.util.codec.binary.BaseNCodec$Context.pos:I
            iload 6 /* savedPos */
            isub
            iadd
            putfield org.apache.tomcat.util.codec.binary.BaseNCodec$Context.currentLinePos:I
        26: .line 373
            aload 0 /* this */
            getfield org.apache.tomcat.util.codec.binary.Base64.lineLength:I
            ifle 50
            aload 4 /* context */
            getfield org.apache.tomcat.util.codec.binary.BaseNCodec$Context.currentLinePos:I
            ifle 50
        27: .line 374
            aload 0 /* this */
            getfield org.apache.tomcat.util.codec.binary.Base64.lineSeparator:[B
            iconst_0
            aload 5 /* buffer */
            aload 4 /* context */
            getfield org.apache.tomcat.util.codec.binary.BaseNCodec$Context.pos:I
            aload 0 /* this */
            getfield org.apache.tomcat.util.codec.binary.Base64.lineSeparator:[B
            arraylength
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
        28: .line 375
            aload 4 /* context */
            dup
            getfield org.apache.tomcat.util.codec.binary.BaseNCodec$Context.pos:I
            aload 0 /* this */
            getfield org.apache.tomcat.util.codec.binary.Base64.lineSeparator:[B
            arraylength
            iadd
            putfield org.apache.tomcat.util.codec.binary.BaseNCodec$Context.pos:I
        end local 6 // int savedPos
        end local 5 // byte[] buffer
        29: .line 377
            goto 50
        30: .line 378
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 5 /* i */
        start local 5 // int i
        31: goto 49
        32: .line 379
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield org.apache.tomcat.util.codec.binary.Base64.encodeSize:I
            aload 4 /* context */
            invokevirtual org.apache.tomcat.util.codec.binary.Base64.ensureBufferSize:(ILorg/apache/tomcat/util/codec/binary/BaseNCodec$Context;)[B
            astore 6 /* buffer */
        start local 6 // byte[] buffer
        33: .line 380
            aload 4 /* context */
            aload 4 /* context */
            getfield org.apache.tomcat.util.codec.binary.BaseNCodec$Context.modulus:I
            iconst_1
            iadd
            iconst_3
            irem
            putfield org.apache.tomcat.util.codec.binary.BaseNCodec$Context.modulus:I
        34: .line 381
            aload 1 /* in */
            iload 2 /* inPos */
            iinc 2 /* inPos */ 1
            baload
            istore 7 /* b */
        start local 7 // int b
        35: .line 382
            iload 7 /* b */
            ifge 37
        36: .line 383
            iinc 7 /* b */ 256
        37: .line 385
      StackMap locals: byte[] int
      StackMap stack:
            aload 4 /* context */
            aload 4 /* context */
            getfield org.apache.tomcat.util.codec.binary.BaseNCodec$Context.ibitWorkArea:I
            bipush 8
            ishl
            iload 7 /* b */
            iadd
            putfield org.apache.tomcat.util.codec.binary.BaseNCodec$Context.ibitWorkArea:I
        38: .line 386
            aload 4 /* context */
            getfield org.apache.tomcat.util.codec.binary.BaseNCodec$Context.modulus:I
            ifne 48
        39: .line 387
            aload 6 /* buffer */
            aload 4 /* context */
            dup
            getfield org.apache.tomcat.util.codec.binary.BaseNCodec$Context.pos:I
            dup_x1
            iconst_1
            iadd
            putfield org.apache.tomcat.util.codec.binary.BaseNCodec$Context.pos:I
            aload 0 /* this */
            getfield org.apache.tomcat.util.codec.binary.Base64.encodeTable:[B
            aload 4 /* context */
            getfield org.apache.tomcat.util.codec.binary.BaseNCodec$Context.ibitWorkArea:I
            bipush 18
            ishr
            bipush 63
            iand
            baload
            bastore
        40: .line 388
            aload 6 /* buffer */
            aload 4 /* context */
            dup
            getfield org.apache.tomcat.util.codec.binary.BaseNCodec$Context.pos:I
            dup_x1
            iconst_1
            iadd
            putfield org.apache.tomcat.util.codec.binary.BaseNCodec$Context.pos:I
            aload 0 /* this */
            getfield org.apache.tomcat.util.codec.binary.Base64.encodeTable:[B
            aload 4 /* context */
            getfield org.apache.tomcat.util.codec.binary.BaseNCodec$Context.ibitWorkArea:I
            bipush 12
            ishr
            bipush 63
            iand
            baload
            bastore
        41: .line 389
            aload 6 /* buffer */
            aload 4 /* context */
            dup
            getfield org.apache.tomcat.util.codec.binary.BaseNCodec$Context.pos:I
            dup_x1
            iconst_1
            iadd
            putfield org.apache.tomcat.util.codec.binary.BaseNCodec$Context.pos:I
            aload 0 /* this */
            getfield org.apache.tomcat.util.codec.binary.Base64.encodeTable:[B
            aload 4 /* context */
            getfield org.apache.tomcat.util.codec.binary.BaseNCodec$Context.ibitWorkArea:I
            bipush 6
            ishr
            bipush 63
            iand
            baload
            bastore
        42: .line 390
            aload 6 /* buffer */
            aload 4 /* context */
            dup
            getfield org.apache.tomcat.util.codec.binary.BaseNCodec$Context.pos:I
            dup_x1
            iconst_1
            iadd
            putfield org.apache.tomcat.util.codec.binary.BaseNCodec$Context.pos:I
            aload 0 /* this */
            getfield org.apache.tomcat.util.codec.binary.Base64.encodeTable:[B
            aload 4 /* context */
            getfield org.apache.tomcat.util.codec.binary.BaseNCodec$Context.ibitWorkArea:I
            bipush 63
            iand
            baload
            bastore
        43: .line 391
            aload 4 /* context */
            dup
            getfield org.apache.tomcat.util.codec.binary.BaseNCodec$Context.currentLinePos:I
            iconst_4
            iadd
            putfield org.apache.tomcat.util.codec.binary.BaseNCodec$Context.currentLinePos:I
        44: .line 392
            aload 0 /* this */
            getfield org.apache.tomcat.util.codec.binary.Base64.lineLength:I
            ifle 48
            aload 0 /* this */
            getfield org.apache.tomcat.util.codec.binary.Base64.lineLength:I
            aload 4 /* context */
            getfield org.apache.tomcat.util.codec.binary.BaseNCodec$Context.currentLinePos:I
            if_icmpgt 48
        45: .line 393
            aload 0 /* this */
            getfield org.apache.tomcat.util.codec.binary.Base64.lineSeparator:[B
            iconst_0
            aload 6 /* buffer */
            aload 4 /* context */
            getfield org.apache.tomcat.util.codec.binary.BaseNCodec$Context.pos:I
            aload 0 /* this */
            getfield org.apache.tomcat.util.codec.binary.Base64.lineSeparator:[B
            arraylength
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
        46: .line 394
            aload 4 /* context */
            dup
            getfield org.apache.tomcat.util.codec.binary.BaseNCodec$Context.pos:I
            aload 0 /* this */
            getfield org.apache.tomcat.util.codec.binary.Base64.lineSeparator:[B
            arraylength
            iadd
            putfield org.apache.tomcat.util.codec.binary.BaseNCodec$Context.pos:I
        47: .line 395
            aload 4 /* context */
            iconst_0
            putfield org.apache.tomcat.util.codec.binary.BaseNCodec$Context.currentLinePos:I
        end local 7 // int b
        end local 6 // byte[] buffer
        48: .line 378
      StackMap locals:
      StackMap stack:
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
        49: iload 5 /* i */
            iload 3 /* inAvail */
            if_icmplt 32
        end local 5 // int i
        50: .line 400
      StackMap locals:
      StackMap stack:
            return
        end local 4 // org.apache.tomcat.util.codec.binary.BaseNCodec$Context context
        end local 3 // int inAvail
        end local 2 // int inPos
        end local 1 // byte[] in
        end local 0 // org.apache.tomcat.util.codec.binary.Base64 this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   51     0      this  Lorg/apache/tomcat/util/codec/binary/Base64;
            0   51     1        in  [B
            0   51     2     inPos  I
            0   51     3   inAvail  I
            0   51     4   context  Lorg/apache/tomcat/util/codec/binary/BaseNCodec$Context;
            7   29     5    buffer  [B
            8   29     6  savedPos  I
           31   50     5         i  I
           33   48     6    buffer  [B
           35   48     7         b  I
    MethodParameters:
         Name  Flags
      in       final
      inPos    
      inAvail  final
      context  final

  void decode(byte[], int, int, org.apache.tomcat.util.codec.binary.BaseNCodec$Context);
    descriptor: ([BIILorg/apache/tomcat/util/codec/binary/BaseNCodec$Context;)V
    flags: (0x0000) 
    Code:
      stack=8, locals=9, args_size=5
        start local 0 // org.apache.tomcat.util.codec.binary.Base64 this
        start local 1 // byte[] in
        start local 2 // int inPos
        start local 3 // int inAvail
        start local 4 // org.apache.tomcat.util.codec.binary.BaseNCodec$Context context
         0: .line 429
            aload 4 /* context */
            getfield org.apache.tomcat.util.codec.binary.BaseNCodec$Context.eof:Z
            ifeq 2
         1: .line 430
            return
         2: .line 432
      StackMap locals:
      StackMap stack:
            iload 3 /* inAvail */
            ifge 4
         3: .line 433
            aload 4 /* context */
            iconst_1
            putfield org.apache.tomcat.util.codec.binary.BaseNCodec$Context.eof:Z
         4: .line 435
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 5 /* i */
        start local 5 // int i
         5: goto 21
         6: .line 436
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield org.apache.tomcat.util.codec.binary.Base64.decodeSize:I
            aload 4 /* context */
            invokevirtual org.apache.tomcat.util.codec.binary.Base64.ensureBufferSize:(ILorg/apache/tomcat/util/codec/binary/BaseNCodec$Context;)[B
            astore 6 /* buffer */
        start local 6 // byte[] buffer
         7: .line 437
            aload 1 /* in */
            iload 2 /* inPos */
            iinc 2 /* inPos */ 1
            baload
            istore 7 /* b */
        start local 7 // byte b
         8: .line 438
            iload 7 /* b */
            aload 0 /* this */
            getfield org.apache.tomcat.util.codec.binary.Base64.pad:B
            if_icmpne 11
         9: .line 440
            aload 4 /* context */
            iconst_1
            putfield org.apache.tomcat.util.codec.binary.BaseNCodec$Context.eof:Z
        10: .line 441
            goto 22
        11: .line 443
      StackMap locals: byte[] int
      StackMap stack:
            iload 7 /* b */
            iflt 20
            iload 7 /* b */
            getstatic org.apache.tomcat.util.codec.binary.Base64.DECODE_TABLE:[B
            arraylength
            if_icmpge 20
        12: .line 444
            getstatic org.apache.tomcat.util.codec.binary.Base64.DECODE_TABLE:[B
            iload 7 /* b */
            baload
            istore 8 /* result */
        start local 8 // int result
        13: .line 445
            iload 8 /* result */
            iflt 20
        14: .line 446
            aload 4 /* context */
            aload 4 /* context */
            getfield org.apache.tomcat.util.codec.binary.BaseNCodec$Context.modulus:I
            iconst_1
            iadd
            iconst_4
            irem
            putfield org.apache.tomcat.util.codec.binary.BaseNCodec$Context.modulus:I
        15: .line 447
            aload 4 /* context */
            aload 4 /* context */
            getfield org.apache.tomcat.util.codec.binary.BaseNCodec$Context.ibitWorkArea:I
            bipush 6
            ishl
            iload 8 /* result */
            iadd
            putfield org.apache.tomcat.util.codec.binary.BaseNCodec$Context.ibitWorkArea:I
        16: .line 448
            aload 4 /* context */
            getfield org.apache.tomcat.util.codec.binary.BaseNCodec$Context.modulus:I
            ifne 20
        17: .line 449
            aload 6 /* buffer */
            aload 4 /* context */
            dup
            getfield org.apache.tomcat.util.codec.binary.BaseNCodec$Context.pos:I
            dup_x1
            iconst_1
            iadd
            putfield org.apache.tomcat.util.codec.binary.BaseNCodec$Context.pos:I
            aload 4 /* context */
            getfield org.apache.tomcat.util.codec.binary.BaseNCodec$Context.ibitWorkArea:I
            bipush 16
            ishr
            sipush 255
            iand
            i2b
            bastore
        18: .line 450
            aload 6 /* buffer */
            aload 4 /* context */
            dup
            getfield org.apache.tomcat.util.codec.binary.BaseNCodec$Context.pos:I
            dup_x1
            iconst_1
            iadd
            putfield org.apache.tomcat.util.codec.binary.BaseNCodec$Context.pos:I
            aload 4 /* context */
            getfield org.apache.tomcat.util.codec.binary.BaseNCodec$Context.ibitWorkArea:I
            bipush 8
            ishr
            sipush 255
            iand
            i2b
            bastore
        19: .line 451
            aload 6 /* buffer */
            aload 4 /* context */
            dup
            getfield org.apache.tomcat.util.codec.binary.BaseNCodec$Context.pos:I
            dup_x1
            iconst_1
            iadd
            putfield org.apache.tomcat.util.codec.binary.BaseNCodec$Context.pos:I
            aload 4 /* context */
            getfield org.apache.tomcat.util.codec.binary.BaseNCodec$Context.ibitWorkArea:I
            sipush 255
            iand
            i2b
            bastore
        end local 8 // int result
        end local 7 // byte b
        end local 6 // byte[] buffer
        20: .line 435
      StackMap locals:
      StackMap stack:
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
        21: iload 5 /* i */
            iload 3 /* inAvail */
            if_icmplt 6
        end local 5 // int i
        22: .line 460
      StackMap locals:
      StackMap stack:
            aload 4 /* context */
            getfield org.apache.tomcat.util.codec.binary.BaseNCodec$Context.eof:Z
            ifeq 38
            aload 4 /* context */
            getfield org.apache.tomcat.util.codec.binary.BaseNCodec$Context.modulus:I
            ifeq 38
        23: .line 461
            aload 0 /* this */
            aload 0 /* this */
            getfield org.apache.tomcat.util.codec.binary.Base64.decodeSize:I
            aload 4 /* context */
            invokevirtual org.apache.tomcat.util.codec.binary.Base64.ensureBufferSize:(ILorg/apache/tomcat/util/codec/binary/BaseNCodec$Context;)[B
            astore 5 /* buffer */
        start local 5 // byte[] buffer
        24: .line 465
            aload 4 /* context */
            getfield org.apache.tomcat.util.codec.binary.BaseNCodec$Context.modulus:I
            tableswitch { // 1 - 3
                    1: 25
                    2: 26
                    3: 30
              default: 35
          }
        25: .line 469
      StackMap locals: byte[]
      StackMap stack:
            goto 38
        26: .line 471
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_4
            aload 4 /* context */
            invokevirtual org.apache.tomcat.util.codec.binary.Base64.validateCharacter:(ILorg/apache/tomcat/util/codec/binary/BaseNCodec$Context;)J
            pop2
        27: .line 472
            aload 4 /* context */
            aload 4 /* context */
            getfield org.apache.tomcat.util.codec.binary.BaseNCodec$Context.ibitWorkArea:I
            iconst_4
            ishr
            putfield org.apache.tomcat.util.codec.binary.BaseNCodec$Context.ibitWorkArea:I
        28: .line 473
            aload 5 /* buffer */
            aload 4 /* context */
            dup
            getfield org.apache.tomcat.util.codec.binary.BaseNCodec$Context.pos:I
            dup_x1
            iconst_1
            iadd
            putfield org.apache.tomcat.util.codec.binary.BaseNCodec$Context.pos:I
            aload 4 /* context */
            getfield org.apache.tomcat.util.codec.binary.BaseNCodec$Context.ibitWorkArea:I
            sipush 255
            iand
            i2b
            bastore
        29: .line 474
            goto 38
        30: .line 476
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_2
            aload 4 /* context */
            invokevirtual org.apache.tomcat.util.codec.binary.Base64.validateCharacter:(ILorg/apache/tomcat/util/codec/binary/BaseNCodec$Context;)J
            pop2
        31: .line 477
            aload 4 /* context */
            aload 4 /* context */
            getfield org.apache.tomcat.util.codec.binary.BaseNCodec$Context.ibitWorkArea:I
            iconst_2
            ishr
            putfield org.apache.tomcat.util.codec.binary.BaseNCodec$Context.ibitWorkArea:I
        32: .line 478
            aload 5 /* buffer */
            aload 4 /* context */
            dup
            getfield org.apache.tomcat.util.codec.binary.BaseNCodec$Context.pos:I
            dup_x1
            iconst_1
            iadd
            putfield org.apache.tomcat.util.codec.binary.BaseNCodec$Context.pos:I
            aload 4 /* context */
            getfield org.apache.tomcat.util.codec.binary.BaseNCodec$Context.ibitWorkArea:I
            bipush 8
            ishr
            sipush 255
            iand
            i2b
            bastore
        33: .line 479
            aload 5 /* buffer */
            aload 4 /* context */
            dup
            getfield org.apache.tomcat.util.codec.binary.BaseNCodec$Context.pos:I
            dup_x1
            iconst_1
            iadd
            putfield org.apache.tomcat.util.codec.binary.BaseNCodec$Context.pos:I
            aload 4 /* context */
            getfield org.apache.tomcat.util.codec.binary.BaseNCodec$Context.ibitWorkArea:I
            sipush 255
            iand
            i2b
            bastore
        34: .line 480
            goto 38
        35: .line 482
      StackMap locals:
      StackMap stack:
            new java.lang.IllegalStateException
            dup
            getstatic org.apache.tomcat.util.codec.binary.Base64.sm:Lorg/apache/tomcat/util/res/StringManager;
        36: .line 483
            ldc "base64.impossibleModulus"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 4 /* context */
            getfield org.apache.tomcat.util.codec.binary.BaseNCodec$Context.modulus:I
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
        37: .line 482
            invokevirtual org.apache.tomcat.util.res.StringManager.getString:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
            athrow
        end local 5 // byte[] buffer
        38: .line 486
      StackMap locals:
      StackMap stack:
            return
        end local 4 // org.apache.tomcat.util.codec.binary.BaseNCodec$Context context
        end local 3 // int inAvail
        end local 2 // int inPos
        end local 1 // byte[] in
        end local 0 // org.apache.tomcat.util.codec.binary.Base64 this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   39     0     this  Lorg/apache/tomcat/util/codec/binary/Base64;
            0   39     1       in  [B
            0   39     2    inPos  I
            0   39     3  inAvail  I
            0   39     4  context  Lorg/apache/tomcat/util/codec/binary/BaseNCodec$Context;
            5   22     5        i  I
            7   20     6   buffer  [B
            8   20     7        b  B
           13   20     8   result  I
           24   38     5   buffer  [B
    MethodParameters:
         Name  Flags
      in       final
      inPos    
      inAvail  final
      context  final

  public static boolean isBase64(byte);
    descriptor: (B)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // byte octet
         0: .line 497
            iload 0 /* octet */
            bipush 61
            if_icmpeq 2
            iload 0 /* octet */
            iflt 1
            iload 0 /* octet */
            getstatic org.apache.tomcat.util.codec.binary.Base64.DECODE_TABLE:[B
            arraylength
            if_icmpge 1
            getstatic org.apache.tomcat.util.codec.binary.Base64.DECODE_TABLE:[B
            iload 0 /* octet */
            baload
            iconst_m1
            if_icmpne 2
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
      StackMap locals:
      StackMap stack:
         2: iconst_1
            ireturn
        end local 0 // byte octet
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    3     0  octet  B
    MethodParameters:
       Name  Flags
      octet  final

  public static boolean isBase64(java.lang.String);
    descriptor: (Ljava/lang/String;)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.lang.String base64
         0: .line 511
            aload 0 /* base64 */
            invokestatic org.apache.tomcat.util.codec.binary.StringUtils.getBytesUtf8:(Ljava/lang/String;)[B
            invokestatic org.apache.tomcat.util.codec.binary.Base64.isBase64:([B)Z
            ireturn
        end local 0 // java.lang.String base64
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0  base64  Ljava/lang/String;
    MethodParameters:
        Name  Flags
      base64  final

  public static boolean isBase64(byte[]);
    descriptor: ([B)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // byte[] arrayOctet
         0: .line 525
            iconst_0
            istore 1 /* i */
        start local 1 // int i
         1: goto 5
         2: .line 526
      StackMap locals: int
      StackMap stack:
            aload 0 /* arrayOctet */
            iload 1 /* i */
            baload
            invokestatic org.apache.tomcat.util.codec.binary.Base64.isBase64:(B)Z
            ifne 4
            aload 0 /* arrayOctet */
            iload 1 /* i */
            baload
            invokestatic org.apache.tomcat.util.codec.binary.Base64.isWhiteSpace:(B)Z
            ifne 4
         3: .line 527
            iconst_0
            ireturn
         4: .line 525
      StackMap locals:
      StackMap stack:
            iinc 1 /* i */ 1
      StackMap locals:
      StackMap stack:
         5: iload 1 /* i */
            aload 0 /* arrayOctet */
            arraylength
            if_icmplt 2
        end local 1 // int i
         6: .line 530
            iconst_1
            ireturn
        end local 0 // byte[] arrayOctet
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    7     0  arrayOctet  [B
            1    6     1           i  I
    MethodParameters:
            Name  Flags
      arrayOctet  final

  public static byte[] encodeBase64(byte[]);
    descriptor: ([B)[B
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // byte[] binaryData
         0: .line 541
            aload 0 /* binaryData */
            iconst_0
            invokestatic org.apache.tomcat.util.codec.binary.Base64.encodeBase64:([BZ)[B
            areturn
        end local 0 // byte[] binaryData
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    1     0  binaryData  [B
    MethodParameters:
            Name  Flags
      binaryData  final

  public static java.lang.String encodeBase64String(byte[]);
    descriptor: ([B)Ljava/lang/String;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // byte[] binaryData
         0: .line 556
            aload 0 /* binaryData */
            iconst_0
            invokestatic org.apache.tomcat.util.codec.binary.Base64.encodeBase64:([BZ)[B
            invokestatic org.apache.tomcat.util.codec.binary.StringUtils.newStringUsAscii:([B)Ljava/lang/String;
            areturn
        end local 0 // byte[] binaryData
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    1     0  binaryData  [B
    MethodParameters:
            Name  Flags
      binaryData  final

  public static byte[] encodeBase64URLSafe(byte[]);
    descriptor: ([B)[B
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // byte[] binaryData
         0: .line 569
            aload 0 /* binaryData */
            iconst_0
            iconst_1
            invokestatic org.apache.tomcat.util.codec.binary.Base64.encodeBase64:([BZZ)[B
            areturn
        end local 0 // byte[] binaryData
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    1     0  binaryData  [B
    MethodParameters:
            Name  Flags
      binaryData  final

  public static java.lang.String encodeBase64URLSafeString(byte[]);
    descriptor: ([B)Ljava/lang/String;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // byte[] binaryData
         0: .line 582
            aload 0 /* binaryData */
            iconst_0
            iconst_1
            invokestatic org.apache.tomcat.util.codec.binary.Base64.encodeBase64:([BZZ)[B
            invokestatic org.apache.tomcat.util.codec.binary.StringUtils.newStringUsAscii:([B)Ljava/lang/String;
            areturn
        end local 0 // byte[] binaryData
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    1     0  binaryData  [B
    MethodParameters:
            Name  Flags
      binaryData  final

  public static byte[] encodeBase64Chunked(byte[]);
    descriptor: ([B)[B
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // byte[] binaryData
         0: .line 593
            aload 0 /* binaryData */
            iconst_1
            invokestatic org.apache.tomcat.util.codec.binary.Base64.encodeBase64:([BZ)[B
            areturn
        end local 0 // byte[] binaryData
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    1     0  binaryData  [B
    MethodParameters:
            Name  Flags
      binaryData  final

  public static byte[] encodeBase64(byte[], boolean);
    descriptor: ([BZ)[B
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // byte[] binaryData
        start local 1 // boolean isChunked
         0: .line 608
            aload 0 /* binaryData */
            iload 1 /* isChunked */
            iconst_0
            invokestatic org.apache.tomcat.util.codec.binary.Base64.encodeBase64:([BZZ)[B
            areturn
        end local 1 // boolean isChunked
        end local 0 // byte[] binaryData
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    1     0  binaryData  [B
            0    1     1   isChunked  Z
    MethodParameters:
            Name  Flags
      binaryData  final
      isChunked   final

  public static byte[] encodeBase64(byte[], boolean, boolean);
    descriptor: ([BZZ)[B
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // byte[] binaryData
        start local 1 // boolean isChunked
        start local 2 // boolean urlSafe
         0: .line 627
            aload 0 /* binaryData */
            iload 1 /* isChunked */
            iload 2 /* urlSafe */
            ldc 2147483647
            invokestatic org.apache.tomcat.util.codec.binary.Base64.encodeBase64:([BZZI)[B
            areturn
        end local 2 // boolean urlSafe
        end local 1 // boolean isChunked
        end local 0 // byte[] binaryData
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    1     0  binaryData  [B
            0    1     1   isChunked  Z
            0    1     2     urlSafe  Z
    MethodParameters:
            Name  Flags
      binaryData  final
      isChunked   final
      urlSafe     final

  public static byte[] encodeBase64(byte[], boolean, boolean, int);
    descriptor: ([BZZI)[B
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=9, locals=7, args_size=4
        start local 0 // byte[] binaryData
        start local 1 // boolean isChunked
        start local 2 // boolean urlSafe
        start local 3 // int maxResultSize
         0: .line 649
            aload 0 /* binaryData */
            ifnull 1
            aload 0 /* binaryData */
            arraylength
            ifne 2
         1: .line 650
      StackMap locals:
      StackMap stack:
            aload 0 /* binaryData */
            areturn
         2: .line 655
      StackMap locals:
      StackMap stack:
            iload 1 /* isChunked */
            ifeq 3
            new org.apache.tomcat.util.codec.binary.Base64
            dup
            iload 2 /* urlSafe */
            invokespecial org.apache.tomcat.util.codec.binary.Base64.<init>:(Z)V
            goto 4
      StackMap locals:
      StackMap stack:
         3: new org.apache.tomcat.util.codec.binary.Base64
            dup
            iconst_0
            getstatic org.apache.tomcat.util.codec.binary.Base64.CHUNK_SEPARATOR:[B
            iload 2 /* urlSafe */
            invokespecial org.apache.tomcat.util.codec.binary.Base64.<init>:(I[BZ)V
      StackMap locals:
      StackMap stack: org.apache.tomcat.util.codec.binary.Base64
         4: astore 4 /* b64 */
        start local 4 // org.apache.tomcat.util.codec.binary.Base64 b64
         5: .line 656
            aload 4 /* b64 */
            aload 0 /* binaryData */
            invokevirtual org.apache.tomcat.util.codec.binary.Base64.getEncodedLength:([B)J
            lstore 5 /* len */
        start local 5 // long len
         6: .line 657
            lload 5 /* len */
            iload 3 /* maxResultSize */
            i2l
            lcmp
            ifle 10
         7: .line 658
            new java.lang.IllegalArgumentException
            dup
            getstatic org.apache.tomcat.util.codec.binary.Base64.sm:Lorg/apache/tomcat/util/res/StringManager;
         8: .line 659
            ldc "base64.inputTooLarge"
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
            lload 5 /* len */
            invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
            aastore
            dup
            iconst_1
            iload 3 /* maxResultSize */
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
         9: .line 658
            invokevirtual org.apache.tomcat.util.res.StringManager.getString:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        10: .line 662
      StackMap locals: org.apache.tomcat.util.codec.binary.Base64 long
      StackMap stack:
            aload 4 /* b64 */
            aload 0 /* binaryData */
            invokevirtual org.apache.tomcat.util.codec.binary.Base64.encode:([B)[B
            areturn
        end local 5 // long len
        end local 4 // org.apache.tomcat.util.codec.binary.Base64 b64
        end local 3 // int maxResultSize
        end local 2 // boolean urlSafe
        end local 1 // boolean isChunked
        end local 0 // byte[] binaryData
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   11     0     binaryData  [B
            0   11     1      isChunked  Z
            0   11     2        urlSafe  Z
            0   11     3  maxResultSize  I
            5   11     4            b64  Lorg/apache/tomcat/util/codec/binary/Base64;
            6   11     5            len  J
    MethodParameters:
               Name  Flags
      binaryData     final
      isChunked      final
      urlSafe        final
      maxResultSize  final

  public static byte[] decodeBase64(java.lang.String);
    descriptor: (Ljava/lang/String;)[B
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // java.lang.String base64String
         0: .line 677
            new org.apache.tomcat.util.codec.binary.Base64
            dup
            invokespecial org.apache.tomcat.util.codec.binary.Base64.<init>:()V
            aload 0 /* base64String */
            invokevirtual org.apache.tomcat.util.codec.binary.Base64.decode:(Ljava/lang/String;)[B
            areturn
        end local 0 // java.lang.String base64String
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    1     0  base64String  Ljava/lang/String;
    MethodParameters:
              Name  Flags
      base64String  final

  public static byte[] decodeBase64(byte[]);
    descriptor: ([B)[B
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // byte[] base64Data
         0: .line 691
            aload 0 /* base64Data */
            iconst_0
            aload 0 /* base64Data */
            arraylength
            invokestatic org.apache.tomcat.util.codec.binary.Base64.decodeBase64:([BII)[B
            areturn
        end local 0 // byte[] base64Data
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    1     0  base64Data  [B
    MethodParameters:
            Name  Flags
      base64Data  final

  public static byte[] decodeBase64(byte[], int, int);
    descriptor: ([BII)[B
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // byte[] base64Data
        start local 1 // int off
        start local 2 // int len
         0: .line 696
            new org.apache.tomcat.util.codec.binary.Base64
            dup
            invokespecial org.apache.tomcat.util.codec.binary.Base64.<init>:()V
            aload 0 /* base64Data */
            iload 1 /* off */
            iload 2 /* len */
            invokevirtual org.apache.tomcat.util.codec.binary.Base64.decode:([BII)[B
            areturn
        end local 2 // int len
        end local 1 // int off
        end local 0 // byte[] base64Data
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    1     0  base64Data  [B
            0    1     1         off  I
            0    1     2         len  I
    MethodParameters:
            Name  Flags
      base64Data  final
      off         final
      len         final

  public static java.math.BigInteger decodeInteger(byte[]);
    descriptor: ([B)Ljava/math/BigInteger;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // byte[] pArray
         0: .line 711
            new java.math.BigInteger
            dup
            iconst_1
            aload 0 /* pArray */
            invokestatic org.apache.tomcat.util.codec.binary.Base64.decodeBase64:([B)[B
            invokespecial java.math.BigInteger.<init>:(I[B)V
            areturn
        end local 0 // byte[] pArray
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0  pArray  [B
    MethodParameters:
        Name  Flags
      pArray  final

  public static byte[] encodeInteger(java.math.BigInteger);
    descriptor: (Ljava/math/BigInteger;)[B
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // java.math.BigInteger bigInt
         0: .line 725
            aload 0 /* bigInt */
            ifnonnull 2
         1: .line 726
            new java.lang.NullPointerException
            dup
            getstatic org.apache.tomcat.util.codec.binary.Base64.sm:Lorg/apache/tomcat/util/res/StringManager;
            ldc "base64.nullEncodeParameter"
            invokevirtual org.apache.tomcat.util.res.StringManager.getString:(Ljava/lang/String;)Ljava/lang/String;
            invokespecial java.lang.NullPointerException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 728
      StackMap locals:
      StackMap stack:
            aload 0 /* bigInt */
            invokestatic org.apache.tomcat.util.codec.binary.Base64.toIntegerBytes:(Ljava/math/BigInteger;)[B
            iconst_0
            invokestatic org.apache.tomcat.util.codec.binary.Base64.encodeBase64:([BZ)[B
            areturn
        end local 0 // java.math.BigInteger bigInt
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    3     0  bigInt  Ljava/math/BigInteger;
    MethodParameters:
        Name  Flags
      bigInt  final

  static byte[] toIntegerBytes(java.math.BigInteger);
    descriptor: (Ljava/math/BigInteger;)[B
    flags: (0x0008) ACC_STATIC
    Code:
      stack=5, locals=7, args_size=1
        start local 0 // java.math.BigInteger bigInt
         0: .line 739
            aload 0 /* bigInt */
            invokevirtual java.math.BigInteger.bitLength:()I
            istore 1 /* bitlen */
        start local 1 // int bitlen
         1: .line 741
            iload 1 /* bitlen */
            bipush 7
            iadd
            iconst_3
            ishr
            iconst_3
            ishl
            istore 1 /* bitlen */
         2: .line 742
            aload 0 /* bigInt */
            invokevirtual java.math.BigInteger.toByteArray:()[B
            astore 2 /* bigBytes */
        start local 2 // byte[] bigBytes
         3: .line 744
            aload 0 /* bigInt */
            invokevirtual java.math.BigInteger.bitLength:()I
            bipush 8
            irem
            ifeq 5
            aload 0 /* bigInt */
            invokevirtual java.math.BigInteger.bitLength:()I
            bipush 8
            idiv
            iconst_1
            iadd
            iload 1 /* bitlen */
            bipush 8
            idiv
            if_icmpne 5
         4: .line 745
            aload 2 /* bigBytes */
            areturn
         5: .line 748
      StackMap locals: int byte[]
      StackMap stack:
            iconst_0
            istore 3 /* startSrc */
        start local 3 // int startSrc
         6: .line 749
            aload 2 /* bigBytes */
            arraylength
            istore 4 /* len */
        start local 4 // int len
         7: .line 752
            aload 0 /* bigInt */
            invokevirtual java.math.BigInteger.bitLength:()I
            bipush 8
            irem
            ifne 10
         8: .line 753
            iconst_1
            istore 3 /* startSrc */
         9: .line 754
            iinc 4 /* len */ -1
        10: .line 756
      StackMap locals: int int
      StackMap stack:
            iload 1 /* bitlen */
            bipush 8
            idiv
            iload 4 /* len */
            isub
            istore 5 /* startDst */
        start local 5 // int startDst
        11: .line 757
            iload 1 /* bitlen */
            bipush 8
            idiv
            newarray 8
            astore 6 /* resizedBytes */
        start local 6 // byte[] resizedBytes
        12: .line 758
            aload 2 /* bigBytes */
            iload 3 /* startSrc */
            aload 6 /* resizedBytes */
            iload 5 /* startDst */
            iload 4 /* len */
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
        13: .line 759
            aload 6 /* resizedBytes */
            areturn
        end local 6 // byte[] resizedBytes
        end local 5 // int startDst
        end local 4 // int len
        end local 3 // int startSrc
        end local 2 // byte[] bigBytes
        end local 1 // int bitlen
        end local 0 // java.math.BigInteger bigInt
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   14     0        bigInt  Ljava/math/BigInteger;
            1   14     1        bitlen  I
            3   14     2      bigBytes  [B
            6   14     3      startSrc  I
            7   14     4           len  I
           11   14     5      startDst  I
           12   14     6  resizedBytes  [B
    MethodParameters:
        Name  Flags
      bigInt  final

  protected boolean isInAlphabet(byte);
    descriptor: (B)Z
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.apache.tomcat.util.codec.binary.Base64 this
        start local 1 // byte octet
         0: .line 771
            iload 1 /* octet */
            iflt 1
            iload 1 /* octet */
            aload 0 /* this */
            getfield org.apache.tomcat.util.codec.binary.Base64.decodeTable:[B
            arraylength
            if_icmpge 1
            aload 0 /* this */
            getfield org.apache.tomcat.util.codec.binary.Base64.decodeTable:[B
            iload 1 /* octet */
            baload
            iconst_m1
            if_icmpeq 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 1 // byte octet
        end local 0 // org.apache.tomcat.util.codec.binary.Base64 this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0   this  Lorg/apache/tomcat/util/codec/binary/Base64;
            0    2     1  octet  B
    MethodParameters:
       Name  Flags
      octet  final

  private long validateCharacter(int, org.apache.tomcat.util.codec.binary.BaseNCodec$Context);
    descriptor: (ILorg/apache/tomcat/util/codec/binary/BaseNCodec$Context;)J
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.apache.tomcat.util.codec.binary.Base64 this
        start local 1 // int numBitsToDrop
        start local 2 // org.apache.tomcat.util.codec.binary.BaseNCodec$Context context
         0: .line 786
            aload 2 /* context */
            getfield org.apache.tomcat.util.codec.binary.BaseNCodec$Context.ibitWorkArea:I
            iload 1 /* numBitsToDrop */
            iand
            ifeq 4
         1: .line 787
            new java.lang.IllegalArgumentException
            dup
         2: .line 788
            ldc "Last encoded character (before the paddings if any) is a valid base 64 alphabet but not a possible value"
         3: .line 787
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         4: .line 790
      StackMap locals:
      StackMap stack:
            aload 2 /* context */
            getfield org.apache.tomcat.util.codec.binary.BaseNCodec$Context.ibitWorkArea:I
            iload 1 /* numBitsToDrop */
            ishr
            i2l
            lreturn
        end local 2 // org.apache.tomcat.util.codec.binary.BaseNCodec$Context context
        end local 1 // int numBitsToDrop
        end local 0 // org.apache.tomcat.util.codec.binary.Base64 this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    5     0           this  Lorg/apache/tomcat/util/codec/binary/Base64;
            0    5     1  numBitsToDrop  I
            0    5     2        context  Lorg/apache/tomcat/util/codec/binary/BaseNCodec$Context;
    MethodParameters:
               Name  Flags
      numBitsToDrop  final
      context        final
}
SourceFile: "Base64.java"
InnerClasses:
  Context = org.apache.tomcat.util.codec.binary.BaseNCodec$Context of org.apache.tomcat.util.codec.binary.BaseNCodec