od -A n -v -t u1 | awk ' BEGIN { conv[0] = "/*%s*/ %s/4 /*%s*/" conv[1] = "16*(%s%%4) + %s/16 /*%s*/" conv[2] = "4*(%s%%16) + %s/64\n%s%%64" tail[0] = "16*(%s%%4)\n64\n64" tail[1] = "4*(%s%%16)\n64" tail[2] = "/*%s*/" state = 2 } { for (i = 1; i <= NF; i++) { printf conv[state = (state+1)%3] "\n", prev, $i, $i prev = $i } } END { printf tail[state] "\n", prev }' | bc | awk ' BEGIN { enc[0] = "A"; enc[22] = "W"; enc[44] = "s" enc[1] = "B"; enc[23] = "X"; enc[45] = "t" enc[2] = "C"; enc[24] = "Y"; enc[46] = "u" enc[3] = "D"; enc[25] = "Z"; enc[47] = "v" enc[4] = "E"; enc[26] = "a"; enc[48] = "w" enc[5] = "F"; enc[27] = "b"; enc[49] = "x" enc[6] = "G"; enc[28] = "c"; enc[50] = "y" enc[7] = "H"; enc[29] = "d"; enc[51] = "z" enc[8] = "I"; enc[30] = "e"; enc[52] = "0" enc[9] = "J"; enc[31] = "f"; enc[53] = "1" enc[10] = "K"; enc[32] = "g"; enc[54] = "2" enc[11] = "L"; enc[33] = "h"; enc[55] = "3" enc[12] = "M"; enc[34] = "i"; enc[56] = "4" enc[13] = "N"; enc[35] = "j"; enc[57] = "5" enc[14] = "O"; enc[36] = "k"; enc[58] = "6" enc[15] = "P"; enc[37] = "l"; enc[59] = "7" enc[16] = "Q"; enc[38] = "m"; enc[60] = "8" enc[17] = "R"; enc[39] = "n"; enc[61] = "9" enc[18] = "S"; enc[40] = "o"; enc[62] = "+" enc[19] = "T"; enc[41] = "p"; enc[63] = "/" enc[20] = "U"; enc[42] = "q"; enc[64] = "=" enc[21] = "V"; enc[43] = "r" } { printf "%s", enc[$0] } END { printf "\n" }' | fold -w 76