Formatter and FormatterFactory