add callback to watch