uses more manipulatiors for print