def _update_estimate_and_sampler(self, ell, ell_hat, weight, extra_info,
                                     **kwargs):
        """Update the BB models and the estimates"""
        stratum_idx = extra_info['stratum']
        self._BB_TP.update(ell*ell_hat, stratum_idx)
        self._BB_PP.update(ell_hat, stratum_idx)
        self._BB_P.update(ell, stratum_idx)

        # Update model covariance matrix for stratum_idx
        self._update_cov_model(strata_to_update = [stratum_idx])

        # Update F-measure estimate, estimator variance, exp. variance decrease
        self._update_estimates()
Update the BB models and the estimates