code: def generate(self, N, *, seed=None, progressbar=False):
          
          if seed is not None:
              self.reset(seed)
          items = islice(self, N)
          if progressbar:
              items = tqdm(items, total=N)
  
          item_list = [x for x in items]
  
          #logger.warning("TODO: initialise ItemList with random seed!")
          return ItemList(item_list, N)
docs: Return sequence of `N` elements.
  
          If `seed` is not None, the generator is reset
          using this seed before generating the elements.