class java.util.prefs.Base64
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: java.util.prefs.Base64
  super_class: java.lang.Object
{
  private static final char[] intToBase64;
    descriptor: [C
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final char[] intToAltBase64;
    descriptor: [C
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

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

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

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=4, locals=0, args_size=0
         0: .line 100
            bipush 64
            newarray 5
            dup
            iconst_0
         1: .line 101
            bipush 65
            castore
            dup
            iconst_1
            bipush 66
            castore
            dup
            iconst_2
            bipush 67
            castore
            dup
            iconst_3
            bipush 68
            castore
            dup
            iconst_4
            bipush 69
            castore
            dup
            iconst_5
            bipush 70
            castore
            dup
            bipush 6
            bipush 71
            castore
            dup
            bipush 7
            bipush 72
            castore
            dup
            bipush 8
            bipush 73
            castore
            dup
            bipush 9
            bipush 74
            castore
            dup
            bipush 10
            bipush 75
            castore
            dup
            bipush 11
            bipush 76
            castore
            dup
            bipush 12
            bipush 77
            castore
            dup
            bipush 13
         2: .line 102
            bipush 78
            castore
            dup
            bipush 14
            bipush 79
            castore
            dup
            bipush 15
            bipush 80
            castore
            dup
            bipush 16
            bipush 81
            castore
            dup
            bipush 17
            bipush 82
            castore
            dup
            bipush 18
            bipush 83
            castore
            dup
            bipush 19
            bipush 84
            castore
            dup
            bipush 20
            bipush 85
            castore
            dup
            bipush 21
            bipush 86
            castore
            dup
            bipush 22
            bipush 87
            castore
            dup
            bipush 23
            bipush 88
            castore
            dup
            bipush 24
            bipush 89
            castore
            dup
            bipush 25
            bipush 90
            castore
            dup
            bipush 26
         3: .line 103
            bipush 97
            castore
            dup
            bipush 27
            bipush 98
            castore
            dup
            bipush 28
            bipush 99
            castore
            dup
            bipush 29
            bipush 100
            castore
            dup
            bipush 30
            bipush 101
            castore
            dup
            bipush 31
            bipush 102
            castore
            dup
            bipush 32
            bipush 103
            castore
            dup
            bipush 33
            bipush 104
            castore
            dup
            bipush 34
            bipush 105
            castore
            dup
            bipush 35
            bipush 106
            castore
            dup
            bipush 36
            bipush 107
            castore
            dup
            bipush 37
            bipush 108
            castore
            dup
            bipush 38
            bipush 109
            castore
            dup
            bipush 39
         4: .line 104
            bipush 110
            castore
            dup
            bipush 40
            bipush 111
            castore
            dup
            bipush 41
            bipush 112
            castore
            dup
            bipush 42
            bipush 113
            castore
            dup
            bipush 43
            bipush 114
            castore
            dup
            bipush 44
            bipush 115
            castore
            dup
            bipush 45
            bipush 116
            castore
            dup
            bipush 46
            bipush 117
            castore
            dup
            bipush 47
            bipush 118
            castore
            dup
            bipush 48
            bipush 119
            castore
            dup
            bipush 49
            bipush 120
            castore
            dup
            bipush 50
            bipush 121
            castore
            dup
            bipush 51
            bipush 122
            castore
            dup
            bipush 52
         5: .line 105
            bipush 48
            castore
            dup
            bipush 53
            bipush 49
            castore
            dup
            bipush 54
            bipush 50
            castore
            dup
            bipush 55
            bipush 51
            castore
            dup
            bipush 56
            bipush 52
            castore
            dup
            bipush 57
            bipush 53
            castore
            dup
            bipush 58
            bipush 54
            castore
            dup
            bipush 59
            bipush 55
            castore
            dup
            bipush 60
            bipush 56
            castore
            dup
            bipush 61
            bipush 57
            castore
            dup
            bipush 62
            bipush 43
            castore
            dup
            bipush 63
            bipush 47
            castore
         6: .line 100
            putstatic java.util.prefs.Base64.intToBase64:[C
         7: .line 115
            bipush 64
            newarray 5
            dup
            iconst_0
         8: .line 116
            bipush 33
            castore
            dup
            iconst_1
            bipush 34
            castore
            dup
            iconst_2
            bipush 35
            castore
            dup
            iconst_3
            bipush 36
            castore
            dup
            iconst_4
            bipush 37
            castore
            dup
            iconst_5
            bipush 38
            castore
            dup
            bipush 6
            bipush 39
            castore
            dup
            bipush 7
            bipush 40
            castore
            dup
            bipush 8
            bipush 41
            castore
            dup
            bipush 9
            bipush 44
            castore
            dup
            bipush 10
            bipush 45
            castore
            dup
            bipush 11
            bipush 46
            castore
            dup
            bipush 12
            bipush 58
            castore
            dup
            bipush 13
         9: .line 117
            bipush 59
            castore
            dup
            bipush 14
            bipush 60
            castore
            dup
            bipush 15
            bipush 62
            castore
            dup
            bipush 16
            bipush 64
            castore
            dup
            bipush 17
            bipush 91
            castore
            dup
            bipush 18
            bipush 93
            castore
            dup
            bipush 19
            bipush 94
            castore
            dup
            bipush 20
            bipush 96
            castore
            dup
            bipush 21
            bipush 95
            castore
            dup
            bipush 22
            bipush 123
            castore
            dup
            bipush 23
            bipush 124
            castore
            dup
            bipush 24
            bipush 125
            castore
            dup
            bipush 25
            bipush 126
            castore
            dup
            bipush 26
        10: .line 118
            bipush 97
            castore
            dup
            bipush 27
            bipush 98
            castore
            dup
            bipush 28
            bipush 99
            castore
            dup
            bipush 29
            bipush 100
            castore
            dup
            bipush 30
            bipush 101
            castore
            dup
            bipush 31
            bipush 102
            castore
            dup
            bipush 32
            bipush 103
            castore
            dup
            bipush 33
            bipush 104
            castore
            dup
            bipush 34
            bipush 105
            castore
            dup
            bipush 35
            bipush 106
            castore
            dup
            bipush 36
            bipush 107
            castore
            dup
            bipush 37
            bipush 108
            castore
            dup
            bipush 38
            bipush 109
            castore
            dup
            bipush 39
        11: .line 119
            bipush 110
            castore
            dup
            bipush 40
            bipush 111
            castore
            dup
            bipush 41
            bipush 112
            castore
            dup
            bipush 42
            bipush 113
            castore
            dup
            bipush 43
            bipush 114
            castore
            dup
            bipush 44
            bipush 115
            castore
            dup
            bipush 45
            bipush 116
            castore
            dup
            bipush 46
            bipush 117
            castore
            dup
            bipush 47
            bipush 118
            castore
            dup
            bipush 48
            bipush 119
            castore
            dup
            bipush 49
            bipush 120
            castore
            dup
            bipush 50
            bipush 121
            castore
            dup
            bipush 51
            bipush 122
            castore
            dup
            bipush 52
        12: .line 120
            bipush 48
            castore
            dup
            bipush 53
            bipush 49
            castore
            dup
            bipush 54
            bipush 50
            castore
            dup
            bipush 55
            bipush 51
            castore
            dup
            bipush 56
            bipush 52
            castore
            dup
            bipush 57
            bipush 53
            castore
            dup
            bipush 58
            bipush 54
            castore
            dup
            bipush 59
            bipush 55
            castore
            dup
            bipush 60
            bipush 56
            castore
            dup
            bipush 61
            bipush 57
            castore
            dup
            bipush 62
            bipush 43
            castore
            dup
            bipush 63
            bipush 63
            castore
        13: .line 115
            putstatic java.util.prefs.Base64.intToAltBase64:[C
        14: .line 214
            bipush 123
            newarray 8
            dup
            iconst_0
        15: .line 215
            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
            iconst_m1
            bastore
            dup
            bipush 17
        16: .line 216
            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
            iconst_m1
            bastore
            dup
            bipush 33
            iconst_m1
            bastore
            dup
            bipush 34
        17: .line 217
            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
            bipush 52
            bastore
            dup
            bipush 49
            bipush 53
            bastore
            dup
            bipush 50
            bipush 54
            bastore
            dup
            bipush 51
        18: .line 218
            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
            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
        19: .line 219
            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
            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
        20: .line 220
            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
            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
        21: .line 221
            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
            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
        22: .line 214
            putstatic java.util.prefs.Base64.base64ToInt:[B
        23: .line 228
            bipush 127
            newarray 8
            dup
            iconst_0
        24: .line 229
            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
            iconst_m1
            bastore
            dup
            bipush 17
        25: .line 230
            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
            iconst_m1
            bastore
            dup
            bipush 34
            iconst_1
            bastore
            dup
            bipush 35
        26: .line 231
            iconst_2
            bastore
            dup
            bipush 36
            iconst_3
            bastore
            dup
            bipush 37
            iconst_4
            bastore
            dup
            bipush 38
            iconst_5
            bastore
            dup
            bipush 39
            bipush 6
            bastore
            dup
            bipush 40
            bipush 7
            bastore
            dup
            bipush 41
            bipush 8
            bastore
            dup
            bipush 42
            iconst_m1
            bastore
            dup
            bipush 43
            bipush 62
            bastore
            dup
            bipush 44
            bipush 9
            bastore
            dup
            bipush 45
            bipush 10
            bastore
            dup
            bipush 46
            bipush 11
            bastore
            dup
            bipush 47
            iconst_m1
            bastore
            dup
            bipush 48
            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
        27: .line 232
            bipush 58
            bastore
            dup
            bipush 55
            bipush 59
            bastore
            dup
            bipush 56
            bipush 60
            bastore
            dup
            bipush 57
            bipush 61
            bastore
            dup
            bipush 58
            bipush 12
            bastore
            dup
            bipush 59
            bipush 13
            bastore
            dup
            bipush 60
            bipush 14
            bastore
            dup
            bipush 61
            iconst_m1
            bastore
            dup
            bipush 62
            bipush 15
            bastore
            dup
            bipush 63
            bipush 63
            bastore
            dup
            bipush 64
            bipush 16
            bastore
            dup
            bipush 65
            iconst_m1
            bastore
            dup
            bipush 66
            iconst_m1
            bastore
            dup
            bipush 67
            iconst_m1
            bastore
            dup
            bipush 68
            iconst_m1
            bastore
            dup
            bipush 69
            iconst_m1
            bastore
            dup
            bipush 70
            iconst_m1
            bastore
            dup
            bipush 71
        28: .line 233
            iconst_m1
            bastore
            dup
            bipush 72
            iconst_m1
            bastore
            dup
            bipush 73
            iconst_m1
            bastore
            dup
            bipush 74
            iconst_m1
            bastore
            dup
            bipush 75
            iconst_m1
            bastore
            dup
            bipush 76
            iconst_m1
            bastore
            dup
            bipush 77
            iconst_m1
            bastore
            dup
            bipush 78
            iconst_m1
            bastore
            dup
            bipush 79
            iconst_m1
            bastore
            dup
            bipush 80
            iconst_m1
            bastore
            dup
            bipush 81
            iconst_m1
            bastore
            dup
            bipush 82
            iconst_m1
            bastore
            dup
            bipush 83
            iconst_m1
            bastore
            dup
            bipush 84
            iconst_m1
            bastore
            dup
            bipush 85
            iconst_m1
            bastore
            dup
            bipush 86
            iconst_m1
            bastore
            dup
            bipush 87
            iconst_m1
            bastore
            dup
            bipush 88
        29: .line 234
            iconst_m1
            bastore
            dup
            bipush 89
            iconst_m1
            bastore
            dup
            bipush 90
            iconst_m1
            bastore
            dup
            bipush 91
            bipush 17
            bastore
            dup
            bipush 92
            iconst_m1
            bastore
            dup
            bipush 93
            bipush 18
            bastore
            dup
            bipush 94
            bipush 19
            bastore
            dup
            bipush 95
            bipush 21
            bastore
            dup
            bipush 96
            bipush 20
            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
        30: .line 235
            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
            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
        31: .line 236
            bipush 51
            bastore
            dup
            bipush 123
            bipush 22
            bastore
            dup
            bipush 124
            bipush 23
            bastore
            dup
            bipush 125
            bipush 24
            bastore
            dup
            bipush 126
            bipush 25
            bastore
        32: .line 228
            putstatic java.util.prefs.Base64.altBase64ToInt:[B
        33: .line 237
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  void <init>();
    descriptor: ()V
    flags: (0x0000) 
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.util.prefs.Base64 this
         0: .line 36
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
            return
        end local 0 // java.util.prefs.Base64 this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljava/util/prefs/Base64;

  static java.lang.String byteArrayToBase64(byte[]);
    descriptor: ([B)Ljava/lang/String;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // byte[] a
         0: .line 42
            aload 0 /* a */
            iconst_0
            invokestatic java.util.prefs.Base64.byteArrayToBase64:([BZ)Ljava/lang/String;
            areturn
        end local 0 // byte[] a
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0     a  [B
    MethodParameters:
      Name  Flags
      a     

  static java.lang.String byteArrayToAltBase64(byte[]);
    descriptor: ([B)Ljava/lang/String;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // byte[] a
         0: .line 52
            aload 0 /* a */
            iconst_1
            invokestatic java.util.prefs.Base64.byteArrayToBase64:([BZ)Ljava/lang/String;
            areturn
        end local 0 // byte[] a
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0     a  [B
    MethodParameters:
      Name  Flags
      a     

  private static java.lang.String byteArrayToBase64(byte[], boolean);
    descriptor: ([BZ)Ljava/lang/String;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=5, locals=13, args_size=2
        start local 0 // byte[] a
        start local 1 // boolean alternate
         0: .line 56
            aload 0 /* a */
            arraylength
            istore 2 /* aLen */
        start local 2 // int aLen
         1: .line 57
            iload 2 /* aLen */
            iconst_3
            idiv
            istore 3 /* numFullGroups */
        start local 3 // int numFullGroups
         2: .line 58
            iload 2 /* aLen */
            iconst_3
            iload 3 /* numFullGroups */
            imul
            isub
            istore 4 /* numBytesInPartialGroup */
        start local 4 // int numBytesInPartialGroup
         3: .line 59
            iconst_4
            iload 2 /* aLen */
            iconst_2
            iadd
            iconst_3
            idiv
            imul
            istore 5 /* resultLen */
        start local 5 // int resultLen
         4: .line 60
            new java.lang.StringBuilder
            dup
            iload 5 /* resultLen */
            invokespecial java.lang.StringBuilder.<init>:(I)V
            astore 6 /* result */
        start local 6 // java.lang.StringBuilder result
         5: .line 61
            iload 1 /* alternate */
            ifeq 6
            getstatic java.util.prefs.Base64.intToAltBase64:[C
            goto 7
      StackMap locals: byte[] int int int int int java.lang.StringBuilder
      StackMap stack:
         6: getstatic java.util.prefs.Base64.intToBase64:[C
      StackMap locals:
      StackMap stack: char[]
         7: astore 7 /* intToAlpha */
        start local 7 // char[] intToAlpha
         8: .line 64
            iconst_0
            istore 8 /* inCursor */
        start local 8 // int inCursor
         9: .line 65
            iconst_0
            istore 9 /* i */
        start local 9 // int i
        10: goto 19
        11: .line 66
      StackMap locals: char[] int int
      StackMap stack:
            aload 0 /* a */
            iload 8 /* inCursor */
            iinc 8 /* inCursor */ 1
            baload
            sipush 255
            iand
            istore 10 /* byte0 */
        start local 10 // int byte0
        12: .line 67
            aload 0 /* a */
            iload 8 /* inCursor */
            iinc 8 /* inCursor */ 1
            baload
            sipush 255
            iand
            istore 11 /* byte1 */
        start local 11 // int byte1
        13: .line 68
            aload 0 /* a */
            iload 8 /* inCursor */
            iinc 8 /* inCursor */ 1
            baload
            sipush 255
            iand
            istore 12 /* byte2 */
        start local 12 // int byte2
        14: .line 69
            aload 6 /* result */
            aload 7 /* intToAlpha */
            iload 10 /* byte0 */
            iconst_2
            ishr
            caload
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        15: .line 70
            aload 6 /* result */
            aload 7 /* intToAlpha */
            iload 10 /* byte0 */
            iconst_4
            ishl
            bipush 63
            iand
            iload 11 /* byte1 */
            iconst_4
            ishr
            ior
            caload
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        16: .line 71
            aload 6 /* result */
            aload 7 /* intToAlpha */
            iload 11 /* byte1 */
            iconst_2
            ishl
            bipush 63
            iand
            iload 12 /* byte2 */
            bipush 6
            ishr
            ior
            caload
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        17: .line 72
            aload 6 /* result */
            aload 7 /* intToAlpha */
            iload 12 /* byte2 */
            bipush 63
            iand
            caload
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        end local 12 // int byte2
        end local 11 // int byte1
        end local 10 // int byte0
        18: .line 65
            iinc 9 /* i */ 1
      StackMap locals:
      StackMap stack:
        19: iload 9 /* i */
            iload 3 /* numFullGroups */
            if_icmplt 11
        end local 9 // int i
        20: .line 76
            iload 4 /* numBytesInPartialGroup */
            ifeq 31
        21: .line 77
            aload 0 /* a */
            iload 8 /* inCursor */
            iinc 8 /* inCursor */ 1
            baload
            sipush 255
            iand
            istore 9 /* byte0 */
        start local 9 // int byte0
        22: .line 78
            aload 6 /* result */
            aload 7 /* intToAlpha */
            iload 9 /* byte0 */
            iconst_2
            ishr
            caload
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        23: .line 79
            iload 4 /* numBytesInPartialGroup */
            iconst_1
            if_icmpne 27
        24: .line 80
            aload 6 /* result */
            aload 7 /* intToAlpha */
            iload 9 /* byte0 */
            iconst_4
            ishl
            bipush 63
            iand
            caload
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        25: .line 81
            aload 6 /* result */
            ldc "=="
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        26: .line 82
            goto 31
        27: .line 84
      StackMap locals:
      StackMap stack:
            aload 0 /* a */
            iload 8 /* inCursor */
            iinc 8 /* inCursor */ 1
            baload
            sipush 255
            iand
            istore 10 /* byte1 */
        start local 10 // int byte1
        28: .line 85
            aload 6 /* result */
            aload 7 /* intToAlpha */
            iload 9 /* byte0 */
            iconst_4
            ishl
            bipush 63
            iand
            iload 10 /* byte1 */
            iconst_4
            ishr
            ior
            caload
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        29: .line 86
            aload 6 /* result */
            aload 7 /* intToAlpha */
            iload 10 /* byte1 */
            iconst_2
            ishl
            bipush 63
            iand
            caload
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        30: .line 87
            aload 6 /* result */
            bipush 61
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        end local 10 // int byte1
        end local 9 // int byte0
        31: .line 92
      StackMap locals:
      StackMap stack:
            aload 6 /* result */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 8 // int inCursor
        end local 7 // char[] intToAlpha
        end local 6 // java.lang.StringBuilder result
        end local 5 // int resultLen
        end local 4 // int numBytesInPartialGroup
        end local 3 // int numFullGroups
        end local 2 // int aLen
        end local 1 // boolean alternate
        end local 0 // byte[] a
      LocalVariableTable:
        Start  End  Slot                    Name  Signature
            0   32     0                       a  [B
            0   32     1               alternate  Z
            1   32     2                    aLen  I
            2   32     3           numFullGroups  I
            3   32     4  numBytesInPartialGroup  I
            4   32     5               resultLen  I
            5   32     6                  result  Ljava/lang/StringBuilder;
            8   32     7              intToAlpha  [C
            9   32     8                inCursor  I
           10   20     9                       i  I
           12   18    10                   byte0  I
           13   18    11                   byte1  I
           14   18    12                   byte2  I
           22   31     9                   byte0  I
           28   31    10                   byte1  I
    MethodParameters:
           Name  Flags
      a          
      alternate  

  static byte[] base64ToByteArray(java.lang.String);
    descriptor: (Ljava/lang/String;)[B
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // java.lang.String s
         0: .line 131
            aload 0 /* s */
            iconst_0
            invokestatic java.util.prefs.Base64.base64ToByteArray:(Ljava/lang/String;Z)[B
            areturn
        end local 0 // java.lang.String s
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0     s  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      s     

  static byte[] altBase64ToByteArray(java.lang.String);
    descriptor: (Ljava/lang/String;)[B
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // java.lang.String s
         0: .line 143
            aload 0 /* s */
            iconst_1
            invokestatic java.util.prefs.Base64.base64ToByteArray:(Ljava/lang/String;Z)[B
            areturn
        end local 0 // java.lang.String s
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0     s  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      s     

  private static byte[] base64ToByteArray(java.lang.String, boolean);
    descriptor: (Ljava/lang/String;Z)[B
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=5, locals=15, args_size=2
        start local 0 // java.lang.String s
        start local 1 // boolean alternate
         0: .line 147
            iload 1 /* alternate */
            ifeq 1
            getstatic java.util.prefs.Base64.altBase64ToInt:[B
            goto 2
      StackMap locals:
      StackMap stack:
         1: getstatic java.util.prefs.Base64.base64ToInt:[B
      StackMap locals:
      StackMap stack: byte[]
         2: astore 2 /* alphaToInt */
        start local 2 // byte[] alphaToInt
         3: .line 148
            aload 0 /* s */
            invokevirtual java.lang.String.length:()I
            istore 3 /* sLen */
        start local 3 // int sLen
         4: .line 149
            iload 3 /* sLen */
            iconst_4
            idiv
            istore 4 /* numGroups */
        start local 4 // int numGroups
         5: .line 150
            iconst_4
            iload 4 /* numGroups */
            imul
            iload 3 /* sLen */
            if_icmpeq 9
         6: .line 151
            new java.lang.IllegalArgumentException
            dup
         7: .line 152
            ldc "String length must be a multiple of four."
         8: .line 151
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         9: .line 153
      StackMap locals: byte[] int int
      StackMap stack:
            iconst_0
            istore 5 /* missingBytesInLastGroup */
        start local 5 // int missingBytesInLastGroup
        10: .line 154
            iload 4 /* numGroups */
            istore 6 /* numFullGroups */
        start local 6 // int numFullGroups
        11: .line 155
            iload 3 /* sLen */
            ifeq 17
        12: .line 156
            aload 0 /* s */
            iload 3 /* sLen */
            iconst_1
            isub
            invokevirtual java.lang.String.charAt:(I)C
            bipush 61
            if_icmpne 15
        13: .line 157
            iinc 5 /* missingBytesInLastGroup */ 1
        14: .line 158
            iinc 6 /* numFullGroups */ -1
        15: .line 160
      StackMap locals: int int
      StackMap stack:
            aload 0 /* s */
            iload 3 /* sLen */
            iconst_2
            isub
            invokevirtual java.lang.String.charAt:(I)C
            bipush 61
            if_icmpne 17
        16: .line 161
            iinc 5 /* missingBytesInLastGroup */ 1
        17: .line 163
      StackMap locals:
      StackMap stack:
            iconst_3
            iload 4 /* numGroups */
            imul
            iload 5 /* missingBytesInLastGroup */
            isub
            newarray 8
            astore 7 /* result */
        start local 7 // byte[] result
        18: .line 166
            iconst_0
            istore 8 /* inCursor */
        start local 8 // int inCursor
        19: iconst_0
            istore 9 /* outCursor */
        start local 9 // int outCursor
        20: .line 167
            iconst_0
            istore 10 /* i */
        start local 10 // int i
        21: goto 30
        22: .line 168
      StackMap locals: java.lang.String int byte[] int int int int byte[] int int int
      StackMap stack:
            aload 0 /* s */
            iload 8 /* inCursor */
            iinc 8 /* inCursor */ 1
            invokevirtual java.lang.String.charAt:(I)C
            aload 2 /* alphaToInt */
            invokestatic java.util.prefs.Base64.base64toInt:(C[B)I
            istore 11 /* ch0 */
        start local 11 // int ch0
        23: .line 169
            aload 0 /* s */
            iload 8 /* inCursor */
            iinc 8 /* inCursor */ 1
            invokevirtual java.lang.String.charAt:(I)C
            aload 2 /* alphaToInt */
            invokestatic java.util.prefs.Base64.base64toInt:(C[B)I
            istore 12 /* ch1 */
        start local 12 // int ch1
        24: .line 170
            aload 0 /* s */
            iload 8 /* inCursor */
            iinc 8 /* inCursor */ 1
            invokevirtual java.lang.String.charAt:(I)C
            aload 2 /* alphaToInt */
            invokestatic java.util.prefs.Base64.base64toInt:(C[B)I
            istore 13 /* ch2 */
        start local 13 // int ch2
        25: .line 171
            aload 0 /* s */
            iload 8 /* inCursor */
            iinc 8 /* inCursor */ 1
            invokevirtual java.lang.String.charAt:(I)C
            aload 2 /* alphaToInt */
            invokestatic java.util.prefs.Base64.base64toInt:(C[B)I
            istore 14 /* ch3 */
        start local 14 // int ch3
        26: .line 172
            aload 7 /* result */
            iload 9 /* outCursor */
            iinc 9 /* outCursor */ 1
            iload 11 /* ch0 */
            iconst_2
            ishl
            iload 12 /* ch1 */
            iconst_4
            ishr
            ior
            i2b
            bastore
        27: .line 173
            aload 7 /* result */
            iload 9 /* outCursor */
            iinc 9 /* outCursor */ 1
            iload 12 /* ch1 */
            iconst_4
            ishl
            iload 13 /* ch2 */
            iconst_2
            ishr
            ior
            i2b
            bastore
        28: .line 174
            aload 7 /* result */
            iload 9 /* outCursor */
            iinc 9 /* outCursor */ 1
            iload 13 /* ch2 */
            bipush 6
            ishl
            iload 14 /* ch3 */
            ior
            i2b
            bastore
        end local 14 // int ch3
        end local 13 // int ch2
        end local 12 // int ch1
        end local 11 // int ch0
        29: .line 167
            iinc 10 /* i */ 1
      StackMap locals:
      StackMap stack:
        30: iload 10 /* i */
            iload 6 /* numFullGroups */
            if_icmplt 22
        end local 10 // int i
        31: .line 178
            iload 5 /* missingBytesInLastGroup */
            ifeq 38
        32: .line 179
            aload 0 /* s */
            iload 8 /* inCursor */
            iinc 8 /* inCursor */ 1
            invokevirtual java.lang.String.charAt:(I)C
            aload 2 /* alphaToInt */
            invokestatic java.util.prefs.Base64.base64toInt:(C[B)I
            istore 10 /* ch0 */
        start local 10 // int ch0
        33: .line 180
            aload 0 /* s */
            iload 8 /* inCursor */
            iinc 8 /* inCursor */ 1
            invokevirtual java.lang.String.charAt:(I)C
            aload 2 /* alphaToInt */
            invokestatic java.util.prefs.Base64.base64toInt:(C[B)I
            istore 11 /* ch1 */
        start local 11 // int ch1
        34: .line 181
            aload 7 /* result */
            iload 9 /* outCursor */
            iinc 9 /* outCursor */ 1
            iload 10 /* ch0 */
            iconst_2
            ishl
            iload 11 /* ch1 */
            iconst_4
            ishr
            ior
            i2b
            bastore
        35: .line 183
            iload 5 /* missingBytesInLastGroup */
            iconst_1
            if_icmpne 38
        36: .line 184
            aload 0 /* s */
            iload 8 /* inCursor */
            iinc 8 /* inCursor */ 1
            invokevirtual java.lang.String.charAt:(I)C
            aload 2 /* alphaToInt */
            invokestatic java.util.prefs.Base64.base64toInt:(C[B)I
            istore 12 /* ch2 */
        start local 12 // int ch2
        37: .line 185
            aload 7 /* result */
            iload 9 /* outCursor */
            iinc 9 /* outCursor */ 1
            iload 11 /* ch1 */
            iconst_4
            ishl
            iload 12 /* ch2 */
            iconst_2
            ishr
            ior
            i2b
            bastore
        end local 12 // int ch2
        end local 11 // int ch1
        end local 10 // int ch0
        38: .line 190
      StackMap locals:
      StackMap stack:
            aload 7 /* result */
            areturn
        end local 9 // int outCursor
        end local 8 // int inCursor
        end local 7 // byte[] result
        end local 6 // int numFullGroups
        end local 5 // int missingBytesInLastGroup
        end local 4 // int numGroups
        end local 3 // int sLen
        end local 2 // byte[] alphaToInt
        end local 1 // boolean alternate
        end local 0 // java.lang.String s
      LocalVariableTable:
        Start  End  Slot                     Name  Signature
            0   39     0                        s  Ljava/lang/String;
            0   39     1                alternate  Z
            3   39     2               alphaToInt  [B
            4   39     3                     sLen  I
            5   39     4                numGroups  I
           10   39     5  missingBytesInLastGroup  I
           11   39     6            numFullGroups  I
           18   39     7                   result  [B
           19   39     8                 inCursor  I
           20   39     9                outCursor  I
           21   31    10                        i  I
           23   29    11                      ch0  I
           24   29    12                      ch1  I
           25   29    13                      ch2  I
           26   29    14                      ch3  I
           33   38    10                      ch0  I
           34   38    11                      ch1  I
           37   38    12                      ch2  I
    MethodParameters:
           Name  Flags
      s          
      alternate  

  private static int base64toInt(char, byte[]);
    descriptor: (C[B)I
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=5, locals=3, args_size=2
        start local 0 // char c
        start local 1 // byte[] alphaToInt
         0: .line 201
            aload 1 /* alphaToInt */
            iload 0 /* c */
            baload
            istore 2 /* result */
        start local 2 // int result
         1: .line 202
            iload 2 /* result */
            ifge 3
         2: .line 203
            new java.lang.IllegalArgumentException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Illegal character "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 0 /* c */
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         3: .line 204
      StackMap locals: int
      StackMap stack:
            iload 2 /* result */
            ireturn
        end local 2 // int result
        end local 1 // byte[] alphaToInt
        end local 0 // char c
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    4     0           c  C
            0    4     1  alphaToInt  [B
            1    4     2      result  I
    MethodParameters:
            Name  Flags
      c           
      alphaToInt  

  public static void main(java.lang.String[]);
    descriptor: ([Ljava/lang/String;)V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=9, args_size=1
        start local 0 // java.lang.String[] args
         0: .line 240
            aload 0 /* args */
            iconst_0
            aaload
            invokestatic java.lang.Integer.parseInt:(Ljava/lang/String;)I
            istore 1 /* numRuns */
        start local 1 // int numRuns
         1: .line 241
            aload 0 /* args */
            iconst_1
            aaload
            invokestatic java.lang.Integer.parseInt:(Ljava/lang/String;)I
            istore 2 /* numBytes */
        start local 2 // int numBytes
         2: .line 242
            new java.util.Random
            dup
            invokespecial java.util.Random.<init>:()V
            astore 3 /* rnd */
        start local 3 // java.util.Random rnd
         3: .line 243
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         4: goto 24
         5: .line 244
      StackMap locals: java.lang.String[] int int java.util.Random int
      StackMap stack:
            iconst_0
            istore 5 /* j */
        start local 5 // int j
         6: goto 22
         7: .line 245
      StackMap locals: int
      StackMap stack:
            iload 5 /* j */
            newarray 8
            astore 6 /* arr */
        start local 6 // byte[] arr
         8: .line 246
            iconst_0
            istore 7 /* k */
        start local 7 // int k
         9: goto 12
        10: .line 247
      StackMap locals: byte[] int
      StackMap stack:
            aload 6 /* arr */
            iload 7 /* k */
            aload 3 /* rnd */
            invokevirtual java.util.Random.nextInt:()I
            i2b
            bastore
        11: .line 246
            iinc 7 /* k */ 1
      StackMap locals:
      StackMap stack:
        12: iload 7 /* k */
            iload 5 /* j */
            if_icmplt 10
        end local 7 // int k
        13: .line 249
            aload 6 /* arr */
            invokestatic java.util.prefs.Base64.byteArrayToBase64:([B)Ljava/lang/String;
            astore 7 /* s */
        start local 7 // java.lang.String s
        14: .line 250
            aload 7 /* s */
            invokestatic java.util.prefs.Base64.base64ToByteArray:(Ljava/lang/String;)[B
            astore 8 /* b */
        start local 8 // byte[] b
        15: .line 251
            aload 6 /* arr */
            aload 8 /* b */
            invokestatic java.util.Arrays.equals:([B[B)Z
            ifne 17
        16: .line 252
            getstatic java.lang.System.out:Ljava/io/PrintStream;
            ldc "Dismal failure!"
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
        17: .line 254
      StackMap locals: java.lang.String[] int int java.util.Random int int byte[] java.lang.String byte[]
      StackMap stack:
            aload 6 /* arr */
            invokestatic java.util.prefs.Base64.byteArrayToAltBase64:([B)Ljava/lang/String;
            astore 7 /* s */
        18: .line 255
            aload 7 /* s */
            invokestatic java.util.prefs.Base64.altBase64ToByteArray:(Ljava/lang/String;)[B
            astore 8 /* b */
        19: .line 256
            aload 6 /* arr */
            aload 8 /* b */
            invokestatic java.util.Arrays.equals:([B[B)Z
            ifne 21
        20: .line 257
            getstatic java.lang.System.out:Ljava/io/PrintStream;
            ldc "Alternate dismal failure!"
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
        end local 8 // byte[] b
        end local 7 // java.lang.String s
        end local 6 // byte[] arr
        21: .line 244
      StackMap locals:
      StackMap stack:
            iinc 5 /* j */ 1
      StackMap locals:
      StackMap stack:
        22: iload 5 /* j */
            iload 2 /* numBytes */
            if_icmplt 7
        end local 5 // int j
        23: .line 243
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
        24: iload 4 /* i */
            iload 1 /* numRuns */
            if_icmplt 5
        end local 4 // int i
        25: .line 260
            return
        end local 3 // java.util.Random rnd
        end local 2 // int numBytes
        end local 1 // int numRuns
        end local 0 // java.lang.String[] args
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   26     0      args  [Ljava/lang/String;
            1   26     1   numRuns  I
            2   26     2  numBytes  I
            3   26     3       rnd  Ljava/util/Random;
            4   25     4         i  I
            6   23     5         j  I
            8   21     6       arr  [B
            9   13     7         k  I
           14   21     7         s  Ljava/lang/String;
           15   21     8         b  [B
    MethodParameters:
      Name  Flags
      args  
}
SourceFile: "Base64.java"