code: def take_step(self,
                    state: StateType,
                    max_actions: int = None,
                    allowed_actions: List[Set] = None) -> List[StateType]:
          raise NotImplementedError