make sure its updated on each change