fixed do
more func pretty-printing
working on tests