code: @Override
  	public boolean add(@Nonnull T element) {
  		return getDedupMapForElement(element).putIfAbsent(element, element) == null && super.add(element);
  	}
docs: Adds the element to the queue. In contrast to the superclass and to maintain set semantics, this happens only if
  no such element is already contained (determined by {@link #equals(Object)}).
  
  @return <code>true</code> if the operation changed the head element or if is it unclear if the head element changed.
  Only returns <code>false</code> iff the head element was not changed by this operation.