docs: def equilibrium_payoffs(self, method=None, options=None):
          """
          Compute the set of payoff pairs of all pure-strategy subgame-perfect
          equilibria with public randomization for any repeated two-player games
          with perfect monitoring and discounting.
  
          Parameters
          ----------
          method : str, optional
              The method for solving the equilibrium payoff set.
  
          options : dict, optional
              A dictionary of method options. For example, 'abreu_sannikov'
              method accepts the following options:
  
                  tol : scalar(float)
                      Tolerance for convergence checking.
                  max_iter : scalar(int)
                      Maximum number of iterations.
                  u_init : ndarray(float, ndim=1)
                      The initial guess of threat points.
  
          Notes
          -----
          Here lists all the implemented methods. The default method
          is 'abreu_sannikov'.
  
              1. 'abreu_sannikov'
          """
          if method is None:
              method = 'abreu_sannikov'
  
          if options is None:
              options = {}
  
          if method in ('abreu_sannikov', 'AS'):
              return _equilibrium_payoffs_abreu_sannikov(self, **options)
          else:
              msg = f"method {method} not supported."
              raise NotImplementedError(msg)