Possible overflow in `_payOutFirstInQueue`
In `_payOutFirstInQueue()`, possible revert during `operatorTokenToDataInverse()`.\\n```\\nuint amountOperatorTokens = moduleCall(address(exchangeRatePolicy), abi.encodeWithSelector(exchangeRatePolicy.operatorTokenToDataInverse.selector, amountDataWei));\\n```\\n\\nIf a delegator calls `undelegate()` with `type(uint256).max`, `operatorTokenToDataInverse()` will revert due to uint overflow and the queue logic will be broken forever.\\n```\\n   function operatorTokenToDataInverse(uint dataWei) external view returns (uint operatorTokenWei) {\\n       return dataWei * this.totalSupply() / valueWithoutEarnings();\\n   }\\n```\\n
We should cap `amountDataWei` before calling `operatorTokenToDataInverse()`.
The queue logic will be broken forever because `_payOutFirstInQueue()` keeps reverting.
```\\nuint amountOperatorTokens = moduleCall(address(exchangeRatePolicy), abi.encodeWithSelector(exchangeRatePolicy.operatorTokenToDataInverse.selector, amountDataWei));\\n```\\n