working on the print function