i:2!0:"i/23" h:{(3(|/)':0,x,0)./:/:(0 1;0 -1)+\:/:y} / horizontal c:4{+|(*&|/x)_'x}/ / compress step:{ (j;b):x b:4(+|0,)/b / expand p:+&b m:(|'h[+b;|'p]),'|'h[b;p] n:{(2=#?x)*1+4!y+*&x@4!y+!4}[;j]'~m / 0:/ 1:n 2:s 3:w 4:e v:,/.(1=#:')#=q:p+(0 0;-1 0;1 0;0 -1;0 1)n (1+j;c@b.[;;~:]/(p@v),q@v)} +//~*|10 step/(0;i) {(j;b):step@x;$[b~*|x;j;o(j;b)]}(0;i)