public function intersects(TimeframeInterface $frame)
    {
        return
            // Checks intersections within:
            ($this->contains($frame->start()) || $this->contains($frame->end()))
            // Checks full overlaps:
            || ($frame->start() <= $this->start && $frame->end() >= $this->end)
        ;
    }