cleaner markup, no System.out.print