@SuppressWarnings("unchecked")
  @Override
  @CanIgnoreReturnValue
  @CheckForNull
  public V remove(final Object rowKey, final Object columnKey) {
    V oldV = delegate.remove(rowKey, columnKey);
    undoLog.add(new UndoEntry<>((R) rowKey, (C) columnKey, oldV));
    return oldV;
  }
Protected constructor for UndoTable

@param delegate the table backing the undotable.
evm/src/main/java/org/hyperledger/besu/collections/undo/UndoTable.java