#!/usr/local/bin/ruby t="F`GHmIJbKa*l+,m-n./mAm0o1p23a4q56r7sBt89u-t-1:v;A[?]A^@CD_CD_Es";eval$s=%w{F=%q{ceY8#NzbisMn?sT@m3,F.Abb`xW!r%'%Ybee>xkUfjf[(*^Nd Xo_"@hQh%Fx*q[iB7EM"suSG8GVOIzceg/O=4CL,d[-k]twgVP`&wcfaT` 2M)j8sFY?(HKzO rVCH O_69 4[Uq 8g @i/i;t MBG#;-;B]rV[ ])`3'VWDZdF- +^46Z^Z@<> 1sta`lbL+=J3sL3e BYxm/a0]lV1?M4WAu7jC Gk`UBzB#*gOJwHu#gQ st^XB0VXjTimG>Jn;M f$KRBf&7[%X3 4447R.0v"Uz/4F "6Q+0>+1N3OLCeMn;8TQ>BHCW1"; KrW,%P`C?@?) fz>c3B;r8Q"QCj mU"3 SXd1 Jt1q I;"G7HLO$I *6=fCCo!G6CS m1a]S(S#d#sa #2lXP&4$ L"^i r8_B EmkS vA!f@p!$A6pE@# u%5QJda>[dT>cc4bYcAY)6uF9%1C4f?GWDcZR`n,%>JrTqK$eHG2W)B__. [JP+@2qlsWxug,O60@Nkj6VU#Gqp[fC%XOc`:C!-hbr3C0Dz2aLLRI%*4& Lto'OJxHohC=*H#sc][4ZwId0O,R]s<]D#ykgKY7Oc1`heSG/XxjLA2aiV !GlX^T4P-/.oIyvR>kPyJ;lXD1r8n5gHPeuA4%j8*0>Iu^>CR xHz3HYX*#n,t_EjxBRbgFH kj:PmmNq3MA1 0LXwbAW&S^/0_x,H4d5" _9>K!n6*b(ij`:HQRKf] EJoMNwY>5Si'd#'5 BuS8[sF`_[bf9ZZbENlvrK !4M=y6IQ27&IJm >nw57+;)s=Foy<4pdw5i lSDhJRyao%_Wx+[lx6 D8Goea3uRPpunFulWq 0*3GoGaJyAHF$#bJca 5&Z0K'r[o,K*"/^j v6m08,PTZy$g?eX[aN4jJ] AkXcV72;!};f=0;F .unpack("C*"). map{|c|f=f*89+((c-2)%90-1) };require'zlib ';t=t.spli t*"" ;$*[ 0]?(t[/([* -K]+.)([*-K]+.)$/] ;t=$2+$`+s=$1):(s= t[/.+?[L-z]/];t=$' +s);f=Zlib::Inflat e.inflate(Marshal. dump(f)[7..-1]);S= %{t="#{t}";eval$s= %w{#$s}*"";%|}+F*9 ;P=proc{puts(S.sli ce!(0,58));P};P[][ ][][s.upcase.unpac k("C*").map{|c|c-= c>92?43:42;;P[][][ 20.times{|n|puts(( "%029b"%("\0"+f[60 *c+3*n,3]).unpack( "N")[0]).gsub(/./) {$&<"1"?(S.slice!(0,2)):(32.chr*2)})}]}][];puts(*["+"+"-"* 25,"|,##,(c),Yusuke,Endoh,2009".split(",").join(32.chr)].m ap{|l|S.slice!(0,32)+l})}*"";%|ceY8#NzbisMn?sT@m3,F.Abb`x+------------------------- W!r%'%Ybee>xkUfjf[(*^NdXo_"@hQh%| ## (c) Yusuke Endoh 2009