code: def test_observation_skipping_wrapper_sticky_flat():
      """Step skipping unit test"""
  
      n_steps = 3
  
      # instantiate env
      env = GymMazeEnv("CartPole-v0")
      env = StepSkipWrapper.wrap(
          env, n_steps=n_steps, skip_mode="sticky"
      )
      env = LogStatsWrapper.wrap(
          env
      )  # for accessing events from previous steps
  
      # reset environment and run interaction loop
      env.reset()
      cum_rew = 0
      for i in range(2):
          action = env.action_space.sample()
          obs, reward, done, info = env.step(action)
          cum_rew += reward
  
          assert (
              len(
                  env.get_last_step_events(
                      query=RewardEvents.reward_original
                  )
              )
              == 1
          )
  
      assert cum_rew == 6
  
imports: from maze.core.log_events.episode_event_log import EpisodeEventLog
  from maze.core.log_events.log_events_writer import LogEventsWriter
  from maze.core.log_events.monitoring_events import RewardEvents
  from maze.core.wrappers.log_stats_wrapper import LogStatsWrapper
  from maze.core.wrappers.maze_gym_env_wrapper import GymMazeEnv
  from maze.core.wrappers.step_skip_wrapper import StepSkipWrapper
  from maze.test.shared_test_utils.dummy_env.dummy_core_env import DummyCoreEnvironment
  from maze.test.shared_test_utils.dummy_env.dummy_maze_env import DummyEnvironment
  from maze.test.shared_test_utils.dummy_env.dummy_struct_env import DummyStructuredEnvironment
  from maze.test.shared_test_utils.dummy_env.space_interfaces.action_conversion.dict import DictActionConversion
  from maze.test.shared_test_utils.dummy_env.space_interfaces.observation_conversion.dict import ObservationConversion
  from maze.test.shared_test_utils.wrappers import assert_wrapper_clone_from
label_desc: Use image node_id 5 for calling a global function with example usage: test_observation_skipping_wrapper_sticky_flat() without return types