<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def dispatch_event(self, event_, **kwargs):
 """ Dispatch section event. Notes: You MUST NOT call event.trigger() directly because it will circumvent the section settings as well as ignore the section tree. If hooks are disabled somewhere up in the tree, and enabled down below, events will still be dispatched down below because that's where they originate. """

        if self.settings.hooks_enabled:
            result = self.hooks.dispatch_event(event_, **kwargs)
            if result is not None:
                return result

            # Must also dispatch the event in parent section
            if self.section:
                return self.section.dispatch_event(event_, **kwargs)

        elif self.section:
            # Settings only apply to one section, so must still
            # dispatch the event in parent sections recursively.
            self.section.dispatch_event(event_, **kwargs)