class_docstr: This wrapper will keep track of cumulative rewards and episode lengths.
  
  At the end of an episode, the statistics of the episode will be added to ``info``
  using the key ``episode``. If using a vectorized environment also the key
  ``_episode`` is used which indicates whether the env at the respective index has
  the episode statistics.
  
  After the completion of an episode, ``info`` will look like this::
  
      >>> info = {
      ...     ...
      ...     "episode": {
      ...         "r": "<cumulative reward>",
      ...         "l": "<episode length>",
      ...         "t": "<elapsed time since instantiation of wrapper>"
      ...     },
      ... }
  
  For a vectorized environments the output will be in the form of::
  
      >>> infos = {
      ...     ...
      ...     "episode": {
      ...         "r": "<array of cumulative reward>",
      ...         "l": "<array of episode length>",
      ...         "t": "<array of elapsed time since instantiation of wrapper>"
      ...     },
      ...     "_episode": "<boolean array of length num-envs>"
      ... }
  
  Moreover, the most recent rewards and episode lengths are stored in buffers that can be accessed via
  :attr:`wrapped_env.return_queue` and :attr:`wrapped_env.length_queue` respectively.
  
  Attributes:
      return_queue: The cumulative rewards of the last ``deque_size``-many episodes
      length_queue: The lengths of the last ``deque_size``-many episodes
docstr: Resets the environment using kwargs and resets the episode returns and lengths.
docstr_tok: ["Resets","the","environment","using","kwargs","and","resets","the","episode","returns","and","lengths","."]
code: def reset(self, **kwargs):
      """Resets the environment using kwargs and resets the episode returns and lengths."""
      observations = super().reset(**kwargs)
      self.episode_returns = np.zeros(self.num_envs, dtype=np.float32)
      self.episode_lengths = np.zeros(self.num_envs, dtype=np.int32)
      return observations
  
file_path: gym/gym/wrappers/record_episode_statistics.py
imports: import time
  from collections import deque
  from typing import Optional
  import numpy
  import gym
label_desc: Use image node_id 2 for calling the RecordEpisodeStatistics obj's underlying member method code with example usage: obj.reset() and returns: observations