<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def labels_in_range(self, start, end, fully_included=False):
 """ Return a list of labels, that are within the given range. Also labels that only overlap are included. Args: start(float):
 Start-time in seconds. end(float):
 End-time in seconds. fully_included(bool):
 If ``True``, only labels fully included in the range are returned. Otherwise also overlapping ones are returned. (default ``False``) Returns: list: List of labels in the range. Example: [Label('b', 5.1, 8.9), Label('c', 7.2, 10.5)] """


        if fully_included:
            intervals = self.label_tree.envelop(start, end)
        else:
            intervals = self.label_tree.overlap(start, end)

        return [iv.data for iv in intervals]