exposed toStringPrinter for reusability and removed addIgnore()