code: def fillQueue(
      queue: _Queue,
      iterable: Iterable[Any],
      stop_signals: int,
      chunk_size: int = 20000,
  ) -> None:
      iterable = iter(iterable)
  
      while True:
          chunk = tuple(itertools.islice(iterable, chunk_size))
          if chunk:
              queue.put(chunk)
              del chunk
  
          else:
              # put poison pills in queue to tell scorers that they are
              # done
              for _ in range(stop_signals):
                  queue.put(None)
              break
  
imports: from __future__ import annotations
  import collections
  import functools
  import itertools
  import multiprocessing
  import multiprocessing.dummy
  import os
  import queue
  import tempfile
  from typing import TYPE_CHECKING, overload
  import numpy
  from dedupe.backport import RLock
label_desc: Use image node_id 2 for calling a global function with example usage: fillQueue(queue, iterable, stop_signals, chunk_size) without return types