Is there a reason the parameter name for ForwardingMap.remove(Object object) does not match the interface: Map.remove(Object key)?  In short: 'object' != 'key'
If yes, please kindly explain the history.
Else, can we rename to 'key' to match the interface?
@Override
  public boolean containsValue(@NullableDecl Object value) {
    return delegate().containsValue(value);
  }
  @Override
  public V get(@NullableDecl Object key) {
    return delegate().get(key);
  }
  @CanIgnoreReturnValue
  @Override
  public V put(K key, V value) {
    return delegate().put(key, value);
  }
  @Override
  public void putAll(Map<? extends K, ? extends V> map) {
    delegate().putAll(map);
  }
  @Override
  public Set<K> keySet() {
    return delegate().keySet();
  }
  @Override
  public Collection<V> values() {
    return delegate().values();
  }
  @Override
  public Set<Entry<K, V>> entrySet() {
    return delegate().entrySet();
  }
  @Override