b=0,[p,y=[8]],[p,x=[2,14]],[p,z=[2,8,14]],[x,p],[x,y],[z,p],[z,[5]],[z,[5,11]],[w=[2,6,10,14],y],[w,[4,12]] puts$<.map{|l|S=("-"*17+" "*255).scan /.{17}/ d=b[eval l] (d+[d[0]]).zip(z){|a,i|a&&a.map{|e|S[e-1][i]=S[e+1][i]=?* S[e][i-1,3]="***"}} S},S[0]