@n= map{[($_ >4&&$_<14 &&$_%2?'-': ' ')x 56]}( 0..16 ); l($_ ,5 ,8) for (32 ,55 ,56 );p (5 ,2, 13 ,'X') ; d(1,5, "XXX");d( 16,3,"XXX" );n(20,9); n(27,10);n (37,8);n(45 ,9);for $k (6,10){l(14 , $k,2);for(0 , 1){c($k+$_ , 13-$_,"/") ;c ($k+1,13 +( 2*$_),"_" )}}c(int (2*cos ($_*0.39)+11), int(4* sin($_*0.39)+4), "X")for (-5..8);l(17,8,1);c( 9,18, ')');c( $_ ,9-$_,"X") for (2..9); sub p{c($_, $_[0] ,$_[3]) for ($_[1] .. $_[1] + $_[2]) ;} sub d{ $x= $_[1] ; c( $_[0] ,$x++ ,$_ )for split(//,$_[2]);} sub l {p(@_,"|");} sub n {($x ,$y)= @_;l ($x, $y+1 ,3); d($y, $x, "(_)");c ($y -1,$x-2,"_" ); }sub c{$n[ $_[0] ][$_[1]]= $_[2] ;}print join ("\n", map{join("",@$_)} @n),"\n";