#!/usr/bin/ruby require 'zlib' d = 0 p = 2 eval $b = %{q=[1,2,4][rand(3)] $P=[[2,18],[2,18],[2,18],[1,20],[1,20],[1,20],[1,20],[1,20],[0,22],[0,22],[0,22],[0,22],[0,22],[0,22]] H=[1,2,3,4,5,6,7,8] H=d>0?H: H.reverse A=[[[8,7],[14,6],[19,6],[24,7],[29,8]],[[23,9],[17,10],[12,10],[7,9],[2,8]],5.times.map{[56,9]},5.times.map{[64,17]}] a=[[3,A],[6,[5.times.map{[2,8]},A[0].map{|x,y|[x+27,y]},A[1].map{|x,y|[x+27,y]},5.times.map{[10,17]}]],[5,[A[0].map{|x,y|[x*2-2,y]},5.times.map{[29,8]},A[1].map{|x,y|[x*2-2,y]},5.times.map{[37,17]}]]] $n="" $z='Z='+rand.to_s+';d='+(d^1).to_s+';p='+q.to_s+';eval$b=%{'+$b+'}' $z=[Zlib::Deflate.deflate($z,9)].pack('m').gsub("\n",'') $z="eval(%w{require'zlib';eval(Zlib::Inflate.inflate('"+$z+"'.unpack('m')[0]))#"+$z def E(u,v) r=u[1] v.each{|i,j|(0..(j-1)).each{|c|$f[r][u[0]+c+i]='x'};r+=1} end def e(u, v, w, x) $f=24.times.map{79.times.map{" "}.join("")} E(x,[[1,4],[0,6],[0,6],[0,6],[1,4]]) E(u,$P) E(v,$P) E(w,$P) print$n $n="#"+27.chr+"[24A\r" t=$f.join("\n") g=$z[0,t.count('x')-5]+'}*"")' o=-1 k='' t.each_char{|c|k+=(c=='x'?g[o+=1]:c)} puts k $stdout.flush sleep 0.05 end for i in 0..(H.length-1) h=[[],[H.map{|y|[2,y]},8.times.map{[29,8]},8.times.map{[56,8]},8.times.map{[10,17]}],[8.times.map{[2,8]},H.map{|y|[29,y]},8.times.map{[56,8]},8.times.map{[37,17]}],[],[8.times.map{[2,8]},8.times.map{[29,8]},H.map{|y|[56,y]},8.times.map{[64,17]}]][p] e(h[0][i],h[1][i],h[2][i],h[3][i]) end if d>0 j=0 while j<20||p!=q op=a[rand(3)] p^=op[0] j+=1 h=op[1] for i in 0..4 e(h[0][i],h[1][i],h[2][i],h[3][i]) end end end puts $z.length exit }