do_print