finished saveme, will optimise later.