code: def __next__(self):
      if self.subiterator is None:
          "Subiterator None means we haven't started a `preprocess` iterator. so start it"
          self.subiterator = self.infer(
              next(self.iterator), **self.params
          )
      try:
          # Try to return next item
          processed = next(self.subiterator)
      except StopIteration:
          # When a preprocess iterator ends, we can start lookig at the next item
          # ChunkIterator will keep feeding until ALL elements of iterator
          # all have created their subiterator and have been iterating against.
          #
          # Another way to look at it, is we're basically flattening lists of lists
          # into a single list, but with generators
          self.subiterator = self.infer(
              next(self.iterator), **self.params
          )
          processed = next(self.subiterator)
      return processed
  
imports: import numpy
  import torch
  from torch.utils.data import Dataset, IterableDataset
  from ..utils.generic import ModelOutput
label_desc: Use image node_id 3 for calling the PipelineChunkIterator obj's underlying member method code with example usage: obj.__next__() and returns: processed