implement board watcher