def chunks(items, size: int):
    """Break up items, an iterable, into chunks of length size."""
    if size < 1:
        raise ValueError(f'size must be positive, not {repr(size)}')
    for i in range(0, len(items), size):
        yield items[i:i + size]
