<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def connect(self, slot):
 """Connect ``slot`` to this singal. Args: slot (callable):
 Callable object wich accepts keyword arguments. Raises: InvalidSlot: If ``slot`` doesn't accept keyword arguments. """

        self._ensure_slot_args(slot)
        if not self.is_connected(slot):
            self.slots.append(slot)