code: def iterate(it):
      
      if is_async_iterable(it):
          return from_async_iterable.raw(it)
      if isinstance(it, Iterable):
          return from_iterable.raw(it)
      raise TypeError(
          f"{type(it).__name__!r} object is not (async) iterable")
docs: Generate values from a sychronous or asynchronous iterable.