+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "maryam jodie has gone i arrived in selcuk as planned but she didnt make the rendezvous the local\n",
+ "station think she may have been kidnapped but there has been no ransom demand and there is nothing\n",
+ "much to go on her room had been ransacked and she left no message but something tells me she is ok\n",
+ "and we should move on i think she may have planned this meanwhile i have the document jodie wanted\n",
+ "from london i dont know how she knew but the fifth chapter was hidden in a cavity in a stone lintel\n",
+ "in some remains in the ephesus room at the british museum it was encrypted using another poly\n",
+ "alphabetic cipher invented in the nineteenth century i asked the museum to test it and the document\n",
+ "is authentic so i guess the imperial cipher school really had moved on perhaps i shouldnt have been\n",
+ "surprised after the discovery at bodrum but it leaves me wondering what else they developed one odd\n",
+ "feature was a frieze running round three sides of the lintel consisting of a single row of\n",
+ "blackandwhite tiles that the museum think were added in the roman period they read in sequence\n",
+ "wwbbwwwbwwwbwwwbwwwb wwwb wwwb wwwb wwwb wwwb wwwb wwwb wwwb wwwb wwwb wwwb wwwb wwwb wwwb www bbw\n",
+ "wwbw wbwbwbwbwbwbwbwbwbw bwbwbwbwbwbwbwbwbwbw bwbwbwbwbwbwbwbwbwbw bwbwbwbwbwbwbwbwbwwb www\n",
+ "bwbbbwbbbwbbbwbbbwb bbwbbbwbbbwbbbwbbbwb bbwbbbwbbbwbbbwbbbwb bbwbbbwbbbwbbbwbbbwb wwwb wwwb wwwb\n",
+ "wwwb wwwb wwwb wwwb wwwb wwwb wwwb wwwb wwwb wwwb wwwb wwwb wwwb wwwb wwwb wwwb wwwb wwwb wwwb www\n",
+ "www www www www www www www www www www www www www www www www www www www www www www www www wwbw\n",
+ "wwbw www www www www www www www www www www www www www www www www www www www www www www www www\n",
+ "www wwwb wwwb www wb wwwb bbw wwww bbb wwwb wwwb wwwb www bw www bbb wwbw wwbw bbb www bbbb\n",
+ "wwbbbwwwbbbwwbbbwb www bwwwwbwbwwbwwbwwwbww www bwbwwbbwwbwwbwbwwwwb www bbw bbw\n",
+ "bwwbwwbwwwwwbwwbwwwb www wb www bwwwbwwbwwwbwbwwwbwb www wwbwwwbwbwbwbwbwwwb www bwwwbwbwbwbwwbwwbww\n",
+ "www bwwwbwwbwwwwbwwbwwwb www bbb bbw bbbb wwbw wwww bbb bbw bwbwbwbbbbbwwwbwwwbw wwbw bbbb ww bbb\n",
+ "www bbbb wwwb www wb www bwwwbwwbwwwbwbwbwwwb www wwbwwwbwbwbwbwbwwwb wwwb wwwb www bwb www wwbw\n",
+ "wwww bwbwwwwbwwwwbwwbwwwb www bwwwbwbwwbwwwbwwwwb www bwbwwbbwbwwwbwwwb wwwb www bwb www wwbw www wb\n",
+ "wwbw wwbw www bwwwbwwwbwwbwwwbwb wwwb www bbb wbwwwbwbwwwbwbwwwbww bbb wwbw wwbw bww www bbbb wwbw\n",
+ "wwbwbbbwwbbbwbwwwbww www www www www www www www www www www www www www www www www www www www www\n",
+ "www www www www www wwbw wwbw www www www www www www www www www www www www www www www www www\n",
+ "www www www www www www www www wbwwwbwbwwwbwwwbwwwb wwwb wwwb wwwb wwwb wwwb wwwb wwwb wwwb wwwb\n",
+ "wwwb wwwb wwwb wwwb wwwb wwwb www bwb www bwbwbwbwbwbwbwbwbwb wbwbwbwbwbwbwbwbwbwb\n",
+ "wbwbwbwbwbwbwbwbwbwb wbwbwbwbwbwbwbwbwbwb www bwwbbbwbbbwbbbwbbbwb bbw bbb wbbbwbbbwbbbwbbbwb bbw\n",
+ "bbb wbbbwbbbwbbbwbbbwb bbwbbbwbbbwwbwwwbwwb wwwb wwwb wwwb wwwb wwwb wwwb wwwb wwwb wwwb wwwb wwwb\n",
+ "wwwb wwwb wwwb www bwwwbwwwbwwwbwwbwwi have used b for the black tiles and w for the white ones it\n",
+ "took me a while to figure out that the frieze is steganography concealing the keyword for the cipher\n",
+ "in chapter five without jodie i am not sure where to go next there are only two possibilities as far\n",
+ "as i can see but i have no idea where one of them is and as far as i can tell no one else knows\n",
+ "either so i guess i will head for olympia see you there\n"
+ ]
+ }
+ ],
+ "source": [
+ "cipher_translation = ''.maketrans(cipher_alphabet, string.ascii_lowercase)\n",
+ "print(prettify(sanitise(ca).translate(cipher_translation)))"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 12,
+ "metadata": {},