@vechain/vebetterdao-contracts
Version:
Open-source repository that houses the smart contracts powering the decentralized VeBetterDAO on the VeChain Thor blockchain.
1,759 lines • 104 kB
JSON
{
"_format": "hh-sol-artifact-1",
"contractName": "RelayerRewardsPool",
"sourceName": "contracts/RelayerRewardsPool.sol",
"abi": [
{
"inputs": [],
"stateMutability": "nonpayable",
"type": "constructor"
},
{
"inputs": [],
"name": "AccessControlBadConfirmation",
"type": "error"
},
{
"inputs": [
{
"internalType": "address",
"name": "account",
"type": "address"
},
{
"internalType": "bytes32",
"name": "neededRole",
"type": "bytes32"
}
],
"name": "AccessControlUnauthorizedAccount",
"type": "error"
},
{
"inputs": [
{
"internalType": "address",
"name": "target",
"type": "address"
}
],
"name": "AddressEmptyCode",
"type": "error"
},
{
"inputs": [
{
"internalType": "address",
"name": "implementation",
"type": "address"
}
],
"name": "ERC1967InvalidImplementation",
"type": "error"
},
{
"inputs": [],
"name": "ERC1967NonPayable",
"type": "error"
},
{
"inputs": [],
"name": "FailedInnerCall",
"type": "error"
},
{
"inputs": [],
"name": "InvalidInitialization",
"type": "error"
},
{
"inputs": [
{
"internalType": "string",
"name": "parameter",
"type": "string"
}
],
"name": "InvalidParameter",
"type": "error"
},
{
"inputs": [
{
"internalType": "address",
"name": "relayer",
"type": "address"
},
{
"internalType": "uint256",
"name": "roundId",
"type": "uint256"
}
],
"name": "NoRewardsToClaim",
"type": "error"
},
{
"inputs": [],
"name": "NotInitializing",
"type": "error"
},
{
"inputs": [
{
"internalType": "address",
"name": "caller",
"type": "address"
},
{
"internalType": "address",
"name": "preferredRelayer",
"type": "address"
}
],
"name": "NotPreferredRelayer",
"type": "error"
},
{
"inputs": [],
"name": "ReentrancyGuardReentrantCall",
"type": "error"
},
{
"inputs": [
{
"internalType": "address",
"name": "relayer",
"type": "address"
}
],
"name": "RelayerAlreadyRegistered",
"type": "error"
},
{
"inputs": [
{
"internalType": "address",
"name": "relayer",
"type": "address"
}
],
"name": "RelayerNotRegistered",
"type": "error"
},
{
"inputs": [
{
"internalType": "address",
"name": "relayer",
"type": "address"
},
{
"internalType": "uint256",
"name": "roundId",
"type": "uint256"
}
],
"name": "RewardsAlreadyClaimed",
"type": "error"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "roundId",
"type": "uint256"
}
],
"name": "RoundNotEnded",
"type": "error"
},
{
"inputs": [],
"name": "TransferFailed",
"type": "error"
},
{
"inputs": [],
"name": "UUPSUnauthorizedCallContext",
"type": "error"
},
{
"inputs": [
{
"internalType": "bytes32",
"name": "slot",
"type": "bytes32"
}
],
"name": "UUPSUnsupportedProxiableUUID",
"type": "error"
},
{
"inputs": [
{
"internalType": "address",
"name": "caller",
"type": "address"
},
{
"internalType": "address",
"name": "relayer",
"type": "address"
}
],
"name": "UnauthorizedUnregister",
"type": "error"
},
{
"inputs": [
{
"internalType": "address",
"name": "user",
"type": "address"
},
{
"internalType": "uint256",
"name": "roundId",
"type": "uint256"
}
],
"name": "UserActionAlreadyReduced",
"type": "error"
},
{
"inputs": [
{
"internalType": "address",
"name": "user",
"type": "address"
},
{
"internalType": "uint256",
"name": "roundId",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "proposalId",
"type": "uint256"
}
],
"name": "UserGovernanceVoteAlreadyReduced",
"type": "error"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "address",
"name": "newAddress",
"type": "address"
},
{
"indexed": true,
"internalType": "address",
"name": "oldAddress",
"type": "address"
}
],
"name": "B3TRAddressUpdated",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": false,
"internalType": "uint256",
"name": "newWeight",
"type": "uint256"
},
{
"indexed": false,
"internalType": "uint256",
"name": "oldWeight",
"type": "uint256"
}
],
"name": "ClaimWeightUpdated",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": false,
"internalType": "uint256",
"name": "newBlocks",
"type": "uint256"
},
{
"indexed": false,
"internalType": "uint256",
"name": "oldBlocks",
"type": "uint256"
}
],
"name": "EarlyAccessBlocksUpdated",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "address",
"name": "newAddress",
"type": "address"
},
{
"indexed": true,
"internalType": "address",
"name": "oldAddress",
"type": "address"
}
],
"name": "EmissionsAddressUpdated",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "uint256",
"name": "roundId",
"type": "uint256"
},
{
"indexed": false,
"internalType": "uint256",
"name": "actionsReduced",
"type": "uint256"
},
{
"indexed": false,
"internalType": "uint256",
"name": "newTotalActions",
"type": "uint256"
},
{
"indexed": false,
"internalType": "uint256",
"name": "newTotalWeightedActions",
"type": "uint256"
}
],
"name": "ExpectedActionsReduced",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": false,
"internalType": "uint256",
"name": "newFee",
"type": "uint256"
},
{
"indexed": false,
"internalType": "uint256",
"name": "oldFee",
"type": "uint256"
}
],
"name": "FeeCapUpdated",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": false,
"internalType": "uint64",
"name": "version",
"type": "uint64"
}
],
"name": "Initialized",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "address",
"name": "user",
"type": "address"
},
{
"indexed": true,
"internalType": "address",
"name": "relayer",
"type": "address"
}
],
"name": "PreferredRelayerSet",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "address",
"name": "relayer",
"type": "address"
},
{
"indexed": true,
"internalType": "address",
"name": "voter",
"type": "address"
},
{
"indexed": true,
"internalType": "uint256",
"name": "roundId",
"type": "uint256"
},
{
"indexed": false,
"internalType": "uint256",
"name": "actionCount",
"type": "uint256"
},
{
"indexed": false,
"internalType": "uint256",
"name": "weight",
"type": "uint256"
}
],
"name": "RelayerActionRegistered",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": false,
"internalType": "uint256",
"name": "newDenominator",
"type": "uint256"
},
{
"indexed": false,
"internalType": "uint256",
"name": "oldDenominator",
"type": "uint256"
}
],
"name": "RelayerFeeDenominatorUpdated",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": false,
"internalType": "uint256",
"name": "newFee",
"type": "uint256"
},
{
"indexed": false,
"internalType": "uint256",
"name": "oldFee",
"type": "uint256"
}
],
"name": "RelayerFeePercentageUpdated",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "address",
"name": "relayer",
"type": "address"
}
],
"name": "RelayerRegistered",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "address",
"name": "relayer",
"type": "address"
},
{
"indexed": true,
"internalType": "uint256",
"name": "roundId",
"type": "uint256"
},
{
"indexed": false,
"internalType": "uint256",
"name": "amount",
"type": "uint256"
}
],
"name": "RelayerRewardsClaimed",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "address",
"name": "relayer",
"type": "address"
}
],
"name": "RelayerUnregistered",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "uint256",
"name": "roundId",
"type": "uint256"
},
{
"indexed": false,
"internalType": "uint256",
"name": "amount",
"type": "uint256"
},
{
"indexed": false,
"internalType": "uint256",
"name": "totalRewards",
"type": "uint256"
}
],
"name": "RewardsDeposited",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "bytes32",
"name": "role",
"type": "bytes32"
},
{
"indexed": true,
"internalType": "bytes32",
"name": "previousAdminRole",
"type": "bytes32"
},
{
"indexed": true,
"internalType": "bytes32",
"name": "newAdminRole",
"type": "bytes32"
}
],
"name": "RoleAdminChanged",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "bytes32",
"name": "role",
"type": "bytes32"
},
{
"indexed": true,
"internalType": "address",
"name": "account",
"type": "address"
},
{
"indexed": true,
"internalType": "address",
"name": "sender",
"type": "address"
}
],
"name": "RoleGranted",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "bytes32",
"name": "role",
"type": "bytes32"
},
{
"indexed": true,
"internalType": "address",
"name": "account",
"type": "address"
},
{
"indexed": true,
"internalType": "address",
"name": "sender",
"type": "address"
}
],
"name": "RoleRevoked",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "uint256",
"name": "roundId",
"type": "uint256"
},
{
"indexed": false,
"internalType": "uint256",
"name": "totalAutoVoteUsers",
"type": "uint256"
},
{
"indexed": false,
"internalType": "uint256",
"name": "totalActions",
"type": "uint256"
},
{
"indexed": false,
"internalType": "uint256",
"name": "totalWeightedActions",
"type": "uint256"
},
{
"indexed": false,
"internalType": "uint256",
"name": "numRelayers",
"type": "uint256"
}
],
"name": "TotalAutoVotingActionsSet",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "address",
"name": "implementation",
"type": "address"
}
],
"name": "Upgraded",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": false,
"internalType": "uint256",
"name": "newWeight",
"type": "uint256"
},
{
"indexed": false,
"internalType": "uint256",
"name": "oldWeight",
"type": "uint256"
}
],
"name": "VoteWeightUpdated",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "address",
"name": "newAddress",
"type": "address"
},
{
"indexed": true,
"internalType": "address",
"name": "oldAddress",
"type": "address"
}
],
"name": "XAllocationVotingAddressUpdated",
"type": "event"
},
{
"inputs": [],
"name": "DEFAULT_ADMIN_ROLE",
"outputs": [
{
"internalType": "bytes32",
"name": "",
"type": "bytes32"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "POOL_ADMIN_ROLE",
"outputs": [
{
"internalType": "bytes32",
"name": "",
"type": "bytes32"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "UPGRADER_ROLE",
"outputs": [
{
"internalType": "bytes32",
"name": "",
"type": "bytes32"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "UPGRADE_INTERFACE_VERSION",
"outputs": [
{
"internalType": "string",
"name": "",
"type": "string"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "totalReward",
"type": "uint256"
}
],
"name": "calculateRelayerFee",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "roundId",
"type": "uint256"
},
{
"internalType": "address",
"name": "relayer",
"type": "address"
}
],
"name": "claimRewards",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "relayer",
"type": "address"
},
{
"internalType": "uint256",
"name": "roundId",
"type": "uint256"
}
],
"name": "claimableRewards",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "roundId",
"type": "uint256"
}
],
"name": "completedWeightedActions",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "amount",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "roundId",
"type": "uint256"
}
],
"name": "deposit",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [],
"name": "getB3trAddress",
"outputs": [
{
"internalType": "address",
"name": "",
"type": "address"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "getClaimWeight",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "getEarlyAccessBlocks",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "getEmissionsAddress",
"outputs": [
{
"internalType": "address",
"name": "",
"type": "address"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "getFeeCap",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "roundId",
"type": "uint256"
}
],
"name": "getMissedAutoVotingUsersCount",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "user",
"type": "address"
}
],
"name": "getPreferredRelayer",
"outputs": [
{
"internalType": "address",
"name": "",
"type": "address"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "getRegisteredRelayers",
"outputs": [
{
"internalType": "address[]",
"name": "",
"type": "address[]"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "getRelayerFeeDenominator",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "getRelayerFeePercentage",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "bytes32",
"name": "role",
"type": "bytes32"
}
],
"name": "getRoleAdmin",
"outputs": [
{
"internalType": "bytes32",
"name": "",
"type": "bytes32"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "roundId",
"type": "uint256"
}
],
"name": "getTotalRewards",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "getVoteWeight",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "getXAllocationVotingAddress",
"outputs": [
{
"internalType": "address",
"name": "",
"type": "address"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "bytes32",
"name": "role",
"type": "bytes32"
},
{
"internalType": "address",
"name": "account",
"type": "address"
}
],
"name": "grantRole",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "bytes32",
"name": "role",
"type": "bytes32"
},
{
"internalType": "address",
"name": "account",
"type": "address"
}
],
"name": "hasRole",
"outputs": [
{
"internalType": "bool",
"name": "",
"type": "bool"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "admin",
"type": "address"
},
{
"internalType": "address",
"name": "upgrader",
"type": "address"
},
{
"internalType": "address",
"name": "b3trAddress",
"type": "address"
},
{
"internalType": "address",
"name": "emissionsAddress",
"type": "address"
},
{
"internalType": "address",
"name": "xAllocationVotingAddress",
"type": "address"
}
],
"name": "initialize",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [],
"name": "initializeV2",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [],
"name": "initializeV3",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "roundId",
"type": "uint256"
}
],
"name": "isClaimEarlyAccessActive",
"outputs": [
{
"internalType": "bool",
"name": "",
"type": "bool"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "relayer",
"type": "address"
}
],
"name": "isRegisteredRelayer",
"outputs": [
{
"internalType": "bool",
"name": "",
"type": "bool"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "roundId",
"type": "uint256"
}
],
"name": "isRewardClaimable",
"outputs": [
{
"internalType": "bool",
"name": "",
"type": "bool"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "roundId",
"type": "uint256"
}
],
"name": "isVoteEarlyAccessActive",
"outputs": [
{
"internalType": "bool",
"name": "",
"type": "bool"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "proxiableUUID",
"outputs": [
{
"internalType": "bytes32",
"name": "",
"type": "bytes32"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "roundId",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "userCount",
"type": "uint256"
}
],
"name": "reduceExpectedActionsForRound",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "roundId",
"type": "uint256"
},
{
"internalType": "address",
"name": "user",
"type": "address"
}
],
"name": "reduceUserAllocationVote",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "roundId",
"type": "uint256"
},
{
"internalType": "address",
"name": "user",
"type": "address"
},
{
"internalType": "uint256",
"name": "proposalId",
"type": "uint256"
}
],
"name": "reduceUserGovernanceVote",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "relayer",
"type": "address"
}
],
"name": "registerRelayer",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "relayer",
"type": "address"
},
{
"internalType": "address",
"name": "voter",
"type": "address"
},
{
"internalType": "uint256",
"name": "roundId",
"type": "uint256"
},
{
"internalType": "enum RelayerAction",
"name": "action",
"type": "uint8"
}
],
"name": "registerRelayerAction",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "bytes32",
"name": "role",
"type": "bytes32"
},
{
"internalType": "address",
"name": "callerConfirmation",
"type": "address"
}
],
"name": "renounceRole",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "bytes32",
"name": "role",
"type": "bytes32"
},
{
"internalType": "address",
"name": "account",
"type": "address"
}
],
"name": "revokeRole",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "b3trAddress",
"type": "address"
}
],
"name": "setB3TRAddress",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "newWeight",
"type": "uint256"
}
],
"name": "setClaimWeight",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "blocks",
"type": "uint256"
}
],
"name": "setEarlyAccessBlocks",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "emissionsAddress",
"type": "address"
}
],
"name": "setEmissionsAddress",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "newFeeCap",
"type": "uint256"
}
],
"name": "setFeeCap",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "relayer",
"type": "address"
}
],
"name": "setPreferredRelayer",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "newDenominator",
"type": "uint256"
}
],
"name": "setRelayerFeeDenominator",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "newFeePercentage",
"type": "uint256"
}
],
"name": "setRelayerFeePercentage",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "roundId",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "totalAutoVotingUsers",
"type": "uint256"
}
],
"name": "setTotalActionsForRound",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "roundId",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "allocationUsers",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "governanceUsers",
"type": "uint256"
},
{
"internalType": "uint256[]",
"name": "activeProposalIds",
"type": "uint256[]"
}
],
"name": "setTotalActionsForRoundWithGovernance",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "newWeight",
"type": "uint256"
}
],
"name": "setVoteWeight",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "xAllocationVotingAddress",
"type": "address"
}
],
"name": "setXAllocationVotingAddress",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "bytes4",
"name": "interfaceId",
"type": "bytes4"
}
],
"name": "supportsInterface",
"outputs": [
{
"internalType": "bool",
"name": "",
"type": "bool"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "roundId",
"type": "uint256"
}
],
"name": "totalActions",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "relayer",
"type": "address"
},
{
"internalType": "uint256",
"name": "roundId",
"type": "uint256"
}
],
"name": "totalRelayerActions",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "relayer",
"type": "address"
},
{
"internalType": "uint256",
"name": "roundId",
"type": "uint256"
}
],
"name": "totalRelayerWeightedActions",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "roundId",
"type": "uint256"
}
],
"name": "totalWeightedActions",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "relayer",
"type": "address"
}
],
"name": "unregisterRelayer",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "newImplementation",
"type": "address"
},
{
"internalType": "bytes",
"name": "data",
"type": "bytes"
}
],
"name": "upgradeToAndCall",
"outputs": [],
"stateMutability": "payable",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "roundId",
"type": "uint256"
},
{
"internalType": "address",
"name": "voter",
"type": "address"
},
{
"internalType": "address",
"name": "caller",
"type": "address"
}
],
"name": "validateClaimDuringEarlyAccess",
"outputs": [],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "roundId",
"type": "uint256"
},
{
"internalType": "address",
"name": "voter",
"type": "address"
},
{
"internalType": "address",
"name": "caller",
"type": "address"
}
],
"name": "validateVoteDuringEarlyAccess",
"outputs": [],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "version",
"outputs": [
{
"internalType": "string",
"name": "",
"type": "string"
}
],
"stateMutability": "pure",
"type": "function"
}
],
"bytecode": "0x60a0604052306080523480156200001557600080fd5b506200002062000026565b620000da565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00805468010000000000000000900460ff1615620000775760405163f92ee8a960e01b815260040160405180910390fd5b80546001600160401b0390811614620000d75780546001600160401b0319166001600160401b0390811782556040519081527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a15b50565b60805161409a6200010460003960008181613390015281816133b90152613501015261409a6000f3fe6080604052600436106102bd5760003560e01c806301ffc9a7146102c25780631459457a146102f757806314d9230714610319578063189ca3161461033957806318b9baa1146103595780631bc3a67314610379578063241f9e2b1461039b578063248a9ca3146103c957806324a697a3146103e957806325d3155e146104095780632f2ff15d1461041e578063338111e71461043e57806336568abe1461045e57806336a7c1341461047e57806338e454b1146104935780633bb18a76146104a85780633d009cee146104c857806347b0b33e146104e857806348c2bd78146105085780634f1ef286146105285780634f6981ee1461053b57806352d1902d1461055b57806354fd4d5014610570578063552164ee146105a357806356f1612f146105c357806357181609146105e35780635ae1cd14146106035780635cd8a76b146106235780635f72790a1461063857806362f2947814610658578063650e8a761461066d578063675d0f8d1461068d5780636bb07c73146106ad5780636c7b69cb146106cd5780636cf88e73146106ed5780637f5e98bd1461070d578063855302011461072257806389a96d35146107425780638d2340a01461076257806391d14854146107775780639858b78a14610797578063a217fddf146107b7578063ac4aa16b146107cc578063ad3cb1cc146107ee578063af54c53a1461081f578063b7fe075a1461083f578063b8f6dba714610854578063be9412df14610876578063bfaabf311461088b578063d428cffc146108ab578063d547741f146108c0578063d5684392146108e0578063d94290e514610900578063dc404a0e14610920578063df171b0c14610940578063e2bbb15814610960578063e5ed920b14610980578063e78168b5146109a0578063e7dfe672146109c0578063f5e57b39146109e0578063f71fdc1614610a00578063f72c0d8b14610a20575b600080fd5b3480156102ce57600080fd5b506102e26102dd3660046138ea565b610a42565b60405190151581526020015b60405180910390f35b34801561030357600080fd5b50610317610312366004613930565b610a79565b005b34801561032557600080fd5b50610317610334366004613995565b610e76565b34801561034557600080fd5b506103176103543660046139b0565b61108f565b34801561036557600080fd5b506103176103743660046139c9565b61116b565b34801561038557600080fd5b5061038e611281565b6040516102ee91906139fe565b3480156103a757600080fd5b506103bb6103b6366004613a12565b61129f565b6040519081526020016102ee565b3480156103d557600080fd5b506103bb6103e43660046139b0565b6112d4565b3480156103f557600080fd5b506103176104043660046139b0565b6112f4565b34801561041557600080fd5b5061038e611384565b34801561042a57600080fd5b50610317610439366004613a3c565b6113a2565b34801561044a57600080fd5b506103bb610459366004613a12565b6113c4565b34801561046a57600080fd5b50610317610479366004613a3c565b6114f0565b34801561048a57600080fd5b506103bb611528565b34801561049f57600080fd5b5061031761153d565b3480156104b457600080fd5b506103176104c3366004613995565b6115de565b3480156104d457600080fd5b506102e26104e33660046139b0565b6116d8565b3480156104f457600080fd5b50610317610503366004613995565b611792565b34801561051457600080fd5b506102e26105233660046139b0565b61187b565b610317610536366004613aae565b611918565b34801561054757600080fd5b506103bb6105563660046139b0565b611937565b34801561056757600080fd5b506103bb6119b5565b34801561057c57600080fd5b506040805180820190915260018152603360f81b60208201525b6040516102ee9190613b77565b3480156105af57600080fd5b506103bb6105be3660046139b0565b6119d2565b3480156105cf57600080fd5b506103176105de366004613995565b6119f2565b3480156105ef57600080fd5b506103176105fe366004613995565b611adb565b34801561060f57600080fd5b5061031761061e366004613baa565b611bcd565b34801561062f57600080fd5b50610317611d2e565b34801561064457600080fd5b50610317610653366004613be6565b611d3a565b34801561066457600080fd5b506103bb611d9e565b34801561067957600080fd5b5061038e610688366004613995565b611db3565b34801561069957600080fd5b506103176106a83660046139b0565b611de4565b3480156106b957600080fd5b506103176106c83660046139b0565b611ed6565b3480156106d957600080fd5b506103176106e8366004613a3c565b611fb0565b3480156106f957600080fd5b50610317610708366004613c08565b612232565b34801561071957600080fd5b506103bb6123fe565b34801561072e57600080fd5b506103bb61073d3660046139b0565b612413565b34801561074e57600080fd5b5061031761075d3660046139b0565b612433565b34801561076e57600080fd5b5061038e612527565b34801561078357600080fd5b506102e2610792366004613a3c565b612542565b3480156107a357600080fd5b506103bb6107b2366004613a12565b612578565b3480156107c357600080fd5b506103bb600081565b3480156107d857600080fd5b506107e16125ad565b6040516102ee9190613c5b565b3480156107fa57600080fd5b50610596604051806040016040528060058152602001640352e302e360dc1b81525081565b34801561082b57600080fd5b5061031761083a366004613995565b612619565b34801561084b57600080fd5b506103bb6126d2565b34801561086057600080fd5b506103bb600080516020613f6583398151915281565b34801561088257600080fd5b506103bb6126e7565b34801561089757600080fd5b506103176108a6366004613ca8565b6126fc565b3480156108b757600080fd5b506103bb612864565b3480156108cc57600080fd5b506103176108db366004613a3c565b612879565b3480156108ec57600080fd5b506102e26108fb366004613995565b612895565b34801561090c57600080fd5b5061031761091b3660046139b0565b6128c5565b34801561092c57600080fd5b506103bb61093b3660046139b0565b612994565b34801561094c57600080fd5b506103bb61095b3660046139b0565b6129de565b34801561096c57600080fd5b5061031761097b366004613be6565b6129fe565b34801561098c57600080fd5b5061031761099b366004613baa565b612b97565b3480156109ac57600080fd5b506103bb6109bb3660046139b0565b612ce7565b3480156109cc57600080fd5b506103176109db366004613be6565b612d07565b3480156109ec57600080fd5b506102e26109fb3660046139b0565b612dc8565b348015610a0c57600080fd5b50610317610a1b366004613a3c565b612e0c565b348015610a2c57600080fd5b506103bb600080516020613fa583398151915281565b60006001600160e01b03198216637965db0b60e01b1480610a7357506301ffc9a760e01b6001600160e01b03198316145b92915050565b6000610a83612ef6565b805490915060ff600160401b82041615906001600160401b0316600081158015610aaa5750825b90506000826001600160401b03166001148015610ac65750303b155b905081158015610ad4575080155b15610af25760405163f92ee8a960e01b815260040160405180910390fd5b84546001600160401b03191660011785558315610b1b57845460ff60401b1916600160401b1785555b6001600160a01b038a16610b8f5760405162461bcd60e51b815260206004820152603060248201527f52656c6179657252657761726473506f6f6c3a2061646d696e2063616e6e6f7460448201526f206265207a65726f206164647265737360801b60648201526084015b60405180910390fd5b6001600160a01b038916610c015760405162461bcd60e51b815260206004820152603360248201527f52656c6179657252657761726473506f6f6c3a2075706772616465722063616e6044820152726e6f74206265207a65726f206164647265737360681b6064820152608401610b86565b6001600160a01b038816610c6f5760405162461bcd60e51b815260206004820152602f60248201527f52656c6179657252657761726473506f6f6c3a20623374722063616e6e6f742060448201526e6265207a65726f206164647265737360881b6064820152608401610b86565b6001600160a01b038716610ce25760405162461bcd60e51b815260206004820152603460248201527f52656c6179657252657761726473506f6f6c3a20656d697373696f6e732063616044820152736e6e6f74206265207a65726f206164647265737360601b6064820152608401610b86565b6001600160a01b038616610d5d5760405162461bcd60e51b815260206004820152603c60248201527f52656c6179657252657761726473506f6f6c3a2078416c6c6f636174696f6e5660448201527b6f74696e672063616e6e6f74206265207a65726f206164647265737360201b6064820152608401610b86565b610d65612f1a565b610d6d612f24565b610d75612f1a565b610d8060008b612f34565b50610d99600080516020613fa58339815191528a612f34565b50610db2600080516020613f658339815191528b612f34565b506000610dbd612fd5565b80546001600160a01b03808c166001600160a01b0319928316178355600180840180548d8416908516179055600284018054928c1692909316919091179091556003600b830155600c820155600a60108201556064601182015568056bc75e2d63100000601282015562069780600f90910155508315610e6a57845460ff60401b19168555604051600080516020613f8583398151915290610e6190600190613d6a565b60405180910390a15b50505050505050505050565b6001600160a01b0381163314801590610ea45750610ea2600080516020613f6583398151915233612542565b155b8015610eb85750610eb6600033612542565b155b15610eda573381604051630147b5b160e31b8152600401610b86929190613d7e565b6000610ee4612fd5565b6001600160a01b0383166000908152600d8201602052604090205490915060ff16610f24578160405163138cb58960e31b8152600401610b8691906139fe565b6001600160a01b0382166000908152600d820160205260408120805460ff191690555b600e82015481101561105657826001600160a01b031682600e018281548110610f7257610f72613d98565b6000918252602090912001546001600160a01b03160361104457600e82018054610f9e90600190613dc4565b81548110610fae57610fae613d98565b600091825260209091200154600e830180546001600160a01b039092169183908110610fdc57610fdc613d98565b9060005260206000200160006101000a8154816001600160a01b0302191690836001600160a01b0316021790555081600e0180548061101d5761101d613dd7565b600082815260209020810160001990810180546001600160a01b0319169055019055611056565b8061104e81613ded565b915050610f47565b506040516001600160a01b038316907f490a66cc56c789979052c7052fc0c10a6c4627d8e6165caec80db97a4c38352190600090a25050565b600080516020613f658339815191526110a88133612542565b806110b957506110b9600033612542565b6110d55760405162461bcd60e51b8152600401610b8690613e06565b81600003611113576040516305519d6f60e51b815260206004820152600a6024820152691d9bdd1955d95a59da1d60b21b6044820152606401610b86565b600061111d612fd5565b600b8101805490859055604051919250907fc6d810f6c3aa465110416db0d540c72fcfe818503d1580fd90df38a482f81af89061115d9086908490613e63565b60405180910390a150505050565b600080516020613f658339815191526111848133612542565b806111955750611195600033612542565b6111b15760405162461bcd60e51b8152600401610b8690613e06565b60006111bb612fd5565b600086815260168201602090815260408083206001600160a01b0389168452825280832087845290915290205490915060ff1615611225576040516313aa2f7760e11b81526001600160a01b03851660048201526024810186905260448101849052606401610b86565b600085815260168201602090815260408083206001600160a01b038816845282528083208684529091529020805460ff19166001908117909155600b82015461126f918791612ff9565b61127a8186866131a4565b5050505050565b60008061128c612fd5565b600201546001600160a01b031692915050565b6000806112aa612fd5565b6000938452600401602090815260408085206001600160a01b039690961685529490525050205490565b6000806112df6132dc565b60009384526020525050604090206001015490565b600080516020613f6583398151915261130d8133612542565b8061131e575061131e600033612542565b61133a5760405162461bcd60e51b8152600401610b8690613e06565b6000611344612fd5565b600f8101805490859055604051919250907f9f49ab705704ba5579e12282116057bb42856ad21fc913b1786bf1effc722b8d9061115d9086908490613e63565b60008061138f612fd5565b600101546001600160a01b031692915050565b6113ab826112d4565b6113b481613300565b6113be8383612f34565b50505050565b6000806113cf612fd5565b604051631e804e7760e11b8152600481018590529091503090633d009cee90602401602060405180830381865afa15801561140e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114329190613e71565b611440576000915050610a73565b600083815260088201602090815260408083206001600160a01b038816845290915290205460ff1615611477576000915050610a73565b600083815260058201602090815260408083206001600160a01b038816845282528083205486845260078501835281842054600386019093529220548215806114be575081155b156114d0576000945050505050610a73565b816114db8483613e93565b6114e59190613eaa565b979650505050505050565b6001600160a01b03811633146115195760405163334bd91960e11b815260040160405180910390fd5b611523828261330d565b505050565b600080611533612fd5565b6012015492915050565b60036000611549612ef6565b8054909150600160401b900460ff1680611570575080546001600160401b03808416911610155b1561158e5760405163f92ee8a960e01b815260040160405180910390fd5b80546001600160481b0319166001600160401b03831617600160401b1760ff60401b19168155604051600080516020613f85833981519152906115d2908490613d6a565b60405180910390a15050565b600080516020613f658339815191526115f78133612542565b806116085750611608600033612542565b6116245760405162461bcd60e51b8152600401610b8690613e06565b6001600160a01b038216611676576040516305519d6f60e51b815260206004820152601860248201527778416c6c6f636174696f6e566f74696e674164647265737360401b6044820152606401610b86565b6000611680612fd5565b6002810180546001600160a01b038681166001600160a01b03198316811790935560405193945016918291907f897acaec25783ce4cf8ff29c16715e089a40d285e2e5d6fcf567af00f471425990600090a350505050565b6000806116e3612fd5565b600181015460405163e52ef17f60e01b8152600481018690529192506001600160a01b03169063e52ef17f90602401602060405180830381865afa92505050801561174b575060408051601f3d908101601f1916820190925261174891810190613e71565b60015b6117585750600092915050565b80611767575060009392505050565b506000928352600781016020908152604080852054600a909301909152909220549190911015919050565b600080516020613f658339815191526117ab8133612542565b806117bc57506117bc600033612542565b6117d85760405162461bcd60e51b8152600401610b8690613e06565b6001600160a01b03821661181d576040516305519d6f60e51b815260206