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?
public abstract class ForwardingMap<K, V> extends ForwardingObject implements Map<K, V> {
  
  
  protected ForwardingMap() {}
  @Override
  protected abstract Map<K, V> delegate();
  @Override
  public int size() {
    return delegate().size();
  }
  @Override
  public boolean isEmpty() {
    return delegate().isEmpty();
  }
  @CanIgnoreReturnValue
  @Override
  public V remove(Object object) {
    return delegate().remove(object);
  }
  @Override
  public void clear() {
    delegate().clear();
  }
  @Override
  public boolean containsKey(@NullableDecl Object key) {
    return delegate().containsKey(key);
  }