code: def ebic_select(self, gamma=0):
          
          if not isinstance(self.precision_, list):
              raise ValueError("EBIC requires multiple models to select from.")
              return
  
          if not self.is_fitted_:
              return
  
          ebic_scores = self.ebic(gamma=gamma)
          min_indices = np.where(np.abs(ebic_scores - ebic_scores.min()) < 1e-10)
          return np.max(min_indices)
docs: Uses Extended Bayesian Information Criteria for model selection.
  
          Can only be used in path mode (doesn't really make sense otherwise).
  
          See:
          Extended Bayesian Information Criteria for Gaussian Graphical Models
          R. Foygel and M. Drton
          NIPS 2010
  
          Parameters
          ----------
          gamma : (float) \in (0, 1)
              Choice of gamma=0 leads to classical BIC
              Positive gamma leads to stronger penalization of large graphs.
  
          Returns
          -------
          Lambda index with best ebic score.  When multiple ebic scores are the
          same, returns the smallest lambda (largest index) with minimum score.