class_docstr: Environment wrapper for RL2.
  
  In RL2, observation is concatenated with previous action,
  reward and terminal signal to form new observation.
  
  Args:
      env (Environment): An env that will be wrapped.
class_docstr_tok: ["Environment","wrapper","for","RL2",".","In","RL2",",","observation","is","concatenated","with","previous","action",",","reward","and","terminal","signal","to","form","new","observation",".","Args",":","env","(","Environment",")",":","An","env","that","will","be","wrapped","."]
docstr: Create observation space for RL2.
  
  Returns:
      akro.Box: Augmented observation space.
docstr_tok: ["Create","observation","space","for","RL2",".","Returns",":","akro.Box",":","Augmented","observation","space","."]
code: def _create_rl2_obs_space(self):
      """Create observation space for RL2.
  
      Returns:
          akro.Box: Augmented observation space.
  
      """
      obs_flat_dim = np.prod(self._env.observation_space.shape)
      action_flat_dim = np.prod(self._env.action_space.shape)
      return akro.Box(
          low=-np.inf,
          high=np.inf,
          shape=(obs_flat_dim + action_flat_dim + 1 + 1,),
      )
  
imports: import abc
  import collections
  import akro
  from dowel import logger
  import numpy
  from garage import EnvSpec, EnvStep, EpisodeBatch, log_multitask_performance, StepType, Wrapper
  from garage.np.algos import MetaRLAlgorithm
  from garage.sampler import DefaultWorker
  from garage.tf.algos._rl2npo import RL2NPO
label_desc: Use image node_id 6 for calling the RL2Env obj's underlying member method code with example usage: obj._create_rl2_obs_space() and returns: akro