class_docstr: Returns done after 5 sub-steps (not flat env steps!)
class_docstr_tok: ["Returns","done","after","5","sub-steps","(","not","flat","env","steps","!",")"]
docstr: Return done after 5 sub-steps
docstr_tok: ["Return","done","after","5","sub-steps"]
code: def step(self, action: Any) -> Tuple[Any, Any, bool, Dict[Any, Any]]:
      """Return done after 5 sub-steps"""
      observation, reward, done, info = self.env.step(action)
      self.elapsed_sub_steps += 1
      return (
          observation,
          reward,
          done or self.elapsed_sub_steps >= 5,
          info,
      )
  
imports: from typing import Dict, Any, Tuple
  import numpy
  from maze.core.agent.random_policy import RandomPolicy, DistributedRandomPolicy
  from maze.core.env.base_env import BaseEnv
  from maze.core.rollout.rollout_generator import RolloutGenerator
  from maze.core.wrappers.time_limit_wrapper import TimeLimitWrapper
  from maze.test.shared_test_utils.helper_functions import build_dummy_structured_env, build_dummy_maze_env, build_dummy_maze_env_with_structured_core_env
  from maze.test.shared_test_utils.helper_functions import flatten_concat_probabilistic_policy_for_env
  from maze.train.parallelization.vector_env.sequential_vector_env import SequentialVectorEnv
label_desc: Use image node_id 2 for calling the _FiveSubstepsLimitWrapper obj's underlying member method code with example usage: obj.step(action) and returns: observation,  reward,  unknown,  info