Now refactored to dynamically create supervision trees