Yes. It should be a set instead of map. It's due to my mis-understanding that contains? only work with map.