typename _MapT<MAP>::ValIter eachValForKey (MAP& map, typename _MapT<MAP>::Key key) { typedef typename MAP::iterator Pos; typedef RangeIter<Pos> Range; std::pair<Pos,Pos> valuesForKey = map.equal_range(key); Range contents (valuesForKey.first, valuesForKey.second); return wrapIter (takePairSecond(contents)); }