Make printer methods protected, so they can be overridden