lots of improvement on save also * charachter implemented