improved "add assignment"