on ConcurrentHashMap, containsKey is faster than contains, since contains() is a synonym for containsValue, and will iterate over the whole map