Extracts time-related information from an input string.
        Ignores any information related to the specific date, focusing
        on the time-of-day.

        Args:
            inp (str): Input string to be parsed.

        Returns:
            A list of datetime objects containing the extracted times from the
            input snippet, or an empty list if none found.

def extractTimes(self, inp):
        """Extracts time-related information from an input string.
        Ignores any information related to the specific date, focusing
        on the time-of-day.

        Args:
            inp (str): Input string to be parsed.

        Returns:
            A list of datetime objects containing the extracted times from the
            input snippet, or an empty list if none found.
        """
        def handleMatch(time):
            relative = False

            if not time:
                return None

            # Default times: 8am, 12pm, 7pm
            elif time.group(1) == 'morning':
                h = 8
                m = 0
            elif time.group(1) == 'afternoon':
                h = 12
                m = 0
            elif time.group(1) == 'evening':
                h = 19
                m = 0
            elif time.group(4) and time.group(5):
                h, m = 0, 0

                # Extract hours difference
                converter = NumberService()
                try:
                    diff = converter.parse(time.group(4))
                except:
                    return None

                if time.group(5) == 'hours':
                    h += diff
                else:
                    m += diff

                # Extract minutes difference
                if time.group(6):
                    converter = NumberService()
                    try:
                        diff = converter.parse(time.group(7))
                    except:
                        return None

                    if time.group(8) == 'hours':
                        h += diff
                    else:
                        m += diff

                relative = True
            else:
                # Convert from "HH:MM pm" format
                t = time.group(2)
                h, m = int(t.split(':')[0]) % 12, int(t.split(':')[1])

                try:
                    if time.group(3) == 'pm':
                        h += 12
                except IndexError:
                    pass

            if relative:
                return self.now + datetime.timedelta(hours=h, minutes=m)
            else:
                return datetime.datetime(
                    self.now.year, self.now.month, self.now.day, h, m
                )

        inp = self._preprocess(inp)
        return [handleMatch(time) for time in self._timeRegex.finditer(inp)]