g x=length$takeWhile(==' ')x r=reverse a x=g$r x d=dropWhile e=drop v m x=minimum(map m(lines x)) n=v g b=v a f x=(d(==' ')x)==[] z x=unlines(map (r.(e$b x).r.(e$n x))(d f(lines x))) main=interact z