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

  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[] STANDARD_DECODE_TABLE;
    descriptor: [B
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final byte[] URL_SAFE_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 static final int MASK_4BITS;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 15

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

  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 70
            bipush 64
            newarray 8
            dup
            iconst_0
         1: .line 71
            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
         2: .line 72
            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
         3: .line 73
            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
         4: .line 74
            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
         5: .line 75
            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
         6: .line 70
            putstatic org.apache.tomcat.util.codec.binary.Base64.STANDARD_ENCODE_TABLE:[B
         7: .line 83
            bipush 64
            newarray 8
            dup
            iconst_0
         8: .line 84
            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
         9: .line 85
            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
        10: .line 86
            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
        11: .line 87
            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
        12: .line 88
            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
        13: .line 83
            putstatic org.apache.tomcat.util.codec.binary.Base64.URL_SAFE_ENCODE_TABLE:[B
        14: .line 102
            bipush 123
            newarray 8
            dup
            iconst_0
        15: .line 104
            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
        16: .line 105
            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
        17: .line 106
            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
        18: .line 107
            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
        19: .line 108
            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
        20: .line 109
            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
        21: .line 110
            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
        22: .line 111
            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
        23: .line 102
            putstatic org.apache.tomcat.util.codec.binary.Base64.STANDARD_DECODE_TABLE:[B
        24: .line 114
            bipush 123
            newarray 8
            dup
            iconst_0
        25: .line 116
            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
        26: .line 117
            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
        27: .line 118
            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
            iconst_m1
            bastore
            dup
            bipush 44
            iconst_m1
            bastore
            dup
            bipush 45
            bipush 62
            bastore
            dup
            bipush 46
            iconst_m1
            bastore
            dup
            bipush 47
            iconst_m1
            bastore
            dup
            bipush 48
        28: .line 119
            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
        29: .line 120
            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
        30: .line 121
            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
            bipush 63
            bastore
            dup
            bipush 96
        31: .line 122
            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
        32: .line 123
            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
        33: .line 114
            putstatic org.apache.tomcat.util.codec.binary.Base64.URL_SAFE_DECODE_TABLE:[B
        34: .line 134
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  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 151
            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 156
            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 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 171
            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[] decodeBase64URLSafe(java.lang.String);
    descriptor: (Ljava/lang/String;)[B
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // java.lang.String base64String
         0: .line 175
            new org.apache.tomcat.util.codec.binary.Base64
            dup
            iconst_1
            invokespecial org.apache.tomcat.util.codec.binary.Base64.<init>:(Z)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 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 188
            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[] 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 199
            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 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 214
            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 233
            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 255
            aload 0 /* binaryData */
            ifnull 1
            aload 0 /* binaryData */
            arraylength
            ifne 2
         1: .line 256
      StackMap locals:
      StackMap stack:
            aload 0 /* binaryData */
            areturn
         2: .line 261
      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 262
            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 263
            lload 5 /* len */
            iload 3 /* maxResultSize */
            i2l
            lcmp
            ifle 10
         7: .line 264
            new java.lang.IllegalArgumentException
            dup
            getstatic org.apache.tomcat.util.codec.binary.Base64.sm:Lorg/apache/tomcat/util/res/StringManager;
         8: .line 265
            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 264
            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 268
      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[] 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 279
            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 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 294
            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 307
            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 320
            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[] 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 bigInteger
         0: .line 334
            aload 0 /* bigInteger */
            ifnonnull 2
         1: .line 335
            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 337
      StackMap locals:
      StackMap stack:
            aload 0 /* bigInteger */
            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 bigInteger
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    3     0  bigInteger  Ljava/math/BigInteger;
    MethodParameters:
            Name  Flags
      bigInteger  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 349
            iload 0 /* octet */
            bipush 61
            if_icmpeq 2
            iload 0 /* octet */
            iflt 1
            iload 0 /* octet */
            getstatic org.apache.tomcat.util.codec.binary.Base64.STANDARD_DECODE_TABLE:[B
            arraylength
            if_icmpge 1
            getstatic org.apache.tomcat.util.codec.binary.Base64.STANDARD_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(byte[]);
    descriptor: ([B)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=5, args_size=1
        start local 0 // byte[] arrayOctet
         0: .line 363
            aload 0 /* arrayOctet */
            dup
            astore 4
            arraylength
            istore 3
            iconst_0
            istore 2
            goto 5
      StackMap locals: byte[] top int int byte[]
      StackMap stack:
         1: aload 4
            iload 2
            baload
            istore 1 /* b */
        start local 1 // byte b
         2: .line 364
            iload 1 /* b */
            invokestatic org.apache.tomcat.util.codec.binary.Base64.isBase64:(B)Z
            ifne 4
            iload 1 /* b */
            invokestatic org.apache.tomcat.util.codec.binary.Base64.isWhiteSpace:(B)Z
            ifne 4
         3: .line 365
            iconst_0
            ireturn
        end local 1 // byte b
         4: .line 363
      StackMap locals:
      StackMap stack:
            iinc 2 1
      StackMap locals:
      StackMap stack:
         5: iload 2
            iload 3
            if_icmplt 1
         6: .line 368
            iconst_1
            ireturn
        end local 0 // byte[] arrayOctet
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    7     0  arrayOctet  [B
            2    4     1           b  B
    MethodParameters:
            Name  Flags
      arrayOctet  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 382
            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

  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 393
            aload 0 /* bigInt */
            invokevirtual java.math.BigInteger.bitLength:()I
            istore 1 /* bitlen */
        start local 1 // int bitlen
         1: .line 395
            iload 1 /* bitlen */
            bipush 7
            iadd
            iconst_3
            ishr
            iconst_3
            ishl
            istore 1 /* bitlen */
         2: .line 396
            aload 0 /* bigInt */
            invokevirtual java.math.BigInteger.toByteArray:()[B
            astore 2 /* bigBytes */
        start local 2 // byte[] bigBytes
         3: .line 398
            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 399
            aload 2 /* bigBytes */
            areturn
         5: .line 402
      StackMap locals: int byte[]
      StackMap stack:
            iconst_0
            istore 3 /* startSrc */
        start local 3 // int startSrc
         6: .line 403
            aload 2 /* bigBytes */
            arraylength
            istore 4 /* len */
        start local 4 // int len
         7: .line 406
            aload 0 /* bigInt */
            invokevirtual java.math.BigInteger.bitLength:()I
            bipush 8
            irem
            ifne 10
         8: .line 407
            iconst_1
            istore 3 /* startSrc */
         9: .line 408
            iinc 4 /* len */ -1
        10: .line 410
      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 411
            iload 1 /* bitlen */
            bipush 8
            idiv
            newarray 8
            astore 6 /* resizedBytes */
        start local 6 // byte[] resizedBytes
        12: .line 412
            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 413
            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

  private static void validateCharacter(int, org.apache.tomcat.util.codec.binary.BaseNCodec$Context);
    descriptor: (ILorg/apache/tomcat/util/codec/binary/BaseNCodec$Context;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // int emptyBitsMask
        start local 1 // org.apache.tomcat.util.codec.binary.BaseNCodec$Context context
         0: .line 429
            aload 1 /* context */
            getfield org.apache.tomcat.util.codec.binary.BaseNCodec$Context.ibitWorkArea:I
            iload 0 /* emptyBitsMask */
            iand
            ifeq 4
         1: .line 430
            new java.lang.IllegalArgumentException
            dup
         2: .line 431
            ldc "Last encoded character (before the paddings if any) is a valid base 64 alphabet but not a possible value. Expected the discarded bits to be zero."
         3: .line 430
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         4: .line 434
      StackMap locals:
      StackMap stack:
            return
        end local 1 // org.apache.tomcat.util.codec.binary.BaseNCodec$Context context
        end local 0 // int emptyBitsMask
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    5     0  emptyBitsMask  I
            0    5     1        context  Lorg/apache/tomcat/util/codec/binary/BaseNCodec$Context;
    MethodParameters:
               Name  Flags
      emptyBitsMask  final
      context        final

  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 475
            aload 0 /* this */
            iconst_0
            invokespecial org.apache.tomcat.util.codec.binary.Base64.<init>:(I)V
         1: .line 476
            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 494
            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 495
            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 517
            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 518
            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 544
            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 545
            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 575
            aload 0 /* this */
            iconst_3
            iconst_4
         1: .line 576
            iload 1 /* lineLength */
         2: .line 577
            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 579
            aload 0 /* this */
            iload 3 /* urlSafe */
            ifeq 6
            getstatic org.apache.tomcat.util.codec.binary.Base64.URL_SAFE_DECODE_TABLE:[B
            goto 7
      StackMap locals: org.apache.tomcat.util.codec.binary.Base64 int byte[] int
      StackMap stack: org.apache.tomcat.util.codec.binary.Base64
         6: getstatic org.apache.tomcat.util.codec.binary.Base64.STANDARD_DECODE_TABLE:[B
      StackMap locals: org.apache.tomcat.util.codec.binary.Base64 int byte[] int
      StackMap stack: org.apache.tomcat.util.codec.binary.Base64 byte[]
         7: putfield org.apache.tomcat.util.codec.binary.Base64.decodeTable:[B
         8: .line 582
            aload 2 /* lineSeparator */
            ifnull 20
         9: .line 583
            aload 0 /* this */
            aload 2 /* lineSeparator */
            invokevirtual org.apache.tomcat.util.codec.binary.Base64.containsAlphabetOrPad:([B)Z
            ifeq 12
        10: .line 584
            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
        11: .line 585
            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
        12: .line 587
      StackMap locals:
      StackMap stack:
            iload 1 /* lineLength */
            ifle 17
        13: .line 588
            aload 0 /* this */
            iconst_4
            aload 2 /* lineSeparator */
            arraylength
            iadd
            putfield org.apache.tomcat.util.codec.binary.Base64.encodeSize:I
        14: .line 589
            aload 0 /* this */
            aload 2 /* lineSeparator */
            arraylength
            newarray 8
            putfield org.apache.tomcat.util.codec.binary.Base64.lineSeparator:[B
        15: .line 590
            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
        16: .line 591
            goto 22
        17: .line 592
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_4
            putfield org.apache.tomcat.util.codec.binary.Base64.encodeSize:I
        18: .line 593
            aload 0 /* this */
            aconst_null
            putfield org.apache.tomcat.util.codec.binary.Base64.lineSeparator:[B
        19: .line 595
            goto 22
        20: .line 596
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_4
            putfield org.apache.tomcat.util.codec.binary.Base64.encodeSize:I
        21: .line 597
            aload 0 /* this */
            aconst_null
            putfield org.apache.tomcat.util.codec.binary.Base64.lineSeparator:[B
        22: .line 599
      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
        23: .line 600
            aload 0 /* this */
            iload 3 /* urlSafe */
            ifeq 24
            getstatic org.apache.tomcat.util.codec.binary.Base64.URL_SAFE_ENCODE_TABLE:[B
            goto 25
      StackMap locals:
      StackMap stack: org.apache.tomcat.util.codec.binary.Base64
        24: 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[]
        25: putfield org.apache.tomcat.util.codec.binary.Base64.encodeTable:[B
        26: .line 601
            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   27     0           this  Lorg/apache/tomcat/util/codec/binary/Base64;
            0   27     1     lineLength  I
            0   27     2  lineSeparator  [B
            0   27     3        urlSafe  Z
           11   12     4            sep  Ljava/lang/String;
    MethodParameters:
               Name  Flags
      lineLength     final
      lineSeparator  final
      urlSafe        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 632
            aload 4 /* context */
            getfield org.apache.tomcat.util.codec.binary.BaseNCodec$Context.eof:Z
            ifeq 2
         1: .line 633
            return
         2: .line 635
      StackMap locals:
      StackMap stack:
            iload 3 /* inAvail */
            ifge 4
         3: .line 636
            aload 4 /* context */
            iconst_1
            putfield org.apache.tomcat.util.codec.binary.BaseNCodec$Context.eof:Z
         4: .line 638
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 5 /* i */
        start local 5 // int i
         5: goto 21
         6: .line 639
      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 640
            aload 1 /* in */
            iload 2 /* inPos */
            iinc 2 /* inPos */ 1
            baload
            istore 7 /* b */
        start local 7 // byte b
         8: .line 641
            iload 7 /* b */
            aload 0 /* this */
            getfield org.apache.tomcat.util.codec.binary.Base64.pad:B
            if_icmpne 11
         9: .line 643
            aload 4 /* context */
            iconst_1
            putfield org.apache.tomcat.util.codec.binary.BaseNCodec$Context.eof:Z
        10: .line 644
            goto 22
        11: .line 646
      StackMap locals: byte[] int
      StackMap stack:
            iload 7 /* b */
            iflt 20
            iload 7 /* b */
            aload 0 /* this */
            getfield org.apache.tomcat.util.codec.binary.Base64.decodeTable:[B
            arraylength
            if_icmpge 20
        12: .line 647
            aload 0 /* this */
            getfield org.apache.tomcat.util.codec.binary.Base64.decodeTable:[B
            iload 7 /* b */
            baload
            istore 8 /* result */
        start local 8 // int result
        13: .line 648
            iload 8 /* result */
            iflt 20
        14: .line 649
            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 650
            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 651
            aload 4 /* context */
            getfield org.apache.tomcat.util.codec.binary.BaseNCodec$Context.modulus:I
            ifne 20
        17: .line 652
            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 653
            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 654
            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 638
      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 663
      StackMap locals:
      StackMap stack:
            aload 4 /* context */
            getfield org.apache.tomcat.util.codec.binary.BaseNCodec$Context.eof:Z
            ifeq 37
            aload 4 /* context */
            getfield org.apache.tomcat.util.codec.binary.BaseNCodec$Context.modulus:I
            ifeq 37
        23: .line 664
            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 668
            aload 4 /* context */
            getfield org.apache.tomcat.util.codec.binary.BaseNCodec$Context.modulus:I
            tableswitch { // 2 - 3
                    2: 25
                    3: 29
              default: 34
          }
        25: .line 672
      StackMap locals: byte[]
      StackMap stack:
            bipush 15
            aload 4 /* context */
            invokestatic org.apache.tomcat.util.codec.binary.Base64.validateCharacter:(ILorg/apache/tomcat/util/codec/binary/BaseNCodec$Context;)V
        26: .line 673
            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
        27: .line 674
            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
        28: .line 675
            goto 37
        29: .line 677
      StackMap locals:
      StackMap stack:
            iconst_3
            aload 4 /* context */
            invokestatic org.apache.tomcat.util.codec.binary.Base64.validateCharacter:(ILorg/apache/tomcat/util/codec/binary/BaseNCodec$Context;)V
        30: .line 678
            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
        31: .line 679
            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
        32: .line 680
            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
        33: .line 681
            goto 37
        34: .line 683
      StackMap locals:
      StackMap stack:
            new java.lang.IllegalStateException
            dup
            getstatic org.apache.tomcat.util.codec.binary.Base64.sm:Lorg/apache/tomcat/util/res/StringManager;
        35: .line 684
            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
        36: .line 683
            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
        37: .line 687
      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   38     0     this  Lorg/apache/tomcat/util/codec/binary/Base64;
            0   38     1       in  [B
            0   38     2    inPos  I
            0   38     3  inAvail  I
            0   38     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   37     5   buffer  [B
    MethodParameters:
         Name  Flags
      in       final
      inPos    
      inAvail  final
      context  final

  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 712
            aload 4 /* context */
            getfield org.apache.tomcat.util.codec.binary.BaseNCodec$Context.eof:Z
            ifeq 2
         1: .line 713
            return
         2: .line 717
      StackMap locals:
      StackMap stack:
            iload 3 /* inAvail */
            ifge 30
         3: .line 718
            aload 4 /* context */
            iconst_1
            putfield org.apache.tomcat.util.codec.binary.BaseNCodec$Context.eof:Z
         4: .line 719
            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 720
            return
         6: .line 722
      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 723
            aload 4 /* context */
            getfield org.apache.tomcat.util.codec.binary.BaseNCodec$Context.pos:I
            istore 6 /* savedPos */
        start local 6 // int savedPos
         8: .line 724
            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 726
      StackMap locals: byte[] int
      StackMap stack:
            goto 25
        10: .line 729
      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 731
            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 733
            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 734
            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 735
            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 737
            goto 25
        16: .line 740
      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 741
            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 742
            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 744
            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 745
            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 747
            goto 25
        22: .line 749
      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 750
            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 749
            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 752
      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 754
            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 755
            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 756
            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 758
            goto 50
        30: .line 759
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 5 /* i */
        start local 5 // int i
        31: goto 49
        32: .line 760
      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 761
            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 762
            aload 1 /* in */
            iload 2 /* inPos */
            iinc 2 /* inPos */ 1
            baload
            istore 7 /* b */
        start local 7 // int b
        35: .line 763
            iload 7 /* b */
            ifge 37
        36: .line 764
            iinc 7 /* b */ 256
        37: .line 766
      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 767
            aload 4 /* context */
            getfield org.apache.tomcat.util.codec.binary.BaseNCodec$Context.modulus:I
            ifne 48
        39: .line 768
            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 769
            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 770
            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 771
            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 772
            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 773
            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 774
            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 775
            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 776
            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 759
      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 781
      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

  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 792
            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

  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 802
            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;
}
SourceFile: "Base64.java"
InnerClasses:
  Context = org.apache.tomcat.util.codec.binary.BaseNCodec$Context of org.apache.tomcat.util.codec.binary.BaseNCodec