def _sample_item(self, **kwargs):
        """Sample an item from the pool according to the instrumental
        distribution
        """
        t = self.t_

        # Update instrumental distribution
        self._calc_inst_pmf()

        if self.record_inst_hist:
            inst_pmf = self._inst_pmf[:,t]
        else:
            inst_pmf = self._inst_pmf

        # Sample label and record weight
        loc, stratum_idx = self.strata.sample(pmf = inst_pmf)
        weight = self.strata.weights_[stratum_idx]/inst_pmf[stratum_idx]

        return loc, weight, {'stratum': stratum_idx}