added middleware to watchers