/// <summary>
        /// Remove an item from the estimator
        /// </summary>
        /// <param name="item">Item to remove</param>
        public void Remove(TEntity item)
        {
            if (_strataEstimator.MaxStrata < _strataEstimator.StrataLimit &&
                _minwiseEstimator != null)
            {
                _minwiseReplacementCount += _minwiseEstimator.ItemCount;
                //after removal, the bit minwise estimator needs to be dropped since we can't remove from that.
                _minwiseEstimator = null;
            }
            var idHash     = _configuration.IdHash(_configuration.GetId(item));
            var entityHash = _configuration.EntityHash(item);

            if (!_strataEstimator.ConditionalRemove(idHash, entityHash))
            {
                _minwiseReplacementCount--;
            }
        }