t=?-*7+?+ f=->a{a.each_slice(2).map{|a,b|n=*a," "*m=a.map(&:size).max-1,*b l=n.size/2 s=l/2+1 (s...s+l).map{|i|n[i]=n[i].ljust(m," ")+?|} n[l]+=t n}} s=f[f[f[f[$<.map{|n|[("%12s "+t)%n.chomp]}]]]] s[0][15][-9,9]="+------- winner!" puts s