code: def _bca(ab_estimates, sample_point, n_boot, alpha=0.05):
      
      # Bias of bootstrap estimates
      z0 = norm.ppf(np.sum(ab_estimates < sample_point) / n_boot)
  
      # Adjusted intervals
      adjusted_ll = norm.cdf(2 * z0 + norm.ppf(alpha / 2)) * 100
      adjusted_ul = norm.cdf(2 * z0 + norm.ppf(1 - alpha / 2)) * 100
      ll = np.percentile(ab_estimates, q=adjusted_ll)
      ul = np.percentile(ab_estimates, q=adjusted_ul)
      return np.array([ll, ul])
docs: Get (1 - alpha) * 100 bias-corrected confidence interval estimate
  
      Note that this is similar to the "cper" module implemented in
      :py:func:`pingouin.compute_bootci`.
  
      Parameters
      ----------
      ab_estimates : 1d array-like
          Array with bootstrap estimates for each sample.
      sample_point : float
          Indirect effect point estimate based on full sample.
      n_boot : int
          Number of bootstrap samples
      alpha : float
          Alpha for confidence interval
  
      Returns
      -------
      CI : 1d array-like
          Lower limit and upper limit bias-corrected confidence interval
          estimates.