a=+Math::PI/13 #XXX-z';#za-mXXXX #A-ZaA-Mn-XXXXXXXXX '"N-Z(XXXXXXXXXXXX" b=XXXXXX XXXXXXh_ p%{} eact zoraq ;%{ GF. rin); %{eb} r A R p *""XX XXX{{{ }XXXXX XXl(%w| } ; a;a=%Y/ evar{|c)} XXX #Xgny\W{f chaa,b)XXXXX XXXXXXXXX40v .tr(= ' ;eval(%w{r=u=b= y =0;%{ (ct;c ) ; X XXXXXXXXX X X X XXXXX exi}; a * = A RGV.siz e > 0 ? -1:1; z=[] ; A R G F .ea c h _ l i n e{|i |i.eac h _ g r aph e m e _ c l u ster {|j|i f ( k = j.o r d ) < 3 3 ; r+=k= =32?1:k= = 9 ?8- r % 8 : k = = 10?-r: 0;u+=k==10? 1:0 ; e l s e ;z+=[[u,r,j ]];b+=r;y+=u;r+=1;end}};if(s=z.size)> 0;b/=s;y/=s;m,n=z[0];i=Math::tan(a/2) ;j=Math::sin(a);z.map!{|d|p=d[1]-b;q= d[0]-y;p-=(i*q).round;q+=(j*p).round; p-=(i*q).round;n=[n,p].min;m=[m,q]. min;[q,p,d[2]]};r=n;u=m;z.sort.eac h{|d|p,b=d;r=(u