docs: def chunked(iterator, chunksize):
      """
      Yields items from 'iterator' in chunks of size 'chunksize'.
  
      >>> list(chunked([1, 2, 3, 4, 5], chunksize=2))
      [(1, 2), (3, 4), (5,)]
      """
      chunk = []
      for idx, item in enumerate(iterator, 1):
          chunk.append(item)
          if idx % chunksize == 0:
              yield chunk
              chunk = []
      if chunk:
          yield chunk