added edit / update feature