customized pretty printer