print service and controller refactored