@SuppressWarnings({ "unchecked", "rawtypes" })
	public final void prune() {
		onl = new ArrayList[this.m];
		for (int i=0; i<this.m; i++) { onl[i] = new ArrayList<Entry<K,V>>(1); }
		cam = new Hashtable<K,Entry<K,V>>();
		for (int i=0; i<off.length; i++) {
			for (Entry<K,V> e : off[i]) {
				final HashCounter hc = new HashCounter(e.getK());
				if (i==hc.mli) {
					e.setH(i);
					insertOnline(e);
				}
			}
		}
		Hashtable<Short,Integer> dist = cbf.getDistribution();
		Short[] filter = cbf.getFilter();
		cbf = (AbstractCountingBloomFilter)new HuffmanCountingBloomFilter(dist, filter, (short)word);
		this.pruned = true;
	}