def play(
      self,
      premise: str | None = None,
      max_steps: int | None = None,
  ) -> str:
    """Run the simulation.

    Args:
      premise: A string to use as the initial premise of the simulation.
      max_steps: The maximum number of steps to run the simulation for.

    Returns:
      html_results_log: browseable log of the simulation in HTML format
    """
    raise NotImplementedError
Run the simulation.

    Args:
      premise: A string to use as the initial premise of the simulation.
      max_steps: The maximum number of steps to run the simulation for.

    Returns:
      html_results_log: browseable log of the simulation in HTML format
    
concordia/typing/simulation.py