public class org.jasypt.contrib.org.apache.commons.codec_1_3.binary.Base64 implements org.jasypt.contrib.org.apache.commons.codec_1_3.BinaryEncoder, org.jasypt.contrib.org.apache.commons.codec_1_3.BinaryDecoder
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.jasypt.contrib.org.apache.commons.codec_1_3.binary.Base64
  super_class: java.lang.Object
{
  static final int CHUNK_SIZE;
    descriptor: I
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: 76

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

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

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

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

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

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

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

  static final int SIGN;
    descriptor: I
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: -128

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

  private static byte[] base64Alphabet;
    descriptor: [B
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC

  private static byte[] lookUpBase64Alphabet;
    descriptor: [B
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=4, locals=2, args_size=0
         0: .line 57
            ldc "\r\n"
            invokevirtual java.lang.String.getBytes:()[B
            putstatic org.jasypt.contrib.org.apache.commons.codec_1_3.binary.Base64.CHUNK_SEPARATOR:[B
         1: .line 101
            sipush 255
            newarray 8
            putstatic org.jasypt.contrib.org.apache.commons.codec_1_3.binary.Base64.base64Alphabet:[B
         2: .line 102
            bipush 64
            newarray 8
            putstatic org.jasypt.contrib.org.apache.commons.codec_1_3.binary.Base64.lookUpBase64Alphabet:[B
         3: .line 106
            iconst_0
            istore 0 /* i */
        start local 0 // int i
         4: goto 7
         5: .line 107
      StackMap locals: int
      StackMap stack:
            getstatic org.jasypt.contrib.org.apache.commons.codec_1_3.binary.Base64.base64Alphabet:[B
            iload 0 /* i */
            iconst_m1
            bastore
         6: .line 106
            iinc 0 /* i */ 1
      StackMap locals:
      StackMap stack:
         7: iload 0 /* i */
            sipush 255
            if_icmplt 5
        end local 0 // int i
         8: .line 109
            bipush 90
            istore 0 /* i */
        start local 0 // int i
         9: goto 12
        10: .line 110
      StackMap locals:
      StackMap stack:
            getstatic org.jasypt.contrib.org.apache.commons.codec_1_3.binary.Base64.base64Alphabet:[B
            iload 0 /* i */
            iload 0 /* i */
            bipush 65
            isub
            i2b
            bastore
        11: .line 109
            iinc 0 /* i */ -1
      StackMap locals:
      StackMap stack:
        12: iload 0 /* i */
            bipush 65
            if_icmpge 10
        end local 0 // int i
        13: .line 112
            bipush 122
            istore 0 /* i */
        start local 0 // int i
        14: goto 17
        15: .line 113
      StackMap locals:
      StackMap stack:
            getstatic org.jasypt.contrib.org.apache.commons.codec_1_3.binary.Base64.base64Alphabet:[B
            iload 0 /* i */
            iload 0 /* i */
            bipush 97
            isub
            bipush 26
            iadd
            i2b
            bastore
        16: .line 112
            iinc 0 /* i */ -1
      StackMap locals:
      StackMap stack:
        17: iload 0 /* i */
            bipush 97
            if_icmpge 15
        end local 0 // int i
        18: .line 115
            bipush 57
            istore 0 /* i */
        start local 0 // int i
        19: goto 22
        20: .line 116
      StackMap locals:
      StackMap stack:
            getstatic org.jasypt.contrib.org.apache.commons.codec_1_3.binary.Base64.base64Alphabet:[B
            iload 0 /* i */
            iload 0 /* i */
            bipush 48
            isub
            bipush 52
            iadd
            i2b
            bastore
        21: .line 115
            iinc 0 /* i */ -1
      StackMap locals:
      StackMap stack:
        22: iload 0 /* i */
            bipush 48
            if_icmpge 20
        end local 0 // int i
        23: .line 119
            getstatic org.jasypt.contrib.org.apache.commons.codec_1_3.binary.Base64.base64Alphabet:[B
            bipush 43
            bipush 62
            bastore
        24: .line 120
            getstatic org.jasypt.contrib.org.apache.commons.codec_1_3.binary.Base64.base64Alphabet:[B
            bipush 47
            bipush 63
            bastore
        25: .line 122
            iconst_0
            istore 0 /* i */
        start local 0 // int i
        26: goto 29
        27: .line 123
      StackMap locals:
      StackMap stack:
            getstatic org.jasypt.contrib.org.apache.commons.codec_1_3.binary.Base64.lookUpBase64Alphabet:[B
            iload 0 /* i */
            bipush 65
            iload 0 /* i */
            iadd
            i2b
            bastore
        28: .line 122
            iinc 0 /* i */ 1
      StackMap locals:
      StackMap stack:
        29: iload 0 /* i */
            bipush 25
            if_icmple 27
        end local 0 // int i
        30: .line 126
            bipush 26
            istore 0 /* i */
        start local 0 // int i
        31: iconst_0
            istore 1 /* j */
        start local 1 // int j
        32: goto 35
        33: .line 127
      StackMap locals: int
      StackMap stack:
            getstatic org.jasypt.contrib.org.apache.commons.codec_1_3.binary.Base64.lookUpBase64Alphabet:[B
            iload 0 /* i */
            bipush 97
            iload 1 /* j */
            iadd
            i2b
            bastore
        34: .line 126
            iinc 0 /* i */ 1
            iinc 1 /* j */ 1
      StackMap locals:
      StackMap stack:
        35: iload 0 /* i */
            bipush 51
            if_icmple 33
        end local 1 // int j
        end local 0 // int i
        36: .line 130
            bipush 52
            istore 0 /* i */
        start local 0 // int i
        37: iconst_0
            istore 1 /* j */
        start local 1 // int j
        38: goto 41
        39: .line 131
      StackMap locals:
      StackMap stack:
            getstatic org.jasypt.contrib.org.apache.commons.codec_1_3.binary.Base64.lookUpBase64Alphabet:[B
            iload 0 /* i */
            bipush 48
            iload 1 /* j */
            iadd
            i2b
            bastore
        40: .line 130
            iinc 0 /* i */ 1
            iinc 1 /* j */ 1
      StackMap locals:
      StackMap stack:
        41: iload 0 /* i */
            bipush 61
            if_icmple 39
        end local 1 // int j
        end local 0 // int i
        42: .line 134
            getstatic org.jasypt.contrib.org.apache.commons.codec_1_3.binary.Base64.lookUpBase64Alphabet:[B
            bipush 62
            bipush 43
            bastore
        43: .line 135
            getstatic org.jasypt.contrib.org.apache.commons.codec_1_3.binary.Base64.lookUpBase64Alphabet:[B
            bipush 63
            bipush 47
            bastore
        44: .line 136
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            4    8     0     i  I
            9   13     0     i  I
           14   18     0     i  I
           19   23     0     i  I
           26   30     0     i  I
           31   36     0     i  I
           32   36     1     j  I
           37   42     0     i  I
           38   42     1     j  I

  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.jasypt.contrib.org.apache.commons.codec_1_3.binary.Base64 this
         0: .line 40
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
            return
        end local 0 // org.jasypt.contrib.org.apache.commons.codec_1_3.binary.Base64 this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jasypt/contrib/org/apache/commons/codec_1_3/binary/Base64;

  private static boolean isBase64(byte);
    descriptor: (B)Z
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // byte octect
         0: .line 139
            iload 0 /* octect */
            bipush 61
            if_icmpne 2
         1: .line 140
            iconst_1
            ireturn
         2: .line 141
      StackMap locals:
      StackMap stack:
            getstatic org.jasypt.contrib.org.apache.commons.codec_1_3.binary.Base64.base64Alphabet:[B
            iload 0 /* octect */
            baload
            iconst_m1
            if_icmpne 4
         3: .line 142
            iconst_0
            ireturn
         4: .line 144
      StackMap locals:
      StackMap stack:
            iconst_1
            ireturn
        end local 0 // byte octect
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    5     0  octect  B
    MethodParameters:
        Name  Flags
      octect  

  public static boolean isArrayByteBase64(byte[]);
    descriptor: ([B)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=3, args_size=1
        start local 0 // byte[] arrayOctect
         0: .line 158
            aload 0 /* arrayOctect */
            invokestatic org.jasypt.contrib.org.apache.commons.codec_1_3.binary.Base64.discardWhitespace:([B)[B
            astore 0 /* arrayOctect */
         1: .line 160
            aload 0 /* arrayOctect */
            arraylength
            istore 1 /* length */
        start local 1 // int length
         2: .line 161
            iload 1 /* length */
            ifne 4
         3: .line 164
            iconst_1
            ireturn
         4: .line 166
      StackMap locals: int
      StackMap stack:
            iconst_0
            istore 2 /* i */
        start local 2 // int i
         5: goto 9
         6: .line 167
      StackMap locals: int
      StackMap stack:
            aload 0 /* arrayOctect */
            iload 2 /* i */
            baload
            invokestatic org.jasypt.contrib.org.apache.commons.codec_1_3.binary.Base64.isBase64:(B)Z
            ifne 8
         7: .line 168
            iconst_0
            ireturn
         8: .line 166
      StackMap locals:
      StackMap stack:
            iinc 2 /* i */ 1
      StackMap locals:
      StackMap stack:
         9: iload 2 /* i */
            iload 1 /* length */
            if_icmplt 6
        end local 2 // int i
        10: .line 171
            iconst_1
            ireturn
        end local 1 // int length
        end local 0 // byte[] arrayOctect
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   11     0  arrayOctect  [B
            2   11     1       length  I
            5   10     2            i  I
    MethodParameters:
             Name  Flags
      arrayOctect  

  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 182
            aload 0 /* binaryData */
            iconst_0
            invokestatic org.jasypt.contrib.org.apache.commons.codec_1_3.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  

  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 193
            aload 0 /* binaryData */
            iconst_1
            invokestatic org.jasypt.contrib.org.apache.commons.codec_1_3.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  

  public java.lang.Object decode(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.jasypt.contrib.org.apache.commons.codec_1_3.binary.Base64 this
        start local 1 // java.lang.Object pObject
         0: .line 210
            aload 1 /* pObject */
            instanceof byte[]
            ifne 2
         1: .line 211
            new org.jasypt.contrib.org.apache.commons.codec_1_3.DecoderException
            dup
            ldc "Parameter supplied to Base64 decode is not a byte[]"
            invokespecial org.jasypt.contrib.org.apache.commons.codec_1_3.DecoderException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 213
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* pObject */
            checkcast byte[]
            invokevirtual org.jasypt.contrib.org.apache.commons.codec_1_3.binary.Base64.decode:([B)[B
            areturn
        end local 1 // java.lang.Object pObject
        end local 0 // org.jasypt.contrib.org.apache.commons.codec_1_3.binary.Base64 this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0     this  Lorg/jasypt/contrib/org/apache/commons/codec_1_3/binary/Base64;
            0    3     1  pObject  Ljava/lang/Object;
    Exceptions:
      throws org.jasypt.contrib.org.apache.commons.codec_1_3.DecoderException
    MethodParameters:
         Name  Flags
      pObject  

  public byte[] decode(byte[]);
    descriptor: ([B)[B
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // org.jasypt.contrib.org.apache.commons.codec_1_3.binary.Base64 this
        start local 1 // byte[] pArray
         0: .line 224
            aload 1 /* pArray */
            invokestatic org.jasypt.contrib.org.apache.commons.codec_1_3.binary.Base64.decodeBase64:([B)[B
            areturn
        end local 1 // byte[] pArray
        end local 0 // org.jasypt.contrib.org.apache.commons.codec_1_3.binary.Base64 this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0    this  Lorg/jasypt/contrib/org/apache/commons/codec_1_3/binary/Base64;
            0    1     1  pArray  [B
    MethodParameters:
        Name  Flags
      pArray  

  public static byte[] encodeBase64(byte[], boolean);
    descriptor: ([BZ)[B
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=6, locals=21, args_size=2
        start local 0 // byte[] binaryData
        start local 1 // boolean isChunked
         0: .line 237
            aload 0 /* binaryData */
            arraylength
            bipush 8
            imul
            istore 2 /* lengthDataBits */
        start local 2 // int lengthDataBits
         1: .line 238
            iload 2 /* lengthDataBits */
            bipush 24
            irem
            istore 3 /* fewerThan24bits */
        start local 3 // int fewerThan24bits
         2: .line 239
            iload 2 /* lengthDataBits */
            bipush 24
            idiv
            istore 4 /* numberTriplets */
        start local 4 // int numberTriplets
         3: .line 240
            aconst_null
            astore 5 /* encodedData */
        start local 5 // byte[] encodedData
         4: .line 241
            iconst_0
            istore 6 /* encodedDataLength */
        start local 6 // int encodedDataLength
         5: .line 242
            iconst_0
            istore 7 /* nbrChunks */
        start local 7 // int nbrChunks
         6: .line 244
            iload 3 /* fewerThan24bits */
            ifeq 9
         7: .line 246
            iload 4 /* numberTriplets */
            iconst_1
            iadd
            iconst_4
            imul
            istore 6 /* encodedDataLength */
         8: .line 247
            goto 10
         9: .line 249
      StackMap locals: byte[] int int int int byte[] int int
      StackMap stack:
            iload 4 /* numberTriplets */
            iconst_4
            imul
            istore 6 /* encodedDataLength */
        10: .line 255
      StackMap locals:
      StackMap stack:
            iload 1 /* isChunked */
            ifeq 15
        11: .line 258
            getstatic org.jasypt.contrib.org.apache.commons.codec_1_3.binary.Base64.CHUNK_SEPARATOR:[B
            arraylength
            ifne 12
            iconst_0
            goto 13
      StackMap locals:
      StackMap stack:
        12: iload 6 /* encodedDataLength */
            i2f
            ldc 76.0
            fdiv
            f2d
            invokestatic java.lang.Math.ceil:(D)D
            d2i
        13: .line 257
      StackMap locals:
      StackMap stack: int
            istore 7 /* nbrChunks */
        14: .line 259
            iload 6 /* encodedDataLength */
            iload 7 /* nbrChunks */
            getstatic org.jasypt.contrib.org.apache.commons.codec_1_3.binary.Base64.CHUNK_SEPARATOR:[B
            arraylength
            imul
            iadd
            istore 6 /* encodedDataLength */
        15: .line 262
      StackMap locals:
      StackMap stack:
            iload 6 /* encodedDataLength */
            newarray 8
            astore 5 /* encodedData */
        16: .line 264
            iconst_0
            istore 8 /* k */
        start local 8 // byte k
        17: iconst_0
            istore 9 /* l */
        start local 9 // byte l
        18: iconst_0
            istore 10 /* b1 */
        start local 10 // byte b1
        19: iconst_0
            istore 11 /* b2 */
        start local 11 // byte b2
        20: iconst_0
            istore 12 /* b3 */
        start local 12 // byte b3
        21: .line 266
            iconst_0
            istore 13 /* encodedIndex */
        start local 13 // int encodedIndex
        22: .line 267
            iconst_0
            istore 14 /* dataIndex */
        start local 14 // int dataIndex
        23: .line 268
            iconst_0
            istore 15 /* i */
        start local 15 // int i
        24: .line 269
            bipush 76
            istore 16 /* nextSeparatorIndex */
        start local 16 // int nextSeparatorIndex
        25: .line 270
            iconst_0
            istore 17 /* chunksSoFar */
        start local 17 // int chunksSoFar
        26: .line 273
            iconst_0
            istore 15 /* i */
            goto 66
        27: .line 274
      StackMap locals: byte[] int int int int byte[] int int int int int int int int int int int int
      StackMap stack:
            iload 15 /* i */
            iconst_3
            imul
            istore 14 /* dataIndex */
        28: .line 275
            aload 0 /* binaryData */
            iload 14 /* dataIndex */
            baload
            istore 10 /* b1 */
        29: .line 276
            aload 0 /* binaryData */
            iload 14 /* dataIndex */
            iconst_1
            iadd
            baload
            istore 11 /* b2 */
        30: .line 277
            aload 0 /* binaryData */
            iload 14 /* dataIndex */
            iconst_2
            iadd
            baload
            istore 12 /* b3 */
        31: .line 281
            iload 11 /* b2 */
            bipush 15
            iand
            i2b
            istore 9 /* l */
        32: .line 282
            iload 10 /* b1 */
            iconst_3
            iand
            i2b
            istore 8 /* k */
        33: .line 285
            iload 10 /* b1 */
            bipush -128
            iand
            ifne 34
            iload 10 /* b1 */
            iconst_2
            ishr
            i2b
            goto 35
      StackMap locals:
      StackMap stack:
        34: iload 10 /* b1 */
            iconst_2
            ishr
            sipush 192
            ixor
            i2b
        35: .line 284
      StackMap locals:
      StackMap stack: int
            istore 18 /* val1 */
        start local 18 // byte val1
        36: .line 287
            iload 11 /* b2 */
            bipush -128
            iand
            ifne 37
            iload 11 /* b2 */
            iconst_4
            ishr
            i2b
            goto 38
      StackMap locals: int
      StackMap stack:
        37: iload 11 /* b2 */
            iconst_4
            ishr
            sipush 240
            ixor
            i2b
        38: .line 286
      StackMap locals:
      StackMap stack: int
            istore 19 /* val2 */
        start local 19 // byte val2
        39: .line 289
            iload 12 /* b3 */
            bipush -128
            iand
            ifne 40
            iload 12 /* b3 */
            bipush 6
            ishr
            i2b
            goto 41
      StackMap locals: int
      StackMap stack:
        40: iload 12 /* b3 */
            bipush 6
            ishr
            sipush 252
            ixor
            i2b
        41: .line 288
      StackMap locals:
      StackMap stack: int
            istore 20 /* val3 */
        start local 20 // byte val3
        42: .line 291
            aload 5 /* encodedData */
            iload 13 /* encodedIndex */
            getstatic org.jasypt.contrib.org.apache.commons.codec_1_3.binary.Base64.lookUpBase64Alphabet:[B
            iload 18 /* val1 */
            baload
            bastore
        43: .line 295
            aload 5 /* encodedData */
            iload 13 /* encodedIndex */
            iconst_1
            iadd
        44: .line 296
            getstatic org.jasypt.contrib.org.apache.commons.codec_1_3.binary.Base64.lookUpBase64Alphabet:[B
            iload 19 /* val2 */
            iload 8 /* k */
            iconst_4
            ishl
            ior
            baload
        45: .line 295
            bastore
        46: .line 297
            aload 5 /* encodedData */
            iload 13 /* encodedIndex */
            iconst_2
            iadd
        47: .line 298
            getstatic org.jasypt.contrib.org.apache.commons.codec_1_3.binary.Base64.lookUpBase64Alphabet:[B
            iload 9 /* l */
            iconst_2
            ishl
            iload 20 /* val3 */
            ior
            baload
        48: .line 297
            bastore
        49: .line 299
            aload 5 /* encodedData */
            iload 13 /* encodedIndex */
            iconst_3
            iadd
            getstatic org.jasypt.contrib.org.apache.commons.codec_1_3.binary.Base64.lookUpBase64Alphabet:[B
            iload 12 /* b3 */
            bipush 63
            iand
            baload
            bastore
        50: .line 301
            iinc 13 /* encodedIndex */ 4
        51: .line 304
            iload 1 /* isChunked */
            ifeq 65
        52: .line 306
            iload 13 /* encodedIndex */
            iload 16 /* nextSeparatorIndex */
            if_icmpne 65
        53: .line 308
            getstatic org.jasypt.contrib.org.apache.commons.codec_1_3.binary.Base64.CHUNK_SEPARATOR:[B
        54: .line 309
            iconst_0
        55: .line 310
            aload 5 /* encodedData */
        56: .line 311
            iload 13 /* encodedIndex */
        57: .line 312
            getstatic org.jasypt.contrib.org.apache.commons.codec_1_3.binary.Base64.CHUNK_SEPARATOR:[B
            arraylength
        58: .line 307
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
        59: .line 313
            iinc 17 /* chunksSoFar */ 1
        60: .line 315
            bipush 76
            iload 17 /* chunksSoFar */
            iconst_1
            iadd
            imul
        61: .line 316
            iload 17 /* chunksSoFar */
            getstatic org.jasypt.contrib.org.apache.commons.codec_1_3.binary.Base64.CHUNK_SEPARATOR:[B
            arraylength
            imul
        62: .line 315
            iadd
        63: .line 314
            istore 16 /* nextSeparatorIndex */
        64: .line 317
            iload 13 /* encodedIndex */
            getstatic org.jasypt.contrib.org.apache.commons.codec_1_3.binary.Base64.CHUNK_SEPARATOR:[B
            arraylength
            iadd
            istore 13 /* encodedIndex */
        end local 20 // byte val3
        end local 19 // byte val2
        end local 18 // byte val1
        65: .line 273
      StackMap locals:
      StackMap stack:
            iinc 15 /* i */ 1
      StackMap locals:
      StackMap stack:
        66: iload 15 /* i */
            iload 4 /* numberTriplets */
            if_icmplt 27
        67: .line 323
            iload 15 /* i */
            iconst_3
            imul
            istore 14 /* dataIndex */
        68: .line 325
            iload 3 /* fewerThan24bits */
            bipush 8
            if_icmpne 79
        69: .line 326
            aload 0 /* binaryData */
            iload 14 /* dataIndex */
            baload
            istore 10 /* b1 */
        70: .line 327
            iload 10 /* b1 */
            iconst_3
            iand
            i2b
            istore 8 /* k */
        71: .line 331
            iload 10 /* b1 */
            bipush -128
            iand
            ifne 72
            iload 10 /* b1 */
            iconst_2
            ishr
            i2b
            goto 73
      StackMap locals:
      StackMap stack:
        72: iload 10 /* b1 */
            iconst_2
            ishr
            sipush 192
            ixor
            i2b
        73: .line 330
      StackMap locals:
      StackMap stack: int
            istore 18 /* val1 */
        start local 18 // byte val1
        74: .line 332
            aload 5 /* encodedData */
            iload 13 /* encodedIndex */
            getstatic org.jasypt.contrib.org.apache.commons.codec_1_3.binary.Base64.lookUpBase64Alphabet:[B
            iload 18 /* val1 */
            baload
            bastore
        75: .line 333
            aload 5 /* encodedData */
            iload 13 /* encodedIndex */
            iconst_1
            iadd
            getstatic org.jasypt.contrib.org.apache.commons.codec_1_3.binary.Base64.lookUpBase64Alphabet:[B
            iload 8 /* k */
            iconst_4
            ishl
            baload
            bastore
        76: .line 334
            aload 5 /* encodedData */
            iload 13 /* encodedIndex */
            iconst_2
            iadd
            bipush 61
            bastore
        77: .line 335
            aload 5 /* encodedData */
            iload 13 /* encodedIndex */
            iconst_3
            iadd
            bipush 61
            bastore
        end local 18 // byte val1
        78: .line 336
            goto 96
      StackMap locals:
      StackMap stack:
        79: iload 3 /* fewerThan24bits */
            bipush 16
            if_icmpne 96
        80: .line 338
            aload 0 /* binaryData */
            iload 14 /* dataIndex */
            baload
            istore 10 /* b1 */
        81: .line 339
            aload 0 /* binaryData */
            iload 14 /* dataIndex */
            iconst_1
            iadd
            baload
            istore 11 /* b2 */
        82: .line 340
            iload 11 /* b2 */
            bipush 15
            iand
            i2b
            istore 9 /* l */
        83: .line 341
            iload 10 /* b1 */
            iconst_3
            iand
            i2b
            istore 8 /* k */
        84: .line 344
            iload 10 /* b1 */
            bipush -128
            iand
            ifne 85
            iload 10 /* b1 */
            iconst_2
            ishr
            i2b
            goto 86
      StackMap locals:
      StackMap stack:
        85: iload 10 /* b1 */
            iconst_2
            ishr
            sipush 192
            ixor
            i2b
        86: .line 343
      StackMap locals:
      StackMap stack: int
            istore 18 /* val1 */
        start local 18 // byte val1
        87: .line 346
            iload 11 /* b2 */
            bipush -128
            iand
            ifne 88
            iload 11 /* b2 */
            iconst_4
            ishr
            i2b
            goto 89
      StackMap locals: int
      StackMap stack:
        88: iload 11 /* b2 */
            iconst_4
            ishr
            sipush 240
            ixor
            i2b
        89: .line 345
      StackMap locals:
      StackMap stack: int
            istore 19 /* val2 */
        start local 19 // byte val2
        90: .line 348
            aload 5 /* encodedData */
            iload 13 /* encodedIndex */
            getstatic org.jasypt.contrib.org.apache.commons.codec_1_3.binary.Base64.lookUpBase64Alphabet:[B
            iload 18 /* val1 */
            baload
            bastore
        91: .line 349
            aload 5 /* encodedData */
            iload 13 /* encodedIndex */
            iconst_1
            iadd
        92: .line 350
            getstatic org.jasypt.contrib.org.apache.commons.codec_1_3.binary.Base64.lookUpBase64Alphabet:[B
            iload 19 /* val2 */
            iload 8 /* k */
            iconst_4
            ishl
            ior
            baload
        93: .line 349
            bastore
        94: .line 351
            aload 5 /* encodedData */
            iload 13 /* encodedIndex */
            iconst_2
            iadd
            getstatic org.jasypt.contrib.org.apache.commons.codec_1_3.binary.Base64.lookUpBase64Alphabet:[B
            iload 9 /* l */
            iconst_2
            ishl
            baload
            bastore
        95: .line 352
            aload 5 /* encodedData */
            iload 13 /* encodedIndex */
            iconst_3
            iadd
            bipush 61
            bastore
        end local 19 // byte val2
        end local 18 // byte val1
        96: .line 355
      StackMap locals:
      StackMap stack:
            iload 1 /* isChunked */
            ifeq 104
        97: .line 357
            iload 17 /* chunksSoFar */
            iload 7 /* nbrChunks */
            if_icmpge 104
        98: .line 359
            getstatic org.jasypt.contrib.org.apache.commons.codec_1_3.binary.Base64.CHUNK_SEPARATOR:[B
        99: .line 360
            iconst_0
       100: .line 361
            aload 5 /* encodedData */
       101: .line 362
            iload 6 /* encodedDataLength */
            getstatic org.jasypt.contrib.org.apache.commons.codec_1_3.binary.Base64.CHUNK_SEPARATOR:[B
            arraylength
            isub
       102: .line 363
            getstatic org.jasypt.contrib.org.apache.commons.codec_1_3.binary.Base64.CHUNK_SEPARATOR:[B
            arraylength
       103: .line 358
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
       104: .line 367
      StackMap locals:
      StackMap stack:
            aload 5 /* encodedData */
            areturn
        end local 17 // int chunksSoFar
        end local 16 // int nextSeparatorIndex
        end local 15 // int i
        end local 14 // int dataIndex
        end local 13 // int encodedIndex
        end local 12 // byte b3
        end local 11 // byte b2
        end local 10 // byte b1
        end local 9 // byte l
        end local 8 // byte k
        end local 7 // int nbrChunks
        end local 6 // int encodedDataLength
        end local 5 // byte[] encodedData
        end local 4 // int numberTriplets
        end local 3 // int fewerThan24bits
        end local 2 // int lengthDataBits
        end local 1 // boolean isChunked
        end local 0 // byte[] binaryData
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0  105     0          binaryData  [B
            0  105     1           isChunked  Z
            1  105     2      lengthDataBits  I
            2  105     3     fewerThan24bits  I
            3  105     4      numberTriplets  I
            4  105     5         encodedData  [B
            5  105     6   encodedDataLength  I
            6  105     7           nbrChunks  I
           17  105     8                   k  B
           18  105     9                   l  B
           19  105    10                  b1  B
           20  105    11                  b2  B
           21  105    12                  b3  B
           22  105    13        encodedIndex  I
           23  105    14           dataIndex  I
           24  105    15                   i  I
           25  105    16  nextSeparatorIndex  I
           26  105    17         chunksSoFar  I
           36   65    18                val1  B
           39   65    19                val2  B
           42   65    20                val3  B
           74   78    18                val1  B
           87   96    18                val1  B
           90   96    19                val2  B
    MethodParameters:
            Name  Flags
      binaryData  
      isChunked   

  public static byte[] decodeBase64(byte[]);
    descriptor: ([B)[B
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=12, args_size=1
        start local 0 // byte[] base64Data
         0: .line 378
            aload 0 /* base64Data */
            invokestatic org.jasypt.contrib.org.apache.commons.codec_1_3.binary.Base64.discardNonBase64:([B)[B
            astore 0 /* base64Data */
         1: .line 381
            aload 0 /* base64Data */
            arraylength
            ifne 3
         2: .line 382
            iconst_0
            newarray 8
            areturn
         3: .line 385
      StackMap locals:
      StackMap stack:
            aload 0 /* base64Data */
            arraylength
            iconst_4
            idiv
            istore 1 /* numberQuadruple */
        start local 1 // int numberQuadruple
         4: .line 386
            aconst_null
            astore 2 /* decodedData */
        start local 2 // byte[] decodedData
         5: .line 387
            iconst_0
            istore 3 /* b1 */
        start local 3 // byte b1
         6: iconst_0
            istore 4 /* b2 */
        start local 4 // byte b2
         7: iconst_0
            istore 5 /* b3 */
        start local 5 // byte b3
         8: iconst_0
            istore 6 /* b4 */
        start local 6 // byte b4
         9: iconst_0
            istore 7 /* marker0 */
        start local 7 // byte marker0
        10: iconst_0
            istore 8 /* marker1 */
        start local 8 // byte marker1
        11: .line 391
            iconst_0
            istore 9 /* encodedIndex */
        start local 9 // int encodedIndex
        12: .line 392
            iconst_0
            istore 10 /* dataIndex */
        start local 10 // int dataIndex
        13: .line 395
            aload 0 /* base64Data */
            arraylength
            istore 11 /* lastData */
        start local 11 // int lastData
        14: .line 397
            goto 17
        15: .line 398
      StackMap locals: byte[] int byte[] int int int int int int int int int
      StackMap stack:
            iinc 11 /* lastData */ -1
            iload 11 /* lastData */
            ifne 17
        16: .line 399
            iconst_0
            newarray 8
            areturn
        17: .line 397
      StackMap locals:
      StackMap stack:
            aload 0 /* base64Data */
            iload 11 /* lastData */
            iconst_1
            isub
            baload
            bipush 61
            if_icmpeq 15
        18: .line 402
            iload 11 /* lastData */
            iload 1 /* numberQuadruple */
            isub
            newarray 8
            astore 2 /* decodedData */
        end local 11 // int lastData
        19: .line 405
            iconst_0
            istore 11 /* i */
        start local 11 // int i
        20: goto 46
        21: .line 406
      StackMap locals:
      StackMap stack:
            iload 11 /* i */
            iconst_4
            imul
            istore 10 /* dataIndex */
        22: .line 407
            aload 0 /* base64Data */
            iload 10 /* dataIndex */
            iconst_2
            iadd
            baload
            istore 7 /* marker0 */
        23: .line 408
            aload 0 /* base64Data */
            iload 10 /* dataIndex */
            iconst_3
            iadd
            baload
            istore 8 /* marker1 */
        24: .line 410
            getstatic org.jasypt.contrib.org.apache.commons.codec_1_3.binary.Base64.base64Alphabet:[B
            aload 0 /* base64Data */
            iload 10 /* dataIndex */
            baload
            baload
            istore 3 /* b1 */
        25: .line 411
            getstatic org.jasypt.contrib.org.apache.commons.codec_1_3.binary.Base64.base64Alphabet:[B
            aload 0 /* base64Data */
            iload 10 /* dataIndex */
            iconst_1
            iadd
            baload
            baload
            istore 4 /* b2 */
        26: .line 413
            iload 7 /* marker0 */
            bipush 61
            if_icmpeq 35
            iload 8 /* marker1 */
            bipush 61
            if_icmpeq 35
        27: .line 415
            getstatic org.jasypt.contrib.org.apache.commons.codec_1_3.binary.Base64.base64Alphabet:[B
            iload 7 /* marker0 */
            baload
            istore 5 /* b3 */
        28: .line 416
            getstatic org.jasypt.contrib.org.apache.commons.codec_1_3.binary.Base64.base64Alphabet:[B
            iload 8 /* marker1 */
            baload
            istore 6 /* b4 */
        29: .line 418
            aload 2 /* decodedData */
            iload 9 /* encodedIndex */
            iload 3 /* b1 */
            iconst_2
            ishl
            iload 4 /* b2 */
            iconst_4
            ishr
            ior
            i2b
            bastore
        30: .line 419
            aload 2 /* decodedData */
            iload 9 /* encodedIndex */
            iconst_1
            iadd
        31: .line 420
            iload 4 /* b2 */
            bipush 15
            iand
            iconst_4
            ishl
            iload 5 /* b3 */
            iconst_2
            ishr
            bipush 15
            iand
            ior
            i2b
        32: .line 419
            bastore
        33: .line 421
            aload 2 /* decodedData */
            iload 9 /* encodedIndex */
            iconst_2
            iadd
            iload 5 /* b3 */
            bipush 6
            ishl
            iload 6 /* b4 */
            ior
            i2b
            bastore
        34: .line 422
            goto 44
      StackMap locals:
      StackMap stack:
        35: iload 7 /* marker0 */
            bipush 61
            if_icmpne 38
        36: .line 424
            aload 2 /* decodedData */
            iload 9 /* encodedIndex */
            iload 3 /* b1 */
            iconst_2
            ishl
            iload 4 /* b2 */
            iconst_4
            ishr
            ior
            i2b
            bastore
        37: .line 425
            goto 44
      StackMap locals:
      StackMap stack:
        38: iload 8 /* marker1 */
            bipush 61
            if_icmpne 44
        39: .line 427
            getstatic org.jasypt.contrib.org.apache.commons.codec_1_3.binary.Base64.base64Alphabet:[B
            iload 7 /* marker0 */
            baload
            istore 5 /* b3 */
        40: .line 429
            aload 2 /* decodedData */
            iload 9 /* encodedIndex */
            iload 3 /* b1 */
            iconst_2
            ishl
            iload 4 /* b2 */
            iconst_4
            ishr
            ior
            i2b
            bastore
        41: .line 430
            aload 2 /* decodedData */
            iload 9 /* encodedIndex */
            iconst_1
            iadd
        42: .line 431
            iload 4 /* b2 */
            bipush 15
            iand
            iconst_4
            ishl
            iload 5 /* b3 */
            iconst_2
            ishr
            bipush 15
            iand
            ior
            i2b
        43: .line 430
            bastore
        44: .line 433
      StackMap locals:
      StackMap stack:
            iinc 9 /* encodedIndex */ 3
        45: .line 405
            iinc 11 /* i */ 1
      StackMap locals:
      StackMap stack:
        46: iload 11 /* i */
            iload 1 /* numberQuadruple */
            if_icmplt 21
        end local 11 // int i
        47: .line 435
            aload 2 /* decodedData */
            areturn
        end local 10 // int dataIndex
        end local 9 // int encodedIndex
        end local 8 // byte marker1
        end local 7 // byte marker0
        end local 6 // byte b4
        end local 5 // byte b3
        end local 4 // byte b2
        end local 3 // byte b1
        end local 2 // byte[] decodedData
        end local 1 // int numberQuadruple
        end local 0 // byte[] base64Data
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   48     0       base64Data  [B
            4   48     1  numberQuadruple  I
            5   48     2      decodedData  [B
            6   48     3               b1  B
            7   48     4               b2  B
            8   48     5               b3  B
            9   48     6               b4  B
           10   48     7          marker0  B
           11   48     8          marker1  B
           12   48     9     encodedIndex  I
           13   48    10        dataIndex  I
           14   19    11         lastData  I
           20   47    11                i  I
    MethodParameters:
            Name  Flags
      base64Data  

  static byte[] discardWhitespace(byte[]);
    descriptor: ([B)[B
    flags: (0x0008) ACC_STATIC
    Code:
      stack=5, locals=4, args_size=1
        start local 0 // byte[] data
         0: .line 446
            aload 0 /* data */
            arraylength
            newarray 8
            astore 1 /* groomedData */
        start local 1 // byte[] groomedData
         1: .line 447
            iconst_0
            istore 2 /* bytesCopied */
        start local 2 // int bytesCopied
         2: .line 449
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         3: goto 8
         4: .line 450
      StackMap locals: byte[] int int
      StackMap stack:
            aload 0 /* data */
            iload 3 /* i */
            baload
            lookupswitch { // 4
                    9: 5
                   10: 5
                   13: 5
                   32: 5
              default: 6
          }
         5: .line 455
      StackMap locals:
      StackMap stack:
            goto 7
         6: .line 457
      StackMap locals:
      StackMap stack:
            aload 1 /* groomedData */
            iload 2 /* bytesCopied */
            iinc 2 /* bytesCopied */ 1
            aload 0 /* data */
            iload 3 /* i */
            baload
            bastore
         7: .line 449
      StackMap locals:
      StackMap stack:
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
         8: iload 3 /* i */
            aload 0 /* data */
            arraylength
            if_icmplt 4
        end local 3 // int i
         9: .line 461
            iload 2 /* bytesCopied */
            newarray 8
            astore 3 /* packedData */
        start local 3 // byte[] packedData
        10: .line 463
            aload 1 /* groomedData */
            iconst_0
            aload 3 /* packedData */
            iconst_0
            iload 2 /* bytesCopied */
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
        11: .line 465
            aload 3 /* packedData */
            areturn
        end local 3 // byte[] packedData
        end local 2 // int bytesCopied
        end local 1 // byte[] groomedData
        end local 0 // byte[] data
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   12     0         data  [B
            1   12     1  groomedData  [B
            2   12     2  bytesCopied  I
            3    9     3            i  I
           10   12     3   packedData  [B
    MethodParameters:
      Name  Flags
      data  

  static byte[] discardNonBase64(byte[]);
    descriptor: ([B)[B
    flags: (0x0008) ACC_STATIC
    Code:
      stack=5, locals=4, args_size=1
        start local 0 // byte[] data
         0: .line 478
            aload 0 /* data */
            arraylength
            newarray 8
            astore 1 /* groomedData */
        start local 1 // byte[] groomedData
         1: .line 479
            iconst_0
            istore 2 /* bytesCopied */
        start local 2 // int bytesCopied
         2: .line 481
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         3: goto 7
         4: .line 482
      StackMap locals: byte[] int int
      StackMap stack:
            aload 0 /* data */
            iload 3 /* i */
            baload
            invokestatic org.jasypt.contrib.org.apache.commons.codec_1_3.binary.Base64.isBase64:(B)Z
            ifeq 6
         5: .line 483
            aload 1 /* groomedData */
            iload 2 /* bytesCopied */
            iinc 2 /* bytesCopied */ 1
            aload 0 /* data */
            iload 3 /* i */
            baload
            bastore
         6: .line 481
      StackMap locals:
      StackMap stack:
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
         7: iload 3 /* i */
            aload 0 /* data */
            arraylength
            if_icmplt 4
        end local 3 // int i
         8: .line 487
            iload 2 /* bytesCopied */
            newarray 8
            astore 3 /* packedData */
        start local 3 // byte[] packedData
         9: .line 489
            aload 1 /* groomedData */
            iconst_0
            aload 3 /* packedData */
            iconst_0
            iload 2 /* bytesCopied */
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
        10: .line 491
            aload 3 /* packedData */
            areturn
        end local 3 // byte[] packedData
        end local 2 // int bytesCopied
        end local 1 // byte[] groomedData
        end local 0 // byte[] data
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   11     0         data  [B
            1   11     1  groomedData  [B
            2   11     2  bytesCopied  I
            3    8     3            i  I
            9   11     3   packedData  [B
    MethodParameters:
      Name  Flags
      data  

  public java.lang.Object encode(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.jasypt.contrib.org.apache.commons.codec_1_3.binary.Base64 this
        start local 1 // java.lang.Object pObject
         0: .line 510
            aload 1 /* pObject */
            instanceof byte[]
            ifne 4
         1: .line 511
            new org.jasypt.contrib.org.apache.commons.codec_1_3.EncoderException
            dup
         2: .line 512
            ldc "Parameter supplied to Base64 encode is not a byte[]"
         3: .line 511
            invokespecial org.jasypt.contrib.org.apache.commons.codec_1_3.EncoderException.<init>:(Ljava/lang/String;)V
            athrow
         4: .line 514
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* pObject */
            checkcast byte[]
            invokevirtual org.jasypt.contrib.org.apache.commons.codec_1_3.binary.Base64.encode:([B)[B
            areturn
        end local 1 // java.lang.Object pObject
        end local 0 // org.jasypt.contrib.org.apache.commons.codec_1_3.binary.Base64 this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    5     0     this  Lorg/jasypt/contrib/org/apache/commons/codec_1_3/binary/Base64;
            0    5     1  pObject  Ljava/lang/Object;
    Exceptions:
      throws org.jasypt.contrib.org.apache.commons.codec_1_3.EncoderException
    MethodParameters:
         Name  Flags
      pObject  

  public byte[] encode(byte[]);
    descriptor: ([B)[B
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.jasypt.contrib.org.apache.commons.codec_1_3.binary.Base64 this
        start local 1 // byte[] pArray
         0: .line 525
            aload 1 /* pArray */
            iconst_0
            invokestatic org.jasypt.contrib.org.apache.commons.codec_1_3.binary.Base64.encodeBase64:([BZ)[B
            areturn
        end local 1 // byte[] pArray
        end local 0 // org.jasypt.contrib.org.apache.commons.codec_1_3.binary.Base64 this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0    this  Lorg/jasypt/contrib/org/apache/commons/codec_1_3/binary/Base64;
            0    1     1  pArray  [B
    MethodParameters:
        Name  Flags
      pArray  
}
SourceFile: "Base64.java"