separate pretty printing from show