why a Map instead of a Set ? (i.e. `Collections.newSetFromMap(new ConcurrentHashMap<>))