def _covering_blocks(blocks, start, end=None):
    """Returns the blocks that includes the [start:end] portion."""
    if end is None:
        end = start

    return [
        block for block in blocks if block.start <= start and block.end >= end
    ]