Decided to use a enum. Other possibility was to create the watcher at each branch point.