implemented the 'watch_fields' functionality