### Question:
Base64 { public static String decode(String strIn) throws PaddingException, UnsupportedEncodingException { byte[] bytesIn = strIn.getBytes("utf-8"); byte[] bytesOut = decode(bytesIn, bytesIn.length); return new String(bytesOut); }  static String decode(String strIn); static byte[] decode(byte[] unfilteredBytes, int unFilterLen); static byte[] filterPemBytes(byte[] bi, int blen); static String encode(String utf8Str); static byte[] encode(byte[] bi, int ilen); static String toHex(byte[] bytes); static byte[] toUTF8Bytes(String strIn); static String toUTF8String(byte[] bytes); static final int PAGESIZE; static final int MAX_FILTER_ENTRY_SIZE; static final int[] charToSix; static final int[] sixToChar; }### Answer:
@Test public void testDecodeAll8bitCharacters() throws UnsupportedEncodingException, PaddingException { String inStr = "AAECAwQFBgcICQoLDA0ODxAREhMUFRYXGBkaGxwdHh8gISIj" + "JCUmJygpKissLS4vMDEyMzQ1Njc4OTo7PD0+P0BBQkNERUZH" + "SElKS0xNTk9QUVJTVFVWV1hZWltcXV5fYGFiY2RlZmdoaWpr" + "bG1ub3BxcnN0dXZ3eHl6e3x9fn+AgYKDhIWGh4iJiouMjY6P" + "kJGSk5SVlpeYmZqbnJ2en6ChoqOkpaanqKmqq6ytrq+wsbKz" + "tLW2t7i5uru8vb6/wMHCw8TFxsfIycrLzM3Oz9DR0tPU1dbX" + "2Nna29zd3t/g4eLj5OXm5+jp6uvs7e7v8PHy8/T19vf4+fr7" + "/P3+/w=="; byte[] bytesOut; byte[] bytesIn; byte[] expectedBytes = new byte[256]; for (int i = 0; i < 256; i++) { expectedBytes[i] = (byte) i; } bytesIn = inStr.getBytes("us-ascii"); bytesOut = Base64.decode(bytesIn, bytesIn.length); assertArrayEquals(expectedBytes, bytesOut); }