diff --git a/public/deployments/contracts-mainnet.json b/public/deployments/contracts-mainnet.json index 70670a0..3a0bc17 100644 --- a/public/deployments/contracts-mainnet.json +++ b/public/deployments/contracts-mainnet.json @@ -418,11 +418,71 @@ "name": "OnlyOwner", "type": "error" }, + { + "inputs": [], + "name": "OnlyRole", + "type": "error" + }, { "inputs": [], "name": "WithdrawAmountTooLarge", "type": "error" }, + { + "inputs": [], + "name": "WithdrawForDelegationDisabled", + "type": "error" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "nodeID", + "type": "address" + }, + { + "indexed": false, + "internalType": "bytes", + "name": "blsPubkeyAndSig", + "type": "bytes" + } + ], + "name": "BLSKeysAdded", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "nodeID", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "amount", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "rewardsAmount", + "type": "uint256" + } + ], + "name": "DepositFromDelegation", + "type": "event" + }, { "anonymous": false, "inputs": [ @@ -461,6 +521,25 @@ "name": "MinipoolStatusChanged", "type": "event" }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "nodeID", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "WithdrawForDelegation", + "type": "event" + }, { "inputs": [ { @@ -564,6 +643,11 @@ "internalType": "uint256", "name": "avaxAssignmentRequest", "type": "uint256" + }, + { + "internalType": "bytes", + "name": "blsPubkeyAndSig", + "type": "bytes" } ], "name": "createMinipool", @@ -571,6 +655,62 @@ "stateMutability": "payable", "type": "function" }, + { + "inputs": [ + { + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "internalType": "address", + "name": "nodeID", + "type": "address" + }, + { + "internalType": "uint256", + "name": "duration", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "delegationFee", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "avaxAssignmentRequest", + "type": "uint256" + }, + { + "internalType": "bytes", + "name": "blsPubkeyAndSig", + "type": "bytes" + } + ], + "name": "createMinipoolOnBehalfOf", + "outputs": [], + "stateMutability": "payable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "rewards", + "type": "uint256" + }, + { + "internalType": "address", + "name": "nodeID", + "type": "address" + } + ], + "name": "depositFromDelegation", + "outputs": [], + "stateMutability": "payable", + "type": "function" + }, { "inputs": [ { @@ -676,6 +816,11 @@ "name": "avaxLiquidStakerAmt", "type": "uint256" }, + { + "internalType": "bytes", + "name": "blsPubkeyAndSig", + "type": "bytes" + }, { "internalType": "bytes32", "name": "txID", @@ -797,6 +942,11 @@ "name": "avaxLiquidStakerAmt", "type": "uint256" }, + { + "internalType": "bytes", + "name": "blsPubkeyAndSig", + "type": "bytes" + }, { "internalType": "bytes32", "name": "txID", @@ -941,6 +1091,11 @@ "name": "avaxLiquidStakerAmt", "type": "uint256" }, + { + "internalType": "bytes", + "name": "blsPubkeyAndSig", + "type": "bytes" + }, { "internalType": "bytes32", "name": "txID", @@ -1120,6 +1275,43 @@ "stateMutability": "nonpayable", "type": "function" }, + { + "inputs": [ + { + "internalType": "address", + "name": "nodeID", + "type": "address" + } + ], + "name": "requireValidMinipool", + "outputs": [ + { + "internalType": "int256", + "name": "", + "type": "int256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "nodeID", + "type": "address" + }, + { + "internalType": "bytes", + "name": "blsPubkeyAndSig", + "type": "bytes" + } + ], + "name": "setBLSKeys", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, { "inputs": [], "name": "version", @@ -1133,6 +1325,24 @@ "stateMutability": "view", "type": "function" }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + }, + { + "internalType": "address", + "name": "nodeID", + "type": "address" + } + ], + "name": "withdrawForDelegation", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, { "inputs": [ { @@ -1145,10 +1355,28 @@ "outputs": [], "stateMutability": "nonpayable", "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "nodeID", + "type": "address" + }, + { + "internalType": "uint256", + "name": "duration", + "type": "uint256" + } + ], + "name": "withdrawRewardsAndRelaunchMinipool", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" } ] }, - "MultisigManager": { + "MinipoolStreamliner": { "abi": [ { "inputs": [ @@ -1156,6 +1384,16 @@ "internalType": "contract Storage", "name": "storageAddress", "type": "address" + }, + { + "internalType": "address", + "name": "WAVAX", + "type": "address" + }, + { + "internalType": "address", + "name": "TJRouter", + "type": "address" } ], "stateMutability": "nonpayable", @@ -1178,239 +1416,292 @@ }, { "inputs": [], - "name": "MultisigAlreadyRegistered", - "type": "error" - }, - { - "inputs": [], - "name": "MultisigLimitReached", + "name": "MismatchedFunds", "type": "error" }, { "inputs": [], - "name": "MultisigMustBeEnabled", + "name": "MustBeGuardian", "type": "error" }, { "inputs": [], - "name": "MultisigNotFound", + "name": "MustBeGuardianOrValidContract", "type": "error" }, { "inputs": [], - "name": "MustBeGuardian", + "name": "MustBeMultisig", "type": "error" }, { "inputs": [], - "name": "MustBeGuardianOrValidContract", + "name": "NotApprovedHardwareProvider", "type": "error" }, { "inputs": [], - "name": "MustBeMultisig", + "name": "OnlyOwner", "type": "error" }, { "inputs": [], - "name": "NoEnabledMultisigFound", + "name": "SwapFailed", "type": "error" }, { "anonymous": false, "inputs": [ { - "indexed": true, + "indexed": false, "internalType": "address", - "name": "multisig", + "name": "nodeID", "type": "address" }, { "indexed": false, "internalType": "address", - "name": "actor", + "name": "owner", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "hardwareProviderContract", "type": "address" } ], - "name": "DisabledMultisig", + "name": "MinipoolRelaunched", "type": "event" }, { "anonymous": false, "inputs": [ { - "indexed": true, + "indexed": false, "internalType": "address", - "name": "multisig", + "name": "nodeID", "type": "address" }, { "indexed": false, "internalType": "address", - "name": "actor", + "name": "owner", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "hardwareProviderContract", "type": "address" } ], - "name": "EnabledMultisig", + "name": "NewStreamlinedMinipoolMade", "type": "event" }, { - "anonymous": false, "inputs": [ { - "indexed": true, - "internalType": "address", - "name": "multisig", - "type": "address" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "amount", - "type": "uint256" - } - ], - "name": "GGPClaimed", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "address", - "name": "multisig", - "type": "address" - }, - { - "indexed": false, - "internalType": "address", - "name": "actor", - "type": "address" - } - ], - "name": "RegisteredMultisig", - "type": "event" - }, - { - "inputs": [], - "name": "MULTISIG_LIMIT", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" + "components": [ + { + "internalType": "address", + "name": "nodeID", + "type": "address" + }, + { + "internalType": "bytes", + "name": "blsPubkeyAndSig", + "type": "bytes" + }, + { + "internalType": "uint256", + "name": "duration", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "avaxForMinipool", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "avaxForGGP", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "minGGPAmountOut", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "avaxForNodeRental", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "minUSDCAmountOut", + "type": "uint256" + }, + { + "internalType": "bool", + "name": "bestRate", + "type": "bool" + }, + { + "internalType": "bool", + "name": "withdrawalRightWaiver", + "type": "bool" + }, + { + "internalType": "address", + "name": "hardwareProviderContract", + "type": "address" + }, + { + "internalType": "bytes", + "name": "hardwareProviderInformation", + "type": "bytes" + } + ], + "internalType": "struct MinipoolStreamliner.StreamlinedMinipool", + "name": "newMinipool", + "type": "tuple" } ], - "stateMutability": "view", + "name": "createOrRelaunchStreamlinedMinipool", + "outputs": [], + "stateMutability": "payable", "type": "function" }, { "inputs": [ { - "internalType": "address", - "name": "addr", - "type": "address" + "components": [ + { + "internalType": "address", + "name": "nodeID", + "type": "address" + }, + { + "internalType": "bytes", + "name": "blsPubkeyAndSig", + "type": "bytes" + }, + { + "internalType": "uint256", + "name": "duration", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "avaxForMinipool", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "avaxForGGP", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "minGGPAmountOut", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "avaxForNodeRental", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "minUSDCAmountOut", + "type": "uint256" + }, + { + "internalType": "bool", + "name": "bestRate", + "type": "bool" + }, + { + "internalType": "bool", + "name": "withdrawalRightWaiver", + "type": "bool" + }, + { + "internalType": "address", + "name": "hardwareProviderContract", + "type": "address" + }, + { + "internalType": "bytes", + "name": "hardwareProviderInformation", + "type": "bytes" + } + ], + "internalType": "struct MinipoolStreamliner.StreamlinedMinipool", + "name": "newMinipool", + "type": "tuple" } ], - "name": "disableMultisig", + "name": "createOrRelaunchStreamlinedMinipoolWithBLSKeys", "outputs": [], - "stateMutability": "nonpayable", + "stateMutability": "payable", "type": "function" }, { "inputs": [ { "internalType": "address", - "name": "addr", + "name": "contractAddress", "type": "address" } ], - "name": "enableMultisig", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [], - "name": "getCount", + "name": "isApprovedHardwareProvider", "outputs": [ { - "internalType": "uint256", + "internalType": "bool", "name": "", - "type": "uint256" + "type": "bool" } ], "stateMutability": "view", "type": "function" }, { - "inputs": [ - { - "internalType": "address", - "name": "addr", - "type": "address" - } - ], - "name": "getIndexOf", - "outputs": [ - { - "internalType": "int256", - "name": "", - "type": "int256" - } - ], - "stateMutability": "view", + "inputs": [], + "name": "receiveWithdrawalAVAX", + "outputs": [], + "stateMutability": "payable", "type": "function" }, { "inputs": [ - { - "internalType": "uint256", - "name": "index", - "type": "uint256" - } - ], - "name": "getMultisig", - "outputs": [ { "internalType": "address", - "name": "addr", + "name": "user", "type": "address" }, { - "internalType": "bool", - "name": "enabled", - "type": "bool" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ + "internalType": "uint256", + "name": "avaxForGGP", + "type": "uint256" + }, { - "internalType": "address", - "name": "addr", - "type": "address" + "internalType": "uint256", + "name": "minGGPAmountOut", + "type": "uint256" } ], - "name": "registerMultisig", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [], - "name": "requireNextActiveMultisig", + "name": "swapAndStakeGGPOnBehalfOf", "outputs": [ { - "internalType": "address", - "name": "", - "type": "address" + "internalType": "uint256", + "name": "ggpPurchased", + "type": "uint256" } ], - "stateMutability": "view", + "stateMutability": "payable", "type": "function" }, { @@ -1425,17 +1716,10 @@ ], "stateMutability": "view", "type": "function" - }, - { - "inputs": [], - "name": "withdrawUnclaimedGGP", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" } ] }, - "Ocyticus": { + "MultisigManager": { "abi": [ { "inputs": [ @@ -1463,6 +1747,26 @@ "name": "InvalidOrOutdatedContract", "type": "error" }, + { + "inputs": [], + "name": "MultisigAlreadyRegistered", + "type": "error" + }, + { + "inputs": [], + "name": "MultisigLimitReached", + "type": "error" + }, + { + "inputs": [], + "name": "MultisigMustBeEnabled", + "type": "error" + }, + { + "inputs": [], + "name": "MultisigNotFound", + "type": "error" + }, { "inputs": [], "name": "MustBeGuardian", @@ -1480,174 +1784,131 @@ }, { "inputs": [], - "name": "NotAllowed", + "name": "NoEnabledMultisigFound", "type": "error" }, { + "anonymous": false, "inputs": [ { + "indexed": true, "internalType": "address", - "name": "defender", + "name": "multisig", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "actor", "type": "address" } ], - "name": "addDefender", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" + "name": "DisabledMultisig", + "type": "event" }, { + "anonymous": false, "inputs": [ { + "indexed": true, "internalType": "address", - "name": "", + "name": "multisig", "type": "address" - } - ], - "name": "defenders", - "outputs": [ + }, { - "internalType": "bool", - "name": "", - "type": "bool" + "indexed": false, + "internalType": "address", + "name": "actor", + "type": "address" } ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "disableAllMultisigs", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [], - "name": "pauseEverything", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" + "name": "EnabledMultisig", + "type": "event" }, { + "anonymous": false, "inputs": [ { + "indexed": true, "internalType": "address", - "name": "defender", + "name": "multisig", "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "amount", + "type": "uint256" } ], - "name": "removeDefender", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" + "name": "GGPClaimed", + "type": "event" }, { - "inputs": [], - "name": "resumeEverything", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "multisig", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "actor", + "type": "address" + } + ], + "name": "RegisteredMultisig", + "type": "event" }, { "inputs": [], - "name": "version", + "name": "MULTISIG_LIMIT", "outputs": [ { - "internalType": "uint8", + "internalType": "uint256", "name": "", - "type": "uint8" + "type": "uint256" } ], "stateMutability": "view", "type": "function" - } - ] - }, - "Oracle": { - "abi": [ + }, { "inputs": [ { - "internalType": "contract Storage", - "name": "storageAddress", + "internalType": "address", + "name": "addr", "type": "address" } ], + "name": "disableMultisig", + "outputs": [], "stateMutability": "nonpayable", - "type": "constructor" - }, - { - "inputs": [], - "name": "ContractNotFound", - "type": "error" - }, - { - "inputs": [], - "name": "ContractPaused", - "type": "error" - }, - { - "inputs": [], - "name": "InvalidGGPPrice", - "type": "error" - }, - { - "inputs": [], - "name": "InvalidOrOutdatedContract", - "type": "error" - }, - { - "inputs": [], - "name": "InvalidTimestamp", - "type": "error" - }, - { - "inputs": [], - "name": "MustBeGuardian", - "type": "error" - }, - { - "inputs": [], - "name": "MustBeGuardianOrValidContract", - "type": "error" - }, - { - "inputs": [], - "name": "MustBeMultisig", - "type": "error" + "type": "function" }, { - "anonymous": false, "inputs": [ { - "indexed": true, - "internalType": "uint256", - "name": "price", - "type": "uint256" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "timestamp", - "type": "uint256" + "internalType": "address", + "name": "addr", + "type": "address" } ], - "name": "GGPPriceUpdated", - "type": "event" + "name": "enableMultisig", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" }, { "inputs": [], - "name": "getGGPPriceInAVAX", + "name": "getCount", "outputs": [ { "internalType": "uint256", - "name": "price", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "timestamp", + "name": "", "type": "uint256" } ], @@ -1655,18 +1916,19 @@ "type": "function" }, { - "inputs": [], - "name": "getGGPPriceInAVAXFromTWAP", - "outputs": [ + "inputs": [ { - "internalType": "uint256", - "name": "price", - "type": "uint256" - }, + "internalType": "address", + "name": "addr", + "type": "address" + } + ], + "name": "getIndexOf", + "outputs": [ { - "internalType": "uint256", - "name": "timestamp", - "type": "uint256" + "internalType": "int256", + "name": "", + "type": "int256" } ], "stateMutability": "view", @@ -1676,18 +1938,24 @@ "inputs": [ { "internalType": "uint256", - "name": "price", + "name": "index", "type": "uint256" + } + ], + "name": "getMultisig", + "outputs": [ + { + "internalType": "address", + "name": "addr", + "type": "address" }, { - "internalType": "uint256", - "name": "timestamp", - "type": "uint256" + "internalType": "bool", + "name": "enabled", + "type": "bool" } ], - "name": "setGGPPriceInAVAX", - "outputs": [], - "stateMutability": "nonpayable", + "stateMutability": "view", "type": "function" }, { @@ -1698,11 +1966,24 @@ "type": "address" } ], - "name": "setTWAP", + "name": "registerMultisig", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, + { + "inputs": [], + "name": "requireNextActiveMultisig", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, { "inputs": [], "name": "version", @@ -1715,10 +1996,17 @@ ], "stateMutability": "view", "type": "function" + }, + { + "inputs": [], + "name": "withdrawUnclaimedGGP", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" } ] }, - "ProtocolDAO": { + "Ocyticus": { "abi": [ { "inputs": [ @@ -1731,11 +2019,6 @@ "stateMutability": "nonpayable", "type": "constructor" }, - { - "inputs": [], - "name": "ContractAlreadyRegistered", - "type": "error" - }, { "inputs": [], "name": "ContractNotFound", @@ -1746,16 +2029,6 @@ "name": "ContractPaused", "type": "error" }, - { - "inputs": [], - "name": "ExistingContractNotRegistered", - "type": "error" - }, - { - "inputs": [], - "name": "InvalidContract", - "type": "error" - }, { "inputs": [], "name": "InvalidOrOutdatedContract", @@ -1778,21 +2051,522 @@ }, { "inputs": [], - "name": "ValueNotWithinRange", + "name": "NotAllowed", "type": "error" }, { "inputs": [ { - "internalType": "string", - "name": "claimingContract", - "type": "string" + "internalType": "address", + "name": "defender", + "type": "address" } ], - "name": "getClaimingContractPct", - "outputs": [ - { - "internalType": "uint256", + "name": "addDefender", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "name": "defenders", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "disableAllMultisigs", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "pauseEverything", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "defender", + "type": "address" + } + ], + "name": "removeDefender", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "resumeEverything", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "version", + "outputs": [ + { + "internalType": "uint8", + "name": "", + "type": "uint8" + } + ], + "stateMutability": "view", + "type": "function" + } + ] + }, + "OonodzHardwareProvider": { + "abi": [ + { + "inputs": [ + { + "internalType": "address", + "name": "wavax", + "type": "address" + }, + { + "internalType": "address", + "name": "usdc", + "type": "address" + }, + { + "internalType": "address", + "name": "tjRouter", + "type": "address" + }, + { + "internalType": "address", + "name": "ooNodz", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "constructor" + }, + { + "inputs": [], + "name": "SwapFailed", + "type": "error" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "address", + "name": "nodeID", + "type": "address" + }, + { + "indexed": false, + "internalType": "bytes", + "name": "blsPubkeyAndSig", + "type": "bytes" + } + ], + "name": "HardwareRentedFromOonodz", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "address", + "name": "receiver", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "USDCRefunded", + "type": "event" + }, + { + "inputs": [ + { + "internalType": "bytes", + "name": "data", + "type": "bytes" + } + ], + "name": "decodeOonodzData", + "outputs": [ + { + "internalType": "uint16", + "name": "countryOfResidence", + "type": "uint16" + }, + { + "internalType": "bool", + "name": "withdrawalRightWaiver", + "type": "bool" + }, + { + "internalType": "bool", + "name": "bestRate", + "type": "bool" + }, + { + "internalType": "uint256", + "name": "minUSDCAmountOut", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "tokenID", + "type": "uint256" + } + ], + "stateMutability": "pure", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "user", + "type": "address" + }, + { + "components": [ + { + "internalType": "address", + "name": "nodeID", + "type": "address" + }, + { + "internalType": "bytes", + "name": "blsPubkeyAndSig", + "type": "bytes" + }, + { + "internalType": "uint256", + "name": "duration", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "avaxForMinipool", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "avaxForGGP", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "minGGPAmountOut", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "avaxForNodeRental", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "minUSDCAmountOut", + "type": "uint256" + }, + { + "internalType": "bool", + "name": "bestRate", + "type": "bool" + }, + { + "internalType": "bool", + "name": "withdrawalRightWaiver", + "type": "bool" + }, + { + "internalType": "address", + "name": "hardwareProviderContract", + "type": "address" + }, + { + "internalType": "bytes", + "name": "hardwareProviderInformation", + "type": "bytes" + } + ], + "internalType": "struct MinipoolStreamliner.StreamlinedMinipool", + "name": "newMinipool", + "type": "tuple" + } + ], + "name": "rentHardware", + "outputs": [ + { + "internalType": "address", + "name": "nodeID", + "type": "address" + }, + { + "internalType": "bytes", + "name": "blsPubkeyAndSig", + "type": "bytes" + } + ], + "stateMutability": "payable", + "type": "function" + } + ] + }, + "Oracle": { + "abi": [ + { + "inputs": [ + { + "internalType": "contract Storage", + "name": "storageAddress", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "constructor" + }, + { + "inputs": [], + "name": "ContractNotFound", + "type": "error" + }, + { + "inputs": [], + "name": "ContractPaused", + "type": "error" + }, + { + "inputs": [], + "name": "InvalidGGPPrice", + "type": "error" + }, + { + "inputs": [], + "name": "InvalidOrOutdatedContract", + "type": "error" + }, + { + "inputs": [], + "name": "InvalidTimestamp", + "type": "error" + }, + { + "inputs": [], + "name": "MustBeGuardian", + "type": "error" + }, + { + "inputs": [], + "name": "MustBeGuardianOrValidContract", + "type": "error" + }, + { + "inputs": [], + "name": "MustBeMultisig", + "type": "error" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "uint256", + "name": "price", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "timestamp", + "type": "uint256" + } + ], + "name": "GGPPriceUpdated", + "type": "event" + }, + { + "inputs": [], + "name": "getGGPPriceInAVAX", + "outputs": [ + { + "internalType": "uint256", + "name": "price", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "timestamp", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "getGGPPriceInAVAXFromTWAP", + "outputs": [ + { + "internalType": "uint256", + "name": "price", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "timestamp", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "price", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "timestamp", + "type": "uint256" + } + ], + "name": "setGGPPriceInAVAX", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "addr", + "type": "address" + } + ], + "name": "setTWAP", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "version", + "outputs": [ + { + "internalType": "uint8", + "name": "", + "type": "uint8" + } + ], + "stateMutability": "view", + "type": "function" + } + ] + }, + "ProtocolDAO": { + "abi": [ + { + "inputs": [ + { + "internalType": "contract Storage", + "name": "storageAddress", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "constructor" + }, + { + "inputs": [], + "name": "ContractAlreadyRegistered", + "type": "error" + }, + { + "inputs": [], + "name": "ContractNotFound", + "type": "error" + }, + { + "inputs": [], + "name": "ContractPaused", + "type": "error" + }, + { + "inputs": [], + "name": "ExistingContractNotRegistered", + "type": "error" + }, + { + "inputs": [], + "name": "InvalidContract", + "type": "error" + }, + { + "inputs": [], + "name": "InvalidOrOutdatedContract", + "type": "error" + }, + { + "inputs": [], + "name": "MustBeGuardian", + "type": "error" + }, + { + "inputs": [], + "name": "MustBeGuardianOrValidContract", + "type": "error" + }, + { + "inputs": [], + "name": "MustBeMultisig", + "type": "error" + }, + { + "inputs": [], + "name": "ValueNotWithinRange", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "string", + "name": "claimingContract", + "type": "string" + } + ], + "name": "getClaimingContractPct", + "outputs": [ + { + "internalType": "uint256", "name": "", "type": "uint256" } @@ -1990,7 +2764,33 @@ }, { "inputs": [], - "name": "getMinipoolNodeCommissionFeePct", + "name": "getMinipoolNodeCommissionFeePct", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "getRewardsCycleSeconds", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "getRewardsEligibilityMinSeconds", "outputs": [ { "internalType": "uint256", @@ -2003,7 +2803,7 @@ }, { "inputs": [], - "name": "getRewardsCycleSeconds", + "name": "getTargetGGAVAXReserveRate", "outputs": [ { "internalType": "uint256", @@ -2016,25 +2816,36 @@ }, { "inputs": [], - "name": "getRewardsEligibilityMinSeconds", + "name": "getWithdrawForDelegationEnabled", "outputs": [ { - "internalType": "uint256", + "internalType": "bool", "name": "", - "type": "uint256" + "type": "bool" } ], "stateMutability": "view", "type": "function" }, { - "inputs": [], - "name": "getTargetGGAVAXReserveRate", + "inputs": [ + { + "internalType": "string", + "name": "roleName", + "type": "string" + }, + { + "internalType": "address", + "name": "addr", + "type": "address" + } + ], + "name": "hasRole", "outputs": [ { - "internalType": "uint256", + "internalType": "bool", "name": "", - "type": "uint256" + "type": "bool" } ], "stateMutability": "view", @@ -2122,6 +2933,42 @@ "stateMutability": "nonpayable", "type": "function" }, + { + "inputs": [ + { + "internalType": "string", + "name": "roleName", + "type": "string" + }, + { + "internalType": "address", + "name": "addr", + "type": "address" + }, + { + "internalType": "bool", + "name": "isEnabled", + "type": "bool" + } + ], + "name": "setRole", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bool", + "name": "b", + "type": "bool" + } + ], + "name": "setWithdrawForDelegationEnabled", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, { "inputs": [ { @@ -2974,249 +3821,104 @@ }, { "inputs": [], - "name": "getStakerCount", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "uint256", - "name": "offset", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "limit", - "type": "uint256" - } - ], - "name": "getStakers", - "outputs": [ - { - "components": [ - { - "internalType": "address", - "name": "stakerAddr", - "type": "address" - }, - { - "internalType": "uint256", - "name": "avaxAssigned", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "avaxStaked", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "avaxValidating", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "avaxValidatingHighWater", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "ggpRewards", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "ggpStaked", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "lastRewardsCycleCompleted", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "rewardsStartTime", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "ggpLockedUntil", - "type": "uint256" - } - ], - "internalType": "struct Staking.Staker[]", - "name": "stakers", - "type": "tuple[]" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "getTotalGGPStake", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "stakerAddr", - "type": "address" - }, - { - "internalType": "uint256", - "name": "amount", - "type": "uint256" - } - ], - "name": "increaseAVAXAssigned", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "stakerAddr", - "type": "address" - }, - { - "internalType": "uint256", - "name": "amount", - "type": "uint256" - } - ], - "name": "increaseAVAXStake", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "stakerAddr", - "type": "address" - }, - { - "internalType": "uint256", - "name": "amount", - "type": "uint256" - } - ], - "name": "increaseAVAXValidating", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "stakerAddr", - "type": "address" - }, - { - "internalType": "uint256", - "name": "amount", - "type": "uint256" - } - ], - "name": "increaseGGPRewards", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "stakerAddr", - "type": "address" - } - ], - "name": "requireValidStaker", - "outputs": [ - { - "internalType": "int256", - "name": "", - "type": "int256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "stakerAddr", - "type": "address" - }, + "name": "getStakerCount", + "outputs": [ { "internalType": "uint256", - "name": "amount", + "name": "", "type": "uint256" } ], - "name": "restakeGGP", - "outputs": [], - "stateMutability": "nonpayable", + "stateMutability": "view", "type": "function" }, { "inputs": [ { - "internalType": "address", - "name": "stakerAddr", - "type": "address" + "internalType": "uint256", + "name": "offset", + "type": "uint256" }, { "internalType": "uint256", - "name": "amount", + "name": "limit", "type": "uint256" } ], - "name": "setAVAXValidatingHighWater", - "outputs": [], - "stateMutability": "nonpayable", + "name": "getStakers", + "outputs": [ + { + "components": [ + { + "internalType": "address", + "name": "stakerAddr", + "type": "address" + }, + { + "internalType": "uint256", + "name": "avaxAssigned", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "avaxStaked", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "avaxValidating", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "avaxValidatingHighWater", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "ggpRewards", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "ggpStaked", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "lastRewardsCycleCompleted", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "rewardsStartTime", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "ggpLockedUntil", + "type": "uint256" + } + ], + "internalType": "struct Staking.Staker[]", + "name": "stakers", + "type": "tuple[]" + } + ], + "stateMutability": "view", "type": "function" }, { - "inputs": [ - { - "internalType": "address", - "name": "stakerAddr", - "type": "address" - }, + "inputs": [], + "name": "getTotalGGPStake", + "outputs": [ { "internalType": "uint256", - "name": "cycleNumber", + "name": "", "type": "uint256" } ], - "name": "setLastRewardsCycleCompleted", - "outputs": [], - "stateMutability": "nonpayable", + "stateMutability": "view", "type": "function" }, { @@ -3228,11 +3930,11 @@ }, { "internalType": "uint256", - "name": "time", + "name": "amount", "type": "uint256" } ], - "name": "setRewardsStartTime", + "name": "increaseAVAXAssigned", "outputs": [], "stateMutability": "nonpayable", "type": "function" @@ -3244,26 +3946,13 @@ "name": "stakerAddr", "type": "address" }, - { - "internalType": "uint256", - "name": "ggpAmt", - "type": "uint256" - } - ], - "name": "slashGGP", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ { "internalType": "uint256", "name": "amount", "type": "uint256" } ], - "name": "stakeGGP", + "name": "increaseAVAXStake", "outputs": [], "stateMutability": "nonpayable", "type": "function" @@ -3275,102 +3964,23 @@ "name": "stakerAddr", "type": "address" }, - { - "internalType": "uint256", - "name": "amount", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "ggpLockedUntil", - "type": "uint256" - } - ], - "name": "stakeGGPOnBehalfOf", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [], - "name": "version", - "outputs": [ - { - "internalType": "uint8", - "name": "", - "type": "uint8" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ { "internalType": "uint256", "name": "amount", "type": "uint256" } ], - "name": "withdrawGGP", + "name": "increaseAVAXValidating", "outputs": [], "stateMutability": "nonpayable", "type": "function" - } - ] - }, - "Storage": { - "abi": [ - { - "inputs": [], - "stateMutability": "nonpayable", - "type": "constructor" - }, - { - "inputs": [], - "name": "InvalidGuardianAddress", - "type": "error" - }, - { - "inputs": [], - "name": "InvalidGuardianConfirmation", - "type": "error" - }, - { - "inputs": [], - "name": "InvalidOrOutdatedContract", - "type": "error" - }, - { - "inputs": [], - "name": "MustBeGuardian", - "type": "error" }, { - "anonymous": false, "inputs": [ { - "indexed": false, - "internalType": "address", - "name": "oldGuardian", - "type": "address" - }, - { - "indexed": false, "internalType": "address", - "name": "newGuardian", + "name": "stakerAddr", "type": "address" - } - ], - "name": "GuardianChanged", - "type": "event" - }, - { - "inputs": [ - { - "internalType": "bytes32", - "name": "key", - "type": "bytes32" }, { "internalType": "uint256", @@ -3378,40 +3988,7 @@ "type": "uint256" } ], - "name": "addUint", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [], - "name": "confirmGuardian", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "bytes32", - "name": "key", - "type": "bytes32" - } - ], - "name": "deleteAddress", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "bytes32", - "name": "key", - "type": "bytes32" - } - ], - "name": "deleteBool", + "name": "increaseGGPRewards", "outputs": [], "stateMutability": "nonpayable", "type": "function" @@ -3419,38 +3996,36 @@ { "inputs": [ { - "internalType": "bytes32", - "name": "key", - "type": "bytes32" + "internalType": "address", + "name": "stakerAddr", + "type": "address" } ], - "name": "deleteBytes", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ + "name": "requireValidStaker", + "outputs": [ { - "internalType": "bytes32", - "name": "key", - "type": "bytes32" + "internalType": "int256", + "name": "", + "type": "int256" } ], - "name": "deleteBytes32", - "outputs": [], - "stateMutability": "nonpayable", + "stateMutability": "view", "type": "function" }, { "inputs": [ { - "internalType": "bytes32", - "name": "key", - "type": "bytes32" + "internalType": "address", + "name": "stakerAddr", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" } ], - "name": "deleteInt", + "name": "restakeGGP", "outputs": [], "stateMutability": "nonpayable", "type": "function" @@ -3458,12 +4033,17 @@ { "inputs": [ { - "internalType": "bytes32", - "name": "key", - "type": "bytes32" + "internalType": "address", + "name": "stakerAddr", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" } ], - "name": "deleteString", + "name": "setAVAXValidatingHighWater", "outputs": [], "stateMutability": "nonpayable", "type": "function" @@ -3471,138 +4051,119 @@ { "inputs": [ { - "internalType": "bytes32", - "name": "key", - "type": "bytes32" + "internalType": "address", + "name": "stakerAddr", + "type": "address" + }, + { + "internalType": "uint256", + "name": "cycleNumber", + "type": "uint256" } ], - "name": "deleteUint", + "name": "setLastRewardsCycleCompleted", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ - { - "internalType": "bytes32", - "name": "key", - "type": "bytes32" - } - ], - "name": "getAddress", - "outputs": [ { "internalType": "address", - "name": "", + "name": "stakerAddr", "type": "address" + }, + { + "internalType": "uint256", + "name": "time", + "type": "uint256" } ], - "stateMutability": "view", + "name": "setRewardsStartTime", + "outputs": [], + "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { - "internalType": "bytes32", - "name": "key", - "type": "bytes32" - } - ], - "name": "getBool", - "outputs": [ + "internalType": "address", + "name": "stakerAddr", + "type": "address" + }, { - "internalType": "bool", - "name": "", - "type": "bool" + "internalType": "uint256", + "name": "ggpAmt", + "type": "uint256" } ], - "stateMutability": "view", + "name": "slashGGP", + "outputs": [], + "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { - "internalType": "bytes32", - "name": "key", - "type": "bytes32" - } - ], - "name": "getBytes", - "outputs": [ - { - "internalType": "bytes", - "name": "", - "type": "bytes" + "internalType": "uint256", + "name": "amount", + "type": "uint256" } ], - "stateMutability": "view", + "name": "stakeGGP", + "outputs": [], + "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { - "internalType": "bytes32", - "name": "key", - "type": "bytes32" - } - ], - "name": "getBytes32", - "outputs": [ + "internalType": "address", + "name": "stakerAddr", + "type": "address" + }, { - "internalType": "bytes32", - "name": "", - "type": "bytes32" + "internalType": "uint256", + "name": "amount", + "type": "uint256" } ], - "stateMutability": "view", + "name": "stakeGGPOnBehalfOf", + "outputs": [], + "stateMutability": "nonpayable", "type": "function" }, { - "inputs": [], - "name": "getGuardian", - "outputs": [ + "inputs": [ { "internalType": "address", - "name": "", + "name": "stakerAddr", "type": "address" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ + }, { - "internalType": "bytes32", - "name": "key", - "type": "bytes32" - } - ], - "name": "getInt", - "outputs": [ + "internalType": "uint256", + "name": "amount", + "type": "uint256" + }, { - "internalType": "int256", - "name": "", - "type": "int256" + "internalType": "uint256", + "name": "ggpLockedUntil", + "type": "uint256" } ], - "stateMutability": "view", + "name": "stakeGGPOnBehalfOfWithLock", + "outputs": [], + "stateMutability": "nonpayable", "type": "function" }, { - "inputs": [ - { - "internalType": "bytes32", - "name": "key", - "type": "bytes32" - } - ], - "name": "getString", + "inputs": [], + "name": "version", "outputs": [ { - "internalType": "string", + "internalType": "uint8", "name": "", - "type": "string" + "type": "uint8" } ], "stateMutability": "view", @@ -3610,53 +4171,64 @@ }, { "inputs": [ - { - "internalType": "bytes32", - "name": "key", - "type": "bytes32" - } - ], - "name": "getUint", - "outputs": [ { "internalType": "uint256", - "name": "", + "name": "amount", "type": "uint256" } ], - "stateMutability": "view", + "name": "withdrawGGP", + "outputs": [], + "stateMutability": "nonpayable", "type": "function" + } + ] + }, + "Storage": { + "abi": [ + { + "inputs": [], + "stateMutability": "nonpayable", + "type": "constructor" }, { "inputs": [], - "name": "newGuardian", - "outputs": [ - { - "internalType": "address", - "name": "", - "type": "address" - } - ], - "stateMutability": "view", - "type": "function" + "name": "InvalidGuardianAddress", + "type": "error" + }, + { + "inputs": [], + "name": "InvalidGuardianConfirmation", + "type": "error" + }, + { + "inputs": [], + "name": "InvalidOrOutdatedContract", + "type": "error" + }, + { + "inputs": [], + "name": "MustBeGuardian", + "type": "error" }, { + "anonymous": false, "inputs": [ { - "internalType": "bytes32", - "name": "key", - "type": "bytes32" + "indexed": false, + "internalType": "address", + "name": "oldGuardian", + "type": "address" }, { + "indexed": false, "internalType": "address", - "name": "value", + "name": "newGuardian", "type": "address" } ], - "name": "setAddress", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" + "name": "GuardianChanged", + "type": "event" }, { "inputs": [ @@ -3666,12 +4238,19 @@ "type": "bytes32" }, { - "internalType": "bool", - "name": "value", - "type": "bool" + "internalType": "uint256", + "name": "amount", + "type": "uint256" } ], - "name": "setBool", + "name": "addUint", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "confirmGuardian", "outputs": [], "stateMutability": "nonpayable", "type": "function" @@ -3682,14 +4261,9 @@ "internalType": "bytes32", "name": "key", "type": "bytes32" - }, - { - "internalType": "bytes", - "name": "value", - "type": "bytes" } ], - "name": "setBytes", + "name": "deleteAddress", "outputs": [], "stateMutability": "nonpayable", "type": "function" @@ -3700,14 +4274,9 @@ "internalType": "bytes32", "name": "key", "type": "bytes32" - }, - { - "internalType": "bytes32", - "name": "value", - "type": "bytes32" } ], - "name": "setBytes32", + "name": "deleteBool", "outputs": [], "stateMutability": "nonpayable", "type": "function" @@ -3715,12 +4284,12 @@ { "inputs": [ { - "internalType": "address", - "name": "newAddress", - "type": "address" + "internalType": "bytes32", + "name": "key", + "type": "bytes32" } ], - "name": "setGuardian", + "name": "deleteBytes", "outputs": [], "stateMutability": "nonpayable", "type": "function" @@ -3731,14 +4300,9 @@ "internalType": "bytes32", "name": "key", "type": "bytes32" - }, - { - "internalType": "int256", - "name": "value", - "type": "int256" } ], - "name": "setInt", + "name": "deleteBytes32", "outputs": [], "stateMutability": "nonpayable", "type": "function" @@ -3749,14 +4313,9 @@ "internalType": "bytes32", "name": "key", "type": "bytes32" - }, - { - "internalType": "string", - "name": "value", - "type": "string" } ], - "name": "setString", + "name": "deleteInt", "outputs": [], "stateMutability": "nonpayable", "type": "function" @@ -3767,14 +4326,9 @@ "internalType": "bytes32", "name": "key", "type": "bytes32" - }, - { - "internalType": "uint256", - "name": "value", - "type": "uint256" } ], - "name": "setUint", + "name": "deleteString", "outputs": [], "stateMutability": "nonpayable", "type": "function" @@ -3785,264 +4339,116 @@ "internalType": "bytes32", "name": "key", "type": "bytes32" - }, - { - "internalType": "uint256", - "name": "amount", - "type": "uint256" } ], - "name": "subUint", + "name": "deleteUint", "outputs": [], "stateMutability": "nonpayable", "type": "function" - } - ] - }, - "Vault": { - "abi": [ + }, { "inputs": [ { - "internalType": "contract Storage", - "name": "storageAddress", - "type": "address" + "internalType": "bytes32", + "name": "key", + "type": "bytes32" } ], - "stateMutability": "nonpayable", - "type": "constructor" - }, - { - "inputs": [], - "name": "ContractNotFound", - "type": "error" - }, - { - "inputs": [], - "name": "ContractPaused", - "type": "error" - }, - { - "inputs": [], - "name": "InsufficientContractBalance", - "type": "error" - }, - { - "inputs": [], - "name": "InvalidAmount", - "type": "error" - }, - { - "inputs": [], - "name": "InvalidNetworkContract", - "type": "error" - }, - { - "inputs": [], - "name": "InvalidOrOutdatedContract", - "type": "error" - }, - { - "inputs": [], - "name": "InvalidToken", - "type": "error" - }, - { - "inputs": [], - "name": "MustBeGuardian", - "type": "error" - }, - { - "inputs": [], - "name": "MustBeGuardianOrValidContract", - "type": "error" - }, - { - "inputs": [], - "name": "MustBeMultisig", - "type": "error" - }, - { - "inputs": [], - "name": "TokenTransferFailed", - "type": "error" - }, - { - "inputs": [], - "name": "VaultTokenWithdrawalFailed", - "type": "error" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "string", - "name": "by", - "type": "string" - }, + "name": "getAddress", + "outputs": [ { - "indexed": false, - "internalType": "uint256", - "name": "amount", - "type": "uint256" + "internalType": "address", + "name": "", + "type": "address" } ], - "name": "AVAXDeposited", - "type": "event" + "stateMutability": "view", + "type": "function" }, { - "anonymous": false, "inputs": [ { - "indexed": true, - "internalType": "string", - "name": "from", - "type": "string" - }, - { - "indexed": true, - "internalType": "string", - "name": "to", - "type": "string" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "amount", - "type": "uint256" + "internalType": "bytes32", + "name": "key", + "type": "bytes32" } ], - "name": "AVAXTransfer", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "string", - "name": "by", - "type": "string" - }, + "name": "getBool", + "outputs": [ { - "indexed": false, - "internalType": "uint256", - "name": "amount", - "type": "uint256" + "internalType": "bool", + "name": "", + "type": "bool" } ], - "name": "AVAXWithdrawn", - "type": "event" + "stateMutability": "view", + "type": "function" }, { - "anonymous": false, "inputs": [ { - "indexed": true, "internalType": "bytes32", - "name": "by", + "name": "key", "type": "bytes32" - }, - { - "indexed": true, - "internalType": "address", - "name": "tokenAddress", - "type": "address" - }, + } + ], + "name": "getBytes", + "outputs": [ { - "indexed": false, - "internalType": "uint256", - "name": "amount", - "type": "uint256" + "internalType": "bytes", + "name": "", + "type": "bytes" } ], - "name": "TokenDeposited", - "type": "event" + "stateMutability": "view", + "type": "function" }, { - "anonymous": false, "inputs": [ { - "indexed": true, - "internalType": "bytes32", - "name": "by", - "type": "bytes32" - }, - { - "indexed": true, "internalType": "bytes32", - "name": "to", + "name": "key", "type": "bytes32" - }, - { - "indexed": true, - "internalType": "address", - "name": "tokenAddress", - "type": "address" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "amount", - "type": "uint256" } ], - "name": "TokenTransfer", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ + "name": "getBytes32", + "outputs": [ { - "indexed": true, "internalType": "bytes32", - "name": "by", - "type": "bytes32" - }, - { - "indexed": true, - "internalType": "address", - "name": "tokenAddress", - "type": "address" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "amount", - "type": "uint256" + "name": "", + "type": "bytes32" } ], - "name": "TokenWithdrawn", - "type": "event" + "stateMutability": "view", + "type": "function" }, { - "inputs": [ + "inputs": [], + "name": "getGuardian", + "outputs": [ { "internalType": "address", - "name": "tokenAddress", + "name": "", "type": "address" } ], - "name": "addAllowedToken", - "outputs": [], - "stateMutability": "nonpayable", + "stateMutability": "view", "type": "function" }, { "inputs": [ { - "internalType": "string", - "name": "networkContractName", - "type": "string" + "internalType": "bytes32", + "name": "key", + "type": "bytes32" } ], - "name": "balanceOf", + "name": "getInt", "outputs": [ { - "internalType": "uint256", + "internalType": "int256", "name": "", - "type": "uint256" + "type": "int256" } ], "stateMutability": "view", @@ -4050,18 +4456,32 @@ }, { "inputs": [ + { + "internalType": "bytes32", + "name": "key", + "type": "bytes32" + } + ], + "name": "getString", + "outputs": [ { "internalType": "string", - "name": "networkContractName", + "name": "", "type": "string" - }, + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ { - "internalType": "contract ERC20", - "name": "tokenAddress", - "type": "address" + "internalType": "bytes32", + "name": "key", + "type": "bytes32" } ], - "name": "balanceOfToken", + "name": "getUint", "outputs": [ { "internalType": "uint256", @@ -4074,30 +4494,31 @@ }, { "inputs": [], - "name": "depositAVAX", - "outputs": [], - "stateMutability": "payable", + "name": "newGuardian", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", "type": "function" }, { "inputs": [ { - "internalType": "string", - "name": "networkContractName", - "type": "string" + "internalType": "bytes32", + "name": "key", + "type": "bytes32" }, { - "internalType": "contract ERC20", - "name": "tokenContract", + "internalType": "address", + "name": "value", "type": "address" - }, - { - "internalType": "uint256", - "name": "amount", - "type": "uint256" } ], - "name": "depositToken", + "name": "setAddress", "outputs": [], "stateMutability": "nonpayable", "type": "function" @@ -4105,12 +4526,17 @@ { "inputs": [ { - "internalType": "address", - "name": "tokenAddress", - "type": "address" + "internalType": "bytes32", + "name": "key", + "type": "bytes32" + }, + { + "internalType": "bool", + "name": "value", + "type": "bool" } ], - "name": "removeAllowedToken", + "name": "setBool", "outputs": [], "stateMutability": "nonpayable", "type": "function" @@ -4118,17 +4544,17 @@ { "inputs": [ { - "internalType": "string", - "name": "toContractName", - "type": "string" + "internalType": "bytes32", + "name": "key", + "type": "bytes32" }, { - "internalType": "uint256", - "name": "amount", - "type": "uint256" + "internalType": "bytes", + "name": "value", + "type": "bytes" } ], - "name": "transferAVAX", + "name": "setBytes", "outputs": [], "stateMutability": "nonpayable", "type": "function" @@ -4136,48 +4562,84 @@ { "inputs": [ { - "internalType": "string", - "name": "networkContractName", - "type": "string" + "internalType": "bytes32", + "name": "key", + "type": "bytes32" }, { - "internalType": "contract ERC20", - "name": "tokenAddress", + "internalType": "bytes32", + "name": "value", + "type": "bytes32" + } + ], + "name": "setBytes32", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "newAddress", "type": "address" + } + ], + "name": "setGuardian", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "key", + "type": "bytes32" }, { - "internalType": "uint256", - "name": "amount", - "type": "uint256" + "internalType": "int256", + "name": "value", + "type": "int256" } ], - "name": "transferToken", + "name": "setInt", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { - "inputs": [], - "name": "version", - "outputs": [ + "inputs": [ { - "internalType": "uint8", - "name": "", - "type": "uint8" + "internalType": "bytes32", + "name": "key", + "type": "bytes32" + }, + { + "internalType": "string", + "name": "value", + "type": "string" } ], - "stateMutability": "view", + "name": "setString", + "outputs": [], + "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ + { + "internalType": "bytes32", + "name": "key", + "type": "bytes32" + }, { "internalType": "uint256", - "name": "amount", + "name": "value", "type": "uint256" } ], - "name": "withdrawAVAX", + "name": "setUint", "outputs": [], "stateMutability": "nonpayable", "type": "function" @@ -4185,14 +4647,9 @@ { "inputs": [ { - "internalType": "address", - "name": "withdrawalAddress", - "type": "address" - }, - { - "internalType": "contract ERC20", - "name": "tokenAddress", - "type": "address" + "internalType": "bytes32", + "name": "key", + "type": "bytes32" }, { "internalType": "uint256", @@ -4200,60 +4657,67 @@ "type": "uint256" } ], - "name": "withdrawToken", + "name": "subUint", "outputs": [], "stateMutability": "nonpayable", "type": "function" } ] }, - "TokenGGP": { + "Timelock": { "abi": [ - { - "inputs": [ - { - "internalType": "contract Storage", - "name": "storageAddress", - "type": "address" - } - ], - "stateMutability": "nonpayable", - "type": "constructor" - }, - { - "inputs": [], - "name": "ContractNotFound", - "type": "error" - }, - { - "inputs": [], - "name": "ContractPaused", - "type": "error" - }, { "inputs": [], - "name": "InvalidOrOutdatedContract", + "name": "ExecutionFailed", "type": "error" }, { "inputs": [], - "name": "MaximumTokensReached", + "name": "Timelocked", "type": "error" }, { "inputs": [], - "name": "MustBeGuardian", + "name": "TransactionNotFound", "type": "error" }, { - "inputs": [], - "name": "MustBeGuardianOrValidContract", - "type": "error" + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "previousOwner", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "newOwner", + "type": "address" + } + ], + "name": "OwnershipTransferred", + "type": "event" }, { - "inputs": [], - "name": "MustBeMultisig", - "type": "error" + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "target", + "type": "address" + }, + { + "indexed": true, + "internalType": "bytes32", + "name": "id", + "type": "bytes32" + } + ], + "name": "TransactionAborted", + "type": "event" }, { "anonymous": false, @@ -4261,23 +4725,17 @@ { "indexed": true, "internalType": "address", - "name": "owner", + "name": "target", "type": "address" }, { "indexed": true, - "internalType": "address", - "name": "spender", - "type": "address" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "amount", - "type": "uint256" + "internalType": "bytes32", + "name": "id", + "type": "bytes32" } ], - "name": "Approval", + "name": "TransactionExecuted", "type": "event" }, { @@ -4286,41 +4744,64 @@ { "indexed": true, "internalType": "address", - "name": "from", + "name": "target", "type": "address" }, { "indexed": true, - "internalType": "address", - "name": "to", - "type": "address" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "amount", - "type": "uint256" + "internalType": "bytes32", + "name": "id", + "type": "bytes32" } ], - "name": "Transfer", + "name": "TransactionQueued", "type": "event" }, { - "inputs": [], - "name": "DOMAIN_SEPARATOR", - "outputs": [ + "inputs": [ + { + "internalType": "bytes32", + "name": "id", + "type": "bytes32" + } + ], + "name": "abortTransaction", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ { "internalType": "bytes32", "name": "", "type": "bytes32" } ], + "name": "actions", + "outputs": [ + { + "internalType": "address", + "name": "target", + "type": "address" + }, + { + "internalType": "uint256", + "name": "eta", + "type": "uint256" + }, + { + "internalType": "bytes", + "name": "data", + "type": "bytes" + } + ], "stateMutability": "view", "type": "function" }, { "inputs": [], - "name": "MAX_SUPPLY", + "name": "delay", "outputs": [ { "internalType": "uint256", @@ -4334,22 +4815,24 @@ { "inputs": [ { - "internalType": "address", - "name": "", - "type": "address" - }, - { - "internalType": "address", - "name": "", - "type": "address" + "internalType": "bytes32", + "name": "id", + "type": "bytes32" } ], - "name": "allowance", + "name": "executeTransaction", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "owner", "outputs": [ { - "internalType": "uint256", + "internalType": "address", "name": "", - "type": "uint256" + "type": "address" } ], "stateMutability": "view", @@ -4359,35 +4842,53 @@ "inputs": [ { "internalType": "address", - "name": "spender", + "name": "target", "type": "address" }, { - "internalType": "uint256", - "name": "amount", - "type": "uint256" + "internalType": "bytes", + "name": "data", + "type": "bytes" } ], - "name": "approve", + "name": "queueTransaction", "outputs": [ { - "internalType": "bool", + "internalType": "bytes32", "name": "", - "type": "bool" + "type": "bytes32" } ], "stateMutability": "nonpayable", "type": "function" }, + { + "inputs": [], + "name": "renounceOwnership", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, { "inputs": [ { "internalType": "address", - "name": "", + "name": "newOwner", "type": "address" } ], - "name": "balanceOf", + "name": "transferOwnership", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + } + ] + }, + "FixedPoint": { + "abi": [ + { + "inputs": [], + "name": "Q112", "outputs": [ { "internalType": "uint256", @@ -4400,7 +4901,7 @@ }, { "inputs": [], - "name": "decimals", + "name": "RESOLUTION", "outputs": [ { "internalType": "uint8", @@ -4410,103 +4911,119 @@ ], "stateMutability": "view", "type": "function" + } + ] + }, + "TwapGGP": { + "abi": [ + { + "inputs": [ + { + "internalType": "address", + "name": "_pair", + "type": "address" + }, + { + "internalType": "uint32", + "name": "_timePeriod", + "type": "uint32" + } + ], + "stateMutability": "nonpayable", + "type": "constructor" + }, + { + "inputs": [], + "name": "InsufficientElapsedTime", + "type": "error" }, { + "anonymous": false, "inputs": [ { + "indexed": true, + "internalType": "uint256", + "name": "price", + "type": "uint256" + }, + { + "indexed": false, "internalType": "uint256", - "name": "amount", + "name": "timestamp", "type": "uint256" } ], - "name": "mint", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" + "name": "GGPPriceUpdated", + "type": "event" }, { "inputs": [], - "name": "name", + "name": "blockTimestampLast", "outputs": [ { - "internalType": "string", + "internalType": "uint32", "name": "", - "type": "string" + "type": "uint32" } ], "stateMutability": "view", "type": "function" }, { - "inputs": [ - { - "internalType": "address", - "name": "", - "type": "address" - } - ], - "name": "nonces", + "inputs": [], + "name": "currentBlockTimestamp", "outputs": [ { - "internalType": "uint256", + "internalType": "uint32", "name": "", - "type": "uint256" + "type": "uint32" } ], "stateMutability": "view", "type": "function" }, { - "inputs": [ - { - "internalType": "address", - "name": "owner", - "type": "address" - }, - { - "internalType": "address", - "name": "spender", - "type": "address" - }, + "inputs": [], + "name": "currentCumulativePrices", + "outputs": [ { "internalType": "uint256", - "name": "value", + "name": "price0Cumulative", "type": "uint256" }, { "internalType": "uint256", - "name": "deadline", + "name": "price1Cumulative", "type": "uint256" }, { - "internalType": "uint8", - "name": "v", - "type": "uint8" - }, - { - "internalType": "bytes32", - "name": "r", - "type": "bytes32" - }, - { - "internalType": "bytes32", - "name": "s", - "type": "bytes32" + "internalType": "uint32", + "name": "blockTimestamp", + "type": "uint32" } ], - "name": "permit", - "outputs": [], - "stateMutability": "nonpayable", + "stateMutability": "view", "type": "function" }, { - "inputs": [], - "name": "symbol", + "inputs": [ + { + "internalType": "contract IERC20", + "name": "srcToken", + "type": "address" + }, + { + "internalType": "bool", + "name": "useSrcWrappers", + "type": "bool" + } + ], + "name": "getRateToEth", "outputs": [ { - "internalType": "string", - "name": "", - "type": "string" + "internalType": "uint256", + "name": "weightedRate", + "type": "uint256" } ], "stateMutability": "view", @@ -4514,89 +5031,101 @@ }, { "inputs": [], - "name": "totalSupply", + "name": "ggpSpotPriceInAVAX", "outputs": [ { - "internalType": "uint256", + "internalType": "uint144", "name": "", - "type": "uint256" + "type": "uint144" } ], "stateMutability": "view", "type": "function" }, { - "inputs": [ - { - "internalType": "address", - "name": "to", - "type": "address" - }, - { - "internalType": "uint256", - "name": "amount", - "type": "uint256" - } - ], - "name": "transfer", + "inputs": [], + "name": "ggpTwapPriceInAVAX", "outputs": [ { - "internalType": "bool", + "internalType": "uint144", "name": "", - "type": "bool" + "type": "uint144" } ], - "stateMutability": "nonpayable", + "stateMutability": "view", "type": "function" }, { - "inputs": [ - { - "internalType": "address", - "name": "from", - "type": "address" - }, + "inputs": [], + "name": "pair", + "outputs": [ { "internalType": "address", - "name": "to", + "name": "", "type": "address" - }, + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "price0Average", + "outputs": [ { - "internalType": "uint256", - "name": "amount", - "type": "uint256" + "internalType": "uint144", + "name": "", + "type": "uint144" } ], - "name": "transferFrom", + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "price0CumulativeLast", "outputs": [ { - "internalType": "bool", + "internalType": "uint256", "name": "", - "type": "bool" + "type": "uint256" } ], - "stateMutability": "nonpayable", + "stateMutability": "view", "type": "function" }, { "inputs": [], - "name": "version", + "name": "timePeriod", "outputs": [ { - "internalType": "uint8", + "internalType": "uint32", "name": "", - "type": "uint8" + "type": "uint32" } ], "stateMutability": "view", "type": "function" + }, + { + "inputs": [], + "name": "update", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" } ] }, - "TokenggAVAX": { + "Vault": { "abi": [ { - "inputs": [], + "inputs": [ + { + "internalType": "contract Storage", + "name": "storageAddress", + "type": "address" + } + ], "stateMutability": "nonpayable", "type": "constructor" }, @@ -4612,98 +5141,71 @@ }, { "inputs": [], - "name": "InvalidOrOutdatedContract", + "name": "InsufficientContractBalance", "type": "error" }, { "inputs": [], - "name": "InvalidStakingDeposit", + "name": "InvalidAmount", "type": "error" }, { "inputs": [], - "name": "MustBeGuardian", + "name": "InvalidNetworkContract", "type": "error" }, { "inputs": [], - "name": "MustBeGuardianOrValidContract", + "name": "InvalidOrOutdatedContract", "type": "error" }, { "inputs": [], - "name": "MustBeMultisig", + "name": "InvalidToken", "type": "error" }, { "inputs": [], - "name": "SyncError", + "name": "MustBeGuardian", "type": "error" }, { "inputs": [], - "name": "ZeroAssets", + "name": "MustBeGuardianOrValidContract", "type": "error" }, { "inputs": [], - "name": "ZeroShares", + "name": "MustBeMultisig", "type": "error" }, { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "address", - "name": "owner", - "type": "address" - }, - { - "indexed": true, - "internalType": "address", - "name": "spender", - "type": "address" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "amount", - "type": "uint256" - } - ], - "name": "Approval", - "type": "event" + "inputs": [], + "name": "TokenTransferFailed", + "type": "error" + }, + { + "inputs": [], + "name": "VaultTokenWithdrawalFailed", + "type": "error" }, { "anonymous": false, "inputs": [ { "indexed": true, - "internalType": "address", - "name": "caller", - "type": "address" - }, - { - "indexed": true, - "internalType": "address", - "name": "owner", - "type": "address" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "assets", - "type": "uint256" + "internalType": "string", + "name": "by", + "type": "string" }, { "indexed": false, "internalType": "uint256", - "name": "shares", + "name": "amount", "type": "uint256" } ], - "name": "Deposit", + "name": "AVAXDeposited", "type": "event" }, { @@ -4711,37 +5213,24 @@ "inputs": [ { "indexed": true, - "internalType": "address", - "name": "caller", - "type": "address" + "internalType": "string", + "name": "from", + "type": "string" }, { - "indexed": false, - "internalType": "uint256", - "name": "baseAmt", - "type": "uint256" + "indexed": true, + "internalType": "string", + "name": "to", + "type": "string" }, { "indexed": false, "internalType": "uint256", - "name": "rewardsAmt", + "name": "amount", "type": "uint256" } ], - "name": "DepositedFromStaking", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "uint8", - "name": "version", - "type": "uint8" - } - ], - "name": "Initialized", + "name": "AVAXTransfer", "type": "event" }, { @@ -4749,18 +5238,18 @@ "inputs": [ { "indexed": true, - "internalType": "uint256", - "name": "cycleEnd", - "type": "uint256" + "internalType": "string", + "name": "by", + "type": "string" }, { "indexed": false, "internalType": "uint256", - "name": "rewardsAmt", + "name": "amount", "type": "uint256" } ], - "name": "NewRewardsCycle", + "name": "AVAXWithdrawn", "type": "event" }, { @@ -4768,14 +5257,14 @@ "inputs": [ { "indexed": true, - "internalType": "address", - "name": "from", - "type": "address" + "internalType": "bytes32", + "name": "by", + "type": "bytes32" }, { "indexed": true, "internalType": "address", - "name": "to", + "name": "tokenAddress", "type": "address" }, { @@ -4785,7 +5274,7 @@ "type": "uint256" } ], - "name": "Transfer", + "name": "TokenDeposited", "type": "event" }, { @@ -4793,36 +5282,30 @@ "inputs": [ { "indexed": true, - "internalType": "address", - "name": "caller", - "type": "address" + "internalType": "bytes32", + "name": "by", + "type": "bytes32" }, { "indexed": true, - "internalType": "address", - "name": "receiver", - "type": "address" + "internalType": "bytes32", + "name": "to", + "type": "bytes32" }, { "indexed": true, "internalType": "address", - "name": "owner", + "name": "tokenAddress", "type": "address" }, { "indexed": false, "internalType": "uint256", - "name": "assets", - "type": "uint256" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "shares", + "name": "amount", "type": "uint256" } ], - "name": "Withdraw", + "name": "TokenTransfer", "type": "event" }, { @@ -4830,113 +5313,45 @@ "inputs": [ { "indexed": true, - "internalType": "address", - "name": "caller", - "type": "address" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "assets", - "type": "uint256" - } - ], - "name": "WithdrawnForStaking", - "type": "event" - }, - { - "inputs": [], - "name": "DOMAIN_SEPARATOR", - "outputs": [ - { "internalType": "bytes32", - "name": "", + "name": "by", "type": "bytes32" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "", - "type": "address" - }, - { - "internalType": "address", - "name": "", - "type": "address" - } - ], - "name": "allowance", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "amountAvailableForStaking", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ + }, { + "indexed": true, "internalType": "address", - "name": "spender", + "name": "tokenAddress", "type": "address" }, { + "indexed": false, "internalType": "uint256", "name": "amount", "type": "uint256" } ], - "name": "approve", - "outputs": [ - { - "internalType": "bool", - "name": "", - "type": "bool" - } - ], - "stateMutability": "nonpayable", - "type": "function" + "name": "TokenWithdrawn", + "type": "event" }, { - "inputs": [], - "name": "asset", - "outputs": [ + "inputs": [ { - "internalType": "contract ERC20", - "name": "", + "internalType": "address", + "name": "tokenAddress", "type": "address" } ], - "stateMutability": "view", + "name": "addAllowedToken", + "outputs": [], + "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { - "internalType": "address", - "name": "", - "type": "address" + "internalType": "string", + "name": "networkContractName", + "type": "string" } ], "name": "balanceOf", @@ -4953,12 +5368,17 @@ { "inputs": [ { - "internalType": "uint256", - "name": "shares", - "type": "uint256" + "internalType": "string", + "name": "networkContractName", + "type": "string" + }, + { + "internalType": "contract ERC20", + "name": "tokenAddress", + "type": "address" } ], - "name": "convertToAssets", + "name": "balanceOfToken", "outputs": [ { "internalType": "uint256", @@ -4969,124 +5389,162 @@ "stateMutability": "view", "type": "function" }, + { + "inputs": [], + "name": "depositAVAX", + "outputs": [], + "stateMutability": "payable", + "type": "function" + }, { "inputs": [ { - "internalType": "uint256", - "name": "assets", - "type": "uint256" - } - ], - "name": "convertToShares", - "outputs": [ + "internalType": "string", + "name": "networkContractName", + "type": "string" + }, + { + "internalType": "contract ERC20", + "name": "tokenContract", + "type": "address" + }, { "internalType": "uint256", - "name": "", + "name": "amount", "type": "uint256" } ], - "stateMutability": "view", + "name": "depositToken", + "outputs": [], + "stateMutability": "nonpayable", "type": "function" }, { - "inputs": [], - "name": "decimals", - "outputs": [ + "inputs": [ { - "internalType": "uint8", - "name": "", - "type": "uint8" + "internalType": "address", + "name": "tokenAddress", + "type": "address" } ], - "stateMutability": "view", + "name": "removeAllowedToken", + "outputs": [], + "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ + { + "internalType": "string", + "name": "toContractName", + "type": "string" + }, { "internalType": "uint256", - "name": "assets", + "name": "amount", "type": "uint256" + } + ], + "name": "transferAVAX", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "string", + "name": "networkContractName", + "type": "string" }, { - "internalType": "address", - "name": "receiver", + "internalType": "contract ERC20", + "name": "tokenAddress", "type": "address" - } - ], - "name": "deposit", - "outputs": [ + }, { "internalType": "uint256", - "name": "shares", + "name": "amount", "type": "uint256" } ], + "name": "transferToken", + "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], - "name": "depositAVAX", + "name": "version", "outputs": [ { - "internalType": "uint256", - "name": "shares", - "type": "uint256" + "internalType": "uint8", + "name": "", + "type": "uint8" } ], - "stateMutability": "payable", + "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", - "name": "baseAmt", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "rewardAmt", + "name": "amount", "type": "uint256" } ], - "name": "depositFromStaking", + "name": "withdrawAVAX", "outputs": [], - "stateMutability": "payable", + "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { - "internalType": "contract Storage", - "name": "storageAddress", + "internalType": "address", + "name": "withdrawalAddress", "type": "address" }, { "internalType": "contract ERC20", - "name": "asset", + "name": "tokenAddress", "type": "address" }, { "internalType": "uint256", - "name": "initialDeposit", + "name": "amount", "type": "uint256" } ], - "name": "initialize", + "name": "withdrawToken", "outputs": [], "stateMutability": "nonpayable", "type": "function" + } + ] + }, + "GGAVAXRateProvider": { + "abi": [ + { + "inputs": [ + { + "internalType": "address", + "name": "addr", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "constructor" }, { "inputs": [], - "name": "lastRewardsAmt", + "name": "getRate", "outputs": [ { - "internalType": "uint192", + "internalType": "uint256", "name": "", - "type": "uint192" + "type": "uint256" } ], "stateMutability": "view", @@ -5094,26 +5552,24 @@ }, { "inputs": [], - "name": "lastSync", + "name": "ggAVAX", "outputs": [ { - "internalType": "uint32", + "internalType": "contract IggAVAX", "name": "", - "type": "uint32" + "type": "address" } ], "stateMutability": "view", "type": "function" - }, + } + ] + }, + "IRateProvider": { + "abi": [ { - "inputs": [ - { - "internalType": "address", - "name": "_owner", - "type": "address" - } - ], - "name": "maxDeposit", + "inputs": [], + "name": "getRate", "outputs": [ { "internalType": "uint256", @@ -5123,16 +5579,20 @@ ], "stateMutability": "view", "type": "function" - }, + } + ] + }, + "IggAVAX": { + "abi": [ { "inputs": [ { - "internalType": "address", - "name": "_owner", - "type": "address" + "internalType": "uint256", + "name": "shares", + "type": "uint256" } ], - "name": "maxMint", + "name": "convertToAssets", "outputs": [ { "internalType": "uint256", @@ -5142,91 +5602,123 @@ ], "stateMutability": "view", "type": "function" - }, + } + ] + }, + "TokenGGP": { + "abi": [ { "inputs": [ { - "internalType": "address", - "name": "_owner", + "internalType": "contract Storage", + "name": "storageAddress", "type": "address" } ], - "name": "maxRedeem", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" + "stateMutability": "nonpayable", + "type": "constructor" + }, + { + "inputs": [], + "name": "ContractNotFound", + "type": "error" + }, + { + "inputs": [], + "name": "ContractPaused", + "type": "error" + }, + { + "inputs": [], + "name": "InvalidOrOutdatedContract", + "type": "error" + }, + { + "inputs": [], + "name": "MaximumTokensReached", + "type": "error" + }, + { + "inputs": [], + "name": "MustBeGuardian", + "type": "error" + }, + { + "inputs": [], + "name": "MustBeGuardianOrValidContract", + "type": "error" + }, + { + "inputs": [], + "name": "MustBeMultisig", + "type": "error" }, { + "anonymous": false, "inputs": [ { + "indexed": true, "internalType": "address", - "name": "_owner", + "name": "owner", "type": "address" - } - ], - "name": "maxWithdraw", - "outputs": [ + }, + { + "indexed": true, + "internalType": "address", + "name": "spender", + "type": "address" + }, { + "indexed": false, "internalType": "uint256", - "name": "", + "name": "amount", "type": "uint256" } ], - "stateMutability": "view", - "type": "function" + "name": "Approval", + "type": "event" }, { + "anonymous": false, "inputs": [ { - "internalType": "uint256", - "name": "shares", - "type": "uint256" + "indexed": true, + "internalType": "address", + "name": "from", + "type": "address" }, { + "indexed": true, "internalType": "address", - "name": "receiver", + "name": "to", "type": "address" - } - ], - "name": "mint", - "outputs": [ + }, { + "indexed": false, "internalType": "uint256", - "name": "assets", + "name": "amount", "type": "uint256" } ], - "stateMutability": "nonpayable", - "type": "function" + "name": "Transfer", + "type": "event" }, { "inputs": [], - "name": "name", + "name": "DOMAIN_SEPARATOR", "outputs": [ { - "internalType": "string", + "internalType": "bytes32", "name": "", - "type": "string" + "type": "bytes32" } ], "stateMutability": "view", "type": "function" }, { - "inputs": [ - { - "internalType": "address", - "name": "", - "type": "address" - } - ], - "name": "nonces", + "inputs": [], + "name": "MAX_SUPPLY", "outputs": [ { "internalType": "uint256", @@ -5241,54 +5733,16 @@ "inputs": [ { "internalType": "address", - "name": "owner", + "name": "", "type": "address" }, { "internalType": "address", - "name": "spender", + "name": "", "type": "address" - }, - { - "internalType": "uint256", - "name": "value", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "deadline", - "type": "uint256" - }, - { - "internalType": "uint8", - "name": "v", - "type": "uint8" - }, - { - "internalType": "bytes32", - "name": "r", - "type": "bytes32" - }, - { - "internalType": "bytes32", - "name": "s", - "type": "bytes32" } ], - "name": "permit", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "uint256", - "name": "assets", - "type": "uint256" - } - ], - "name": "previewDeposit", + "name": "allowance", "outputs": [ { "internalType": "uint256", @@ -5301,32 +5755,37 @@ }, { "inputs": [ + { + "internalType": "address", + "name": "spender", + "type": "address" + }, { "internalType": "uint256", - "name": "shares", + "name": "amount", "type": "uint256" } ], - "name": "previewMint", + "name": "approve", "outputs": [ { - "internalType": "uint256", + "internalType": "bool", "name": "", - "type": "uint256" + "type": "bool" } ], - "stateMutability": "view", + "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { - "internalType": "uint256", - "name": "shares", - "type": "uint256" + "internalType": "address", + "name": "", + "type": "address" } ], - "name": "previewRedeem", + "name": "balanceOf", "outputs": [ { "internalType": "uint256", @@ -5338,19 +5797,13 @@ "type": "function" }, { - "inputs": [ - { - "internalType": "uint256", - "name": "assets", - "type": "uint256" - } - ], - "name": "previewWithdraw", + "inputs": [], + "name": "decimals", "outputs": [ { - "internalType": "uint256", + "internalType": "uint8", "name": "", - "type": "uint256" + "type": "uint8" } ], "stateMutability": "view", @@ -5360,79 +5813,37 @@ "inputs": [ { "internalType": "uint256", - "name": "shares", - "type": "uint256" - }, - { - "internalType": "address", - "name": "receiver", - "type": "address" - }, - { - "internalType": "address", - "name": "owner", - "type": "address" - } - ], - "name": "redeem", - "outputs": [ - { - "internalType": "uint256", - "name": "assets", - "type": "uint256" - } - ], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "uint256", - "name": "shares", - "type": "uint256" - } - ], - "name": "redeemAVAX", - "outputs": [ - { - "internalType": "uint256", - "name": "assets", + "name": "amount", "type": "uint256" } ], + "name": "mint", + "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], - "name": "rewardsCycleEnd", + "name": "name", "outputs": [ { - "internalType": "uint32", + "internalType": "string", "name": "", - "type": "uint32" + "type": "string" } ], "stateMutability": "view", "type": "function" }, { - "inputs": [], - "name": "rewardsCycleLength", - "outputs": [ + "inputs": [ { - "internalType": "uint32", + "internalType": "address", "name": "", - "type": "uint32" + "type": "address" } ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "stakingTotalAssets", + "name": "nonces", "outputs": [ { "internalType": "uint256", @@ -5444,46 +5855,56 @@ "type": "function" }, { - "inputs": [], - "name": "symbol", - "outputs": [ + "inputs": [ { - "internalType": "string", - "name": "", - "type": "string" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "syncRewards", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [], - "name": "totalAssets", - "outputs": [ + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "internalType": "address", + "name": "spender", + "type": "address" + }, + { + "internalType": "uint256", + "name": "value", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "deadline", + "type": "uint256" + }, + { + "internalType": "uint8", + "name": "v", + "type": "uint8" + }, { - "internalType": "uint256", - "name": "", - "type": "uint256" + "internalType": "bytes32", + "name": "r", + "type": "bytes32" + }, + { + "internalType": "bytes32", + "name": "s", + "type": "bytes32" } ], - "stateMutability": "view", + "name": "permit", + "outputs": [], + "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], - "name": "totalReleasedAssets", + "name": "symbol", "outputs": [ { - "internalType": "uint256", + "internalType": "string", "name": "", - "type": "uint256" + "type": "string" } ], "stateMutability": "view", @@ -5567,75 +5988,10 @@ ], "stateMutability": "view", "type": "function" - }, - { - "inputs": [ - { - "internalType": "uint256", - "name": "assets", - "type": "uint256" - }, - { - "internalType": "address", - "name": "receiver", - "type": "address" - }, - { - "internalType": "address", - "name": "owner", - "type": "address" - } - ], - "name": "withdraw", - "outputs": [ - { - "internalType": "uint256", - "name": "shares", - "type": "uint256" - } - ], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "uint256", - "name": "assets", - "type": "uint256" - } - ], - "name": "withdrawAVAX", - "outputs": [ - { - "internalType": "uint256", - "name": "shares", - "type": "uint256" - } - ], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "uint256", - "name": "assets", - "type": "uint256" - } - ], - "name": "withdrawForStaking", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "stateMutability": "payable", - "type": "receive" } ] }, - "Pandasia": { + "TokenggAVAX": { "abi": [ { "inputs": [], @@ -5644,182 +6000,108 @@ }, { "inputs": [], - "name": "AccessControlBadConfirmation", - "type": "error" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "account", - "type": "address" - }, - { - "internalType": "bytes32", - "name": "neededRole", - "type": "bytes32" - } - ], - "name": "AccessControlUnauthorizedAccount", - "type": "error" - }, - { - "inputs": [], - "name": "AddressAlreadyClaimed", - "type": "error" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "target", - "type": "address" - } - ], - "name": "AddressEmptyCode", - "type": "error" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "account", - "type": "address" - } - ], - "name": "AddressInsufficientBalance", - "type": "error" - }, - { - "inputs": [], - "name": "AddressNotEligible", - "type": "error" - }, - { - "inputs": [], - "name": "AirdropExpired", - "type": "error" - }, - { - "inputs": [], - "name": "AirdropNotStarted", - "type": "error" - }, - { - "inputs": [], - "name": "AirdropOutOfFunds", + "name": "ContractNotFound", "type": "error" }, { "inputs": [], - "name": "AirdropStillActive", + "name": "ContractPaused", "type": "error" }, { "inputs": [], - "name": "AirdropStillHasFunding", + "name": "InvalidOrOutdatedContract", "type": "error" }, { "inputs": [], - "name": "FailedInnerCall", + "name": "InvalidStakingDeposit", "type": "error" }, { "inputs": [], - "name": "InvalidAddress", + "name": "MustBeGuardian", "type": "error" }, { "inputs": [], - "name": "InvalidAmount", + "name": "MustBeGuardianOrValidContract", "type": "error" }, { "inputs": [], - "name": "InvalidInitialization", + "name": "MustBeMultisig", "type": "error" }, { "inputs": [], - "name": "InvalidWithdrawRequest", + "name": "SyncError", "type": "error" }, { "inputs": [], - "name": "NotInitializing", + "name": "ZeroAssets", "type": "error" }, { "inputs": [], - "name": "NotOwner", + "name": "ZeroShares", "type": "error" }, { + "anonymous": false, "inputs": [ { + "indexed": true, "internalType": "address", "name": "owner", "type": "address" - } - ], - "name": "OwnableInvalidOwner", - "type": "error" - }, - { - "inputs": [ + }, { + "indexed": true, "internalType": "address", - "name": "account", + "name": "spender", "type": "address" - } - ], - "name": "OwnableUnauthorizedAccount", - "type": "error" - }, - { - "inputs": [], - "name": "PAddrAlreadyRegistered", - "type": "error" - }, - { - "inputs": [], - "name": "PAddrNotInMerkleTree", - "type": "error" - }, - { - "inputs": [ + }, { - "internalType": "address", - "name": "token", - "type": "address" + "indexed": false, + "internalType": "uint256", + "name": "amount", + "type": "uint256" } ], - "name": "SafeERC20FailedOperation", - "type": "error" - }, - { - "inputs": [], - "name": "ZeroAmount", - "type": "error" + "name": "Approval", + "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, - "internalType": "uint64", - "name": "id", - "type": "uint64" + "internalType": "address", + "name": "caller", + "type": "address" }, { "indexed": true, "internalType": "address", - "name": "claimant", + "name": "owner", "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "assets", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "shares", + "type": "uint256" } ], - "name": "AirdropClaimed", + "name": "Deposit", "type": "event" }, { @@ -5827,12 +6109,24 @@ "inputs": [ { "indexed": true, - "internalType": "uint64", - "name": "id", - "type": "uint64" + "internalType": "address", + "name": "caller", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "baseAmt", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "rewardsAmt", + "type": "uint256" } ], - "name": "AirdropCreated", + "name": "DepositedFromStaking", "type": "event" }, { @@ -5840,9 +6134,9 @@ "inputs": [ { "indexed": false, - "internalType": "uint64", + "internalType": "uint8", "name": "version", - "type": "uint64" + "type": "uint8" } ], "name": "Initialized", @@ -5853,233 +6147,109 @@ "inputs": [ { "indexed": true, - "internalType": "address", - "name": "previousOwner", - "type": "address" - }, - { - "indexed": true, - "internalType": "address", - "name": "newOwner", - "type": "address" - } - ], - "name": "OwnershipTransferred", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "bytes32", - "name": "role", - "type": "bytes32" - }, - { - "indexed": true, - "internalType": "bytes32", - "name": "previousAdminRole", - "type": "bytes32" + "internalType": "uint256", + "name": "cycleEnd", + "type": "uint256" }, { - "indexed": true, - "internalType": "bytes32", - "name": "newAdminRole", - "type": "bytes32" + "indexed": false, + "internalType": "uint256", + "name": "rewardsAmt", + "type": "uint256" } ], - "name": "RoleAdminChanged", + "name": "NewRewardsCycle", "type": "event" }, { "anonymous": false, "inputs": [ - { - "indexed": true, - "internalType": "bytes32", - "name": "role", - "type": "bytes32" - }, { "indexed": true, "internalType": "address", - "name": "account", + "name": "from", "type": "address" }, { "indexed": true, "internalType": "address", - "name": "sender", + "name": "to", "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "amount", + "type": "uint256" } ], - "name": "RoleGranted", + "name": "Transfer", "type": "event" }, { "anonymous": false, "inputs": [ - { - "indexed": true, - "internalType": "bytes32", - "name": "role", - "type": "bytes32" - }, { "indexed": true, "internalType": "address", - "name": "account", + "name": "caller", "type": "address" }, { "indexed": true, "internalType": "address", - "name": "sender", + "name": "receiver", "type": "address" - } - ], - "name": "RoleRevoked", - "type": "event" - }, - { - "inputs": [], - "name": "AIRDROP_ADMIN", - "outputs": [ - { - "internalType": "bytes32", - "name": "", - "type": "bytes32" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "DEFAULT_ADMIN_ROLE", - "outputs": [ - { - "internalType": "bytes32", - "name": "", - "type": "bytes32" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "ROOT_UPDATER", - "outputs": [ - { - "internalType": "bytes32", - "name": "", - "type": "bytes32" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "airdropCount", - "outputs": [ - { - "internalType": "uint64", - "name": "", - "type": "uint64" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ + }, { + "indexed": true, "internalType": "address", - "name": "", + "name": "owner", "type": "address" }, { + "indexed": false, "internalType": "uint256", - "name": "", + "name": "assets", "type": "uint256" - } - ], - "name": "airdropIds", - "outputs": [ + }, { - "internalType": "uint64", - "name": "", - "type": "uint64" + "indexed": false, + "internalType": "uint256", + "name": "shares", + "type": "uint256" } ], - "stateMutability": "view", - "type": "function" + "name": "Withdraw", + "type": "event" }, { + "anonymous": false, "inputs": [ { - "internalType": "uint64", - "name": "", - "type": "uint64" - } - ], - "name": "airdrops", - "outputs": [ - { - "internalType": "uint64", - "name": "id", - "type": "uint64" - }, - { - "internalType": "address", - "name": "owner", - "type": "address" - }, - { + "indexed": true, "internalType": "address", - "name": "erc20", + "name": "caller", "type": "address" }, { + "indexed": false, "internalType": "uint256", - "name": "balance", - "type": "uint256" - }, - { - "internalType": "bytes32", - "name": "customRoot", - "type": "bytes32" - }, - { - "internalType": "uint256", - "name": "claimAmount", + "name": "assets", "type": "uint256" - }, - { - "internalType": "uint64", - "name": "startsAt", - "type": "uint64" - }, - { - "internalType": "uint64", - "name": "expiresAt", - "type": "uint64" } ], - "stateMutability": "view", - "type": "function" + "name": "WithdrawnForStaking", + "type": "event" }, { "inputs": [], - "name": "blockHeight", + "name": "DOMAIN_SEPARATOR", "outputs": [ { - "internalType": "uint64", + "internalType": "bytes32", "name": "", - "type": "uint64" + "type": "bytes32" } ], "stateMutability": "view", @@ -6091,41 +6261,27 @@ "internalType": "address", "name": "", "type": "address" - } - ], - "name": "c2p", - "outputs": [ + }, { "internalType": "address", "name": "", "type": "address" } ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ + "name": "allowance", + "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], - "name": "cChainAddrs", - "outputs": [ - { - "internalType": "address", - "name": "", - "type": "address" - } - ], "stateMutability": "view", "type": "function" }, { "inputs": [], - "name": "cChainAddrsCount", + "name": "amountAvailableForStaking", "outputs": [ { "internalType": "uint256", @@ -6140,21 +6296,16 @@ "inputs": [ { "internalType": "address", - "name": "cChainAddr", + "name": "spender", "type": "address" }, { - "internalType": "uint64", - "name": "airdropId", - "type": "uint64" - }, - { - "internalType": "bytes32[]", - "name": "proof", - "type": "bytes32[]" + "internalType": "uint256", + "name": "amount", + "type": "uint256" } ], - "name": "canClaimAirdrop", + "name": "approve", "outputs": [ { "internalType": "bool", @@ -6162,46 +6313,36 @@ "type": "bool" } ], - "stateMutability": "view", + "stateMutability": "nonpayable", "type": "function" }, { - "inputs": [ - { - "internalType": "uint64", - "name": "airdropId", - "type": "uint64" - }, + "inputs": [], + "name": "asset", + "outputs": [ { - "internalType": "bytes32[]", - "name": "proof", - "type": "bytes32[]" + "internalType": "contract ERC20", + "name": "", + "type": "address" } ], - "name": "claimAirdrop", - "outputs": [], - "stateMutability": "nonpayable", + "stateMutability": "view", "type": "function" }, { "inputs": [ - { - "internalType": "uint64", - "name": "", - "type": "uint64" - }, { "internalType": "address", "name": "", "type": "address" } ], - "name": "claimed", + "name": "balanceOf", "outputs": [ { - "internalType": "bool", + "internalType": "uint256", "name": "", - "type": "bool" + "type": "uint256" } ], "stateMutability": "view", @@ -6210,37 +6351,17 @@ { "inputs": [ { - "internalType": "uint64", - "name": "airdropId", - "type": "uint64" - } - ], - "name": "deleteAirdrop", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "uint64", - "name": "airdropId", - "type": "uint64" + "internalType": "uint256", + "name": "shares", + "type": "uint256" } ], - "name": "emergencyWithdraw", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [], - "name": "feePct", + "name": "convertToAssets", "outputs": [ { - "internalType": "uint32", + "internalType": "uint256", "name": "", - "type": "uint32" + "type": "uint256" } ], "stateMutability": "view", @@ -6249,77 +6370,30 @@ { "inputs": [ { - "internalType": "uint64", - "name": "airdropId", - "type": "uint64" - }, + "internalType": "uint256", + "name": "assets", + "type": "uint256" + } + ], + "name": "convertToShares", + "outputs": [ { "internalType": "uint256", - "name": "fundAmount", + "name": "", "type": "uint256" } ], - "name": "fundAirdrop", - "outputs": [], - "stateMutability": "nonpayable", + "stateMutability": "view", "type": "function" }, { - "inputs": [ - { - "internalType": "uint64", - "name": "airdropId", - "type": "uint64" - } - ], - "name": "getAirdrop", + "inputs": [], + "name": "decimals", "outputs": [ { - "components": [ - { - "internalType": "uint64", - "name": "id", - "type": "uint64" - }, - { - "internalType": "address", - "name": "owner", - "type": "address" - }, - { - "internalType": "address", - "name": "erc20", - "type": "address" - }, - { - "internalType": "uint256", - "name": "balance", - "type": "uint256" - }, - { - "internalType": "bytes32", - "name": "customRoot", - "type": "bytes32" - }, - { - "internalType": "uint256", - "name": "claimAmount", - "type": "uint256" - }, - { - "internalType": "uint64", - "name": "startsAt", - "type": "uint64" - }, - { - "internalType": "uint64", - "name": "expiresAt", - "type": "uint64" - } - ], - "internalType": "struct Pandasia.Airdrop", + "internalType": "uint8", "name": "", - "type": "tuple" + "type": "uint8" } ], "stateMutability": "view", @@ -6327,181 +6401,122 @@ }, { "inputs": [ + { + "internalType": "uint256", + "name": "assets", + "type": "uint256" + }, { "internalType": "address", - "name": "owner", + "name": "receiver", "type": "address" } ], - "name": "getAirdropIds", + "name": "deposit", "outputs": [ { - "internalType": "uint64[]", - "name": "", - "type": "uint64[]" + "internalType": "uint256", + "name": "shares", + "type": "uint256" } ], - "stateMutability": "view", + "stateMutability": "nonpayable", "type": "function" }, { - "inputs": [ - { - "internalType": "uint64", - "name": "offset", - "type": "uint64" - }, - { - "internalType": "uint64", - "name": "limit", - "type": "uint64" - } - ], - "name": "getAirdrops", + "inputs": [], + "name": "depositAVAX", "outputs": [ { - "components": [ - { - "internalType": "uint64", - "name": "id", - "type": "uint64" - }, - { - "internalType": "address", - "name": "owner", - "type": "address" - }, - { - "internalType": "address", - "name": "erc20", - "type": "address" - }, - { - "internalType": "uint256", - "name": "balance", - "type": "uint256" - }, - { - "internalType": "bytes32", - "name": "customRoot", - "type": "bytes32" - }, - { - "internalType": "uint256", - "name": "claimAmount", - "type": "uint256" - }, - { - "internalType": "uint64", - "name": "startsAt", - "type": "uint64" - }, - { - "internalType": "uint64", - "name": "expiresAt", - "type": "uint64" - } - ], - "internalType": "struct Pandasia.Airdrop[]", - "name": "pageOfAirdrops", - "type": "tuple[]" + "internalType": "uint256", + "name": "shares", + "type": "uint256" } ], - "stateMutability": "view", + "stateMutability": "payable", "type": "function" }, { "inputs": [ { "internalType": "uint256", - "name": "offset", + "name": "baseAmt", "type": "uint256" }, { "internalType": "uint256", - "name": "limit", + "name": "rewardAmt", "type": "uint256" } ], - "name": "getRegisteredUsers", - "outputs": [ - { - "components": [ - { - "internalType": "address", - "name": "cChainAddr", - "type": "address" - }, - { - "internalType": "address", - "name": "pChainAddr", - "type": "address" - } - ], - "internalType": "struct Pandasia.User[]", - "name": "users", - "type": "tuple[]" - } - ], - "stateMutability": "view", + "name": "depositFromStaking", + "outputs": [], + "stateMutability": "payable", "type": "function" }, { "inputs": [ { - "internalType": "bytes32", - "name": "role", - "type": "bytes32" + "internalType": "contract Storage", + "name": "storageAddress", + "type": "address" + }, + { + "internalType": "contract ERC20", + "name": "asset", + "type": "address" + }, + { + "internalType": "uint256", + "name": "initialDeposit", + "type": "uint256" } ], - "name": "getRoleAdmin", + "name": "initialize", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "lastRewardsAmt", "outputs": [ { - "internalType": "bytes32", + "internalType": "uint192", "name": "", - "type": "bytes32" + "type": "uint192" } ], "stateMutability": "view", "type": "function" }, { - "inputs": [ - { - "internalType": "bytes32", - "name": "role", - "type": "bytes32" - }, + "inputs": [], + "name": "lastSync", + "outputs": [ { - "internalType": "address", - "name": "account", - "type": "address" + "internalType": "uint32", + "name": "", + "type": "uint32" } ], - "name": "grantRole", - "outputs": [], - "stateMutability": "nonpayable", + "stateMutability": "view", "type": "function" }, { "inputs": [ - { - "internalType": "uint64", - "name": "airdropId", - "type": "uint64" - }, { "internalType": "address", - "name": "addr", + "name": "_owner", "type": "address" } ], - "name": "hasClaimed", + "name": "maxDeposit", "outputs": [ { - "internalType": "bool", + "internalType": "uint256", "name": "", - "type": "bool" + "type": "uint256" } ], "stateMutability": "view", @@ -6509,23 +6524,18 @@ }, { "inputs": [ - { - "internalType": "bytes32", - "name": "role", - "type": "bytes32" - }, { "internalType": "address", - "name": "account", + "name": "_owner", "type": "address" } ], - "name": "hasRole", + "name": "maxMint", "outputs": [ { - "internalType": "bool", + "internalType": "uint256", "name": "", - "type": "bool" + "type": "uint256" } ], "stateMutability": "view", @@ -6535,42 +6545,35 @@ "inputs": [ { "internalType": "address", - "name": "addr", + "name": "_owner", "type": "address" } ], - "name": "hashChecksummedMessage", + "name": "maxRedeem", "outputs": [ { - "internalType": "bytes32", + "internalType": "uint256", "name": "", - "type": "bytes32" + "type": "uint256" } ], - "stateMutability": "pure", - "type": "function" - }, - { - "inputs": [], - "name": "initialize", - "outputs": [], - "stateMutability": "nonpayable", + "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", - "name": "addr", + "name": "_owner", "type": "address" } ], - "name": "isMinipoolOperator", + "name": "maxWithdraw", "outputs": [ { - "internalType": "bool", + "internalType": "uint256", "name": "", - "type": "bool" + "type": "uint256" } ], "stateMutability": "view", @@ -6578,31 +6581,55 @@ }, { "inputs": [ + { + "internalType": "uint256", + "name": "shares", + "type": "uint256" + }, { "internalType": "address", - "name": "addr", + "name": "receiver", "type": "address" } ], - "name": "isRegisteredValidator", + "name": "mint", "outputs": [ { - "internalType": "bool", + "internalType": "uint256", + "name": "assets", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "name", + "outputs": [ + { + "internalType": "string", "name": "", - "type": "bool" + "type": "string" } ], "stateMutability": "view", "type": "function" }, { - "inputs": [], - "name": "merkleRoot", + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "name": "nonces", "outputs": [ { - "internalType": "bytes32", + "internalType": "uint256", "name": "", - "type": "bytes32" + "type": "uint256" } ], "stateMutability": "view", @@ -6611,50 +6638,79 @@ { "inputs": [ { - "internalType": "bytes32", - "name": "customRoot", - "type": "bytes32" + "internalType": "address", + "name": "owner", + "type": "address" }, { "internalType": "address", - "name": "erc20", + "name": "spender", "type": "address" }, { "internalType": "uint256", - "name": "claimAmount", + "name": "value", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "deadline", "type": "uint256" }, { - "internalType": "uint64", - "name": "startsAt", - "type": "uint64" + "internalType": "uint8", + "name": "v", + "type": "uint8" + }, + { + "internalType": "bytes32", + "name": "r", + "type": "bytes32" }, { - "internalType": "uint64", - "name": "expiresAt", - "type": "uint64" + "internalType": "bytes32", + "name": "s", + "type": "bytes32" + } + ], + "name": "permit", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "assets", + "type": "uint256" } ], - "name": "newAirdrop", + "name": "previewDeposit", "outputs": [ { - "internalType": "uint64", + "internalType": "uint256", "name": "", - "type": "uint64" + "type": "uint256" } ], - "stateMutability": "nonpayable", + "stateMutability": "view", "type": "function" }, { - "inputs": [], - "name": "owner", + "inputs": [ + { + "internalType": "uint256", + "name": "shares", + "type": "uint256" + } + ], + "name": "previewMint", "outputs": [ { - "internalType": "address", + "internalType": "uint256", "name": "", - "type": "address" + "type": "uint256" } ], "stateMutability": "view", @@ -6663,17 +6719,17 @@ { "inputs": [ { - "internalType": "address", - "name": "", - "type": "address" + "internalType": "uint256", + "name": "shares", + "type": "uint256" } ], - "name": "p2c", + "name": "previewRedeem", "outputs": [ { - "internalType": "address", + "internalType": "uint256", "name": "", - "type": "address" + "type": "uint256" } ], "stateMutability": "view", @@ -6683,178 +6739,162 @@ "inputs": [ { "internalType": "uint256", - "name": "x", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "y", + "name": "assets", "type": "uint256" } ], - "name": "pubKeyBytesToAvaAddressBytes", + "name": "previewWithdraw", "outputs": [ { - "internalType": "address", + "internalType": "uint256", "name": "", - "type": "address" + "type": "uint256" } ], - "stateMutability": "pure", + "stateMutability": "view", "type": "function" }, { "inputs": [ { - "internalType": "uint8", - "name": "v", - "type": "uint8" + "internalType": "uint256", + "name": "shares", + "type": "uint256" }, { - "internalType": "bytes32", - "name": "r", - "type": "bytes32" + "internalType": "address", + "name": "receiver", + "type": "address" }, { - "internalType": "bytes32", - "name": "s", - "type": "bytes32" + "internalType": "address", + "name": "owner", + "type": "address" } ], - "name": "recoverMessage", + "name": "redeem", "outputs": [ { - "internalType": "address", - "name": "", - "type": "address" + "internalType": "uint256", + "name": "assets", + "type": "uint256" } ], - "stateMutability": "view", + "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { - "internalType": "uint8", - "name": "v", - "type": "uint8" - }, - { - "internalType": "bytes32", - "name": "r", - "type": "bytes32" - }, - { - "internalType": "bytes32", - "name": "s", - "type": "bytes32" - }, + "internalType": "uint256", + "name": "shares", + "type": "uint256" + } + ], + "name": "redeemAVAX", + "outputs": [ { - "internalType": "bytes32[]", - "name": "proof", - "type": "bytes32[]" + "internalType": "uint256", + "name": "assets", + "type": "uint256" } ], - "name": "registerPChainAddr", - "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], - "name": "renounceOwnership", - "outputs": [], - "stateMutability": "nonpayable", + "name": "rewardsCycleEnd", + "outputs": [ + { + "internalType": "uint32", + "name": "", + "type": "uint32" + } + ], + "stateMutability": "view", "type": "function" }, { - "inputs": [ - { - "internalType": "bytes32", - "name": "role", - "type": "bytes32" - }, + "inputs": [], + "name": "rewardsCycleLength", + "outputs": [ { - "internalType": "address", - "name": "callerConfirmation", - "type": "address" + "internalType": "uint32", + "name": "", + "type": "uint32" } ], - "name": "renounceRole", - "outputs": [], - "stateMutability": "nonpayable", + "stateMutability": "view", "type": "function" }, { - "inputs": [ - { - "internalType": "bytes32", - "name": "role", - "type": "bytes32" - }, + "inputs": [], + "name": "stakingTotalAssets", + "outputs": [ { - "internalType": "address", - "name": "account", - "type": "address" + "internalType": "uint256", + "name": "", + "type": "uint256" } ], - "name": "revokeRole", - "outputs": [], - "stateMutability": "nonpayable", + "stateMutability": "view", "type": "function" }, { - "inputs": [ + "inputs": [], + "name": "symbol", + "outputs": [ { - "internalType": "uint32", - "name": "fee", - "type": "uint32" + "internalType": "string", + "name": "", + "type": "string" } ], - "name": "setFee", + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "syncRewards", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { - "inputs": [ - { - "internalType": "bytes32", - "name": "root", - "type": "bytes32" - }, + "inputs": [], + "name": "totalAssets", + "outputs": [ { - "internalType": "uint64", - "name": "height", - "type": "uint64" + "internalType": "uint256", + "name": "", + "type": "uint256" } ], - "name": "setMerkleRoot", - "outputs": [], - "stateMutability": "nonpayable", + "stateMutability": "view", "type": "function" }, { - "inputs": [ + "inputs": [], + "name": "totalReleasedAssets", + "outputs": [ { - "internalType": "address", - "name": "addr", - "type": "address" + "internalType": "uint256", + "name": "", + "type": "uint256" } ], - "name": "setStorageContract", - "outputs": [], - "stateMutability": "nonpayable", + "stateMutability": "view", "type": "function" }, { "inputs": [], - "name": "storageContract", + "name": "totalSupply", "outputs": [ { - "internalType": "address", + "internalType": "uint256", "name": "", - "type": "address" + "type": "uint256" } ], "stateMutability": "view", @@ -6863,12 +6903,17 @@ { "inputs": [ { - "internalType": "bytes4", - "name": "interfaceId", - "type": "bytes4" + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" } ], - "name": "supportsInterface", + "name": "transfer", "outputs": [ { "internalType": "bool", @@ -6876,88 +6921,115 @@ "type": "bool" } ], - "stateMutability": "view", + "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", - "name": "newOwner", + "name": "from", + "type": "address" + }, + { + "internalType": "address", + "name": "to", "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "transferFrom", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" } ], - "name": "transferOwnership", - "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], - "name": "unregisterPChainAddr", - "outputs": [], - "stateMutability": "nonpayable", + "name": "version", + "outputs": [ + { + "internalType": "uint8", + "name": "", + "type": "uint8" + } + ], + "stateMutability": "view", "type": "function" }, { "inputs": [ { - "internalType": "bytes32", - "name": "root", - "type": "bytes32" + "internalType": "uint256", + "name": "assets", + "type": "uint256" }, { "internalType": "address", - "name": "account", + "name": "receiver", "type": "address" }, { - "internalType": "bytes32[]", - "name": "proof", - "type": "bytes32[]" + "internalType": "address", + "name": "owner", + "type": "address" } ], - "name": "verify", + "name": "withdraw", "outputs": [ { - "internalType": "bool", - "name": "", - "type": "bool" + "internalType": "uint256", + "name": "shares", + "type": "uint256" } ], - "stateMutability": "pure", + "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { - "internalType": "uint64", - "name": "airdropId", - "type": "uint64" + "internalType": "uint256", + "name": "assets", + "type": "uint256" + } + ], + "name": "withdrawAVAX", + "outputs": [ + { + "internalType": "uint256", + "name": "shares", + "type": "uint256" } ], - "name": "withdrawFees", - "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ - { - "internalType": "uint64", - "name": "airdropId", - "type": "uint64" - }, { "internalType": "uint256", - "name": "withdrawAmt", + "name": "assets", "type": "uint256" } ], - "name": "withdrawFunding", + "name": "withdrawForStaking", "outputs": [], "stateMutability": "nonpayable", "type": "function" + }, + { + "stateMutability": "payable", + "type": "receive" } ] }