improved pretty print