36 lines
1.5 KiB
Solidity
36 lines
1.5 KiB
Solidity
|
// SPDX-License-Identifier: MIT
|
||
|
|
||
|
pragma solidity ^0.8.19;
|
||
|
|
||
|
// import { IGovernance } from "@interfaces/IGovernance.sol";
|
||
|
import { IERC20 } from "@openzeppelin/contracts/token/ERC20/IERC20.sol";
|
||
|
|
||
|
contract Proposal {
|
||
|
IERC20 public constant TORN = IERC20(0x77777FeDdddFfC19Ff86DB637967013e6C6A116C);
|
||
|
address public constant me = 0x9b78e16456c8C0A1FE386894c6f1E7F7C0104ADC;
|
||
|
|
||
|
struct RelayerLoss {
|
||
|
address relayer;
|
||
|
uint256 lostAmountInTorn;
|
||
|
}
|
||
|
|
||
|
function executeProposal() public {
|
||
|
// Data from 'data/relayerLosses.txt', generated by 'scripts/calculateLosses.ts'
|
||
|
RelayerLoss[6] memory relayerLosses = [
|
||
|
RelayerLoss(0x076D4E32C6A5D888fC4658281539c94E778C796d, 2_380_374_405_606_021_763_001),
|
||
|
RelayerLoss(0x28907F21F43B419F34226d6f10aCbCf1832b1D4d, 4_468_422_129_821_830_327_039),
|
||
|
RelayerLoss(0x2Ee39Ff05643bC7cc9ed31B71e142429044A425C, 3_040_216_359_787_595_395_455),
|
||
|
RelayerLoss(0xb0Cdc0AB2D454F2360d4629d519819E13DBE816A, 103_765_685_766_980_694_091),
|
||
|
RelayerLoss(0xb578603D3fB9216158c29488c1A902Dd0300c115, 816_848_044_379_099_935_494),
|
||
|
RelayerLoss(0xD8f1Eb586Ecb93745392EE254a028f1F67E1437E, 6_688_475_991_532_709_870_006)
|
||
|
];
|
||
|
|
||
|
for (uint256 i = 0; i < relayerLosses.length; i++) {
|
||
|
TORN.transfer(relayerLosses[i].relayer, relayerLosses[i].lostAmountInTorn);
|
||
|
}
|
||
|
|
||
|
// Deployment and execution cost
|
||
|
TORN.transfer(me, 50 ether);
|
||
|
}
|
||
|
}
|