Move watcher to its own file