save, save as & new implemented