# VotingDelegator

*Abstract contract that handles delegating governance votes of an asset when possible. Compatible with any token that extends OpenZeppelin ERC20Votes/ERC20VotesUpgradeable or implements `delegate(address)`*

## Delegated

```solidity
event Delegated(address asset, address delegatee, bool success)
```

## \_tryDelegate

```solidity
function _tryDelegate(address _asset, address _delegatee) internal
```

\_Calls `delegate(address)` on `_asset`. Does not revert if function is not supported by `_asset`.

Emits {Delegated} with `_asset`, `_delegatee` and `success` flag\_
