class_docstr: Observe the number of elapsed steps in an episode.
  
  A new observation will be a tuple of an original observation and an integer
  that is equal to the elapsed steps in an episode.
class_docstr_tok: ["Observe","the","number","of","elapsed","steps","in","an","episode",".","A","new","observation","will","be","a","tuple","of","an","original","observation","and","an","integer","that","is","equal","to","the","elapsed","steps","in","an","episode","."]
code: def step(self, action):
      observation, reward, done, info = self.env.step(action)
      self._elapsed_steps += 1
      assert self._elapsed_steps <= self._max_steps
      return (observation, self._elapsed_steps), reward, done, info
  
imports: import argparse
  import functools
  import os
  import gym
  import gym.spaces
  import numpy
  import torch
  from torch import nn
  import pfrl
  from pfrl import experiments, explorers, replay_buffers, utils
  from pfrl.q_functions import DiscreteActionValueHead
label_desc: Use image node_id 3 for calling the ObserveElapsedSteps obj's underlying member method code with example usage: obj.step(action) and returns: observation,  self,  reward,  done,  info