print functions now create string instead