worked on update, not finished
added empty string check
stable point