code: def step(self, action):
          
          if self.done:
              raise ValueError("executing action in terminated episode")
  
          self.timestep += 1
          self._pre_action(action)
          end_time = self.cur_time + self.control_timestep
          while self.cur_time < end_time:
              self.sim.step()
              self.cur_time += self.model_timestep
          reward, done, info = self._post_action(action)
          return self._get_observation(), reward, done, info
docs: Takes a step in simulation with control command @action.