added printing functions