docs: def make_sgf(
      move_history,
      result_string,
      ruleset="Chinese",
      komi=7.5,
      white_name=PROGRAM_IDENTIFIER,
      black_name=PROGRAM_IDENTIFIER,
      comments=[]
  ):
      """Turn a game into SGF.
  
      Doesn't handle handicap games or positions with incomplete history.
  
      Args:
          move_history: iterable of PlayerMoves
          result_string: "B+R", "W+0.5", etc.
          comments: iterable of string/None. Will be zipped with move_history.
      """
      boardsize = go.N
      game_moves = ''.join(translate_sgf_move(*z)
                           for z in itertools.zip_longest(move_history, comments))
      result = result_string
      return SGF_TEMPLATE.format(**locals())