Text Compression by twobit

a=[[\x1b5J\x9d9\x93\xe9\xe0S\xa32NB\x02^\x0f7\x943M\x03\x0b\x09
\xc72X0*I;\xbd\x02^\x19*\x81,MyqJ':B\x90^ \x1b\x19\x0f\x1c\x10\x12\x02\x1b\x15\x02"\x17\x12\x02 \x1b\x1f\x12\x02\x96)L5\x06C\xdb\x89TFg)AG\xb67H-*(;W8m;\xb1\xda\xa9:\x8dN\xb6.-J\x17:,:P\xdfE\xdc1:\x93t\x86\xe6i}F\x1a\xe6 4_*[\xb1e`\x19QS\xed.@P\x7fi*\xfa<lu-\xdd\x8b;vX\x9a\x17.s\x02\x1f;T*;Mk'=Z\xea.r(O3+9u(9>ZC;J47u+4L\x7f]\x92Pag+NJ(:.9\xa28\x82\xb2\xdbL;Z\xea.r8l*<]I\x81(Hmy\x98\xb4,A\x80W2:80*ILW7X\x8d8QM\x9bT(j+\xea.r\xde7E;vX\x9a/4\xde39S\xa3\x184[S\x19\xbbHM\x97hA\x8a\x96\x83\xbe\xd2MG(T\xa2\x8b\xc1S2G:j\x06W(l7\xd7I,9K7M=4(.-HK8d-:\xad^(:\x9448e>\xd6\x165D4\xf6\xf3*E7Q.(E<\x9f(l2N\x82-*<\x02\xe0>E7\xa28a\xf58lA\xedS\x904B\x8cT\xb9\x92H\x8bye8\xe2(O=\\xbf\x85PIR\xba0G+\xe7/\x9f<\x9fo\xce\M\xcct\x86\xcf\xb7\x93\x89_\x024\xbe\x0cD\x9f\xcbJ0ZM\xcct\x86\xcf\xf1J(X+G\xa0\x0cD\x9f\x96\x1f7'GM\x8at\x86\xcf\xf1J0Z\xe7/PMGC++e.\x8e\x9cD\A}(\x893a\x907:\xce.(Mi(TI\x9047u\xcf8\xb8\x9f<\x9f94))H\x7f2P\x9b(\xd5\x7f\x17:,:P\xdf\x7f<\xa9=\\x828\xe1\xfc3\x7f\xcct\x86\xcf\x02:7\x8e\xc1>)4+>\xe7x\xed.@P8C3f>E\x9c4\xff:7\xe22ET'\x9b\xdd\xf1D.\x85\M<\xa9=*E\x908\xe1\xfc3\x7fR;P\xb7\x93o)kE\x90\x17:,:P\xdf\x7f8l*\xf3\\xf1J0ZM\xeb5\xc1\xb7\x93(X+G\xa0\x02\x90\x1f7'GV\x16IT\xb23j+\xb8PM\xa4\xba])e\x95NJ8\xc5F\x9d9\x93\xe9\xe0S^\x0f7\x943M\x03\x0b\x09
\xc7\xed.@P\x7f\x8e/\xa8\xfa(3\xa1L\x82i*\x8b\xc4.\xbeJT+\x05Q+\x05>*[v\x02\x92Q+XF5LJ3.=HS\xa3\x13:(\x02\x86 ._\x88.*:M9:8/a;vX\x9a/4\xde3\x02\xa3\x184[S\x19\xbbH`#/P\xe2\x94=\xd2DH*\xc7\xd9:\xf6\xa3/:)\xcd)\x02\xcbC\xdbXPI\x9cC[\xd6\x0f\x02\xef\xf0\x8f<A(z80*;_\x02b7L;\xb4eC;W+\xa2/\xe8t,GAgc9\xe4-W\x13\x8e\x1d:.?\xdf\xb1*.sjP\x0cW\x13\x8e\x1d:.?\xdfA\xf5b(Lik;M\xf5b(4|^t.3M\xf5b(:\xd08\\x0cW\x13\x8e\x1d:.?\xdfA(34BaGW<4\xa9u+K)k;\xc7\xce:A(\xa9\x90^\x8a\xdc-'+aG\x9cW5\xa1\x88\E8]\x86\x97;<*uk*E^<GAQ+W/\x89=P\xddC@:T\xc9-\xd7A3N,d)\xfb\xc9Os\x02_**\xff)N\\x06W\x84\x91\x02^8'\x83\xed>\x0cJt?\xbbXS2:8(kEPL2K8\xa7+\x85\x8847\xd2\x06\xbfG-'[.\xceA\x84\x91\x02)SqW\x14\xa2}\x02t>C3f>E)A+*j(j+M\x85u\xf5b\xd97\x8fQF\xfe\xef2z\x99A\xe6\xd97\x02iIR-\x02\x80W8LI^-\x89\xbe\x0cJ*>A47PdGj[.,\xbc\x0cJo\xf6/440\xd2M\xeb-G\x88S(Oik+\xe74Y).\xaehWcBM\x9cY8t\xadhW,\xfb\x02\xf0\x06\xbf\xf77H.P(a*>A2.\xd8\xa6m0u\xe5hW-X2H\x04E8\x8e:\xf2W1K9\xc4S\xdc\xf4\xc8\x97uhJ3N\xae\xf8FqM+Q,3\x8b\xa4Wk'B\x8c)\xa0+\x94(MO;\xf1J(\xa0=*E^eE\xbdH\xb6xf30\xd2\x06U+\xf1J9Ks\x02\x84\x86^b\xdea~ux\x96\x8e\xf9i)\xd70\xd6\x15\x90\xfe\xef2z]+W\xdea\x8a\xcbJ4)8H=aRC\xad4)8H=H8\xe8I\xcbW\x11\xa85\x02\xf2\xfd\xa4\x02;<\x88ng-K9ju>\xa8E\xa9+M>*[v\x02ybO+\xd1\xd4;W].rybm.3M\xeb\xc8\xf5<G+\x83[E\x8ebk,\x7fq\xb8Ks\x02,4\x8b\x80\x02b/\x89F3vHDzb0\xc4\M9P\xc2ZW2X;Z\xa0A\xeceA\x81\xc4(\8X\xfd};\x94=a5\xc1B\x88\Eg7Hh2\x02b*.\xd8k',:\W\xe0>V!5h;\x81'j\xdd\xc7\xec\xa0e.*ER\xba\xf9\xf6<\x9f8Y<*\xad}(\x893a\x81+\x8cb\x929Q,*\x05(\xa9LaO\x86QFb\x81\xd7\xe1m\xceA\x83e\xb8{C;W\xf3A~u\xc1>)4+S\xcbW}o\xd0i:ry\xf9i-3\/\xc7'\xdb\xa8Q(A\xa3'h\\xc5F\xf2>CI\x19*\x81,\x8f\x8a73\xd7Ax\xdc\xbcH\xd2C)K;W\xecX;\x8cR\xbf/\xfe\x97h\xd1)>J,{\xb1\x11\x89:,P(>\x8f794+:\xaf+\xbf\x81-'=L'\xceA-*\x88ZM\x8a\xf7;P+agb\x94\xc2\xd6\x0f5+\xba-*\x88\x8b\xdc\x97u2LA7'G-:[S7H\xaf.=a)S\xef\xb5Q\x8f\xc08Y\xcbJ\x13\x8e\x1d:.?\xdfAR\xbai}F 48G\xd5A5\xa1\xd2\x8f\xa4\x02b\xc8\x97ZC\xceAg}(\x893\x02\xa4\x02\xb0\xe4-J\x94\x9b(:3K8C\xdb\xa8Q(AB|\xb2_W\xdea\x83n\xb0M,44F\xf9i\xf0\xb6x\xcb`\x17A\xdc\x84sa+**7\xdd\xb8H*h\xd1~PC(\xaf7;\xfa\xb9-I\xa3\xf2S\xa4\x02\x19\xe3QJ\x88\xc2`\x17A\x96\xc8.\x91L\xd5\x95\xb2_W)\x89\x93\x96\x99BCIk'\x93;<\xbcS3.=\xee\x0cU\x9a\x99+E\x8a]+C((l7Q.*\x9a7\xeePI<\x9f')4n'\xad7\x94\xaf\xd6\x08\x19S8N\x06\x08\x028\xc5\x9a\xa9F\x14\xa2}\x02,\xbck\xf0MG\x957\xc6A\x11\xa85\x02\x1e\x0f"\x1b\x16\x1f\x02^\x8a\x17P9S\x16$\x02\x983F5\x85\x8c\x94F\xb0\xe4-M\x08B\x87\xf9\xf6\x96)L5\x02GJ/K8\xb1cr-'\xbeC)K;D.9ju>\xa88C,4\x82]ETtGay\xf4\x85\x8c8G\xafM\x8aK\xd8gt\xc3\xca34neV\x1c\x85\x8ci\xade\x0cC[v\x02\xf4g\x9bA;9Q\xec\xbb>d/NL')\xa7^\xa9+C,*\x82.-\x02\xcat\xc3\xe6(\xa17\xc5\x91\x02\x80\x02eMm\xc3'E2:_\x02(X\xb1e\xb6\xca<K3FR\xbf\xa9F8H=\xd5`\x0fI\x989;M794=.+a\xca\xa6\xc1J/N\x90g,4DH*\x06\x08\x02};G:a\x19\xe3QJ\x88\xc2M\x08\x8fz/N\x90gqMT2*2)HMc9U(.PIo).3eS\xb9=*EcJ\x94s;\x8f\xb28my\x99B.\xa7cr5\xa1\xb1,\xbck\xf0M\x8a]E\x97u\x99B.\xa7)L5A)Sc9U(\;LE\xc0\x9dn/\x81\xfcF>\xa8\x7f)4B\x02\xc0cr\xbd\x028'\xc3Q\x9a8'\xc3RD4\xf6\xcc)\x88N\xaegc`\x11>J3{;\x8c\x16\x022*zcrT3{.=\d-\x94P+8`\x125+\xc6AoB\x8b\xa4U>NA\xf7\xaf7I\xe9\x84*\xc6J\x10X+G\xa0U\x9a0Z\xe8I\x87)Sb\x98\xb4,\xd17k\xa2A4)8H=\xd1)Sb\x98\xb4,A\xa0N*\xb8{W,\xbck2z(zt\xc3bfSof\xe0>8`#/4\x85\x8c/\e'jEhWi}F7H]78C[v8J)\xc5Ig\\xd97A\x8a+\xc6Z\x95\xf7\xd7Ii}Fh;\x81A/\x88FKIg\xb0`%K\xe2A\xd3,`%K\x02K\xd8g)A)\xb4n\xc0;<YT\xa2N8&\x02J\x9d9\x93\xd0\x95c\xe2A\xe6\x14\xa2}\x06U\x9ai}F\xd0\x95c\xe2A2S8N`\x1c\x85\x8c-\xa8\x02\xecXT3\x7f\xebi*0C+=\xbc:\xee\xe8\x02\xa6m:\xd8\xca/v\x02g/Q+3A\xe6\xf8+\xc9\xca\xa6B*<E^.9N\x06W<\x94\x93^\xde\x88`\x15.\xd8NC\xad4(\xd9\x84N8`\x15.s;J2LA\xc0+:\x88E\x97\x8bh).++PM8G(A}i\xec\xbc\xddD\x9f\x87;w(A'E2:_\x02\x98\xb4,Ay\x9ds;Z\xe8\x02\xa6oB\x8bg\xb9ncM2S8NM\xeb\x9d-ju(\xfb\x7f2S\xf9i\x06U\x9a\xe1\xe4E\xca\xa61:\x93/\xa8+`%\xfe24B\x8cw[C+F\x9c\xea2WT(.7AhW(Hmy)\xa08\xa1M\x8a8x\xdc\xa4W\x114/*2.Qd\x8a]8J2.\xb4(:3KE=.9;:\xb1(\xc6ZC\xad<K5+8\x95+Y\xc8T'_J/\xa8;\xe7'\xc3'+=Qm,ARC[\x823.n]\xdb.\xddd3N,\xe8\x02\xa6\xebNA\x99F\x9cC++\x06U+\x95\x87g79474\xf6z\xf7\xa173Agc\x8f\x02\xc82G\xd1\xc0\x16\x022>\xe4-\x02\xa65\xc1C\xdb\x89T+CI\x989;\x82\xa6N\xa7m0u7XIyT3.\xb9KE\xcf8C8W=\xa9\x81jH\xc9\x16\x0287\x89\xff^\xe9\x84*:r\x86"\xda\xbb\xd1\xcc\x96h2H\xa72S\xc4.s)L\x82\xcc]\x9a/N\x90g\x97\x06C8W(O3+\xc773'>\x05-*[v\x02^\xfe0ZM\x1aK\x87\x0e\x16\x16\x16M~l\x02\x144F7\xeeH=*\x01\x02\x02\x1fl*\xf3\\xea.r73'S+*,PH{aGg){;3\\x82GD\A){;3\J0\x8b\x96o;C3f>8J\x929N,H\xe7x\xcevE\x8axT\xaf.=aG(T\xa2a,T{\xa7b\j*2d-\x94P+8O7\x02\xc0\xe9\x84*:r\x86"\xda\xbb*`\x0f-;H\xcf+M\xe9\x84*:r\x86"\xda\xbbA-K\xd8\x80\x024\xbe8&\x02yb\x9d9\x931K9\xc4Sg\x1eX.\x7f\x9dn\xf3\\xc9\xa4J+\x89B\x02\xa33{A0\x8b\x8d[J\xefNA(\xa1ARC,\xd1\xf5T(0N\x8b\xcf8d\x84*,\Mi=u\xf3\\x0cd\xa4\x95+{A:7\x02\x9cJ7\xeePI\xe0>\x06W/\x81\xfcF\xf3\M7H]78\x01\x02\x02\x1f4\x95y87e\xb1*\x9b(;\x7fL+GQ(\\x82+*(T\\xb8\x9fx.\x7f\xd97my\xa3\x19:80*jH8\x0c\x95\x87g8'\xfd(O*-\x02RWk\xb9\x8e^\x10'\X\x7f~lJ0\x8b/\xa9+Ey,T|\j*2d~lJ(X+G\xa0\x02\xfc'+8\x8fx\xcc\xfc'+EoBZ\x06\xb6\xf4\x878\xc5+`\x1f\x8d\xad-\xc6\xbeM\xe9\x84*:r\x86"\xda\xbbA\xa5E;PDK8QF(\xfb8W>\xa8\xc9x\xd0DH*hA\xe6,T|o)k`\x17A\x97,Q\xb6\xca\x97,G`\x14Yg\xe5\x80\xbak;;H\x82t\xc3\xe5cr24+\x88\x02yL\xc2\x95\xcatS+4\xb6x]E+N*\x07\x08\x02\x00!7\x8e\x8a\x19\xe3QJ\x88+\x8c\xb99+ab\xbd\x02\xf8F9K5Fb8NM0\xd08a\xe5;P\xc2\xa7\x8e)4B\x02_**08\x82\x83n\xe5b)P*\x9b(\x8dN\xd6\x1b5\x02k'=\xfa7{H5\xa0\x02(]2)H\xc7\xef2z-K5Fb24\xbeM\xcc\x96fe\x8b\xc0\xe5\x80J-\xa1KET(.7\xb1qJ\xe1\xe4E<A\xa61:\x93T7*{a<K3F\xc4(\8e{A-T\xecPI*2734>2\xbc\xe7x'\x9b*:?\x02<\x9fN\xba\x84\x863N,Hd2LA;P\xc2DQ\xeaS\xdc\x97uNJ4\xbe\x8fo;\x95\x19\xe3z\x9bF\xc834nb8NM\xcc\x96bN\xa7R-879ZM\xeb\x19\xe3z\xcbW\xf0\x82x<K3F\xa6}\x84\xc2a\xf4\x81\x99BSRW2zg\xb9nfSgb-*\x88Z8\xc9~H\x89E\x192*\xe3z\xcbW<lQ\x828\x8d\xad2L*\x06W24\xbe`\x1fx<*7;C)\x81+\xd5\xdd\x0cU+\x8fkI:E87\x89\xff\xf4\x9cJ7\xb4\xd0\xb1\x19\xe3QJ\xd3,H\x8fo;\x80\x92Q+\xfa*-h;Ext\x86gTty\x9d92\x06C8W-:;\xc6A\x19:80*j\x8cKs;M5{\xc6A7\xda\xc5k+\x82x8/a\xf0SjX\x7f^\x8ax\xb2(\xaf\xd2a\x80\x02,T|\x9b-\x9d(:3;Sy}(\x893\xfa]3-\xd6"x8\xa1A\xe0>J\xef2ziIh\xcfF\x8eb1K9\xc4\xfd-\xc65\xd0/a\x80JBTA7{H5\xa0\x02\xb9-;\x7f\x8a}\x84\xde+\x06\xb6<A\xa68\xc5+M^\x9d-ju(\xfb8\xc7\xf9i\x06U\x9ak;;\x8c\xc0\x19V\x86"\xda\xbb*\x8fJ\xe1\xe4E\x97ZD\xfb\x02G\x9cJ)X\xa5\xd6#.B\x02\xb2_W$\x0f\x13\x12\x02\x19\x12\x10!\x19\x02\xb5z\x962L'[>d7/>\x84\xd9[>\xbf\xf7\xd7I(47S\xa3/HY^\x10H=\xd5\Mg~l\x02<A8Y]\xdb.\xa7(l7'TF\xe5~u\xfe+:;SR\xbfO\x92L.z73\xd7a:E\x81\xc2J\xc4(\8eS^80*;_\x8bb7L;\xb4e`\x13\x8e\x1d:.?\xdfA\x9c4\xff<G+2\xbbE\xc0\xb9\xd58\x828/**7\x02h\xe22.\\xc9\xb5z\x9c4\xff\xc1S82.3Ah\xbfG\xb23;\x82\xc1S3440C8W794=4({.N\x8f~P(A\xf4T\xb23j+\x95\xa4\x02"X\x97Eg\x19*\x81\xaeb\x9d\x93\x96}\x92\xd5\xa7+K)k+M\x90b/QFNJO3I^b\xf8+\x0cd>*;J\x9d\x93\x9bF\xc8+\(PF:\xf2US1'<M5\x90\x9b\x9a\xf8F\xd0\xb2A\xa4\x02eE8\xd9))X+\xe8I\x96o;D{J\x84\xd8\xa3<T;_a\xf2S\x9bF\xc8\xf7\xedA5:2HKE82.kENJ\xe1;PQ\xafE^7\xa28H8\x05)>\xc9\xcd;C8\xf1J\x84\x86R\xba\xf2S9{;k+W\xf8F^\xee7*(m\xceA3P,B\x06U+\xb64=H\xba\xf8F,k\xa1\xd2\xbf*>A\xb4B\x8c-H4(.K8Dz]:s;>\xb8\A7\xa28H8\x05)ST7\xeei+\xea.rO3Xe\xfd\x90.-\x02O3XeS7\xda\xc53a4=\x8c79:+P\xaf\xb8*SP+\x89=Lag3':s\x02N\xa7\x8eNA\x84+\xd13.\xc3BAt80E\xa3Q(.\xbc8`\x13\xb3Q\xb8PMTtGat1\\x8d(dGm(Iyb\xb28\xaf7\x8d).3e\xfd\x8d\xadx(\xa1A\x9c\xba\x813:(0S\xedS^\x19*\x81,`]]for i=1,9 do a=a:gsub('[A-\xff]',function(c)i=c:byte()*2-128
return([[*\x02;/\x02'\x02B8\x02+\x02.5*9;\x02DA4:49\x06\x0245/.*5'54->\x029*C5\x07\x02C\x02'94\x02G,33*8/'R\x02(/V\x02*FOE>KUF.;<';Y-L8*;*3*42;'=A54<Op_9\x02,/2'P\x024<<./AG\x02Q\x02';'I(N</8MwB:5\x06d,'8.*=+A.E*3*'q\x02Z\x02H\x02;.N\x02\x05\x05L\x02,58;8I9.D|fE)*(K<L+J+.;4-.9lHA'3'2'8RJ-\x9e\x83G]n3S*X439m\x0f\xaa\xab\x91[\x02,\x02(*O2A^8:\x04\xac9'+\xb3CEC\xa5\x06D,.D\x87.[P;v5BHU\x02h\x02\x85H+H0A5*'.:9\x06JoI\x0c\x02c\x02f8~Y):)3<X.8*M*+c5\x80KQ;V\x00'(sI('T=77]F3>8j4;+'\x985C9V\xb5i3\xb0\x02'\x02`"`\x16\x19ND*\xcdI6:(eT8\xd3\xae2Q\xb7\x927N\x8d2.I\xd4I8A*?8\x99/LZJ9\xbd+T>MKr0\x02]]):sub(i-1,i)end)end
print((a:gsub('.',function(x)i=1+x:byte()return('\n! 1\'-,."256; XACBEDGFIHJMLONQPSRUTWVY:acbedgfihkjmlonqpsrutwvyxz'):sub(i,i)end):gsub('('..('[^\n]?'):rep(65)..') ','%1\n')))

Note that non-ascii characters in the above source code will be escaped (such as \x9f).

download

return top