class_docstr: A wrapper converting MultiAgentEnv from old gym API to the new one.
  
  "Old API" refers to step() method returning (observation, reward, done, info),
  and reset() only retuning the observation.
  "New API" refers to step() method returning (observation, reward, terminated,
  truncated, info) and reset() returning (observation, info).
  
  Known limitations:
  - Environments that use `self.np_random` might not work as expected.
code: def step(
      self, action
  ) -> Tuple[
      MultiAgentDict,
      MultiAgentDict,
      MultiAgentDict,
      MultiAgentDict,
      MultiAgentDict,
  ]:
      obs, rewards, terminateds, infos = self.env.step(action)
  
      # Truncated should always be False by default.
      truncateds = {k: False for k in terminateds.keys()}
  
      return obs, rewards, terminateds, truncateds, infos
  
file_path: ray/rllib/env/wrappers/multi_agent_env_compatibility.py
imports: from typing import Optional, Tuple
  from ray.rllib.env.multi_agent_env import MultiAgentEnv
  from ray.rllib.utils.typing import MultiAgentDict
label_desc: Use image node_id 3 for calling the MultiAgentEnvCompatibility obj's underlying member method code with example usage: obj.step(action) and returns: obs,  rewards,  terminateds,  truncateds,  infos