code: def step(self, action, blocking=True):
      
      promise = self.call('step', action)
      if blocking:
        return promise()
      else:
        return promise
docs: Step the environment.
  
      Args:
        action: The action to apply to the environment.
        blocking: Whether to wait for the result.
  
      Returns:
        Transition tuple when blocking, otherwise callable that returns the
        transition tuple.