added: update function
improved: removed UUOC :)