some changes to watcher