UNPKG

@vechain/vebetterdao-contracts

Version:

Open-source repository that houses the smart contracts powering the decentralized VeBetterDAO on the VeChain Thor blockchain.

1,902 lines 124 kB
{ "_format": "hh-sol-artifact-1", "contractName": "XAllocationVotingV7", "sourceName": "contracts/deprecated/V7/XAllocationVotingV7.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": "account", "type": "address" } ], "name": "B3TRGovernorOnlyExecutor", "type": "error" }, { "inputs": [], "name": "CheckpointUnorderedInsertion", "type": "error" }, { "inputs": [], "name": "DuplicateAppVote", "type": "error" }, { "inputs": [ { "internalType": "address", "name": "implementation", "type": "address" } ], "name": "ERC1967InvalidImplementation", "type": "error" }, { "inputs": [], "name": "ERC1967NonPayable", "type": "error" }, { "inputs": [], "name": "FailedInnerCall", "type": "error" }, { "inputs": [ { "internalType": "address", "name": "voter", "type": "address" } ], "name": "GovernorAlreadyCastVote", "type": "error" }, { "inputs": [ { "internalType": "bytes32", "name": "appId", "type": "bytes32" } ], "name": "GovernorAppNotAvailableForVoting", "type": "error" }, { "inputs": [], "name": "GovernorInsufficientVotingPower", "type": "error" }, { "inputs": [ { "internalType": "uint256", "name": "quorumNumerator", "type": "uint256" }, { "internalType": "uint256", "name": "quorumDenominator", "type": "uint256" } ], "name": "GovernorInvalidQuorumFraction", "type": "error" }, { "inputs": [ { "internalType": "uint256", "name": "votingPeriod", "type": "uint256" } ], "name": "GovernorInvalidVotingPeriod", "type": "error" }, { "inputs": [ { "internalType": "uint256", "name": "roundId", "type": "uint256" } ], "name": "GovernorNonexistentRound", "type": "error" }, { "inputs": [ { "internalType": "address", "name": "person", "type": "address" }, { "internalType": "string", "name": "reason", "type": "string" } ], "name": "GovernorPersonhoodVerificationFailed", "type": "error" }, { "inputs": [ { "internalType": "uint256", "name": "roundId", "type": "uint256" }, { "internalType": "enum IXAllocationVotingGovernorV7.RoundState", "name": "current", "type": "uint8" }, { "internalType": "bytes32", "name": "expectedStates", "type": "bytes32" } ], "name": "GovernorUnexpectedRoundState", "type": "error" }, { "inputs": [ { "internalType": "uint256", "name": "threshold", "type": "uint256" }, { "internalType": "uint256", "name": "votes", "type": "uint256" } ], "name": "GovernorVotingThresholdNotMet", "type": "error" }, { "inputs": [], "name": "InvalidInitialization", "type": "error" }, { "inputs": [], "name": "NotInitializing", "type": "error" }, { "inputs": [ { "internalType": "uint8", "name": "bits", "type": "uint8" }, { "internalType": "uint256", "name": "value", "type": "uint256" } ], "name": "SafeCastOverflowedUintDowncast", "type": "error" }, { "inputs": [], "name": "UUPSUnauthorizedCallContext", "type": "error" }, { "inputs": [ { "internalType": "bytes32", "name": "slot", "type": "bytes32" } ], "name": "UUPSUnsupportedProxiableUUID", "type": "error" }, { "inputs": [ { "internalType": "address", "name": "person", "type": "address" } ], "name": "XAllocationVotingPersonhoodVerificationFailed", "type": "error" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "voter", "type": "address" }, { "indexed": true, "internalType": "uint256", "name": "roundId", "type": "uint256" }, { "indexed": false, "internalType": "bytes32[]", "name": "appsIds", "type": "bytes32[]" }, { "indexed": false, "internalType": "uint256[]", "name": "voteWeights", "type": "uint256[]" } ], "name": "AllocationVoteCast", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "address", "name": "oldContractAddress", "type": "address" }, { "indexed": false, "internalType": "address", "name": "newContractAddress", "type": "address" } ], "name": "EmissionsSet", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "uint64", "name": "version", "type": "uint64" } ], "name": "Initialized", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "uint256", "name": "oldQuorumNumerator", "type": "uint256" }, { "indexed": false, "internalType": "uint256", "name": "newQuorumNumerator", "type": "uint256" } ], "name": "QuorumNumeratorUpdated", "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": false, "internalType": "uint256", "name": "roundId", "type": "uint256" }, { "indexed": false, "internalType": "address", "name": "proposer", "type": "address" }, { "indexed": false, "internalType": "uint256", "name": "voteStart", "type": "uint256" }, { "indexed": false, "internalType": "uint256", "name": "voteEnd", "type": "uint256" }, { "indexed": false, "internalType": "bytes32[]", "name": "appsIds", "type": "bytes32[]" } ], "name": "RoundCreated", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "implementation", "type": "address" } ], "name": "Upgraded", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "address", "name": "oldContractAddress", "type": "address" }, { "indexed": false, "internalType": "address", "name": "newContractAddress", "type": "address" } ], "name": "VeBetterPassportSet", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "address", "name": "oldContractAddress", "type": "address" }, { "indexed": false, "internalType": "address", "name": "newContractAddress", "type": "address" } ], "name": "VoterRewardsSet", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "uint256", "name": "oldVotingPeriod", "type": "uint256" }, { "indexed": false, "internalType": "uint256", "name": "newVotingPeriod", "type": "uint256" } ], "name": "VotingPeriodSet", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "uint256", "name": "oldVotingThreshold", "type": "uint256" }, { "indexed": false, "internalType": "uint256", "name": "newVotingThreshold", "type": "uint256" } ], "name": "VotingThresholdSet", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "address", "name": "oldContractAddress", "type": "address" }, { "indexed": false, "internalType": "address", "name": "newContractAddress", "type": "address" } ], "name": "X2EarnAppsSet", "type": "event" }, { "inputs": [], "name": "CLOCK_MODE", "outputs": [ { "internalType": "string", "name": "", "type": "string" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "CONTRACTS_ADDRESS_MANAGER_ROLE", "outputs": [ { "internalType": "bytes32", "name": "", "type": "bytes32" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "COUNTING_MODE", "outputs": [ { "internalType": "string", "name": "", "type": "string" } ], "stateMutability": "pure", "type": "function" }, { "inputs": [], "name": "DEFAULT_ADMIN_ROLE", "outputs": [ { "internalType": "bytes32", "name": "", "type": "bytes32" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "GOVERNANCE_ROLE", "outputs": [ { "internalType": "bytes32", "name": "", "type": "bytes32" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "ROUND_STARTER_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": [], "name": "appSharesCap", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "b3trGovernor", "outputs": [ { "internalType": "contract IB3TRGovernor", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "baseAllocationPercentage", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "roundId", "type": "uint256" }, { "internalType": "bytes32[]", "name": "appIds", "type": "bytes32[]" }, { "internalType": "uint256[]", "name": "voteWeights", "type": "uint256[]" } ], "name": "castVote", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "clock", "outputs": [ { "internalType": "uint48", "name": "", "type": "uint48" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "currentRoundDeadline", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "currentRoundId", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "currentRoundSnapshot", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "emissions", "outputs": [ { "internalType": "contract IEmissions", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "roundId", "type": "uint256" } ], "name": "finalizeRound", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "roundId", "type": "uint256" } ], "name": "getAppIdsOfRound", "outputs": [ { "internalType": "bytes32[]", "name": "", "type": "bytes32[]" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "roundId", "type": "uint256" }, { "internalType": "bytes32", "name": "app", "type": "bytes32" } ], "name": "getAppVotes", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "roundId", "type": "uint256" }, { "internalType": "bytes32", "name": "app", "type": "bytes32" } ], "name": "getAppVotesQF", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "roundId", "type": "uint256" } ], "name": "getAppsOfRound", "outputs": [ { "components": [ { "internalType": "bytes32", "name": "id", "type": "bytes32" }, { "internalType": "address", "name": "teamWalletAddress", "type": "address" }, { "internalType": "string", "name": "name", "type": "string" }, { "internalType": "string", "name": "metadataURI", "type": "string" }, { "internalType": "uint256", "name": "createdAtTimestamp", "type": "uint256" }, { "internalType": "bool", "name": "appAvailableForAllocationVoting", "type": "bool" } ], "internalType": "struct X2EarnAppsDataTypes.AppWithDetailsReturnType[]", "name": "", "type": "tuple[]" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "account", "type": "address" }, { "internalType": "uint256", "name": "timepoint", "type": "uint256" } ], "name": "getDepositVotingPower", "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": "getRound", "outputs": [ { "components": [ { "internalType": "address", "name": "proposer", "type": "address" }, { "internalType": "uint48", "name": "voteStart", "type": "uint48" }, { "internalType": "uint32", "name": "voteDuration", "type": "uint32" } ], "internalType": "struct RoundsStorageUpgradeableV7.RoundCore", "name": "", "type": "tuple" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "roundId", "type": "uint256" } ], "name": "getRoundAppSharesCap", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "roundId", "type": "uint256" } ], "name": "getRoundBaseAllocationPercentage", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "account", "type": "address" }, { "internalType": "uint256", "name": "timepoint", "type": "uint256" } ], "name": "getVotes", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "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": "uint256", "name": "roundId", "type": "uint256" }, { "internalType": "address", "name": "user", "type": "address" } ], "name": "hasVoted", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "user", "type": "address" } ], "name": "hasVotedOnce", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "components": [ { "internalType": "contract IVotes", "name": "vot3Token", "type": "address" }, { "internalType": "uint256", "name": "quorumPercentage", "type": "uint256" }, { "internalType": "uint32", "name": "initialVotingPeriod", "type": "uint32" }, { "internalType": "address", "name": "timeLock", "type": "address" }, { "internalType": "contract IVoterRewards", "name": "voterRewards", "type": "address" }, { "internalType": "contract IEmissions", "name": "emissions", "type": "address" }, { "internalType": "address[]", "name": "admins", "type": "address[]" }, { "internalType": "address", "name": "upgrader", "type": "address" }, { "internalType": "address", "name": "contractsAddressManager", "type": "address" }, { "internalType": "contract IX2EarnApps", "name": "x2EarnAppsAddress", "type": "address" }, { "internalType": "uint256", "name": "baseAllocationPercentage", "type": "uint256" }, { "internalType": "uint256", "name": "appSharesCap", "type": "uint256" }, { "internalType": "uint256", "name": "votingThreshold", "type": "uint256" } ], "internalType": "struct XAllocationVotingV7.InitializationData", "name": "data", "type": "tuple" } ], "name": "initialize", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "contract IVeBetterPassport", "name": "_veBetterPassport", "type": "address" } ], "name": "initializeV2", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "contract IB3TRGovernor", "name": "_b3trGovernor", "type": "address" } ], "name": "initializeV7", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "roundId", "type": "uint256" } ], "name": "isActive", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "bytes32", "name": "appId", "type": "bytes32" }, { "internalType": "uint256", "name": "roundId", "type": "uint256" } ], "name": "isEligibleForVote", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "roundId", "type": "uint256" } ], "name": "isFinalized", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "roundId", "type": "uint256" } ], "name": "latestSucceededRoundId", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "name", "outputs": [ { "internalType": "string", "name": "", "type": "string" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "proxiableUUID", "outputs": [ { "internalType": "bytes32", "name": "", "type": "bytes32" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "blockNumber", "type": "uint256" } ], "name": "quorum", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "quorumDenominator", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "timepoint", "type": "uint256" } ], "name": "quorumNumerator", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "quorumNumerator", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "roundId", "type": "uint256" } ], "name": "quorumReached", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "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": "uint256", "name": "roundId", "type": "uint256" } ], "name": "roundDeadline", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "roundId", "type": "uint256" } ], "name": "roundProposer", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "roundId", "type": "uint256" } ], "name": "roundQuorum", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "roundId", "type": "uint256" } ], "name": "roundSnapshot", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "appSharesCap_", "type": "uint256" } ], "name": "setAppSharesCap", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "contract IB3TRGovernor", "name": "newB3TRGovernor", "type": "address" } ], "name": "setB3TRGovernor", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "baseAllocationPercentage_", "type": "uint256" } ], "name": "setBaseAllocationPercentage", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "contract IEmissions", "name": "newEmissions", "type": "address" } ], "name": "setEmissionsAddress", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "contract IVeBetterPassport", "name": "newVeBetterPassport", "type": "address" } ], "name": "setVeBetterPassport", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "contract IVoterRewards", "name": "newVoterRewards", "type": "address" } ], "name": "setVoterRewardsAddress", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint32", "name": "newVotingPeriod", "type": "uint32" } ], "name": "setVotingPeriod", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "newVotingThreshold", "type": "uint256" } ], "name": "setVotingThreshold", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "contract IX2EarnApps", "name": "newX2EarnApps", "type": "address" } ], "name": "setX2EarnAppsAddress", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "startNewRound", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "roundId", "type": "uint256" } ], "name": "state", "outputs": [ { "internalType": "enum IXAllocationVotingGovernorV7.RoundState", "name": "", "type": "uint8" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "bytes4", "name": "interfaceId", "type": "bytes4" } ], "name": "supportsInterface", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "token", "outputs": [ { "internalType": "contract IERC5805", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "roundId", "type": "uint256" } ], "name": "totalVoters", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "roundId", "type": "uint256" } ], "name": "totalVotes", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "roundId", "type": "uint256" } ], "name": "totalVotesQF", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "newQuorumNumerator", "type": "uint256" } ], "name": "updateQuorumNumerator", "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": [], "name": "veBetterPassport", "outputs": [ { "internalType": "contract IVeBetterPassport", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "version", "outputs": [ { "internalType": "string", "name": "", "type": "string" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "voterRewards", "outputs": [ { "internalType": "contract IVoterRewards", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "votingPeriod", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "votingThreshold", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "x2EarnApps", "outputs": [ { "internalType": "contract IX2EarnApps", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" } ], "bytecode": "0x60a0604052306080523480156200001557600080fd5b506200002062000026565b620000da565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00805468010000000000000000900460ff1615620000775760405163f92ee8a960e01b815260040160405180910390fd5b80546001600160401b0390811614620000d75780546001600160401b0319166001600160401b0390811782556040519081527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a15b50565b60805161509362000104600039600081816125a3015281816125cc015261271601526150936000f3fe6080604052600436106103565760003560e01c806250ea6f1461035b57806301ffc9a71461038657806302a251a3146103b657806306f3f9e6146103d957806306fdde03146103fb5780630a0e74ef1461041d5780630eca87fb1461043d57806319e6e1581461045d5780632267716c1461047d578063248a9ca314610492578063291605f7146104b257806329b6eca9146104df5780632f2ff15d146104ff578063300973771461051f57806333653f5d1461053f57806333727c4d146105545780633469f6e21461057457806336568abe146105945780633e4f49e6146105b457806343859632146105e1578063498d91bf146106015780634bb5181a146106215780634bf5d7e9146106415780634f1ef2861461065657806352d1902d146106695780635320a1471461067e57806353ed63991461069e57806354fd4d50146106be578063561b64ef146106e857806357181609146106fd578063593728121461071d57806359529edd1461073257806360c4247f14610752578063628277331461077257806374038935146107875780637893d736146107a757806378a81336146107bc5780637ace2485146107dc57806382afd23b14610809578063836761e0146108295780638ab52d4b146108495780638f1327c01461085e57806391d14854146108b757806391ddadf4146108d7578063952f21331461090357806397c3d334146109255780639aeb962b146109395780639cbe5efd146109595780639fb027021461096e578063a217fddf1461098e578063a3844e11146109a3578063a56b5765146109b8578063a7713a70146109d8578063ad3cb1cc146109ed578063b25d6f6214610a1e578063b3c93dab14610a3e578063bb7de6d414610a5e578063bd85948c14610a73578063bed7301014610a88578063c048f6c914610aa8578063cd669a7214610ac8578063d06efeda14610aea578063d3a368bd14610b0a578063d4a8dd9814610b2a578063d547741f14610b4a578063d68b4c3614610b6a578063dd4e2ba514610b8a578063e540d01d14610b9f578063e7ad2bed14610bbf578063eb9019d414610bdf578063f36c8f5c14610bff578063f5fae13614610c21578063f72c0d8b14610c41578063f8ce560a14610c63578063fb03ec6f14610c83578063fc0c546a14610ca3575b600080fd5b34801561036757600080fd5b50610370610cb8565b60405161037d919061426e565b60405180910390f35b34801561039257600080fd5b506103a66103a1366004614282565b610cd6565b604051901515815260200161037d565b3480156103c257600080fd5b506103cb610ce7565b60405190815260200161037d565b3480156103e557600080fd5b506103f96103f43660046142ac565b610cf6565b005b34801561040757600080fd5b50610410610d1b565b60405161037d9190614315565b34801561042957600080fd5b506103cb6104383660046142ac565b610dbc565b34801561044957600080fd5b506103cb6104583660046142ac565b610ddc565b34801561046957600080fd5b506103cb6104783660046142ac565b610dfc565b34801561048957600080fd5b50610370610e1f565b34801561049e57600080fd5b506103cb6104ad3660046142ac565b610e3d565b3480156104be57600080fd5b506104d26104cd3660046142ac565b610e5d565b60405161037d9190614328565b3480156104eb57600080fd5b506103f96104fa3660046143fa565b61103e565b34801561050b57600080fd5b506103f961051a366004614422565b6110ed565b34801561052b57600080fd5b506103cb61053a3660046142ac565b61110f565b34801561054b57600080fd5b5061037061112c565b34801561056057600080fd5b506103a661056f3660046142ac565b611147565b34801561058057600080fd5b506103f961058f3660046142ac565b61116a565b3480156105a057600080fd5b506103f96105af366004614422565b6112d1565b3480156105c057600080fd5b506105d46105cf3660046142ac565b611309565b60405161037d919061448a565b3480156105ed57600080fd5b506103a66105fc366004614422565b611391565b34801561060d57600080fd5b506103cb61061c3660046142ac565b6113ce565b34801561062d57600080fd5b506103cb61063c366004614498565b6113f1565b34801561064d57600080fd5b5061041061141c565b6103f9610664366004614572565b6114c5565b34801561067557600080fd5b506103cb6114e0565b34801561068a57600080fd5b506103706106993660046142ac565b6114fd565b3480156106aa57600080fd5b506103f96106b936600461468d565b611526565b3480156106ca57600080fd5b506040805180820190915260018152603760f81b6020820152610410565b3480156106f457600080fd5b506103cb6116fb565b34801561070957600080fd5b506103f96107183660046143fa565b611708565b34801561072957600080fd5b506103cb611729565b34801561073e57600080fd5b506103cb61074d3660046142ac565b611736565b34801561075e57600080fd5b506103cb61076d3660046142ac565b611744565b34801561077e57600080fd5b506103cb6117dd565b34801561079357600080fd5b506103f96107a23660046142ac565b6117f2565b3480156107b357600080fd5b50610370611813565b3480156107c857600080fd5b506103f96107d73660046143fa565b611831565b3480156107e857600080fd5b506107fc6107f73660046142ac565b611852565b60405161037d919061478b565b34801561081557600080fd5b506103a66108243660046142ac565b6118c5565b34801561083557600080fd5b506103f96108443660046142ac565b6118e9565b34801561085557600080fd5b506103cb61190a565b34801561086a57600080fd5b5061087e6108793660046142ac565b61191c565b6040805182516001600160a01b0316815260208084015165ffffffffffff16908201529181015163ffffffff169082015260600161037d565b3480156108c357600080fd5b506103a66108d2366004614422565b61199c565b3480156108e357600080fd5b506108ec6119d2565b60405165ffffffffffff909116815260200161037d565b34801561090f57600080fd5b506103cb60008051602061503e83398151915281565b34801561093157600080fd5b5060646103cb565b34801561094557600080fd5b506103a66109543660046143fa565b611a41565b34801561096557600080fd5b506103cb611a6f565b34801561097a57600080fd5b506103f96109893660046143fa565b611a7a565b34801561099a57600080fd5b506103cb600081565b3480156109af57600080fd5b50610370611b42565b3480156109c457600080fd5b506103cb6109d336600461479e565b611b60565b3480156109e457600080fd5b506103cb611bdf565b3480156109f957600080fd5b50610410604051806040016040528060058152602001640352e302e360dc1b81525081565b348015610a2a57600080fd5b506103f9610a393660046143fa565b611c04565b348015610a4a57600080fd5b506103f9610a593660046143fa565b611c25565b348015610a6a57600080fd5b506103cb611c46565b348015610a7f57600080fd5b506103cb611c5b565b348015610a9457600080fd5b506103cb610aa3366004614498565b611c84565b348015610ab457600080fd5b506103f9610ac33660046143fa565b611cb4565b348015610ad457600080fd5b506103cb60008051602061501e83398151915281565b348015610af657600080fd5b506103cb610b053660046142ac565b611cd5565b348015610b1657600080fd5b506103cb610b253660046142ac565b611d04565b348015610b3657600080fd5b506103a6610b453660046142ac565b611d58565b348015610b5657600080fd5b506103f9610b65366004614422565b611d63565b348015610b7657600080fd5b506103a6610b85366004614498565b611d7f565b348015610b9657600080fd5b50610410611dff565b348015610bab57600080fd5b506103f9610bba3660046147de565b611e1f565b348015610bcb57600080fd5b506103f9610bda36600461485d565b611e40565b348015610beb57600080fd5b506103cb610bfa36600461479e565b612258565b348015610c0b57600080fd5b506103cb600080516020614f7d83398151915281565b348015610c2d57600080fd5b506103f9610c3c3660046142ac565b612274565b348015610c4d57600080fd5b506103cb600080516020614fde83398151915281565b348015610c6f57600080fd5b506103cb610c7e3660046142ac565b612295565b348015610c8f57600080fd5b506103cb610c9e3660046142ac565b6122a0565b348015610caf57600080fd5b506103706122c3565b600080610cc36122ce565b600301546001600160a01b031692915050565b6000610ce1826122f2565b92915050565b6000610cf1612317565b905090565b600080516020614f7d833981519152610d0e8161232f565b610d178261233c565b5050565b60606000610d27612345565b9050806000018054610d3890614987565b80601f0160208091040260200160405190810160405280929190818152602001828054610d6490614987565b8015610db15780601f10610d8657610100808354040283529160200191610db1565b820191906000526020600020905b815481529060010190602001808311610d9457829003601f168201915b505050505091505090565b600080610dc7612369565b60009384526003016020525050604090205490565b600080610de7612369565b60009384526002016020525050604090205490565b600080610e0761238d565b60009384526001016020525050604090206002015490565b600080610e2a6122ce565b600101546001600160a01b031692915050565b600080610e486123b1565b60009384526020525050604090206001015490565b60606000610e696123d5565b6000848152600282016020908152604080832080548251818502810185019093528083529495509293909291830182828015610ec457602002820191906000526020600020905b815481526020019060010190808311610eb0575b505050505090506000815190506000816001600160401b03811115610eeb57610eeb6144ba565b604051908082528060200260200182016040528015610f6357816020015b610f506040518060c001604052806000801916815260200160006001600160a01b031681526020016060815260200160608152602001600081526020016000151581525090565b815260200190600190039081610f095790505b50905060005b8281101561103457610f7961112c565b6001600160a01b031663785d6e18858381518110610f9957610f996149c1565b60200260200101516040518263ffffffff1660e01b8152600401610fbf91815260200190565b600060405180830381865afa158015610fdc573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526110049190810190614a37565b828281518110611016576110166149c1565b6020026020010181905250808061102c90614b13565b915050610f69565b5095945050505050565b6002600061104a6123f9565b8054909150600160401b900460ff1680611071575080546001600160401b03808416911610155b1561108f5760405163f92ee8a960e01b815260040160405180910390fd5b80546001600160481b0319166001600160401b03831617600160401b1781556110b78361241d565b805460ff60401b19168155604051600080516020614f9d833981519152906110e0908490614b2c565b60405180910390a1505050565b6110f682610e3d565b6110ff8161232f565b6111098383612454565b50505050565b60008061111a6124fc565b60009384526020525050604090205490565b6000806111376122ce565b546001600160a01b031692915050565b6000806111526124fc565b60009384526001016020525050604090205460ff1690565b611173816118c5565