Finished but did not test the print method.