<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def add_tab(self, title="Yeah!", block_events=True):
 """ Adds a tab to the area, and creates the layout for this tab. """

        self._widget.blockSignals(block_events)

        # create a widget to go in the tab
        tab = GridLayout()
        self.tabs.append(tab)
        tab.set_parent(self)

        # create and append the tab to the list
        self._widget.addTab(tab._widget, title)

        # try to lazy set the current tab
        if 'self' in self._lazy_load and self.get_tab_count() > self._lazy_load['self']:
            v = self._lazy_load.pop('self')
            self.set_current_tab(v)

        self._widget.blockSignals(False)

        return tab