code: def make_streams(converted_environment: ConvertedEnvironment):
      """Makes single player environment streams out of a ConvertedEnvironment.
  
      Each stream is expected to be run in a separate thread as steps involving
      multiple player must be executed concurrently. Where multiple players are
      expected to act but don't within _BARRIER_TIMEOUT, an exception will be
      raised.
  
      Args:
        converted_environment: A converted environment configured for 1 or 2
          players.
  
      Returns:
        A dm_env.Environment for each player.
      """
      environment = _StreamedEnvironment(converted_environment)
      return [
          _Stream(p, environment)
          for p in range(converted_environment.num_players())
      ]
  
imports: import functools
  import threading
  from typing import Any, Mapping, NamedTuple, Sequence
  import dm_env
  import numpy
  from pysc2.env.converter import converter
  from pysc2.env.converter.proto import converter_pb2
  from pysc2.lib import actions
  import tree
  import typing_extensions
  from s2clientprotocol import common_pb2
  from s2clientprotocol import raw_pb2
  from s2clientprotocol import sc2api_pb2
label_desc: Use image node_id 3 for calling a global function with example usage: make_streams(converted_environment) and returns: unknown