support multiset object