added printer class