addition works, check untested. Need to think about deleted(), refactor