def(markvisiblefromleft) /.+/ => ( /^/ => { "" set(highest) } /./ => { _ _ ord 16 % get(highest) > if ! increase code points of visible trees by 16 { ord 16 % set(highest) 64 + chr } } ) def(rotate) #( ! clockwise fx { empty(lines) } /.+/ => fx { _ push(lines) _ len set(width) } { get(width) times { count(lines) times { pop(lines) copy 1 skip cons(lines) 1 take 1 rpad } "\n" } } ) #( { _ 4 times { do(markvisiblefromleft) do(rotate) } } /\d|\n/ => "" { _ len } ! count remaning non-digit trees )