refactor on exec tree