#!/usr/bin/ruby require 'zlib' d = 1 p = 0 eval $b = %{ q = d > 0 ? rand(3) : p $P = [ [2, " "], [2, " "], [1, " xxxxxxxxxxxx "], [1, " xxxxxxxxxxxx "], [1, " xxxxxxxxxxxx "], [1, " xxxxxxxxxxxx "], [1, " xxxxxxxxxxxx "], [0, " xxxxxxxxxxxxxx "], [0, " xxxxxxxxxxxxxx "], [0, " xxxxxxxxxxxxxx "], [0, " xxxxxxxxxxxxxx "], [0, " "], [0, " "] ] m = [0, 1, 2, 3, 4, 5, 6, 7] m = d > 0 ? m : m.reverse A = [ [[ 8, 6], [14, 5], [18, 5], [24, 6], [30, 7]], [[24, 8], [19, 9], [13, 9], [ 8, 8], [ 2, 7]], 5.times.map{[58, 7]}, 5.times.map{[64, 15]} ] a = [ [1, 0, 2, A], [0, 2, 1, [ 5.times.map{[2, 7]}, A[0].map{|x, y| [x + 28, y]}, A[1].map{|x, y| [x + 28, y]}, 5.times.map{[8, 15]} ] ], [2, 1, 0, [ A[0].map{|x, y| [x * 2 - 2, y]}, 5.times.map{[30, 7]}, A[1].map{|x, y| [x * 2 - 2, y]}, 5.times.map{[36, 15]} ] ] ] $n = "" Z = rand(100000) $z = 'd=' + (d ^ 1).to_s + ';p=' + (q + Z).to_s + '-' + Z.to_s + ';eval$b=%{' + $b + '}' $z = [Zlib::Deflate.deflate($z)].pack('m').gsub(10.chr, '') $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| $f[r][u[0] + i, j.length] = j r += 1 } end def e(u, v, w, x) $f = 22.times.map{79.times.map{"x"}.join("")} E(x, [[1, " "], [0, " "], [0, " "], [0, " "], [1, " "]]) E(u, $P) E(v, $P) E(w, $P) print $n $n = "#" + 27.chr + "[23A" + 13.chr + 10.chr t = $f.join(10.chr) 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..(m.length - 1) h = [ [ m.map{|y| [2, y]}, 8.times.map{[30, 7]}, 8.times.map{[58, 7]}, 8.times.map{[8, 15]} ], [ 8.times.map{[2, 7]}, m.map{|y| [30, y]}, 8.times.map{[58, 7]}, 8.times.map{[36, 15]} ], [ 8.times.map{[2, 7]}, 8.times.map{[30, 7]}, m.map{|y| [58, y]}, 8.times.map{[64, 15]} ] ][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[p] j += 1 h = op[3] for i in 0..4 e(h[0][i], h[1][i], h[2][i], h[3][i]) end end end exit }