class_docstr: Base class for vectorized environments. Runs multiple independent copies of the same environment in parallel.
  
  This is not the same as 1 environment that has multiple subcomponents, but it is many copies of the same base env.
  
  Each observation returned from vectorized environment is a batch of observations for each parallel environment.
  And :meth:`step` is also expected to receive a batch of actions for each parallel environment.
  
  Notes:
      All parallel environments should share the identical observation and action spaces.
      In other words, a vector of multiple different environments is not supported.
docstr: Initialize the info array.
  
  Initialize the info array. If the dtype is numeric
  the info array will have the same dtype, otherwise
  will be an array of `None`. Also, a boolean array
  of the same length is returned. It will be used for
  assessing which environment has info data.
  
  Args:
      dtype (type): data type of the info coming from the env.
  
  Returns:
      array (np.ndarray): the initialized info array.
      array_mask (np.ndarray): the initialized boolean array.
code: def _init_info_arrays(
      self, dtype: type
  ) -> Tuple[np.ndarray, np.ndarray]:
      """Initialize the info array.
  
      Initialize the info array. If the dtype is numeric
      the info array will have the same dtype, otherwise
      will be an array of `None`. Also, a boolean array
      of the same length is returned. It will be used for
      assessing which environment has info data.
  
      Args:
          dtype (type): data type of the info coming from the env.
  
      Returns:
          array (np.ndarray): the initialized info array.
          array_mask (np.ndarray): the initialized boolean array.
  
      """
      if dtype in [int, float, bool] or issubclass(dtype, np.number):
          array = np.zeros(self.num_envs, dtype=dtype)
      else:
          array = np.zeros(self.num_envs, dtype=object)
          array[:] = None
      array_mask = np.zeros(self.num_envs, dtype=bool)
      return array, array_mask
  
imports: from typing import Any, List, Optional, Tuple, Union
  import numpy
  import gym
  from gym.vector.utils.spaces import batch_space
label_desc: Use image node_id 16 for calling the VectorEnv obj's underlying member method code with example usage: obj._init_info_arrays(dtype) and returns: array,  array_mask