Adds a scheduled operation to the schedule.

        Args:
            scheduled_operation: The operation to add.

        Raises:
            ValueError:
                The operation collided with something already in the schedule.

def include(self, scheduled_operation: ScheduledOperation):
        """Adds a scheduled operation to the schedule.

        Args:
            scheduled_operation: The operation to add.

        Raises:
            ValueError:
                The operation collided with something already in the schedule.
        """
        collisions = self.query(time=scheduled_operation.time,
                                duration=scheduled_operation.duration,
                                qubits=scheduled_operation.operation.qubits)
        if collisions:
            raise ValueError('Operation {} has collisions: {}'.format(
                scheduled_operation.operation, collisions))
        self.scheduled_operations.add(scheduled_operation)
        self._max_duration = max(self._max_duration,
                                 scheduled_operation.duration)