n*.KB Hdef def ;b9;e9;alph9;x9;y9 x9 { y9 { ,L' }(~':'Ex9)/t9 b9{BJ(^/1 0='AW'Ex9)/'x9[(x9=''A'')/IRx9]{''W''' }((V/^/' '=x9)V~V/ 2 4 E1YRx9{':' mat9 ' ',b9{,x9)/m9 alph9{'abcdefghijklmnopqrstuvwxyzaFbFcFdFeFfFgFhFiFjFkFlFmFnFoFpFqFrFsFtFuFvFwFxFyFzF0123456789' e9{'z9{',(('A'Eb9)/' x9 '),x9[1;],('W'Eb9)/' y9 ' e9{e9,,(V/((0 ,0#1URb9) Ub9)#,' ')/-b9{(0 0 R' ') specify9O|b9 }(2=1YRx9)/l9 e9 {e9 rjn9 'z9{',x9[4;] e9{e9 rjn9 '}(',x9[3;],')/0' l9: e9{e9 rjn9 'z9{',x9[2;] Lfx ':' mat9 replace9 `1U,e9,':' fns { ((~fns find9 x9[1;])/[1] fns) rjn9 y9 }0 t9: }(~V/y9{ fns find9 x9)/m9 L{ y9/[1] fns }0 m9: 'not done' mat9z{a mat9 b;c;d;e e{Rd{`1U(c,0)-0,c{(+/~c)UH|c{(~#\''''=b)^a=b{,b,a z{(+/^\' '=z)O|z{ 0 `1 U(e,c)R(,O|dJ.&Ic{S/d)\b rjn9r {a rjn9 b;x x{(`1YRa{(`2Y 1 1 ,Ra)R(,a),' ')S`1YRb{(`2Y 1 1 ,Rb)R(,b),' ' r{(((1YRa),x)Ya,((Ra)+0,x)R' '),[1]((1YRb),x)Yb,((Rb)+0,x)R' ' specify9z{a specify9 b;c;d;e z{ 0 0 R' ' }(0=Rb{((bI'{')DRb)Ub)/0 c { ';',O|(`1+cI' ')Yc{(+/^\' '=c)Uc{(+/^\bEalph9)Yb z {(~V/a find9 c) /-(1,Rc)Rc nxt: z { z rjn9(a rjn9 c) specify9 b replace9z{replace9 x;a;b;c;d }(~V/'AW'Ex)/nil z{' ',O\' ',[1]((1,Rx)Rx),[1]' ' z[b{(c^xEd)/IRx;]{(2 4 R' y9 x9 ')[(c{(~#\''''=x)^a$Rd)/a{(d{'WA')Ix;] c{(Rz)R 0 0 1 0 c[b; 1 2 4]{1 z{(,c)/,z }0 nil:z { ,x fnfac(fac:WXfac W-1 :W=0:1fnb+b:(z,0)+0,z{b W-1:W=0:1fnplusplus:A+W find9r { l find9 n n{(n#' ')/n r {(1URl)R0 }((Rn)>1URl)/0 l { ((1YRl),Rn)Yl r {^/l=(Rl)Rn fns ttimettime L { 'total time is',(,B (.01XS(BN21)%.6)), ' secs.'