+ "chunks(''.join([l if l in 'phase' else '.' for l in c8bl]), 56)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "metadata": {},
+ "output_type": "pyout",
+ "prompt_number": 19,
+ "text": [
+ "['a..ae....a..h....e..se..hsh..ah....p...e.a.pp.....e..e.e',\n",
+ " '......s...ee..s...e...e..aa.s...e.......e.h.ah.a.e.ee.s.',\n",
+ " 's.e.h..s...a...aes.........h.hh.s.a......ss...ea..ee...e',\n",
+ " '...a.es.....e...ss..p...a.sa.ae.ae........e...pssha.h...',\n",
+ " '.paa.e.e..esa......es.......p..e......a.a.ee............',\n",
+ " '.ps...e......a..eee..a...e.sa.h...s...e..s.........p.aee',\n",
+ " '.s...h.pse.ee..e..a..he..ea...h...ep...a..h.e....p..e...',\n",
+ " 'as..e..eee.aa..........a..es..se..se..h....psaaeh..hs..s',\n",
+ " '.a......s.e...sa..........ep..h.e.h...a.e.ee......eeeaes',\n",
+ " 'eee...s...e.....e.ha.a.se...........e.sa.e.es...s.he...s',\n",
+ " '..e.a..e.sah....e...a.a.a....a..ha.........e.........pa.',\n",
+ " '...e....e.hh....e..esse......ep...aes.a...ah.e.e...e..e.',\n",
+ " 'asa....h.e..e..sah.hh.a...e..h....haeeee.s.ee.a.e.se....',\n",
+ " '..e...h.......a....e...h..eh...a.....a.a.a..sese....s.a.',\n",
+ " '.a.........e...h.........as..eaee...s.......p.a...ea.e.e',\n",
+ " '.s.....s......sp..s..e.ph...h.a...s......a.s.p.....aa..a',\n",
+ " 'h.eh..e...e.ae...s..h..a......e....e.e....s.....a.......',\n",
+ " 'pp...ea.....aa.a.e.e....ee.a.......e................e...',\n",
+ " '...s..s.....p.p....ss...e.as...s..ea......h..h...p...ep.',\n",
+ " '..a.s..s..sa.es...ae......a..eea.s.......s..ha.e...s.h..',\n",
+ " '.e...e......ee..a...s..aae...........eh............a..aa',\n",
+ " '..ee.....h.s...ea...e.e.e....a....pe....aha...e......ee.',\n",
+ " '.pa.....a.es..ssp....ee...a.h....ss.s..p......p.aeea....',\n",
+ " 'aha.........a....e...a.e..........ee........e...aheea.e.',\n",
+ " 'aaep.....shee..pa.e..e......e..h.es......s.s........p..a']"
+ ]
+ }
+ ],
+ "prompt_number": 19
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "columns = [''.join(c) for c in zip(*rows)]\n",
+ "columns"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "metadata": {},
+ "output_type": "pyout",
+ "prompt_number": 20,
+ "text": [
+ "['aosriliaoeddaitihpkzxnraa',\n",
+ " 'ffixppssaeizstascplneopha',\n",
+ " 'cietascgoeeiaeoiedzaieaae',\n",
+ " 'aolaatidtinedrlihislneoup',\n",
+ " 'erhntooecdagnltittostlltr',\n",
+ " 'utleelhdtifdniczuegnedinr',\n",
+ " 'ososyeiobslnthiieasvgottc',\n",
+ " 'tdsrefpeboemhtzsintsoiocr',\n",
+ " 'tdtvntsesgiencmirdcddnano',\n",
+ " 'aodonreeocsremikriioihfts',\n",
+ " 'ceogedvoeeahiidvetfsiuech',\n",
+ " 'teaismeaiohhtoetdmzalssbe',\n",
+ " 'huleauearmoieinxaapnegoae',\n",
+ " 'rmoigadmnncoirtieaieeioxr',\n",
+ " 'iszzrrttsritiatscipsdtslr',\n",
+ " 'ocaxoiecatfrsrhptavitesop',\n",
+ " 'lresbexideeeaflroiitaapna',\n",
+ " 'eusstefcljvthdtbsedfrofel',\n",
+ " 'temdleatzhmcuonsnlvanrnfe',\n",
+ " 'crngeirttafehedireseoiltd',\n",
+ " 'snnpsinirgashtynhosnsenoi',\n",
+ " 'efdvrahfratsuntevnmlrceae',\n",
+ " 'reionoenubaeaitlnnntceetn',\n",
+ " 'ttgirlbansnimhtparcgavoeg',\n",
+ " 'hlnaonldrealotmhoeeoaeoci',\n",
+ " 'saniieercntdnnardeidemtvd',\n",
+ " 'harsrxaeeirreesmodaannaor',\n",
+ " 'tfhazsosptnbfhboiastdtcxr',\n",
+ " 'rsoopatrtliczilhkoittrhde',\n",
+ " 'athaboottxaehieiodiecallo',\n",
+ " 'hxheghhshtgplkaaebteutlxu',\n",
+ " 'kitoerterrnroaegtosatmivh',\n",
+ " 'zesadttrenhinmencinittrnv',\n",
+ " 'onnecltoubagxrtliunsffsne',\n",
+ " 'rtadlseshmtahdlsnmeidpses',\n",
+ " 'prorltpenineamileeacreyeu',\n",
+ " 'fviniontkemsensvnltrbusdr',\n",
+ " 'rolixbcrtlioeaiierioecoto',\n",
+ " 'gontaekhasbaedrtuotohufiz',\n",
+ " 'encrltaccandeatortotttpit',\n",
+ " 'oennanoierilonxdrnmmmadon',\n",
+ " 'arsylsncceutsataitrsfhfis',\n",
+ " 'dhseelhtetfanouisthmiatgo',\n",
+ " 'puiievxpeeehedrsdtbftmfts',\n",
+ " 'pacgnfeslsniespdcgnhotrei',\n",
+ " 'jhrriitarrrezefpoihaonngn',\n",
+ " 'nrepgvmaxntvasanutnurepmu',\n",
+ " 'gaasrdvengoeneizrniedxrti',\n",
+ " 'lvnsrozhistbeildardnroaau',\n",
+ " 'tenhnvplrntriztdglpiunehi',\n",
+ " 'ereaxtrdehrcsceclrrriieeo',\n",
+ " 'reedzprheeneelaavilsacaef',\n",
+ " 'neihroesebzntsoaiergodzap',\n",
+ " 'etidlaofaiploieomnehzeltr',\n",
+ " 'fsitienyeoaegaftmnpzaeoed',\n",
+ " 'eveomensssivzneauionamnfa']"
+ ]
+ }
+ ],
+ "prompt_number": 20
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "letter_positions = {letter: [(r, c) for r, row in enumerate(rows) for c, char in enumerate(row) if char == letter] for letter in 'phaseeight'}\n",
+ "letter_positions"