Last active
June 2, 2022 14:24
-
-
Save sveitser/436b32469d191bb650d6cd4206abffe0 to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| [{"inputs": [{"internalType": "uint64", "name": "nRoots", "type": "uint64"}, {"internalType": "address", "name": "verifierAddr", "type": "address"}, {"internalType": "address", "name": "recordsMerkleTreeAddr", "type": "address"}], "stateMutability": "nonpayable", "type": "constructor"}, {"anonymous": false, "inputs": [{"indexed": false, "internalType": "address", "name": "erc20Address", "type": "address"}, {"indexed": false, "internalType": "uint256", "name": "assetDefinitionCode", "type": "uint256"}], "name": "AssetSponsored", "type": "event"}, {"anonymous": false, "inputs": [{"indexed": true, "internalType": "uint64", "name": "height", "type": "uint64"}, {"indexed": false, "internalType": "uint256[]", "name": "depositCommitments", "type": "uint256[]"}, {"indexed": false, "internalType": "bytes", "name": "minerAddr", "type": "bytes"}, {"indexed": false, "internalType": "bytes", "name": "noteTypes", "type": "bytes"}, {"indexed": false, "internalType": "bytes", "name": "transferNotes", "type": "bytes"}, {"indexed": false, "internalType": "bytes", "name": "mintNotes", "type": "bytes"}, {"indexed": false, "internalType": "bytes", "name": "freezeNotes", "type": "bytes"}, {"indexed": false, "internalType": "bytes", "name": "burnNotes", "type": "bytes"}], "name": "BlockCommitted", "type": "event"}, {"anonymous": false, "inputs": [{"indexed": false, "internalType": "bytes", "name": "roBytes", "type": "bytes"}, {"indexed": false, "internalType": "address", "name": "erc20TokenAddress", "type": "address"}, {"indexed": false, "internalType": "address", "name": "from", "type": "address"}], "name": "Erc20TokensDeposited", "type": "event"}, {"anonymous": false, "inputs": [{"indexed": false, "internalType": "bytes", "name": "roBytes", "type": "bytes"}], "name": "FaucetInitialized", "type": "event"}, {"inputs": [], "name": "CAPE_BURN_MAGIC_BYTES", "outputs": [{"internalType": "bytes", "name": "", "type": "bytes"}], "stateMutability": "view", "type": "function"}, {"inputs": [], "name": "CAPE_BURN_MAGIC_BYTES_SIZE", "outputs": [{"internalType": "uint256", "name": "", "type": "uint256"}], "stateMutability": "view", "type": "function"}, {"inputs": [], "name": "CAP_NATIVE_ASSET_CODE", "outputs": [{"internalType": "uint256", "name": "", "type": "uint256"}], "stateMutability": "view", "type": "function"}, {"inputs": [], "name": "DOM_SEP_DOMESTIC_ASSET", "outputs": [{"internalType": "bytes14", "name": "", "type": "bytes14"}], "stateMutability": "view", "type": "function"}, {"inputs": [], "name": "DOM_SEP_FOREIGN_ASSET", "outputs": [{"internalType": "bytes13", "name": "", "type": "bytes13"}], "stateMutability": "view", "type": "function"}, {"inputs": [], "name": "MAX_NUM_PENDING_DEPOSIT", "outputs": [{"internalType": "uint256", "name": "", "type": "uint256"}], "stateMutability": "view", "type": "function"}, {"inputs": [{"internalType": "bytes32", "name": "", "type": "bytes32"}], "name": "assets", "outputs": [{"internalType": "address", "name": "", "type": "address"}], "stateMutability": "view", "type": "function"}, {"inputs": [], "name": "blockHeight", "outputs": [{"internalType": "uint64", "name": "", "type": "uint64"}], "stateMutability": "view", "type": "function"}, {"inputs": [], "name": "deployer", "outputs": [{"internalType": "address", "name": "", "type": "address"}], "stateMutability": "view", "type": "function"}, {"inputs": [{"components": [{"internalType": "uint128", "name": "amount", "type": "uint128"}, {"components": [{"internalType": "uint256", "name": "code", "type": "uint256"}, {"components": [{"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct EdOnBN254.EdOnBN254Point", "name": "auditorPk", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct EdOnBN254.EdOnBN254Point", "name": "credPk", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct EdOnBN254.EdOnBN254Point", "name": "freezerPk", "type": "tuple"}, {"internalType": "uint256", "name": "revealMap", "type": "uint256"}, {"internalType": "uint128", "name": "revealThreshold", "type": "uint128"}], "internalType": "struct AssetRegistry.AssetPolicy", "name": "policy", "type": "tuple"}], "internalType": "struct AssetRegistry.AssetDefinition", "name": "assetDef", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct EdOnBN254.EdOnBN254Point", "name": "userAddr", "type": "tuple"}, {"internalType": "bytes32", "name": "encKey", "type": "bytes32"}, {"internalType": "bool", "name": "freezeFlag", "type": "bool"}, {"internalType": "uint256", "name": "blind", "type": "uint256"}], "internalType": "struct CAPE.RecordOpening", "name": "ro", "type": "tuple"}, {"internalType": "address", "name": "erc20Address", "type": "address"}], "name": "depositErc20", "outputs": [], "stateMutability": "nonpayable", "type": "function"}, {"inputs": [], "name": "faucetInitialized", "outputs": [{"internalType": "bool", "name": "", "type": "bool"}], "stateMutability": "view", "type": "function"}, {"inputs": [{"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct EdOnBN254.EdOnBN254Point", "name": "faucetManagerAddress", "type": "tuple"}, {"internalType": "bytes32", "name": "faucetManagerEncKey", "type": "bytes32"}], "name": "faucetSetupForTestnet", "outputs": [], "stateMutability": "nonpayable", "type": "function"}, {"inputs": [], "name": "getRootValue", "outputs": [{"internalType": "uint256", "name": "", "type": "uint256"}], "stateMutability": "view", "type": "function"}, {"inputs": [{"components": [{"internalType": "uint256", "name": "code", "type": "uint256"}, {"components": [{"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct EdOnBN254.EdOnBN254Point", "name": "auditorPk", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct EdOnBN254.EdOnBN254Point", "name": "credPk", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct EdOnBN254.EdOnBN254Point", "name": "freezerPk", "type": "tuple"}, {"internalType": "uint256", "name": "revealMap", "type": "uint256"}, {"internalType": "uint128", "name": "revealThreshold", "type": "uint128"}], "internalType": "struct AssetRegistry.AssetPolicy", "name": "policy", "type": "tuple"}], "internalType": "struct AssetRegistry.AssetDefinition", "name": "assetDefinition", "type": "tuple"}], "name": "isCapeAssetRegistered", "outputs": [{"internalType": "bool", "name": "", "type": "bool"}], "stateMutability": "view", "type": "function"}, {"inputs": [{"components": [{"internalType": "uint256", "name": "code", "type": "uint256"}, {"components": [{"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct EdOnBN254.EdOnBN254Point", "name": "auditorPk", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct EdOnBN254.EdOnBN254Point", "name": "credPk", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct EdOnBN254.EdOnBN254Point", "name": "freezerPk", "type": "tuple"}, {"internalType": "uint256", "name": "revealMap", "type": "uint256"}, {"internalType": "uint128", "name": "revealThreshold", "type": "uint128"}], "internalType": "struct AssetRegistry.AssetPolicy", "name": "policy", "type": "tuple"}], "internalType": "struct AssetRegistry.AssetDefinition", "name": "assetDefinition", "type": "tuple"}], "name": "lookup", "outputs": [{"internalType": "address", "name": "", "type": "address"}], "stateMutability": "view", "type": "function"}, {"inputs": [], "name": "nativeDomesticAsset", "outputs": [{"components": [{"internalType": "uint256", "name": "code", "type": "uint256"}, {"components": [{"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct EdOnBN254.EdOnBN254Point", "name": "auditorPk", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct EdOnBN254.EdOnBN254Point", "name": "credPk", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct EdOnBN254.EdOnBN254Point", "name": "freezerPk", "type": "tuple"}, {"internalType": "uint256", "name": "revealMap", "type": "uint256"}, {"internalType": "uint128", "name": "revealThreshold", "type": "uint128"}], "internalType": "struct AssetRegistry.AssetPolicy", "name": "policy", "type": "tuple"}], "internalType": "struct AssetRegistry.AssetDefinition", "name": "assetDefinition", "type": "tuple"}], "stateMutability": "pure", "type": "function"}, {"inputs": [{"internalType": "uint256", "name": "", "type": "uint256"}], "name": "nullifiers", "outputs": [{"internalType": "bool", "name": "", "type": "bool"}], "stateMutability": "view", "type": "function"}, {"inputs": [{"internalType": "uint256", "name": "", "type": "uint256"}], "name": "pendingDeposits", "outputs": [{"internalType": "uint256", "name": "", "type": "uint256"}], "stateMutability": "view", "type": "function"}, {"inputs": [{"internalType": "address", "name": "erc20Address", "type": "address"}, {"components": [{"internalType": "uint256", "name": "code", "type": "uint256"}, {"components": [{"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct EdOnBN254.EdOnBN254Point", "name": "auditorPk", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct EdOnBN254.EdOnBN254Point", "name": "credPk", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct EdOnBN254.EdOnBN254Point", "name": "freezerPk", "type": "tuple"}, {"internalType": "uint256", "name": "revealMap", "type": "uint256"}, {"internalType": "uint128", "name": "revealThreshold", "type": "uint128"}], "internalType": "struct AssetRegistry.AssetPolicy", "name": "policy", "type": "tuple"}], "internalType": "struct AssetRegistry.AssetDefinition", "name": "newAsset", "type": "tuple"}], "name": "sponsorCapeAsset", "outputs": [], "stateMutability": "nonpayable", "type": "function"}, {"inputs": [{"components": [{"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct EdOnBN254.EdOnBN254Point", "name": "minerAddr", "type": "tuple"}, {"internalType": "enum CAPE.NoteType[]", "name": "noteTypes", "type": "uint8[]"}, {"components": [{"internalType": "uint256[]", "name": "inputNullifiers", "type": "uint256[]"}, {"internalType": "uint256[]", "name": "outputCommitments", "type": "uint256[]"}, {"components": [{"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "wire0", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "wire1", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "wire2", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "wire3", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "wire4", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "prodPerm", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "split0", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "split1", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "split2", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "split3", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "split4", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "zeta", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "zetaOmega", "type": "tuple"}, {"internalType": "uint256", "name": "wireEval0", "type": "uint256"}, {"internalType": "uint256", "name": "wireEval1", "type": "uint256"}, {"internalType": "uint256", "name": "wireEval2", "type": "uint256"}, {"internalType": "uint256", "name": "wireEval3", "type": "uint256"}, {"internalType": "uint256", "name": "wireEval4", "type": "uint256"}, {"internalType": "uint256", "name": "sigmaEval0", "type": "uint256"}, {"internalType": "uint256", "name": "sigmaEval1", "type": "uint256"}, {"internalType": "uint256", "name": "sigmaEval2", "type": "uint256"}, {"internalType": "uint256", "name": "sigmaEval3", "type": "uint256"}, {"internalType": "uint256", "name": "prodPermZetaOmegaEval", "type": "uint256"}], "internalType": "struct IPlonkVerifier.PlonkProof", "name": "proof", "type": "tuple"}, {"components": [{"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct EdOnBN254.EdOnBN254Point", "name": "ephemeralKey", "type": "tuple"}, {"internalType": "uint256[]", "name": "data", "type": "uint256[]"}], "internalType": "struct CAPE.AuditMemo", "name": "auditMemo", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "merkleRoot", "type": "uint256"}, {"internalType": "uint128", "name": "fee", "type": "uint128"}, {"internalType": "uint64", "name": "validUntil", "type": "uint64"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct EdOnBN254.EdOnBN254Point", "name": "txnMemoVerKey", "type": "tuple"}, {"internalType": "bytes", "name": "extraProofBoundData", "type": "bytes"}], "internalType": "struct CAPE.TransferAuxInfo", "name": "auxInfo", "type": "tuple"}], "internalType": "struct CAPE.TransferNote[]", "name": "transferNotes", "type": "tuple[]"}, {"components": [{"internalType": "uint256", "name": "inputNullifier", "type": "uint256"}, {"internalType": "uint256", "name": "chgComm", "type": "uint256"}, {"internalType": "uint256", "name": "mintComm", "type": "uint256"}, {"internalType": "uint128", "name": "mintAmount", "type": "uint128"}, {"components": [{"internalType": "uint256", "name": "code", "type": "uint256"}, {"components": [{"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct EdOnBN254.EdOnBN254Point", "name": "auditorPk", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct EdOnBN254.EdOnBN254Point", "name": "credPk", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct EdOnBN254.EdOnBN254Point", "name": "freezerPk", "type": "tuple"}, {"internalType": "uint256", "name": "revealMap", "type": "uint256"}, {"internalType": "uint128", "name": "revealThreshold", "type": "uint128"}], "internalType": "struct AssetRegistry.AssetPolicy", "name": "policy", "type": "tuple"}], "internalType": "struct AssetRegistry.AssetDefinition", "name": "mintAssetDef", "type": "tuple"}, {"internalType": "uint256", "name": "mintInternalAssetCode", "type": "uint256"}, {"components": [{"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "wire0", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "wire1", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "wire2", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "wire3", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "wire4", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "prodPerm", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "split0", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "split1", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "split2", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "split3", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "split4", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "zeta", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "zetaOmega", "type": "tuple"}, {"internalType": "uint256", "name": "wireEval0", "type": "uint256"}, {"internalType": "uint256", "name": "wireEval1", "type": "uint256"}, {"internalType": "uint256", "name": "wireEval2", "type": "uint256"}, {"internalType": "uint256", "name": "wireEval3", "type": "uint256"}, {"internalType": "uint256", "name": "wireEval4", "type": "uint256"}, {"internalType": "uint256", "name": "sigmaEval0", "type": "uint256"}, {"internalType": "uint256", "name": "sigmaEval1", "type": "uint256"}, {"internalType": "uint256", "name": "sigmaEval2", "type": "uint256"}, {"internalType": "uint256", "name": "sigmaEval3", "type": "uint256"}, {"internalType": "uint256", "name": "prodPermZetaOmegaEval", "type": "uint256"}], "internalType": "struct IPlonkVerifier.PlonkProof", "name": "proof", "type": "tuple"}, {"components": [{"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct EdOnBN254.EdOnBN254Point", "name": "ephemeralKey", "type": "tuple"}, {"internalType": "uint256[]", "name": "data", "type": "uint256[]"}], "internalType": "struct CAPE.AuditMemo", "name": "auditMemo", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "merkleRoot", "type": "uint256"}, {"internalType": "uint128", "name": "fee", "type": "uint128"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct EdOnBN254.EdOnBN254Point", "name": "txnMemoVerKey", "type": "tuple"}], "internalType": "struct CAPE.MintAuxInfo", "name": "auxInfo", "type": "tuple"}], "internalType": "struct CAPE.MintNote[]", "name": "mintNotes", "type": "tuple[]"}, {"components": [{"internalType": "uint256[]", "name": "inputNullifiers", "type": "uint256[]"}, {"internalType": "uint256[]", "name": "outputCommitments", "type": "uint256[]"}, {"components": [{"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "wire0", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "wire1", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "wire2", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "wire3", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "wire4", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "prodPerm", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "split0", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "split1", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "split2", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "split3", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "split4", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "zeta", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "zetaOmega", "type": "tuple"}, {"internalType": "uint256", "name": "wireEval0", "type": "uint256"}, {"internalType": "uint256", "name": "wireEval1", "type": "uint256"}, {"internalType": "uint256", "name": "wireEval2", "type": "uint256"}, {"internalType": "uint256", "name": "wireEval3", "type": "uint256"}, {"internalType": "uint256", "name": "wireEval4", "type": "uint256"}, {"internalType": "uint256", "name": "sigmaEval0", "type": "uint256"}, {"internalType": "uint256", "name": "sigmaEval1", "type": "uint256"}, {"internalType": "uint256", "name": "sigmaEval2", "type": "uint256"}, {"internalType": "uint256", "name": "sigmaEval3", "type": "uint256"}, {"internalType": "uint256", "name": "prodPermZetaOmegaEval", "type": "uint256"}], "internalType": "struct IPlonkVerifier.PlonkProof", "name": "proof", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "merkleRoot", "type": "uint256"}, {"internalType": "uint128", "name": "fee", "type": "uint128"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct EdOnBN254.EdOnBN254Point", "name": "txnMemoVerKey", "type": "tuple"}], "internalType": "struct CAPE.FreezeAuxInfo", "name": "auxInfo", "type": "tuple"}], "internalType": "struct CAPE.FreezeNote[]", "name": "freezeNotes", "type": "tuple[]"}, {"components": [{"components": [{"internalType": "uint256[]", "name": "inputNullifiers", "type": "uint256[]"}, {"internalType": "uint256[]", "name": "outputCommitments", "type": "uint256[]"}, {"components": [{"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "wire0", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "wire1", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "wire2", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "wire3", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "wire4", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "prodPerm", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "split0", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "split1", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "split2", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "split3", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "split4", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "zeta", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "zetaOmega", "type": "tuple"}, {"internalType": "uint256", "name": "wireEval0", "type": "uint256"}, {"internalType": "uint256", "name": "wireEval1", "type": "uint256"}, {"internalType": "uint256", "name": "wireEval2", "type": "uint256"}, {"internalType": "uint256", "name": "wireEval3", "type": "uint256"}, {"internalType": "uint256", "name": "wireEval4", "type": "uint256"}, {"internalType": "uint256", "name": "sigmaEval0", "type": "uint256"}, {"internalType": "uint256", "name": "sigmaEval1", "type": "uint256"}, {"internalType": "uint256", "name": "sigmaEval2", "type": "uint256"}, {"internalType": "uint256", "name": "sigmaEval3", "type": "uint256"}, {"internalType": "uint256", "name": "prodPermZetaOmegaEval", "type": "uint256"}], "internalType": "struct IPlonkVerifier.PlonkProof", "name": "proof", "type": "tuple"}, {"components": [{"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct EdOnBN254.EdOnBN254Point", "name": "ephemeralKey", "type": "tuple"}, {"internalType": "uint256[]", "name": "data", "type": "uint256[]"}], "internalType": "struct CAPE.AuditMemo", "name": "auditMemo", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "merkleRoot", "type": "uint256"}, {"internalType": "uint128", "name": "fee", "type": "uint128"}, {"internalType": "uint64", "name": "validUntil", "type": "uint64"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct EdOnBN254.EdOnBN254Point", "name": "txnMemoVerKey", "type": "tuple"}, {"internalType": "bytes", "name": "extraProofBoundData", "type": "bytes"}], "internalType": "struct CAPE.TransferAuxInfo", "name": "auxInfo", "type": "tuple"}], "internalType": "struct CAPE.TransferNote", "name": "transferNote", "type": "tuple"}, {"components": [{"internalType": "uint128", "name": "amount", "type": "uint128"}, {"components": [{"internalType": "uint256", "name": "code", "type": "uint256"}, {"components": [{"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct EdOnBN254.EdOnBN254Point", "name": "auditorPk", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct EdOnBN254.EdOnBN254Point", "name": "credPk", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct EdOnBN254.EdOnBN254Point", "name": "freezerPk", "type": "tuple"}, {"internalType": "uint256", "name": "revealMap", "type": "uint256"}, {"internalType": "uint128", "name": "revealThreshold", "type": "uint128"}], "internalType": "struct AssetRegistry.AssetPolicy", "name": "policy", "type": "tuple"}], "internalType": "struct AssetRegistry.AssetDefinition", "name": "assetDef", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct EdOnBN254.EdOnBN254Point", "name": "userAddr", "type": "tuple"}, {"internalType": "bytes32", "name": "encKey", "type": "bytes32"}, {"internalType": "bool", "name": "freezeFlag", "type": "bool"}, {"internalType": "uint256", "name": "blind", "type": "uint256"}], "internalType": "struct CAPE.RecordOpening", "name": "recordOpening", "type": "tuple"}], "internalType": "struct CAPE.BurnNote[]", "name": "burnNotes", "type": "tuple[]"}], "internalType": "struct CAPE.CapeBlock", "name": "newBlock", "type": "tuple"}], "name": "submitCapeBlock", "outputs": [], "stateMutability": "nonpayable", "type": "function"}, {"inputs": [{"components": [{"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct EdOnBN254.EdOnBN254Point", "name": "minerAddr", "type": "tuple"}, {"internalType": "enum CAPE.NoteType[]", "name": "noteTypes", "type": "uint8[]"}, {"components": [{"internalType": "uint256[]", "name": "inputNullifiers", "type": "uint256[]"}, {"internalType": "uint256[]", "name": "outputCommitments", "type": "uint256[]"}, {"components": [{"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "wire0", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "wire1", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "wire2", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "wire3", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "wire4", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "prodPerm", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "split0", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "split1", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "split2", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "split3", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "split4", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "zeta", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "zetaOmega", "type": "tuple"}, {"internalType": "uint256", "name": "wireEval0", "type": "uint256"}, {"internalType": "uint256", "name": "wireEval1", "type": "uint256"}, {"internalType": "uint256", "name": "wireEval2", "type": "uint256"}, {"internalType": "uint256", "name": "wireEval3", "type": "uint256"}, {"internalType": "uint256", "name": "wireEval4", "type": "uint256"}, {"internalType": "uint256", "name": "sigmaEval0", "type": "uint256"}, {"internalType": "uint256", "name": "sigmaEval1", "type": "uint256"}, {"internalType": "uint256", "name": "sigmaEval2", "type": "uint256"}, {"internalType": "uint256", "name": "sigmaEval3", "type": "uint256"}, {"internalType": "uint256", "name": "prodPermZetaOmegaEval", "type": "uint256"}], "internalType": "struct IPlonkVerifier.PlonkProof", "name": "proof", "type": "tuple"}, {"components": [{"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct EdOnBN254.EdOnBN254Point", "name": "ephemeralKey", "type": "tuple"}, {"internalType": "uint256[]", "name": "data", "type": "uint256[]"}], "internalType": "struct CAPE.AuditMemo", "name": "auditMemo", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "merkleRoot", "type": "uint256"}, {"internalType": "uint128", "name": "fee", "type": "uint128"}, {"internalType": "uint64", "name": "validUntil", "type": "uint64"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct EdOnBN254.EdOnBN254Point", "name": "txnMemoVerKey", "type": "tuple"}, {"internalType": "bytes", "name": "extraProofBoundData", "type": "bytes"}], "internalType": "struct CAPE.TransferAuxInfo", "name": "auxInfo", "type": "tuple"}], "internalType": "struct CAPE.TransferNote[]", "name": "transferNotes", "type": "tuple[]"}, {"components": [{"internalType": "uint256", "name": "inputNullifier", "type": "uint256"}, {"internalType": "uint256", "name": "chgComm", "type": "uint256"}, {"internalType": "uint256", "name": "mintComm", "type": "uint256"}, {"internalType": "uint128", "name": "mintAmount", "type": "uint128"}, {"components": [{"internalType": "uint256", "name": "code", "type": "uint256"}, {"components": [{"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct EdOnBN254.EdOnBN254Point", "name": "auditorPk", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct EdOnBN254.EdOnBN254Point", "name": "credPk", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct EdOnBN254.EdOnBN254Point", "name": "freezerPk", "type": "tuple"}, {"internalType": "uint256", "name": "revealMap", "type": "uint256"}, {"internalType": "uint128", "name": "revealThreshold", "type": "uint128"}], "internalType": "struct AssetRegistry.AssetPolicy", "name": "policy", "type": "tuple"}], "internalType": "struct AssetRegistry.AssetDefinition", "name": "mintAssetDef", "type": "tuple"}, {"internalType": "uint256", "name": "mintInternalAssetCode", "type": "uint256"}, {"components": [{"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "wire0", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "wire1", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "wire2", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "wire3", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "wire4", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "prodPerm", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "split0", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "split1", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "split2", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "split3", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "split4", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "zeta", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "zetaOmega", "type": "tuple"}, {"internalType": "uint256", "name": "wireEval0", "type": "uint256"}, {"internalType": "uint256", "name": "wireEval1", "type": "uint256"}, {"internalType": "uint256", "name": "wireEval2", "type": "uint256"}, {"internalType": "uint256", "name": "wireEval3", "type": "uint256"}, {"internalType": "uint256", "name": "wireEval4", "type": "uint256"}, {"internalType": "uint256", "name": "sigmaEval0", "type": "uint256"}, {"internalType": "uint256", "name": "sigmaEval1", "type": "uint256"}, {"internalType": "uint256", "name": "sigmaEval2", "type": "uint256"}, {"internalType": "uint256", "name": "sigmaEval3", "type": "uint256"}, {"internalType": "uint256", "name": "prodPermZetaOmegaEval", "type": "uint256"}], "internalType": "struct IPlonkVerifier.PlonkProof", "name": "proof", "type": "tuple"}, {"components": [{"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct EdOnBN254.EdOnBN254Point", "name": "ephemeralKey", "type": "tuple"}, {"internalType": "uint256[]", "name": "data", "type": "uint256[]"}], "internalType": "struct CAPE.AuditMemo", "name": "auditMemo", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "merkleRoot", "type": "uint256"}, {"internalType": "uint128", "name": "fee", "type": "uint128"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct EdOnBN254.EdOnBN254Point", "name": "txnMemoVerKey", "type": "tuple"}], "internalType": "struct CAPE.MintAuxInfo", "name": "auxInfo", "type": "tuple"}], "internalType": "struct CAPE.MintNote[]", "name": "mintNotes", "type": "tuple[]"}, {"components": [{"internalType": "uint256[]", "name": "inputNullifiers", "type": "uint256[]"}, {"internalType": "uint256[]", "name": "outputCommitments", "type": "uint256[]"}, {"components": [{"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "wire0", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "wire1", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "wire2", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "wire3", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "wire4", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "prodPerm", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "split0", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "split1", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "split2", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "split3", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "split4", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "zeta", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "zetaOmega", "type": "tuple"}, {"internalType": "uint256", "name": "wireEval0", "type": "uint256"}, {"internalType": "uint256", "name": "wireEval1", "type": "uint256"}, {"internalType": "uint256", "name": "wireEval2", "type": "uint256"}, {"internalType": "uint256", "name": "wireEval3", "type": "uint256"}, {"internalType": "uint256", "name": "wireEval4", "type": "uint256"}, {"internalType": "uint256", "name": "sigmaEval0", "type": "uint256"}, {"internalType": "uint256", "name": "sigmaEval1", "type": "uint256"}, {"internalType": "uint256", "name": "sigmaEval2", "type": "uint256"}, {"internalType": "uint256", "name": "sigmaEval3", "type": "uint256"}, {"internalType": "uint256", "name": "prodPermZetaOmegaEval", "type": "uint256"}], "internalType": "struct IPlonkVerifier.PlonkProof", "name": "proof", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "merkleRoot", "type": "uint256"}, {"internalType": "uint128", "name": "fee", "type": "uint128"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct EdOnBN254.EdOnBN254Point", "name": "txnMemoVerKey", "type": "tuple"}], "internalType": "struct CAPE.FreezeAuxInfo", "name": "auxInfo", "type": "tuple"}], "internalType": "struct CAPE.FreezeNote[]", "name": "freezeNotes", "type": "tuple[]"}, {"components": [{"components": [{"internalType": "uint256[]", "name": "inputNullifiers", "type": "uint256[]"}, {"internalType": "uint256[]", "name": "outputCommitments", "type": "uint256[]"}, {"components": [{"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "wire0", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "wire1", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "wire2", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "wire3", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "wire4", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "prodPerm", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "split0", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "split1", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "split2", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "split3", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "split4", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "zeta", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "zetaOmega", "type": "tuple"}, {"internalType": "uint256", "name": "wireEval0", "type": "uint256"}, {"internalType": "uint256", "name": "wireEval1", "type": "uint256"}, {"internalType": "uint256", "name": "wireEval2", "type": "uint256"}, {"internalType": "uint256", "name": "wireEval3", "type": "uint256"}, {"internalType": "uint256", "name": "wireEval4", "type": "uint256"}, {"internalType": "uint256", "name": "sigmaEval0", "type": "uint256"}, {"internalType": "uint256", "name": "sigmaEval1", "type": "uint256"}, {"internalType": "uint256", "name": "sigmaEval2", "type": "uint256"}, {"internalType": "uint256", "name": "sigmaEval3", "type": "uint256"}, {"internalType": "uint256", "name": "prodPermZetaOmegaEval", "type": "uint256"}], "internalType": "struct IPlonkVerifier.PlonkProof", "name": "proof", "type": "tuple"}, {"components": [{"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct EdOnBN254.EdOnBN254Point", "name": "ephemeralKey", "type": "tuple"}, {"internalType": "uint256[]", "name": "data", "type": "uint256[]"}], "internalType": "struct CAPE.AuditMemo", "name": "auditMemo", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "merkleRoot", "type": "uint256"}, {"internalType": "uint128", "name": "fee", "type": "uint128"}, {"internalType": "uint64", "name": "validUntil", "type": "uint64"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct EdOnBN254.EdOnBN254Point", "name": "txnMemoVerKey", "type": "tuple"}, {"internalType": "bytes", "name": "extraProofBoundData", "type": "bytes"}], "internalType": "struct CAPE.TransferAuxInfo", "name": "auxInfo", "type": "tuple"}], "internalType": "struct CAPE.TransferNote", "name": "transferNote", "type": "tuple"}, {"components": [{"internalType": "uint128", "name": "amount", "type": "uint128"}, {"components": [{"internalType": "uint256", "name": "code", "type": "uint256"}, {"components": [{"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct EdOnBN254.EdOnBN254Point", "name": "auditorPk", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct EdOnBN254.EdOnBN254Point", "name": "credPk", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct EdOnBN254.EdOnBN254Point", "name": "freezerPk", "type": "tuple"}, {"internalType": "uint256", "name": "revealMap", "type": "uint256"}, {"internalType": "uint128", "name": "revealThreshold", "type": "uint128"}], "internalType": "struct AssetRegistry.AssetPolicy", "name": "policy", "type": "tuple"}], "internalType": "struct AssetRegistry.AssetDefinition", "name": "assetDef", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct EdOnBN254.EdOnBN254Point", "name": "userAddr", "type": "tuple"}, {"internalType": "bytes32", "name": "encKey", "type": "bytes32"}, {"internalType": "bool", "name": "freezeFlag", "type": "bool"}, {"internalType": "uint256", "name": "blind", "type": "uint256"}], "internalType": "struct CAPE.RecordOpening", "name": "recordOpening", "type": "tuple"}], "internalType": "struct CAPE.BurnNote[]", "name": "burnNotes", "type": "tuple[]"}], "internalType": "struct CAPE.CapeBlock", "name": "newBlock", "type": "tuple"}, {"internalType": "bytes", "name": "extraData", "type": "bytes"}], "name": "submitCapeBlockWithMemos", "outputs": [], "stateMutability": "nonpayable", "type": "function"}] |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| [{"inputs": [{"internalType": "uint64", "name": "nRoots", "type": "uint64"}, {"internalType": "address", "name": "verifierAddr", "type": "address"}, {"internalType": "address", "name": "recordsMerkleTreeAddr", "type": "address"}], "stateMutability": "nonpayable", "type": "constructor"}, {"anonymous": false, "inputs": [{"indexed": false, "internalType": "address", "name": "erc20Address", "type": "address"}, {"indexed": false, "internalType": "uint256", "name": "assetDefinitionCode", "type": "uint256"}], "name": "AssetSponsored", "type": "event"}, {"anonymous": false, "inputs": [{"indexed": true, "internalType": "uint64", "name": "height", "type": "uint64"}, {"indexed": false, "internalType": "uint256[]", "name": "depositCommitments", "type": "uint256[]"}, {"components": [{"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct EdOnBN254.EdOnBN254Point", "name": "minerAddr", "type": "tuple"}, {"internalType": "enum CAPE.NoteType[]", "name": "noteTypes", "type": "uint8[]"}, {"components": [{"internalType": "uint256[]", "name": "inputNullifiers", "type": "uint256[]"}, {"internalType": "uint256[]", "name": "outputCommitments", "type": "uint256[]"}, {"components": [{"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "wire0", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "wire1", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "wire2", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "wire3", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "wire4", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "prodPerm", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "split0", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "split1", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "split2", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "split3", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "split4", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "zeta", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "zetaOmega", "type": "tuple"}, {"internalType": "uint256", "name": "wireEval0", "type": "uint256"}, {"internalType": "uint256", "name": "wireEval1", "type": "uint256"}, {"internalType": "uint256", "name": "wireEval2", "type": "uint256"}, {"internalType": "uint256", "name": "wireEval3", "type": "uint256"}, {"internalType": "uint256", "name": "wireEval4", "type": "uint256"}, {"internalType": "uint256", "name": "sigmaEval0", "type": "uint256"}, {"internalType": "uint256", "name": "sigmaEval1", "type": "uint256"}, {"internalType": "uint256", "name": "sigmaEval2", "type": "uint256"}, {"internalType": "uint256", "name": "sigmaEval3", "type": "uint256"}, {"internalType": "uint256", "name": "prodPermZetaOmegaEval", "type": "uint256"}], "internalType": "struct IPlonkVerifier.PlonkProof", "name": "proof", "type": "tuple"}, {"components": [{"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct EdOnBN254.EdOnBN254Point", "name": "ephemeralKey", "type": "tuple"}, {"internalType": "uint256[]", "name": "data", "type": "uint256[]"}], "internalType": "struct CAPE.AuditMemo", "name": "auditMemo", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "merkleRoot", "type": "uint256"}, {"internalType": "uint128", "name": "fee", "type": "uint128"}, {"internalType": "uint64", "name": "validUntil", "type": "uint64"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct EdOnBN254.EdOnBN254Point", "name": "txnMemoVerKey", "type": "tuple"}, {"internalType": "bytes", "name": "extraProofBoundData", "type": "bytes"}], "internalType": "struct CAPE.TransferAuxInfo", "name": "auxInfo", "type": "tuple"}], "internalType": "struct CAPE.TransferNote[]", "name": "transferNotes", "type": "tuple[]"}, {"components": [{"internalType": "uint256", "name": "inputNullifier", "type": "uint256"}, {"internalType": "uint256", "name": "chgComm", "type": "uint256"}, {"internalType": "uint256", "name": "mintComm", "type": "uint256"}, {"internalType": "uint128", "name": "mintAmount", "type": "uint128"}, {"components": [{"internalType": "uint256", "name": "code", "type": "uint256"}, {"components": [{"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct EdOnBN254.EdOnBN254Point", "name": "auditorPk", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct EdOnBN254.EdOnBN254Point", "name": "credPk", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct EdOnBN254.EdOnBN254Point", "name": "freezerPk", "type": "tuple"}, {"internalType": "uint256", "name": "revealMap", "type": "uint256"}, {"internalType": "uint128", "name": "revealThreshold", "type": "uint128"}], "internalType": "struct AssetRegistry.AssetPolicy", "name": "policy", "type": "tuple"}], "internalType": "struct AssetRegistry.AssetDefinition", "name": "mintAssetDef", "type": "tuple"}, {"internalType": "uint256", "name": "mintInternalAssetCode", "type": "uint256"}, {"components": [{"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "wire0", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "wire1", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "wire2", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "wire3", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "wire4", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "prodPerm", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "split0", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "split1", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "split2", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "split3", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "split4", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "zeta", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "zetaOmega", "type": "tuple"}, {"internalType": "uint256", "name": "wireEval0", "type": "uint256"}, {"internalType": "uint256", "name": "wireEval1", "type": "uint256"}, {"internalType": "uint256", "name": "wireEval2", "type": "uint256"}, {"internalType": "uint256", "name": "wireEval3", "type": "uint256"}, {"internalType": "uint256", "name": "wireEval4", "type": "uint256"}, {"internalType": "uint256", "name": "sigmaEval0", "type": "uint256"}, {"internalType": "uint256", "name": "sigmaEval1", "type": "uint256"}, {"internalType": "uint256", "name": "sigmaEval2", "type": "uint256"}, {"internalType": "uint256", "name": "sigmaEval3", "type": "uint256"}, {"internalType": "uint256", "name": "prodPermZetaOmegaEval", "type": "uint256"}], "internalType": "struct IPlonkVerifier.PlonkProof", "name": "proof", "type": "tuple"}, {"components": [{"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct EdOnBN254.EdOnBN254Point", "name": "ephemeralKey", "type": "tuple"}, {"internalType": "uint256[]", "name": "data", "type": "uint256[]"}], "internalType": "struct CAPE.AuditMemo", "name": "auditMemo", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "merkleRoot", "type": "uint256"}, {"internalType": "uint128", "name": "fee", "type": "uint128"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct EdOnBN254.EdOnBN254Point", "name": "txnMemoVerKey", "type": "tuple"}], "internalType": "struct CAPE.MintAuxInfo", "name": "auxInfo", "type": "tuple"}], "internalType": "struct CAPE.MintNote[]", "name": "mintNotes", "type": "tuple[]"}, {"components": [{"internalType": "uint256[]", "name": "inputNullifiers", "type": "uint256[]"}, {"internalType": "uint256[]", "name": "outputCommitments", "type": "uint256[]"}, {"components": [{"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "wire0", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "wire1", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "wire2", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "wire3", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "wire4", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "prodPerm", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "split0", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "split1", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "split2", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "split3", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "split4", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "zeta", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "zetaOmega", "type": "tuple"}, {"internalType": "uint256", "name": "wireEval0", "type": "uint256"}, {"internalType": "uint256", "name": "wireEval1", "type": "uint256"}, {"internalType": "uint256", "name": "wireEval2", "type": "uint256"}, {"internalType": "uint256", "name": "wireEval3", "type": "uint256"}, {"internalType": "uint256", "name": "wireEval4", "type": "uint256"}, {"internalType": "uint256", "name": "sigmaEval0", "type": "uint256"}, {"internalType": "uint256", "name": "sigmaEval1", "type": "uint256"}, {"internalType": "uint256", "name": "sigmaEval2", "type": "uint256"}, {"internalType": "uint256", "name": "sigmaEval3", "type": "uint256"}, {"internalType": "uint256", "name": "prodPermZetaOmegaEval", "type": "uint256"}], "internalType": "struct IPlonkVerifier.PlonkProof", "name": "proof", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "merkleRoot", "type": "uint256"}, {"internalType": "uint128", "name": "fee", "type": "uint128"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct EdOnBN254.EdOnBN254Point", "name": "txnMemoVerKey", "type": "tuple"}], "internalType": "struct CAPE.FreezeAuxInfo", "name": "auxInfo", "type": "tuple"}], "internalType": "struct CAPE.FreezeNote[]", "name": "freezeNotes", "type": "tuple[]"}, {"components": [{"components": [{"internalType": "uint256[]", "name": "inputNullifiers", "type": "uint256[]"}, {"internalType": "uint256[]", "name": "outputCommitments", "type": "uint256[]"}, {"components": [{"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "wire0", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "wire1", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "wire2", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "wire3", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "wire4", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "prodPerm", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "split0", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "split1", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "split2", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "split3", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "split4", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "zeta", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "zetaOmega", "type": "tuple"}, {"internalType": "uint256", "name": "wireEval0", "type": "uint256"}, {"internalType": "uint256", "name": "wireEval1", "type": "uint256"}, {"internalType": "uint256", "name": "wireEval2", "type": "uint256"}, {"internalType": "uint256", "name": "wireEval3", "type": "uint256"}, {"internalType": "uint256", "name": "wireEval4", "type": "uint256"}, {"internalType": "uint256", "name": "sigmaEval0", "type": "uint256"}, {"internalType": "uint256", "name": "sigmaEval1", "type": "uint256"}, {"internalType": "uint256", "name": "sigmaEval2", "type": "uint256"}, {"internalType": "uint256", "name": "sigmaEval3", "type": "uint256"}, {"internalType": "uint256", "name": "prodPermZetaOmegaEval", "type": "uint256"}], "internalType": "struct IPlonkVerifier.PlonkProof", "name": "proof", "type": "tuple"}, {"components": [{"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct EdOnBN254.EdOnBN254Point", "name": "ephemeralKey", "type": "tuple"}, {"internalType": "uint256[]", "name": "data", "type": "uint256[]"}], "internalType": "struct CAPE.AuditMemo", "name": "auditMemo", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "merkleRoot", "type": "uint256"}, {"internalType": "uint128", "name": "fee", "type": "uint128"}, {"internalType": "uint64", "name": "validUntil", "type": "uint64"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct EdOnBN254.EdOnBN254Point", "name": "txnMemoVerKey", "type": "tuple"}, {"internalType": "bytes", "name": "extraProofBoundData", "type": "bytes"}], "internalType": "struct CAPE.TransferAuxInfo", "name": "auxInfo", "type": "tuple"}], "internalType": "struct CAPE.TransferNote", "name": "transferNote", "type": "tuple"}, {"components": [{"internalType": "uint128", "name": "amount", "type": "uint128"}, {"components": [{"internalType": "uint256", "name": "code", "type": "uint256"}, {"components": [{"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct EdOnBN254.EdOnBN254Point", "name": "auditorPk", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct EdOnBN254.EdOnBN254Point", "name": "credPk", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct EdOnBN254.EdOnBN254Point", "name": "freezerPk", "type": "tuple"}, {"internalType": "uint256", "name": "revealMap", "type": "uint256"}, {"internalType": "uint128", "name": "revealThreshold", "type": "uint128"}], "internalType": "struct AssetRegistry.AssetPolicy", "name": "policy", "type": "tuple"}], "internalType": "struct AssetRegistry.AssetDefinition", "name": "assetDef", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct EdOnBN254.EdOnBN254Point", "name": "userAddr", "type": "tuple"}, {"internalType": "bytes32", "name": "encKey", "type": "bytes32"}, {"internalType": "bool", "name": "freezeFlag", "type": "bool"}, {"internalType": "uint256", "name": "blind", "type": "uint256"}], "internalType": "struct CAPE.RecordOpening", "name": "recordOpening", "type": "tuple"}], "internalType": "struct CAPE.BurnNote[]", "name": "burnNotes", "type": "tuple[]"}], "indexed": false, "internalType": "struct CAPE.CapeBlock", "name": "newBlock", "type": "tuple"}], "name": "BlockCommitted", "type": "event"}, {"anonymous": false, "inputs": [{"indexed": false, "internalType": "bytes", "name": "roBytes", "type": "bytes"}, {"indexed": false, "internalType": "address", "name": "erc20TokenAddress", "type": "address"}, {"indexed": false, "internalType": "address", "name": "from", "type": "address"}], "name": "Erc20TokensDeposited", "type": "event"}, {"anonymous": false, "inputs": [{"indexed": false, "internalType": "bytes", "name": "roBytes", "type": "bytes"}], "name": "FaucetInitialized", "type": "event"}, {"inputs": [], "name": "CAPE_BURN_MAGIC_BYTES", "outputs": [{"internalType": "bytes", "name": "", "type": "bytes"}], "stateMutability": "view", "type": "function"}, {"inputs": [], "name": "CAPE_BURN_MAGIC_BYTES_SIZE", "outputs": [{"internalType": "uint256", "name": "", "type": "uint256"}], "stateMutability": "view", "type": "function"}, {"inputs": [], "name": "CAP_NATIVE_ASSET_CODE", "outputs": [{"internalType": "uint256", "name": "", "type": "uint256"}], "stateMutability": "view", "type": "function"}, {"inputs": [], "name": "DOM_SEP_DOMESTIC_ASSET", "outputs": [{"internalType": "bytes14", "name": "", "type": "bytes14"}], "stateMutability": "view", "type": "function"}, {"inputs": [], "name": "DOM_SEP_FOREIGN_ASSET", "outputs": [{"internalType": "bytes13", "name": "", "type": "bytes13"}], "stateMutability": "view", "type": "function"}, {"inputs": [], "name": "MAX_NUM_PENDING_DEPOSIT", "outputs": [{"internalType": "uint256", "name": "", "type": "uint256"}], "stateMutability": "view", "type": "function"}, {"inputs": [{"internalType": "bytes32", "name": "", "type": "bytes32"}], "name": "assets", "outputs": [{"internalType": "address", "name": "", "type": "address"}], "stateMutability": "view", "type": "function"}, {"inputs": [], "name": "blockHeight", "outputs": [{"internalType": "uint64", "name": "", "type": "uint64"}], "stateMutability": "view", "type": "function"}, {"inputs": [], "name": "deployer", "outputs": [{"internalType": "address", "name": "", "type": "address"}], "stateMutability": "view", "type": "function"}, {"inputs": [{"components": [{"internalType": "uint128", "name": "amount", "type": "uint128"}, {"components": [{"internalType": "uint256", "name": "code", "type": "uint256"}, {"components": [{"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct EdOnBN254.EdOnBN254Point", "name": "auditorPk", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct EdOnBN254.EdOnBN254Point", "name": "credPk", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct EdOnBN254.EdOnBN254Point", "name": "freezerPk", "type": "tuple"}, {"internalType": "uint256", "name": "revealMap", "type": "uint256"}, {"internalType": "uint128", "name": "revealThreshold", "type": "uint128"}], "internalType": "struct AssetRegistry.AssetPolicy", "name": "policy", "type": "tuple"}], "internalType": "struct AssetRegistry.AssetDefinition", "name": "assetDef", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct EdOnBN254.EdOnBN254Point", "name": "userAddr", "type": "tuple"}, {"internalType": "bytes32", "name": "encKey", "type": "bytes32"}, {"internalType": "bool", "name": "freezeFlag", "type": "bool"}, {"internalType": "uint256", "name": "blind", "type": "uint256"}], "internalType": "struct CAPE.RecordOpening", "name": "ro", "type": "tuple"}, {"internalType": "address", "name": "erc20Address", "type": "address"}], "name": "depositErc20", "outputs": [], "stateMutability": "nonpayable", "type": "function"}, {"inputs": [], "name": "faucetInitialized", "outputs": [{"internalType": "bool", "name": "", "type": "bool"}], "stateMutability": "view", "type": "function"}, {"inputs": [{"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct EdOnBN254.EdOnBN254Point", "name": "faucetManagerAddress", "type": "tuple"}, {"internalType": "bytes32", "name": "faucetManagerEncKey", "type": "bytes32"}], "name": "faucetSetupForTestnet", "outputs": [], "stateMutability": "nonpayable", "type": "function"}, {"inputs": [], "name": "getRootValue", "outputs": [{"internalType": "uint256", "name": "", "type": "uint256"}], "stateMutability": "view", "type": "function"}, {"inputs": [{"components": [{"internalType": "uint256", "name": "code", "type": "uint256"}, {"components": [{"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct EdOnBN254.EdOnBN254Point", "name": "auditorPk", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct EdOnBN254.EdOnBN254Point", "name": "credPk", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct EdOnBN254.EdOnBN254Point", "name": "freezerPk", "type": "tuple"}, {"internalType": "uint256", "name": "revealMap", "type": "uint256"}, {"internalType": "uint128", "name": "revealThreshold", "type": "uint128"}], "internalType": "struct AssetRegistry.AssetPolicy", "name": "policy", "type": "tuple"}], "internalType": "struct AssetRegistry.AssetDefinition", "name": "assetDefinition", "type": "tuple"}], "name": "isCapeAssetRegistered", "outputs": [{"internalType": "bool", "name": "", "type": "bool"}], "stateMutability": "view", "type": "function"}, {"inputs": [{"components": [{"internalType": "uint256", "name": "code", "type": "uint256"}, {"components": [{"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct EdOnBN254.EdOnBN254Point", "name": "auditorPk", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct EdOnBN254.EdOnBN254Point", "name": "credPk", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct EdOnBN254.EdOnBN254Point", "name": "freezerPk", "type": "tuple"}, {"internalType": "uint256", "name": "revealMap", "type": "uint256"}, {"internalType": "uint128", "name": "revealThreshold", "type": "uint128"}], "internalType": "struct AssetRegistry.AssetPolicy", "name": "policy", "type": "tuple"}], "internalType": "struct AssetRegistry.AssetDefinition", "name": "assetDefinition", "type": "tuple"}], "name": "lookup", "outputs": [{"internalType": "address", "name": "", "type": "address"}], "stateMutability": "view", "type": "function"}, {"inputs": [], "name": "nativeDomesticAsset", "outputs": [{"components": [{"internalType": "uint256", "name": "code", "type": "uint256"}, {"components": [{"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct EdOnBN254.EdOnBN254Point", "name": "auditorPk", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct EdOnBN254.EdOnBN254Point", "name": "credPk", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct EdOnBN254.EdOnBN254Point", "name": "freezerPk", "type": "tuple"}, {"internalType": "uint256", "name": "revealMap", "type": "uint256"}, {"internalType": "uint128", "name": "revealThreshold", "type": "uint128"}], "internalType": "struct AssetRegistry.AssetPolicy", "name": "policy", "type": "tuple"}], "internalType": "struct AssetRegistry.AssetDefinition", "name": "assetDefinition", "type": "tuple"}], "stateMutability": "pure", "type": "function"}, {"inputs": [{"internalType": "uint256", "name": "", "type": "uint256"}], "name": "nullifiers", "outputs": [{"internalType": "bool", "name": "", "type": "bool"}], "stateMutability": "view", "type": "function"}, {"inputs": [{"internalType": "uint256", "name": "", "type": "uint256"}], "name": "pendingDeposits", "outputs": [{"internalType": "uint256", "name": "", "type": "uint256"}], "stateMutability": "view", "type": "function"}, {"inputs": [{"internalType": "address", "name": "erc20Address", "type": "address"}, {"components": [{"internalType": "uint256", "name": "code", "type": "uint256"}, {"components": [{"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct EdOnBN254.EdOnBN254Point", "name": "auditorPk", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct EdOnBN254.EdOnBN254Point", "name": "credPk", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct EdOnBN254.EdOnBN254Point", "name": "freezerPk", "type": "tuple"}, {"internalType": "uint256", "name": "revealMap", "type": "uint256"}, {"internalType": "uint128", "name": "revealThreshold", "type": "uint128"}], "internalType": "struct AssetRegistry.AssetPolicy", "name": "policy", "type": "tuple"}], "internalType": "struct AssetRegistry.AssetDefinition", "name": "newAsset", "type": "tuple"}], "name": "sponsorCapeAsset", "outputs": [], "stateMutability": "nonpayable", "type": "function"}, {"inputs": [{"components": [{"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct EdOnBN254.EdOnBN254Point", "name": "minerAddr", "type": "tuple"}, {"internalType": "enum CAPE.NoteType[]", "name": "noteTypes", "type": "uint8[]"}, {"components": [{"internalType": "uint256[]", "name": "inputNullifiers", "type": "uint256[]"}, {"internalType": "uint256[]", "name": "outputCommitments", "type": "uint256[]"}, {"components": [{"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "wire0", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "wire1", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "wire2", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "wire3", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "wire4", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "prodPerm", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "split0", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "split1", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "split2", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "split3", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "split4", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "zeta", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "zetaOmega", "type": "tuple"}, {"internalType": "uint256", "name": "wireEval0", "type": "uint256"}, {"internalType": "uint256", "name": "wireEval1", "type": "uint256"}, {"internalType": "uint256", "name": "wireEval2", "type": "uint256"}, {"internalType": "uint256", "name": "wireEval3", "type": "uint256"}, {"internalType": "uint256", "name": "wireEval4", "type": "uint256"}, {"internalType": "uint256", "name": "sigmaEval0", "type": "uint256"}, {"internalType": "uint256", "name": "sigmaEval1", "type": "uint256"}, {"internalType": "uint256", "name": "sigmaEval2", "type": "uint256"}, {"internalType": "uint256", "name": "sigmaEval3", "type": "uint256"}, {"internalType": "uint256", "name": "prodPermZetaOmegaEval", "type": "uint256"}], "internalType": "struct IPlonkVerifier.PlonkProof", "name": "proof", "type": "tuple"}, {"components": [{"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct EdOnBN254.EdOnBN254Point", "name": "ephemeralKey", "type": "tuple"}, {"internalType": "uint256[]", "name": "data", "type": "uint256[]"}], "internalType": "struct CAPE.AuditMemo", "name": "auditMemo", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "merkleRoot", "type": "uint256"}, {"internalType": "uint128", "name": "fee", "type": "uint128"}, {"internalType": "uint64", "name": "validUntil", "type": "uint64"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct EdOnBN254.EdOnBN254Point", "name": "txnMemoVerKey", "type": "tuple"}, {"internalType": "bytes", "name": "extraProofBoundData", "type": "bytes"}], "internalType": "struct CAPE.TransferAuxInfo", "name": "auxInfo", "type": "tuple"}], "internalType": "struct CAPE.TransferNote[]", "name": "transferNotes", "type": "tuple[]"}, {"components": [{"internalType": "uint256", "name": "inputNullifier", "type": "uint256"}, {"internalType": "uint256", "name": "chgComm", "type": "uint256"}, {"internalType": "uint256", "name": "mintComm", "type": "uint256"}, {"internalType": "uint128", "name": "mintAmount", "type": "uint128"}, {"components": [{"internalType": "uint256", "name": "code", "type": "uint256"}, {"components": [{"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct EdOnBN254.EdOnBN254Point", "name": "auditorPk", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct EdOnBN254.EdOnBN254Point", "name": "credPk", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct EdOnBN254.EdOnBN254Point", "name": "freezerPk", "type": "tuple"}, {"internalType": "uint256", "name": "revealMap", "type": "uint256"}, {"internalType": "uint128", "name": "revealThreshold", "type": "uint128"}], "internalType": "struct AssetRegistry.AssetPolicy", "name": "policy", "type": "tuple"}], "internalType": "struct AssetRegistry.AssetDefinition", "name": "mintAssetDef", "type": "tuple"}, {"internalType": "uint256", "name": "mintInternalAssetCode", "type": "uint256"}, {"components": [{"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "wire0", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "wire1", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "wire2", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "wire3", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "wire4", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "prodPerm", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "split0", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "split1", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "split2", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "split3", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "split4", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "zeta", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "zetaOmega", "type": "tuple"}, {"internalType": "uint256", "name": "wireEval0", "type": "uint256"}, {"internalType": "uint256", "name": "wireEval1", "type": "uint256"}, {"internalType": "uint256", "name": "wireEval2", "type": "uint256"}, {"internalType": "uint256", "name": "wireEval3", "type": "uint256"}, {"internalType": "uint256", "name": "wireEval4", "type": "uint256"}, {"internalType": "uint256", "name": "sigmaEval0", "type": "uint256"}, {"internalType": "uint256", "name": "sigmaEval1", "type": "uint256"}, {"internalType": "uint256", "name": "sigmaEval2", "type": "uint256"}, {"internalType": "uint256", "name": "sigmaEval3", "type": "uint256"}, {"internalType": "uint256", "name": "prodPermZetaOmegaEval", "type": "uint256"}], "internalType": "struct IPlonkVerifier.PlonkProof", "name": "proof", "type": "tuple"}, {"components": [{"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct EdOnBN254.EdOnBN254Point", "name": "ephemeralKey", "type": "tuple"}, {"internalType": "uint256[]", "name": "data", "type": "uint256[]"}], "internalType": "struct CAPE.AuditMemo", "name": "auditMemo", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "merkleRoot", "type": "uint256"}, {"internalType": "uint128", "name": "fee", "type": "uint128"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct EdOnBN254.EdOnBN254Point", "name": "txnMemoVerKey", "type": "tuple"}], "internalType": "struct CAPE.MintAuxInfo", "name": "auxInfo", "type": "tuple"}], "internalType": "struct CAPE.MintNote[]", "name": "mintNotes", "type": "tuple[]"}, {"components": [{"internalType": "uint256[]", "name": "inputNullifiers", "type": "uint256[]"}, {"internalType": "uint256[]", "name": "outputCommitments", "type": "uint256[]"}, {"components": [{"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "wire0", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "wire1", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "wire2", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "wire3", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "wire4", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "prodPerm", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "split0", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "split1", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "split2", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "split3", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "split4", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "zeta", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "zetaOmega", "type": "tuple"}, {"internalType": "uint256", "name": "wireEval0", "type": "uint256"}, {"internalType": "uint256", "name": "wireEval1", "type": "uint256"}, {"internalType": "uint256", "name": "wireEval2", "type": "uint256"}, {"internalType": "uint256", "name": "wireEval3", "type": "uint256"}, {"internalType": "uint256", "name": "wireEval4", "type": "uint256"}, {"internalType": "uint256", "name": "sigmaEval0", "type": "uint256"}, {"internalType": "uint256", "name": "sigmaEval1", "type": "uint256"}, {"internalType": "uint256", "name": "sigmaEval2", "type": "uint256"}, {"internalType": "uint256", "name": "sigmaEval3", "type": "uint256"}, {"internalType": "uint256", "name": "prodPermZetaOmegaEval", "type": "uint256"}], "internalType": "struct IPlonkVerifier.PlonkProof", "name": "proof", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "merkleRoot", "type": "uint256"}, {"internalType": "uint128", "name": "fee", "type": "uint128"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct EdOnBN254.EdOnBN254Point", "name": "txnMemoVerKey", "type": "tuple"}], "internalType": "struct CAPE.FreezeAuxInfo", "name": "auxInfo", "type": "tuple"}], "internalType": "struct CAPE.FreezeNote[]", "name": "freezeNotes", "type": "tuple[]"}, {"components": [{"components": [{"internalType": "uint256[]", "name": "inputNullifiers", "type": "uint256[]"}, {"internalType": "uint256[]", "name": "outputCommitments", "type": "uint256[]"}, {"components": [{"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "wire0", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "wire1", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "wire2", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "wire3", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "wire4", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "prodPerm", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "split0", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "split1", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "split2", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "split3", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "split4", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "zeta", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "zetaOmega", "type": "tuple"}, {"internalType": "uint256", "name": "wireEval0", "type": "uint256"}, {"internalType": "uint256", "name": "wireEval1", "type": "uint256"}, {"internalType": "uint256", "name": "wireEval2", "type": "uint256"}, {"internalType": "uint256", "name": "wireEval3", "type": "uint256"}, {"internalType": "uint256", "name": "wireEval4", "type": "uint256"}, {"internalType": "uint256", "name": "sigmaEval0", "type": "uint256"}, {"internalType": "uint256", "name": "sigmaEval1", "type": "uint256"}, {"internalType": "uint256", "name": "sigmaEval2", "type": "uint256"}, {"internalType": "uint256", "name": "sigmaEval3", "type": "uint256"}, {"internalType": "uint256", "name": "prodPermZetaOmegaEval", "type": "uint256"}], "internalType": "struct IPlonkVerifier.PlonkProof", "name": "proof", "type": "tuple"}, {"components": [{"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct EdOnBN254.EdOnBN254Point", "name": "ephemeralKey", "type": "tuple"}, {"internalType": "uint256[]", "name": "data", "type": "uint256[]"}], "internalType": "struct CAPE.AuditMemo", "name": "auditMemo", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "merkleRoot", "type": "uint256"}, {"internalType": "uint128", "name": "fee", "type": "uint128"}, {"internalType": "uint64", "name": "validUntil", "type": "uint64"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct EdOnBN254.EdOnBN254Point", "name": "txnMemoVerKey", "type": "tuple"}, {"internalType": "bytes", "name": "extraProofBoundData", "type": "bytes"}], "internalType": "struct CAPE.TransferAuxInfo", "name": "auxInfo", "type": "tuple"}], "internalType": "struct CAPE.TransferNote", "name": "transferNote", "type": "tuple"}, {"components": [{"internalType": "uint128", "name": "amount", "type": "uint128"}, {"components": [{"internalType": "uint256", "name": "code", "type": "uint256"}, {"components": [{"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct EdOnBN254.EdOnBN254Point", "name": "auditorPk", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct EdOnBN254.EdOnBN254Point", "name": "credPk", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct EdOnBN254.EdOnBN254Point", "name": "freezerPk", "type": "tuple"}, {"internalType": "uint256", "name": "revealMap", "type": "uint256"}, {"internalType": "uint128", "name": "revealThreshold", "type": "uint128"}], "internalType": "struct AssetRegistry.AssetPolicy", "name": "policy", "type": "tuple"}], "internalType": "struct AssetRegistry.AssetDefinition", "name": "assetDef", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct EdOnBN254.EdOnBN254Point", "name": "userAddr", "type": "tuple"}, {"internalType": "bytes32", "name": "encKey", "type": "bytes32"}, {"internalType": "bool", "name": "freezeFlag", "type": "bool"}, {"internalType": "uint256", "name": "blind", "type": "uint256"}], "internalType": "struct CAPE.RecordOpening", "name": "recordOpening", "type": "tuple"}], "internalType": "struct CAPE.BurnNote[]", "name": "burnNotes", "type": "tuple[]"}], "internalType": "struct CAPE.CapeBlock", "name": "newBlock", "type": "tuple"}], "name": "submitCapeBlock", "outputs": [], "stateMutability": "nonpayable", "type": "function"}, {"inputs": [{"components": [{"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct EdOnBN254.EdOnBN254Point", "name": "minerAddr", "type": "tuple"}, {"internalType": "enum CAPE.NoteType[]", "name": "noteTypes", "type": "uint8[]"}, {"components": [{"internalType": "uint256[]", "name": "inputNullifiers", "type": "uint256[]"}, {"internalType": "uint256[]", "name": "outputCommitments", "type": "uint256[]"}, {"components": [{"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "wire0", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "wire1", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "wire2", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "wire3", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "wire4", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "prodPerm", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "split0", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "split1", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "split2", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "split3", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "split4", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "zeta", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "zetaOmega", "type": "tuple"}, {"internalType": "uint256", "name": "wireEval0", "type": "uint256"}, {"internalType": "uint256", "name": "wireEval1", "type": "uint256"}, {"internalType": "uint256", "name": "wireEval2", "type": "uint256"}, {"internalType": "uint256", "name": "wireEval3", "type": "uint256"}, {"internalType": "uint256", "name": "wireEval4", "type": "uint256"}, {"internalType": "uint256", "name": "sigmaEval0", "type": "uint256"}, {"internalType": "uint256", "name": "sigmaEval1", "type": "uint256"}, {"internalType": "uint256", "name": "sigmaEval2", "type": "uint256"}, {"internalType": "uint256", "name": "sigmaEval3", "type": "uint256"}, {"internalType": "uint256", "name": "prodPermZetaOmegaEval", "type": "uint256"}], "internalType": "struct IPlonkVerifier.PlonkProof", "name": "proof", "type": "tuple"}, {"components": [{"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct EdOnBN254.EdOnBN254Point", "name": "ephemeralKey", "type": "tuple"}, {"internalType": "uint256[]", "name": "data", "type": "uint256[]"}], "internalType": "struct CAPE.AuditMemo", "name": "auditMemo", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "merkleRoot", "type": "uint256"}, {"internalType": "uint128", "name": "fee", "type": "uint128"}, {"internalType": "uint64", "name": "validUntil", "type": "uint64"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct EdOnBN254.EdOnBN254Point", "name": "txnMemoVerKey", "type": "tuple"}, {"internalType": "bytes", "name": "extraProofBoundData", "type": "bytes"}], "internalType": "struct CAPE.TransferAuxInfo", "name": "auxInfo", "type": "tuple"}], "internalType": "struct CAPE.TransferNote[]", "name": "transferNotes", "type": "tuple[]"}, {"components": [{"internalType": "uint256", "name": "inputNullifier", "type": "uint256"}, {"internalType": "uint256", "name": "chgComm", "type": "uint256"}, {"internalType": "uint256", "name": "mintComm", "type": "uint256"}, {"internalType": "uint128", "name": "mintAmount", "type": "uint128"}, {"components": [{"internalType": "uint256", "name": "code", "type": "uint256"}, {"components": [{"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct EdOnBN254.EdOnBN254Point", "name": "auditorPk", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct EdOnBN254.EdOnBN254Point", "name": "credPk", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct EdOnBN254.EdOnBN254Point", "name": "freezerPk", "type": "tuple"}, {"internalType": "uint256", "name": "revealMap", "type": "uint256"}, {"internalType": "uint128", "name": "revealThreshold", "type": "uint128"}], "internalType": "struct AssetRegistry.AssetPolicy", "name": "policy", "type": "tuple"}], "internalType": "struct AssetRegistry.AssetDefinition", "name": "mintAssetDef", "type": "tuple"}, {"internalType": "uint256", "name": "mintInternalAssetCode", "type": "uint256"}, {"components": [{"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "wire0", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "wire1", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "wire2", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "wire3", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "wire4", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "prodPerm", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "split0", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "split1", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "split2", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "split3", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "split4", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "zeta", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "zetaOmega", "type": "tuple"}, {"internalType": "uint256", "name": "wireEval0", "type": "uint256"}, {"internalType": "uint256", "name": "wireEval1", "type": "uint256"}, {"internalType": "uint256", "name": "wireEval2", "type": "uint256"}, {"internalType": "uint256", "name": "wireEval3", "type": "uint256"}, {"internalType": "uint256", "name": "wireEval4", "type": "uint256"}, {"internalType": "uint256", "name": "sigmaEval0", "type": "uint256"}, {"internalType": "uint256", "name": "sigmaEval1", "type": "uint256"}, {"internalType": "uint256", "name": "sigmaEval2", "type": "uint256"}, {"internalType": "uint256", "name": "sigmaEval3", "type": "uint256"}, {"internalType": "uint256", "name": "prodPermZetaOmegaEval", "type": "uint256"}], "internalType": "struct IPlonkVerifier.PlonkProof", "name": "proof", "type": "tuple"}, {"components": [{"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct EdOnBN254.EdOnBN254Point", "name": "ephemeralKey", "type": "tuple"}, {"internalType": "uint256[]", "name": "data", "type": "uint256[]"}], "internalType": "struct CAPE.AuditMemo", "name": "auditMemo", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "merkleRoot", "type": "uint256"}, {"internalType": "uint128", "name": "fee", "type": "uint128"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct EdOnBN254.EdOnBN254Point", "name": "txnMemoVerKey", "type": "tuple"}], "internalType": "struct CAPE.MintAuxInfo", "name": "auxInfo", "type": "tuple"}], "internalType": "struct CAPE.MintNote[]", "name": "mintNotes", "type": "tuple[]"}, {"components": [{"internalType": "uint256[]", "name": "inputNullifiers", "type": "uint256[]"}, {"internalType": "uint256[]", "name": "outputCommitments", "type": "uint256[]"}, {"components": [{"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "wire0", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "wire1", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "wire2", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "wire3", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "wire4", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "prodPerm", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "split0", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "split1", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "split2", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "split3", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "split4", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "zeta", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "zetaOmega", "type": "tuple"}, {"internalType": "uint256", "name": "wireEval0", "type": "uint256"}, {"internalType": "uint256", "name": "wireEval1", "type": "uint256"}, {"internalType": "uint256", "name": "wireEval2", "type": "uint256"}, {"internalType": "uint256", "name": "wireEval3", "type": "uint256"}, {"internalType": "uint256", "name": "wireEval4", "type": "uint256"}, {"internalType": "uint256", "name": "sigmaEval0", "type": "uint256"}, {"internalType": "uint256", "name": "sigmaEval1", "type": "uint256"}, {"internalType": "uint256", "name": "sigmaEval2", "type": "uint256"}, {"internalType": "uint256", "name": "sigmaEval3", "type": "uint256"}, {"internalType": "uint256", "name": "prodPermZetaOmegaEval", "type": "uint256"}], "internalType": "struct IPlonkVerifier.PlonkProof", "name": "proof", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "merkleRoot", "type": "uint256"}, {"internalType": "uint128", "name": "fee", "type": "uint128"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct EdOnBN254.EdOnBN254Point", "name": "txnMemoVerKey", "type": "tuple"}], "internalType": "struct CAPE.FreezeAuxInfo", "name": "auxInfo", "type": "tuple"}], "internalType": "struct CAPE.FreezeNote[]", "name": "freezeNotes", "type": "tuple[]"}, {"components": [{"components": [{"internalType": "uint256[]", "name": "inputNullifiers", "type": "uint256[]"}, {"internalType": "uint256[]", "name": "outputCommitments", "type": "uint256[]"}, {"components": [{"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "wire0", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "wire1", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "wire2", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "wire3", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "wire4", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "prodPerm", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "split0", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "split1", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "split2", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "split3", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "split4", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "zeta", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct BN254.G1Point", "name": "zetaOmega", "type": "tuple"}, {"internalType": "uint256", "name": "wireEval0", "type": "uint256"}, {"internalType": "uint256", "name": "wireEval1", "type": "uint256"}, {"internalType": "uint256", "name": "wireEval2", "type": "uint256"}, {"internalType": "uint256", "name": "wireEval3", "type": "uint256"}, {"internalType": "uint256", "name": "wireEval4", "type": "uint256"}, {"internalType": "uint256", "name": "sigmaEval0", "type": "uint256"}, {"internalType": "uint256", "name": "sigmaEval1", "type": "uint256"}, {"internalType": "uint256", "name": "sigmaEval2", "type": "uint256"}, {"internalType": "uint256", "name": "sigmaEval3", "type": "uint256"}, {"internalType": "uint256", "name": "prodPermZetaOmegaEval", "type": "uint256"}], "internalType": "struct IPlonkVerifier.PlonkProof", "name": "proof", "type": "tuple"}, {"components": [{"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct EdOnBN254.EdOnBN254Point", "name": "ephemeralKey", "type": "tuple"}, {"internalType": "uint256[]", "name": "data", "type": "uint256[]"}], "internalType": "struct CAPE.AuditMemo", "name": "auditMemo", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "merkleRoot", "type": "uint256"}, {"internalType": "uint128", "name": "fee", "type": "uint128"}, {"internalType": "uint64", "name": "validUntil", "type": "uint64"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct EdOnBN254.EdOnBN254Point", "name": "txnMemoVerKey", "type": "tuple"}, {"internalType": "bytes", "name": "extraProofBoundData", "type": "bytes"}], "internalType": "struct CAPE.TransferAuxInfo", "name": "auxInfo", "type": "tuple"}], "internalType": "struct CAPE.TransferNote", "name": "transferNote", "type": "tuple"}, {"components": [{"internalType": "uint128", "name": "amount", "type": "uint128"}, {"components": [{"internalType": "uint256", "name": "code", "type": "uint256"}, {"components": [{"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct EdOnBN254.EdOnBN254Point", "name": "auditorPk", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct EdOnBN254.EdOnBN254Point", "name": "credPk", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct EdOnBN254.EdOnBN254Point", "name": "freezerPk", "type": "tuple"}, {"internalType": "uint256", "name": "revealMap", "type": "uint256"}, {"internalType": "uint128", "name": "revealThreshold", "type": "uint128"}], "internalType": "struct AssetRegistry.AssetPolicy", "name": "policy", "type": "tuple"}], "internalType": "struct AssetRegistry.AssetDefinition", "name": "assetDef", "type": "tuple"}, {"components": [{"internalType": "uint256", "name": "x", "type": "uint256"}, {"internalType": "uint256", "name": "y", "type": "uint256"}], "internalType": "struct EdOnBN254.EdOnBN254Point", "name": "userAddr", "type": "tuple"}, {"internalType": "bytes32", "name": "encKey", "type": "bytes32"}, {"internalType": "bool", "name": "freezeFlag", "type": "bool"}, {"internalType": "uint256", "name": "blind", "type": "uint256"}], "internalType": "struct CAPE.RecordOpening", "name": "recordOpening", "type": "tuple"}], "internalType": "struct CAPE.BurnNote[]", "name": "burnNotes", "type": "tuple[]"}], "internalType": "struct CAPE.CapeBlock", "name": "newBlock", "type": "tuple"}, {"internalType": "bytes", "name": "extraData", "type": "bytes"}], "name": "submitCapeBlockWithMemos", "outputs": [], "stateMutability": "nonpayable", "type": "function"}] |
This file has been truncated, but you can view the full file.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| #![allow(clippy::all)] | |
| //! This module contains abigen! generated bindings for solidity contracts. | |
| //! This is autogenerated code. | |
| //! Do not manually edit these files. | |
| //! This file may be overwritten by the codegen system at any time. | |
| pub mod __shared_types { | |
| #[doc = "`PlonkProof((uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256)`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthAbiType, | |
| ethers :: contract :: EthAbiCodec, | |
| )] | |
| pub struct PlonkProof { | |
| pub wire_0: G1Point, | |
| pub wire_1: G1Point, | |
| pub wire_2: G1Point, | |
| pub wire_3: G1Point, | |
| pub wire_4: G1Point, | |
| pub prod_perm: G1Point, | |
| pub split_0: G1Point, | |
| pub split_1: G1Point, | |
| pub split_2: G1Point, | |
| pub split_3: G1Point, | |
| pub split_4: G1Point, | |
| pub zeta: G1Point, | |
| pub zeta_omega: G1Point, | |
| pub wire_eval_0: ethers::core::types::U256, | |
| pub wire_eval_1: ethers::core::types::U256, | |
| pub wire_eval_2: ethers::core::types::U256, | |
| pub wire_eval_3: ethers::core::types::U256, | |
| pub wire_eval_4: ethers::core::types::U256, | |
| pub sigma_eval_0: ethers::core::types::U256, | |
| pub sigma_eval_1: ethers::core::types::U256, | |
| pub sigma_eval_2: ethers::core::types::U256, | |
| pub sigma_eval_3: ethers::core::types::U256, | |
| pub prod_perm_zeta_omega_eval: ethers::core::types::U256, | |
| } | |
| #[doc = "`VerifyingKey(uint256,uint256,(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256))`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthAbiType, | |
| ethers :: contract :: EthAbiCodec, | |
| )] | |
| pub struct VerifyingKey { | |
| pub domain_size: ethers::core::types::U256, | |
| pub num_inputs: ethers::core::types::U256, | |
| pub sigma_0: G1Point, | |
| pub sigma_1: G1Point, | |
| pub sigma_2: G1Point, | |
| pub sigma_3: G1Point, | |
| pub sigma_4: G1Point, | |
| pub q_1: G1Point, | |
| pub q_2: G1Point, | |
| pub q_3: G1Point, | |
| pub q_4: G1Point, | |
| pub q_m12: G1Point, | |
| pub q_m34: G1Point, | |
| pub q_o: G1Point, | |
| pub q_c: G1Point, | |
| pub q_h1: G1Point, | |
| pub q_h2: G1Point, | |
| pub q_h3: G1Point, | |
| pub q_h4: G1Point, | |
| pub q_ecc: G1Point, | |
| } | |
| #[doc = "`MintAuxInfo(uint256,uint128,(uint256,uint256))`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthAbiType, | |
| ethers :: contract :: EthAbiCodec, | |
| )] | |
| pub struct MintAuxInfo { | |
| pub merkle_root: ethers::core::types::U256, | |
| pub fee: u128, | |
| pub txn_memo_ver_key: EdOnBN254Point, | |
| } | |
| #[doc = "`EvalDomain(uint256,uint256,uint256,uint256,uint256)`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthAbiType, | |
| ethers :: contract :: EthAbiCodec, | |
| )] | |
| pub struct EvalDomain { | |
| pub log_size: ethers::core::types::U256, | |
| pub size: ethers::core::types::U256, | |
| pub size_inv: ethers::core::types::U256, | |
| pub group_gen: ethers::core::types::U256, | |
| pub group_gen_inv: ethers::core::types::U256, | |
| } | |
| #[doc = "`RecordOpening(uint128,(uint256,((uint256,uint256),(uint256,uint256),(uint256,uint256),uint256,uint128)),(uint256,uint256),bytes32,bool,uint256)`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthAbiType, | |
| ethers :: contract :: EthAbiCodec, | |
| )] | |
| pub struct RecordOpening { | |
| pub amount: u128, | |
| pub asset_def: AssetDefinition, | |
| pub user_addr: EdOnBN254Point, | |
| pub enc_key: [u8; 32], | |
| pub freeze_flag: bool, | |
| pub blind: ethers::core::types::U256, | |
| } | |
| #[doc = "`AuditMemo((uint256,uint256),uint256[])`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthAbiType, | |
| ethers :: contract :: EthAbiCodec, | |
| )] | |
| pub struct AuditMemo { | |
| pub ephemeral_key: EdOnBN254Point, | |
| pub data: Vec<ethers::core::types::U256>, | |
| } | |
| #[doc = "`MintNote(uint256,uint256,uint256,uint128,(uint256,((uint256,uint256),(uint256,uint256),(uint256,uint256),uint256,uint128)),uint256,((uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256),((uint256,uint256),uint256[]),(uint256,uint128,(uint256,uint256)))`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthAbiType, | |
| ethers :: contract :: EthAbiCodec, | |
| )] | |
| pub struct MintNote { | |
| pub input_nullifier: ethers::core::types::U256, | |
| pub chg_comm: ethers::core::types::U256, | |
| pub mint_comm: ethers::core::types::U256, | |
| pub mint_amount: u128, | |
| pub mint_asset_def: AssetDefinition, | |
| pub mint_internal_asset_code: ethers::core::types::U256, | |
| pub proof: PlonkProof, | |
| pub audit_memo: AuditMemo, | |
| pub aux_info: MintAuxInfo, | |
| } | |
| #[doc = "`G1Point(uint256,uint256)`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthAbiType, | |
| ethers :: contract :: EthAbiCodec, | |
| )] | |
| pub struct G1Point { | |
| pub x: ethers::core::types::U256, | |
| pub y: ethers::core::types::U256, | |
| } | |
| #[doc = "`EdOnBN254Point(uint256,uint256)`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthAbiType, | |
| ethers :: contract :: EthAbiCodec, | |
| )] | |
| pub struct EdOnBN254Point { | |
| pub x: ethers::core::types::U256, | |
| pub y: ethers::core::types::U256, | |
| } | |
| #[doc = "`FreezeAuxInfo(uint256,uint128,(uint256,uint256))`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthAbiType, | |
| ethers :: contract :: EthAbiCodec, | |
| )] | |
| pub struct FreezeAuxInfo { | |
| pub merkle_root: ethers::core::types::U256, | |
| pub fee: u128, | |
| pub txn_memo_ver_key: EdOnBN254Point, | |
| } | |
| #[doc = "`BurnNote((uint256[],uint256[],((uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256),((uint256,uint256),uint256[]),(uint256,uint128,uint64,(uint256,uint256),bytes)),(uint128,(uint256,((uint256,uint256),(uint256,uint256),(uint256,uint256),uint256,uint128)),(uint256,uint256),bytes32,bool,uint256))`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthAbiType, | |
| ethers :: contract :: EthAbiCodec, | |
| )] | |
| pub struct BurnNote { | |
| pub transfer_note: TransferNote, | |
| pub record_opening: RecordOpening, | |
| } | |
| #[doc = "`FreezeNote(uint256[],uint256[],((uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256),(uint256,uint128,(uint256,uint256)))`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthAbiType, | |
| ethers :: contract :: EthAbiCodec, | |
| )] | |
| pub struct FreezeNote { | |
| pub input_nullifiers: Vec<ethers::core::types::U256>, | |
| pub output_commitments: Vec<ethers::core::types::U256>, | |
| pub proof: PlonkProof, | |
| pub aux_info: FreezeAuxInfo, | |
| } | |
| #[doc = "`TransferNote(uint256[],uint256[],((uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256),((uint256,uint256),uint256[]),(uint256,uint128,uint64,(uint256,uint256),bytes))`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthAbiType, | |
| ethers :: contract :: EthAbiCodec, | |
| )] | |
| pub struct TransferNote { | |
| pub input_nullifiers: Vec<ethers::core::types::U256>, | |
| pub output_commitments: Vec<ethers::core::types::U256>, | |
| pub proof: PlonkProof, | |
| pub audit_memo: AuditMemo, | |
| pub aux_info: TransferAuxInfo, | |
| } | |
| #[doc = "`AssetPolicy((uint256,uint256),(uint256,uint256),(uint256,uint256),uint256,uint128)`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthAbiType, | |
| ethers :: contract :: EthAbiCodec, | |
| )] | |
| pub struct AssetPolicy { | |
| pub auditor_pk: EdOnBN254Point, | |
| pub cred_pk: EdOnBN254Point, | |
| pub freezer_pk: EdOnBN254Point, | |
| pub reveal_map: ethers::core::types::U256, | |
| pub reveal_threshold: u128, | |
| } | |
| #[doc = "`TransferAuxInfo(uint256,uint128,uint64,(uint256,uint256),bytes)`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthAbiType, | |
| ethers :: contract :: EthAbiCodec, | |
| )] | |
| pub struct TransferAuxInfo { | |
| pub merkle_root: ethers::core::types::U256, | |
| pub fee: u128, | |
| pub valid_until: u64, | |
| pub txn_memo_ver_key: EdOnBN254Point, | |
| pub extra_proof_bound_data: ethers::core::types::Bytes, | |
| } | |
| #[doc = "`AssetDefinition(uint256,((uint256,uint256),(uint256,uint256),(uint256,uint256),uint256,uint128))`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthAbiType, | |
| ethers :: contract :: EthAbiCodec, | |
| )] | |
| pub struct AssetDefinition { | |
| pub code: ethers::core::types::U256, | |
| pub policy: AssetPolicy, | |
| } | |
| #[doc = "`CapeBlock((uint256,uint256),uint8[],(uint256[],uint256[],((uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256),((uint256,uint256),uint256[]),(uint256,uint128,uint64,(uint256,uint256),bytes))[],(uint256,uint256,uint256,uint128,(uint256,((uint256,uint256),(uint256,uint256),(uint256,uint256),uint256,uint128)),uint256,((uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256),((uint256,uint256),uint256[]),(uint256,uint128,(uint256,uint256)))[],(uint256[],uint256[],((uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256),(uint256,uint128,(uint256,uint256)))[],((uint256[],uint256[],((uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256),((uint256,uint256),uint256[]),(uint256,uint128,uint64,(uint256,uint256),bytes)),(uint128,(uint256,((uint256,uint256),(uint256,uint256),(uint256,uint256),uint256,uint128)),(uint256,uint256),bytes32,bool,uint256))[])`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthAbiType, | |
| ethers :: contract :: EthAbiCodec, | |
| )] | |
| pub struct CapeBlock { | |
| pub miner_addr: EdOnBN254Point, | |
| pub note_types: Vec<u8>, | |
| pub transfer_notes: ::std::vec::Vec<TransferNote>, | |
| pub mint_notes: ::std::vec::Vec<MintNote>, | |
| pub freeze_notes: ::std::vec::Vec<FreezeNote>, | |
| pub burn_notes: ::std::vec::Vec<BurnNote>, | |
| } | |
| } | |
| pub use accumulatingarray_mod::*; | |
| #[allow(clippy::too_many_arguments, non_camel_case_types)] | |
| pub mod accumulatingarray_mod { | |
| #![allow(clippy::enum_variant_names)] | |
| #![allow(dead_code)] | |
| #![allow(clippy::type_complexity)] | |
| #![allow(unused_imports)] | |
| use ethers::contract::{ | |
| builders::{ContractCall, Event}, | |
| Contract, Lazy, | |
| }; | |
| use ethers::core::{ | |
| abi::{Abi, Detokenize, InvalidOutputType, Token, Tokenizable}, | |
| types::*, | |
| }; | |
| use ethers::providers::Middleware; | |
| #[doc = "AccumulatingArray was auto-generated with ethers-rs Abigen. More information at: https://github.com/gakonst/ethers-rs"] | |
| use std::sync::Arc; | |
| pub static ACCUMULATINGARRAY_ABI: ethers::contract::Lazy<ethers::core::abi::Abi> = | |
| ethers::contract::Lazy::new(|| serde_json::from_str("[]").expect("invalid abi")); | |
| pub struct AccumulatingArray<M>(ethers::contract::Contract<M>); | |
| impl<M> Clone for AccumulatingArray<M> { | |
| fn clone(&self) -> Self { | |
| AccumulatingArray(self.0.clone()) | |
| } | |
| } | |
| impl<M> std::ops::Deref for AccumulatingArray<M> { | |
| type Target = ethers::contract::Contract<M>; | |
| fn deref(&self) -> &Self::Target { | |
| &self.0 | |
| } | |
| } | |
| impl<M: ethers::providers::Middleware> std::fmt::Debug for AccumulatingArray<M> { | |
| fn fmt(&self, f: &mut std::fmt::Formatter) -> std::fmt::Result { | |
| f.debug_tuple(stringify!(AccumulatingArray)) | |
| .field(&self.address()) | |
| .finish() | |
| } | |
| } | |
| impl<M: ethers::providers::Middleware> AccumulatingArray<M> { | |
| #[doc = r" Creates a new contract instance with the specified `ethers`"] | |
| #[doc = r" client at the given `Address`. The contract derefs to a `ethers::Contract`"] | |
| #[doc = r" object"] | |
| pub fn new<T: Into<ethers::core::types::Address>>( | |
| address: T, | |
| client: ::std::sync::Arc<M>, | |
| ) -> Self { | |
| ethers::contract::Contract::new(address.into(), ACCUMULATINGARRAY_ABI.clone(), client) | |
| .into() | |
| } | |
| } | |
| impl<M: ethers::providers::Middleware> From<ethers::contract::Contract<M>> | |
| for AccumulatingArray<M> | |
| { | |
| fn from(contract: ethers::contract::Contract<M>) -> Self { | |
| Self(contract) | |
| } | |
| } | |
| } | |
| pub use assetregistry_mod::*; | |
| #[allow(clippy::too_many_arguments, non_camel_case_types)] | |
| pub mod assetregistry_mod { | |
| #![allow(clippy::enum_variant_names)] | |
| #![allow(dead_code)] | |
| #![allow(clippy::type_complexity)] | |
| #![allow(unused_imports)] | |
| pub use super::__shared_types::*; | |
| use ethers::contract::{ | |
| builders::{ContractCall, Event}, | |
| Contract, Lazy, | |
| }; | |
| use ethers::core::{ | |
| abi::{Abi, Detokenize, InvalidOutputType, Token, Tokenizable}, | |
| types::*, | |
| }; | |
| use ethers::providers::Middleware; | |
| #[doc = "AssetRegistry was auto-generated with ethers-rs Abigen. More information at: https://github.com/gakonst/ethers-rs"] | |
| use std::sync::Arc; | |
| pub static ASSETREGISTRY_ABI: ethers::contract::Lazy<ethers::core::abi::Abi> = | |
| ethers::contract::Lazy::new(|| { | |
| serde_json :: from_str ("[{\"inputs\":[{\"internalType\":\"address\",\"name\":\"erc20Address\",\"type\":\"address\",\"components\":[],\"indexed\":false},{\"internalType\":\"uint256\",\"name\":\"assetDefinitionCode\",\"type\":\"uint256\",\"components\":[],\"indexed\":false}],\"type\":\"event\",\"name\":\"AssetSponsored\",\"outputs\":[],\"anonymous\":false},{\"inputs\":[],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"CAP_NATIVE_ASSET_CODE\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\",\"components\":[]}]},{\"inputs\":[],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"DOM_SEP_DOMESTIC_ASSET\",\"outputs\":[{\"internalType\":\"bytes14\",\"name\":\"\",\"type\":\"bytes14\",\"components\":[]}]},{\"inputs\":[],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"DOM_SEP_FOREIGN_ASSET\",\"outputs\":[{\"internalType\":\"bytes13\",\"name\":\"\",\"type\":\"bytes13\",\"components\":[]}]},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\",\"components\":[]}],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"assets\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\",\"components\":[]}]},{\"inputs\":[{\"internalType\":\"struct AssetRegistry.AssetDefinition\",\"name\":\"assetDefinition\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"code\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"struct AssetRegistry.AssetPolicy\",\"name\":\"policy\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"auditorPk\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"credPk\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"freezerPk\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"uint256\",\"name\":\"revealMap\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint128\",\"name\":\"revealThreshold\",\"type\":\"uint128\",\"components\":[]}]}]}],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"isCapeAssetRegistered\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\",\"components\":[]}]},{\"inputs\":[{\"internalType\":\"struct AssetRegistry.AssetDefinition\",\"name\":\"assetDefinition\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"code\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"struct AssetRegistry.AssetPolicy\",\"name\":\"policy\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"auditorPk\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"credPk\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"freezerPk\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"uint256\",\"name\":\"revealMap\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint128\",\"name\":\"revealThreshold\",\"type\":\"uint128\",\"components\":[]}]}]}],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"lookup\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\",\"components\":[]}]},{\"inputs\":[],\"stateMutability\":\"pure\",\"type\":\"function\",\"name\":\"nativeDomesticAsset\",\"outputs\":[{\"internalType\":\"struct AssetRegistry.AssetDefinition\",\"name\":\"assetDefinition\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"code\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"struct AssetRegistry.AssetPolicy\",\"name\":\"policy\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"auditorPk\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"credPk\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"freezerPk\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"uint256\",\"name\":\"revealMap\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint128\",\"name\":\"revealThreshold\",\"type\":\"uint128\",\"components\":[]}]}]}]},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"erc20Address\",\"type\":\"address\",\"components\":[]},{\"internalType\":\"struct AssetRegistry.AssetDefinition\",\"name\":\"newAsset\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"code\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"struct AssetRegistry.AssetPolicy\",\"name\":\"policy\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"auditorPk\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"credPk\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"freezerPk\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"uint256\",\"name\":\"revealMap\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint128\",\"name\":\"revealThreshold\",\"type\":\"uint128\",\"components\":[]}]}]}],\"stateMutability\":\"nonpayable\",\"type\":\"function\",\"name\":\"sponsorCapeAsset\",\"outputs\":[]}]") . expect ("invalid abi") | |
| }); | |
| pub struct AssetRegistry<M>(ethers::contract::Contract<M>); | |
| impl<M> Clone for AssetRegistry<M> { | |
| fn clone(&self) -> Self { | |
| AssetRegistry(self.0.clone()) | |
| } | |
| } | |
| impl<M> std::ops::Deref for AssetRegistry<M> { | |
| type Target = ethers::contract::Contract<M>; | |
| fn deref(&self) -> &Self::Target { | |
| &self.0 | |
| } | |
| } | |
| impl<M: ethers::providers::Middleware> std::fmt::Debug for AssetRegistry<M> { | |
| fn fmt(&self, f: &mut std::fmt::Formatter) -> std::fmt::Result { | |
| f.debug_tuple(stringify!(AssetRegistry)) | |
| .field(&self.address()) | |
| .finish() | |
| } | |
| } | |
| impl<M: ethers::providers::Middleware> AssetRegistry<M> { | |
| #[doc = r" Creates a new contract instance with the specified `ethers`"] | |
| #[doc = r" client at the given `Address`. The contract derefs to a `ethers::Contract`"] | |
| #[doc = r" object"] | |
| pub fn new<T: Into<ethers::core::types::Address>>( | |
| address: T, | |
| client: ::std::sync::Arc<M>, | |
| ) -> Self { | |
| ethers::contract::Contract::new(address.into(), ASSETREGISTRY_ABI.clone(), client) | |
| .into() | |
| } | |
| #[doc = "Calls the contract's `CAP_NATIVE_ASSET_CODE` (0x79cf6f5c) function"] | |
| pub fn cap_native_asset_code( | |
| &self, | |
| ) -> ethers::contract::builders::ContractCall<M, ethers::core::types::U256> { | |
| self.0 | |
| .method_hash([121, 207, 111, 92], ()) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Calls the contract's `DOM_SEP_DOMESTIC_ASSET` (0x1db6b253) function"] | |
| pub fn dom_sep_domestic_asset( | |
| &self, | |
| ) -> ethers::contract::builders::ContractCall<M, [u8; 14]> { | |
| self.0 | |
| .method_hash([29, 182, 178, 83], ()) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Calls the contract's `DOM_SEP_FOREIGN_ASSET` (0xa33ba96c) function"] | |
| pub fn dom_sep_foreign_asset( | |
| &self, | |
| ) -> ethers::contract::builders::ContractCall<M, [u8; 13]> { | |
| self.0 | |
| .method_hash([163, 59, 169, 108], ()) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Calls the contract's `assets` (0x9fda5b66) function"] | |
| pub fn assets( | |
| &self, | |
| p0: [u8; 32], | |
| ) -> ethers::contract::builders::ContractCall<M, ethers::core::types::Address> { | |
| self.0 | |
| .method_hash([159, 218, 91, 102], p0) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Calls the contract's `isCapeAssetRegistered` (0xf148fb4a) function"] | |
| pub fn is_cape_asset_registered( | |
| &self, | |
| asset_definition: AssetDefinition, | |
| ) -> ethers::contract::builders::ContractCall<M, bool> { | |
| self.0 | |
| .method_hash([241, 72, 251, 74], (asset_definition,)) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Calls the contract's `lookup` (0xd56c1ea1) function"] | |
| pub fn lookup( | |
| &self, | |
| asset_definition: AssetDefinition, | |
| ) -> ethers::contract::builders::ContractCall<M, ethers::core::types::Address> { | |
| self.0 | |
| .method_hash([213, 108, 30, 161], (asset_definition,)) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Calls the contract's `nativeDomesticAsset` (0x6de84060) function"] | |
| pub fn native_domestic_asset( | |
| &self, | |
| ) -> ethers::contract::builders::ContractCall<M, AssetDefinition> { | |
| self.0 | |
| .method_hash([109, 232, 64, 96], ()) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Calls the contract's `sponsorCapeAsset` (0x0a212145) function"] | |
| pub fn sponsor_cape_asset( | |
| &self, | |
| erc_20_address: ethers::core::types::Address, | |
| new_asset: AssetDefinition, | |
| ) -> ethers::contract::builders::ContractCall<M, ()> { | |
| self.0 | |
| .method_hash([10, 33, 33, 69], (erc_20_address, new_asset)) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Gets the contract's `AssetSponsored` event"] | |
| pub fn asset_sponsored_filter( | |
| &self, | |
| ) -> ethers::contract::builders::Event<M, AssetSponsoredFilter> { | |
| self.0.event() | |
| } | |
| #[doc = r" Returns an [`Event`](#ethers_contract::builders::Event) builder for all events of this contract"] | |
| pub fn events(&self) -> ethers::contract::builders::Event<M, AssetSponsoredFilter> { | |
| self.0.event_with_filter(Default::default()) | |
| } | |
| } | |
| impl<M: ethers::providers::Middleware> From<ethers::contract::Contract<M>> for AssetRegistry<M> { | |
| fn from(contract: ethers::contract::Contract<M>) -> Self { | |
| Self(contract) | |
| } | |
| } | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthEvent, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethevent(name = "AssetSponsored", abi = "AssetSponsored(address,uint256)")] | |
| pub struct AssetSponsoredFilter { | |
| pub erc_20_address: ethers::core::types::Address, | |
| pub asset_definition_code: ethers::core::types::U256, | |
| } | |
| #[doc = "Container type for all input parameters for the `CAP_NATIVE_ASSET_CODE`function with signature `CAP_NATIVE_ASSET_CODE()` and selector `[121, 207, 111, 92]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall(name = "CAP_NATIVE_ASSET_CODE", abi = "CAP_NATIVE_ASSET_CODE()")] | |
| pub struct CapNativeAssetCodeCall; | |
| #[doc = "Container type for all input parameters for the `DOM_SEP_DOMESTIC_ASSET`function with signature `DOM_SEP_DOMESTIC_ASSET()` and selector `[29, 182, 178, 83]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall(name = "DOM_SEP_DOMESTIC_ASSET", abi = "DOM_SEP_DOMESTIC_ASSET()")] | |
| pub struct DomSepDomesticAssetCall; | |
| #[doc = "Container type for all input parameters for the `DOM_SEP_FOREIGN_ASSET`function with signature `DOM_SEP_FOREIGN_ASSET()` and selector `[163, 59, 169, 108]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall(name = "DOM_SEP_FOREIGN_ASSET", abi = "DOM_SEP_FOREIGN_ASSET()")] | |
| pub struct DomSepForeignAssetCall; | |
| #[doc = "Container type for all input parameters for the `assets`function with signature `assets(bytes32)` and selector `[159, 218, 91, 102]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall(name = "assets", abi = "assets(bytes32)")] | |
| pub struct AssetsCall(pub [u8; 32]); | |
| #[doc = "Container type for all input parameters for the `isCapeAssetRegistered`function with signature `isCapeAssetRegistered((uint256,((uint256,uint256),(uint256,uint256),(uint256,uint256),uint256,uint128)))` and selector `[241, 72, 251, 74]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall( | |
| name = "isCapeAssetRegistered", | |
| abi = "isCapeAssetRegistered((uint256,((uint256,uint256),(uint256,uint256),(uint256,uint256),uint256,uint128)))" | |
| )] | |
| pub struct IsCapeAssetRegisteredCall { | |
| pub asset_definition: AssetDefinition, | |
| } | |
| #[doc = "Container type for all input parameters for the `lookup`function with signature `lookup((uint256,((uint256,uint256),(uint256,uint256),(uint256,uint256),uint256,uint128)))` and selector `[213, 108, 30, 161]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall( | |
| name = "lookup", | |
| abi = "lookup((uint256,((uint256,uint256),(uint256,uint256),(uint256,uint256),uint256,uint128)))" | |
| )] | |
| pub struct LookupCall { | |
| pub asset_definition: AssetDefinition, | |
| } | |
| #[doc = "Container type for all input parameters for the `nativeDomesticAsset`function with signature `nativeDomesticAsset()` and selector `[109, 232, 64, 96]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall(name = "nativeDomesticAsset", abi = "nativeDomesticAsset()")] | |
| pub struct NativeDomesticAssetCall; | |
| #[doc = "Container type for all input parameters for the `sponsorCapeAsset`function with signature `sponsorCapeAsset(address,(uint256,((uint256,uint256),(uint256,uint256),(uint256,uint256),uint256,uint128)))` and selector `[10, 33, 33, 69]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall( | |
| name = "sponsorCapeAsset", | |
| abi = "sponsorCapeAsset(address,(uint256,((uint256,uint256),(uint256,uint256),(uint256,uint256),uint256,uint128)))" | |
| )] | |
| pub struct SponsorCapeAssetCall { | |
| pub erc_20_address: ethers::core::types::Address, | |
| pub new_asset: AssetDefinition, | |
| } | |
| #[derive(Debug, Clone, PartialEq, Eq, ethers :: contract :: EthAbiType)] | |
| pub enum AssetRegistryCalls { | |
| CapNativeAssetCode(CapNativeAssetCodeCall), | |
| DomSepDomesticAsset(DomSepDomesticAssetCall), | |
| DomSepForeignAsset(DomSepForeignAssetCall), | |
| Assets(AssetsCall), | |
| IsCapeAssetRegistered(IsCapeAssetRegisteredCall), | |
| Lookup(LookupCall), | |
| NativeDomesticAsset(NativeDomesticAssetCall), | |
| SponsorCapeAsset(SponsorCapeAssetCall), | |
| } | |
| impl ethers::core::abi::AbiDecode for AssetRegistryCalls { | |
| fn decode(data: impl AsRef<[u8]>) -> Result<Self, ethers::core::abi::AbiError> { | |
| if let Ok(decoded) = | |
| <CapNativeAssetCodeCall as ethers::core::abi::AbiDecode>::decode(data.as_ref()) | |
| { | |
| return Ok(AssetRegistryCalls::CapNativeAssetCode(decoded)); | |
| } | |
| if let Ok(decoded) = | |
| <DomSepDomesticAssetCall as ethers::core::abi::AbiDecode>::decode(data.as_ref()) | |
| { | |
| return Ok(AssetRegistryCalls::DomSepDomesticAsset(decoded)); | |
| } | |
| if let Ok(decoded) = | |
| <DomSepForeignAssetCall as ethers::core::abi::AbiDecode>::decode(data.as_ref()) | |
| { | |
| return Ok(AssetRegistryCalls::DomSepForeignAsset(decoded)); | |
| } | |
| if let Ok(decoded) = <AssetsCall as ethers::core::abi::AbiDecode>::decode(data.as_ref()) | |
| { | |
| return Ok(AssetRegistryCalls::Assets(decoded)); | |
| } | |
| if let Ok(decoded) = | |
| <IsCapeAssetRegisteredCall as ethers::core::abi::AbiDecode>::decode(data.as_ref()) | |
| { | |
| return Ok(AssetRegistryCalls::IsCapeAssetRegistered(decoded)); | |
| } | |
| if let Ok(decoded) = <LookupCall as ethers::core::abi::AbiDecode>::decode(data.as_ref()) | |
| { | |
| return Ok(AssetRegistryCalls::Lookup(decoded)); | |
| } | |
| if let Ok(decoded) = | |
| <NativeDomesticAssetCall as ethers::core::abi::AbiDecode>::decode(data.as_ref()) | |
| { | |
| return Ok(AssetRegistryCalls::NativeDomesticAsset(decoded)); | |
| } | |
| if let Ok(decoded) = | |
| <SponsorCapeAssetCall as ethers::core::abi::AbiDecode>::decode(data.as_ref()) | |
| { | |
| return Ok(AssetRegistryCalls::SponsorCapeAsset(decoded)); | |
| } | |
| Err(ethers::core::abi::Error::InvalidData.into()) | |
| } | |
| } | |
| impl ethers::core::abi::AbiEncode for AssetRegistryCalls { | |
| fn encode(self) -> Vec<u8> { | |
| match self { | |
| AssetRegistryCalls::CapNativeAssetCode(element) => element.encode(), | |
| AssetRegistryCalls::DomSepDomesticAsset(element) => element.encode(), | |
| AssetRegistryCalls::DomSepForeignAsset(element) => element.encode(), | |
| AssetRegistryCalls::Assets(element) => element.encode(), | |
| AssetRegistryCalls::IsCapeAssetRegistered(element) => element.encode(), | |
| AssetRegistryCalls::Lookup(element) => element.encode(), | |
| AssetRegistryCalls::NativeDomesticAsset(element) => element.encode(), | |
| AssetRegistryCalls::SponsorCapeAsset(element) => element.encode(), | |
| } | |
| } | |
| } | |
| impl ::std::fmt::Display for AssetRegistryCalls { | |
| fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result { | |
| match self { | |
| AssetRegistryCalls::CapNativeAssetCode(element) => element.fmt(f), | |
| AssetRegistryCalls::DomSepDomesticAsset(element) => element.fmt(f), | |
| AssetRegistryCalls::DomSepForeignAsset(element) => element.fmt(f), | |
| AssetRegistryCalls::Assets(element) => element.fmt(f), | |
| AssetRegistryCalls::IsCapeAssetRegistered(element) => element.fmt(f), | |
| AssetRegistryCalls::Lookup(element) => element.fmt(f), | |
| AssetRegistryCalls::NativeDomesticAsset(element) => element.fmt(f), | |
| AssetRegistryCalls::SponsorCapeAsset(element) => element.fmt(f), | |
| } | |
| } | |
| } | |
| impl ::std::convert::From<CapNativeAssetCodeCall> for AssetRegistryCalls { | |
| fn from(var: CapNativeAssetCodeCall) -> Self { | |
| AssetRegistryCalls::CapNativeAssetCode(var) | |
| } | |
| } | |
| impl ::std::convert::From<DomSepDomesticAssetCall> for AssetRegistryCalls { | |
| fn from(var: DomSepDomesticAssetCall) -> Self { | |
| AssetRegistryCalls::DomSepDomesticAsset(var) | |
| } | |
| } | |
| impl ::std::convert::From<DomSepForeignAssetCall> for AssetRegistryCalls { | |
| fn from(var: DomSepForeignAssetCall) -> Self { | |
| AssetRegistryCalls::DomSepForeignAsset(var) | |
| } | |
| } | |
| impl ::std::convert::From<AssetsCall> for AssetRegistryCalls { | |
| fn from(var: AssetsCall) -> Self { | |
| AssetRegistryCalls::Assets(var) | |
| } | |
| } | |
| impl ::std::convert::From<IsCapeAssetRegisteredCall> for AssetRegistryCalls { | |
| fn from(var: IsCapeAssetRegisteredCall) -> Self { | |
| AssetRegistryCalls::IsCapeAssetRegistered(var) | |
| } | |
| } | |
| impl ::std::convert::From<LookupCall> for AssetRegistryCalls { | |
| fn from(var: LookupCall) -> Self { | |
| AssetRegistryCalls::Lookup(var) | |
| } | |
| } | |
| impl ::std::convert::From<NativeDomesticAssetCall> for AssetRegistryCalls { | |
| fn from(var: NativeDomesticAssetCall) -> Self { | |
| AssetRegistryCalls::NativeDomesticAsset(var) | |
| } | |
| } | |
| impl ::std::convert::From<SponsorCapeAssetCall> for AssetRegistryCalls { | |
| fn from(var: SponsorCapeAssetCall) -> Self { | |
| AssetRegistryCalls::SponsorCapeAsset(var) | |
| } | |
| } | |
| } | |
| pub use bn254_mod::*; | |
| #[allow(clippy::too_many_arguments, non_camel_case_types)] | |
| pub mod bn254_mod { | |
| #![allow(clippy::enum_variant_names)] | |
| #![allow(dead_code)] | |
| #![allow(clippy::type_complexity)] | |
| #![allow(unused_imports)] | |
| use ethers::contract::{ | |
| builders::{ContractCall, Event}, | |
| Contract, Lazy, | |
| }; | |
| use ethers::core::{ | |
| abi::{Abi, Detokenize, InvalidOutputType, Token, Tokenizable}, | |
| types::*, | |
| }; | |
| use ethers::providers::Middleware; | |
| #[doc = "BN254 was auto-generated with ethers-rs Abigen. More information at: https://github.com/gakonst/ethers-rs"] | |
| use std::sync::Arc; | |
| pub static BN254_ABI: ethers::contract::Lazy<ethers::core::abi::Abi> = | |
| ethers::contract::Lazy::new(|| { | |
| serde_json :: from_str ("[{\"inputs\":[],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"P_MOD\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\",\"components\":[]}]},{\"inputs\":[],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"R_MOD\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\",\"components\":[]}]}]") . expect ("invalid abi") | |
| }); | |
| pub struct BN254<M>(ethers::contract::Contract<M>); | |
| impl<M> Clone for BN254<M> { | |
| fn clone(&self) -> Self { | |
| BN254(self.0.clone()) | |
| } | |
| } | |
| impl<M> std::ops::Deref for BN254<M> { | |
| type Target = ethers::contract::Contract<M>; | |
| fn deref(&self) -> &Self::Target { | |
| &self.0 | |
| } | |
| } | |
| impl<M: ethers::providers::Middleware> std::fmt::Debug for BN254<M> { | |
| fn fmt(&self, f: &mut std::fmt::Formatter) -> std::fmt::Result { | |
| f.debug_tuple(stringify!(BN254)) | |
| .field(&self.address()) | |
| .finish() | |
| } | |
| } | |
| impl<M: ethers::providers::Middleware> BN254<M> { | |
| #[doc = r" Creates a new contract instance with the specified `ethers`"] | |
| #[doc = r" client at the given `Address`. The contract derefs to a `ethers::Contract`"] | |
| #[doc = r" object"] | |
| pub fn new<T: Into<ethers::core::types::Address>>( | |
| address: T, | |
| client: ::std::sync::Arc<M>, | |
| ) -> Self { | |
| ethers::contract::Contract::new(address.into(), BN254_ABI.clone(), client).into() | |
| } | |
| #[doc = "Calls the contract's `P_MOD` (0x1d712e27) function"] | |
| pub fn p_mod( | |
| &self, | |
| ) -> ethers::contract::builders::ContractCall<M, ethers::core::types::U256> { | |
| self.0 | |
| .method_hash([29, 113, 46, 39], ()) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Calls the contract's `R_MOD` (0xdf6e6cb4) function"] | |
| pub fn r_mod( | |
| &self, | |
| ) -> ethers::contract::builders::ContractCall<M, ethers::core::types::U256> { | |
| self.0 | |
| .method_hash([223, 110, 108, 180], ()) | |
| .expect("method not found (this should never happen)") | |
| } | |
| } | |
| impl<M: ethers::providers::Middleware> From<ethers::contract::Contract<M>> for BN254<M> { | |
| fn from(contract: ethers::contract::Contract<M>) -> Self { | |
| Self(contract) | |
| } | |
| } | |
| #[doc = "Container type for all input parameters for the `P_MOD`function with signature `P_MOD()` and selector `[29, 113, 46, 39]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall(name = "P_MOD", abi = "P_MOD()")] | |
| pub struct PModCall; | |
| #[doc = "Container type for all input parameters for the `R_MOD`function with signature `R_MOD()` and selector `[223, 110, 108, 180]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall(name = "R_MOD", abi = "R_MOD()")] | |
| pub struct RModCall; | |
| #[derive(Debug, Clone, PartialEq, Eq, ethers :: contract :: EthAbiType)] | |
| pub enum BN254Calls { | |
| PMod(PModCall), | |
| RMod(RModCall), | |
| } | |
| impl ethers::core::abi::AbiDecode for BN254Calls { | |
| fn decode(data: impl AsRef<[u8]>) -> Result<Self, ethers::core::abi::AbiError> { | |
| if let Ok(decoded) = <PModCall as ethers::core::abi::AbiDecode>::decode(data.as_ref()) { | |
| return Ok(BN254Calls::PMod(decoded)); | |
| } | |
| if let Ok(decoded) = <RModCall as ethers::core::abi::AbiDecode>::decode(data.as_ref()) { | |
| return Ok(BN254Calls::RMod(decoded)); | |
| } | |
| Err(ethers::core::abi::Error::InvalidData.into()) | |
| } | |
| } | |
| impl ethers::core::abi::AbiEncode for BN254Calls { | |
| fn encode(self) -> Vec<u8> { | |
| match self { | |
| BN254Calls::PMod(element) => element.encode(), | |
| BN254Calls::RMod(element) => element.encode(), | |
| } | |
| } | |
| } | |
| impl ::std::fmt::Display for BN254Calls { | |
| fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result { | |
| match self { | |
| BN254Calls::PMod(element) => element.fmt(f), | |
| BN254Calls::RMod(element) => element.fmt(f), | |
| } | |
| } | |
| } | |
| impl ::std::convert::From<PModCall> for BN254Calls { | |
| fn from(var: PModCall) -> Self { | |
| BN254Calls::PMod(var) | |
| } | |
| } | |
| impl ::std::convert::From<RModCall> for BN254Calls { | |
| fn from(var: RModCall) -> Self { | |
| BN254Calls::RMod(var) | |
| } | |
| } | |
| } | |
| pub use cape_mod::*; | |
| #[allow(clippy::too_many_arguments, non_camel_case_types)] | |
| pub mod cape_mod { | |
| #![allow(clippy::enum_variant_names)] | |
| #![allow(dead_code)] | |
| #![allow(clippy::type_complexity)] | |
| #![allow(unused_imports)] | |
| pub use super::__shared_types::*; | |
| use ethers::contract::{ | |
| builders::{ContractCall, Event}, | |
| Contract, Lazy, | |
| }; | |
| use ethers::core::{ | |
| abi::{Abi, Detokenize, InvalidOutputType, Token, Tokenizable}, | |
| types::*, | |
| }; | |
| use ethers::providers::Middleware; | |
| #[doc = "CAPE was auto-generated with ethers-rs Abigen. More information at: https://github.com/gakonst/ethers-rs"] | |
| use std::sync::Arc; | |
| pub static CAPE_ABI: ethers::contract::Lazy<ethers::core::abi::Abi> = | |
| ethers::contract::Lazy::new(|| { | |
| serde_json :: from_str ("[{\"inputs\":[{\"internalType\":\"uint64\",\"name\":\"nRoots\",\"type\":\"uint64\",\"components\":[]},{\"internalType\":\"address\",\"name\":\"verifierAddr\",\"type\":\"address\",\"components\":[]},{\"internalType\":\"address\",\"name\":\"recordsMerkleTreeAddr\",\"type\":\"address\",\"components\":[]}],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\",\"outputs\":[]},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"erc20Address\",\"type\":\"address\",\"components\":[],\"indexed\":false},{\"internalType\":\"uint256\",\"name\":\"assetDefinitionCode\",\"type\":\"uint256\",\"components\":[],\"indexed\":false}],\"type\":\"event\",\"name\":\"AssetSponsored\",\"outputs\":[],\"anonymous\":false},{\"inputs\":[{\"internalType\":\"uint64\",\"name\":\"height\",\"type\":\"uint64\",\"components\":[],\"indexed\":true},{\"internalType\":\"uint256[]\",\"name\":\"depositCommitments\",\"type\":\"uint256[]\",\"components\":[],\"indexed\":false},{\"internalType\":\"struct CAPE.CapeBlock\",\"name\":\"newBlock\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"minerAddr\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"enum CAPE.NoteType[]\",\"name\":\"noteTypes\",\"type\":\"uint8[]\",\"components\":[]},{\"internalType\":\"struct CAPE.TransferNote[]\",\"name\":\"transferNotes\",\"type\":\"tuple[]\",\"components\":[{\"internalType\":\"uint256[]\",\"name\":\"inputNullifiers\",\"type\":\"uint256[]\",\"components\":[]},{\"internalType\":\"uint256[]\",\"name\":\"outputCommitments\",\"type\":\"uint256[]\",\"components\":[]},{\"internalType\":\"struct IPlonkVerifier.PlonkProof\",\"name\":\"proof\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire0\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire1\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire2\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire3\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire4\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"prodPerm\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split0\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split1\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split2\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split3\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split4\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"zeta\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"zetaOmega\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"uint256\",\"name\":\"wireEval0\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval1\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval2\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval3\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval4\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval0\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval1\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval2\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval3\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"prodPermZetaOmegaEval\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct CAPE.AuditMemo\",\"name\":\"auditMemo\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"ephemeralKey\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"uint256[]\",\"name\":\"data\",\"type\":\"uint256[]\",\"components\":[]}]},{\"internalType\":\"struct CAPE.TransferAuxInfo\",\"name\":\"auxInfo\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"merkleRoot\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint128\",\"name\":\"fee\",\"type\":\"uint128\",\"components\":[]},{\"internalType\":\"uint64\",\"name\":\"validUntil\",\"type\":\"uint64\",\"components\":[]},{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"txnMemoVerKey\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"bytes\",\"name\":\"extraProofBoundData\",\"type\":\"bytes\",\"components\":[]}]}]},{\"internalType\":\"struct CAPE.MintNote[]\",\"name\":\"mintNotes\",\"type\":\"tuple[]\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"inputNullifier\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"chgComm\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"mintComm\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint128\",\"name\":\"mintAmount\",\"type\":\"uint128\",\"components\":[]},{\"internalType\":\"struct AssetRegistry.AssetDefinition\",\"name\":\"mintAssetDef\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"code\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"struct AssetRegistry.AssetPolicy\",\"name\":\"policy\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"auditorPk\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"credPk\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"freezerPk\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"uint256\",\"name\":\"revealMap\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint128\",\"name\":\"revealThreshold\",\"type\":\"uint128\",\"components\":[]}]}]},{\"internalType\":\"uint256\",\"name\":\"mintInternalAssetCode\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"struct IPlonkVerifier.PlonkProof\",\"name\":\"proof\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire0\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire1\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire2\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire3\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire4\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"prodPerm\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split0\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split1\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split2\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split3\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split4\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"zeta\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"zetaOmega\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"uint256\",\"name\":\"wireEval0\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval1\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval2\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval3\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval4\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval0\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval1\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval2\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval3\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"prodPermZetaOmegaEval\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct CAPE.AuditMemo\",\"name\":\"auditMemo\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"ephemeralKey\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"uint256[]\",\"name\":\"data\",\"type\":\"uint256[]\",\"components\":[]}]},{\"internalType\":\"struct CAPE.MintAuxInfo\",\"name\":\"auxInfo\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"merkleRoot\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint128\",\"name\":\"fee\",\"type\":\"uint128\",\"components\":[]},{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"txnMemoVerKey\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]}]}]},{\"internalType\":\"struct CAPE.FreezeNote[]\",\"name\":\"freezeNotes\",\"type\":\"tuple[]\",\"components\":[{\"internalType\":\"uint256[]\",\"name\":\"inputNullifiers\",\"type\":\"uint256[]\",\"components\":[]},{\"internalType\":\"uint256[]\",\"name\":\"outputCommitments\",\"type\":\"uint256[]\",\"components\":[]},{\"internalType\":\"struct IPlonkVerifier.PlonkProof\",\"name\":\"proof\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire0\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire1\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire2\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire3\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire4\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"prodPerm\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split0\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split1\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split2\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split3\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split4\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"zeta\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"zetaOmega\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"uint256\",\"name\":\"wireEval0\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval1\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval2\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval3\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval4\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval0\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval1\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval2\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval3\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"prodPermZetaOmegaEval\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct CAPE.FreezeAuxInfo\",\"name\":\"auxInfo\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"merkleRoot\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint128\",\"name\":\"fee\",\"type\":\"uint128\",\"components\":[]},{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"txnMemoVerKey\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]}]}]},{\"internalType\":\"struct CAPE.BurnNote[]\",\"name\":\"burnNotes\",\"type\":\"tuple[]\",\"components\":[{\"internalType\":\"struct CAPE.TransferNote\",\"name\":\"transferNote\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256[]\",\"name\":\"inputNullifiers\",\"type\":\"uint256[]\",\"components\":[]},{\"internalType\":\"uint256[]\",\"name\":\"outputCommitments\",\"type\":\"uint256[]\",\"components\":[]},{\"internalType\":\"struct IPlonkVerifier.PlonkProof\",\"name\":\"proof\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire0\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire1\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire2\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire3\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire4\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"prodPerm\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split0\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split1\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split2\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split3\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split4\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"zeta\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"zetaOmega\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"uint256\",\"name\":\"wireEval0\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval1\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval2\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval3\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval4\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval0\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval1\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval2\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval3\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"prodPermZetaOmegaEval\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct CAPE.AuditMemo\",\"name\":\"auditMemo\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"ephemeralKey\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"uint256[]\",\"name\":\"data\",\"type\":\"uint256[]\",\"components\":[]}]},{\"internalType\":\"struct CAPE.TransferAuxInfo\",\"name\":\"auxInfo\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"merkleRoot\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint128\",\"name\":\"fee\",\"type\":\"uint128\",\"components\":[]},{\"internalType\":\"uint64\",\"name\":\"validUntil\",\"type\":\"uint64\",\"components\":[]},{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"txnMemoVerKey\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"bytes\",\"name\":\"extraProofBoundData\",\"type\":\"bytes\",\"components\":[]}]}]},{\"internalType\":\"struct CAPE.RecordOpening\",\"name\":\"recordOpening\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint128\",\"name\":\"amount\",\"type\":\"uint128\",\"components\":[]},{\"internalType\":\"struct AssetRegistry.AssetDefinition\",\"name\":\"assetDef\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"code\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"struct AssetRegistry.AssetPolicy\",\"name\":\"policy\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"auditorPk\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"credPk\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"freezerPk\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"uint256\",\"name\":\"revealMap\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint128\",\"name\":\"revealThreshold\",\"type\":\"uint128\",\"components\":[]}]}]},{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"userAddr\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"bytes32\",\"name\":\"encKey\",\"type\":\"bytes32\",\"components\":[]},{\"internalType\":\"bool\",\"name\":\"freezeFlag\",\"type\":\"bool\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"blind\",\"type\":\"uint256\",\"components\":[]}]}]}],\"indexed\":false}],\"type\":\"event\",\"name\":\"BlockCommitted\",\"outputs\":[],\"anonymous\":false},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"roBytes\",\"type\":\"bytes\",\"components\":[],\"indexed\":false},{\"internalType\":\"address\",\"name\":\"erc20TokenAddress\",\"type\":\"address\",\"components\":[],\"indexed\":false},{\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\",\"components\":[],\"indexed\":false}],\"type\":\"event\",\"name\":\"Erc20TokensDeposited\",\"outputs\":[],\"anonymous\":false},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"roBytes\",\"type\":\"bytes\",\"components\":[],\"indexed\":false}],\"type\":\"event\",\"name\":\"FaucetInitialized\",\"outputs\":[],\"anonymous\":false},{\"inputs\":[],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"CAPE_BURN_MAGIC_BYTES\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\",\"components\":[]}]},{\"inputs\":[],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"CAPE_BURN_MAGIC_BYTES_SIZE\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\",\"components\":[]}]},{\"inputs\":[],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"CAP_NATIVE_ASSET_CODE\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\",\"components\":[]}]},{\"inputs\":[],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"DOM_SEP_DOMESTIC_ASSET\",\"outputs\":[{\"internalType\":\"bytes14\",\"name\":\"\",\"type\":\"bytes14\",\"components\":[]}]},{\"inputs\":[],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"DOM_SEP_FOREIGN_ASSET\",\"outputs\":[{\"internalType\":\"bytes13\",\"name\":\"\",\"type\":\"bytes13\",\"components\":[]}]},{\"inputs\":[],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"MAX_NUM_PENDING_DEPOSIT\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\",\"components\":[]}]},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\",\"components\":[]}],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"assets\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\",\"components\":[]}]},{\"inputs\":[],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"blockHeight\",\"outputs\":[{\"internalType\":\"uint64\",\"name\":\"\",\"type\":\"uint64\",\"components\":[]}]},{\"inputs\":[],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"deployer\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\",\"components\":[]}]},{\"inputs\":[{\"internalType\":\"struct CAPE.RecordOpening\",\"name\":\"ro\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint128\",\"name\":\"amount\",\"type\":\"uint128\",\"components\":[]},{\"internalType\":\"struct AssetRegistry.AssetDefinition\",\"name\":\"assetDef\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"code\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"struct AssetRegistry.AssetPolicy\",\"name\":\"policy\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"auditorPk\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"credPk\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"freezerPk\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"uint256\",\"name\":\"revealMap\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint128\",\"name\":\"revealThreshold\",\"type\":\"uint128\",\"components\":[]}]}]},{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"userAddr\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"bytes32\",\"name\":\"encKey\",\"type\":\"bytes32\",\"components\":[]},{\"internalType\":\"bool\",\"name\":\"freezeFlag\",\"type\":\"bool\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"blind\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"address\",\"name\":\"erc20Address\",\"type\":\"address\",\"components\":[]}],\"stateMutability\":\"nonpayable\",\"type\":\"function\",\"name\":\"depositErc20\",\"outputs\":[]},{\"inputs\":[],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"faucetInitialized\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\",\"components\":[]}]},{\"inputs\":[{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"faucetManagerAddress\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"bytes32\",\"name\":\"faucetManagerEncKey\",\"type\":\"bytes32\",\"components\":[]}],\"stateMutability\":\"nonpayable\",\"type\":\"function\",\"name\":\"faucetSetupForTestnet\",\"outputs\":[]},{\"inputs\":[],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"getRootValue\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\",\"components\":[]}]},{\"inputs\":[{\"internalType\":\"struct AssetRegistry.AssetDefinition\",\"name\":\"assetDefinition\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"code\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"struct AssetRegistry.AssetPolicy\",\"name\":\"policy\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"auditorPk\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"credPk\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"freezerPk\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"uint256\",\"name\":\"revealMap\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint128\",\"name\":\"revealThreshold\",\"type\":\"uint128\",\"components\":[]}]}]}],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"isCapeAssetRegistered\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\",\"components\":[]}]},{\"inputs\":[{\"internalType\":\"struct AssetRegistry.AssetDefinition\",\"name\":\"assetDefinition\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"code\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"struct AssetRegistry.AssetPolicy\",\"name\":\"policy\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"auditorPk\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"credPk\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"freezerPk\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"uint256\",\"name\":\"revealMap\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint128\",\"name\":\"revealThreshold\",\"type\":\"uint128\",\"components\":[]}]}]}],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"lookup\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\",\"components\":[]}]},{\"inputs\":[],\"stateMutability\":\"pure\",\"type\":\"function\",\"name\":\"nativeDomesticAsset\",\"outputs\":[{\"internalType\":\"struct AssetRegistry.AssetDefinition\",\"name\":\"assetDefinition\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"code\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"struct AssetRegistry.AssetPolicy\",\"name\":\"policy\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"auditorPk\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"credPk\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"freezerPk\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"uint256\",\"name\":\"revealMap\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint128\",\"name\":\"revealThreshold\",\"type\":\"uint128\",\"components\":[]}]}]}]},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\",\"components\":[]}],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"nullifiers\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\",\"components\":[]}]},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\",\"components\":[]}],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"pendingDeposits\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\",\"components\":[]}]},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"erc20Address\",\"type\":\"address\",\"components\":[]},{\"internalType\":\"struct AssetRegistry.AssetDefinition\",\"name\":\"newAsset\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"code\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"struct AssetRegistry.AssetPolicy\",\"name\":\"policy\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"auditorPk\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"credPk\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"freezerPk\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"uint256\",\"name\":\"revealMap\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint128\",\"name\":\"revealThreshold\",\"type\":\"uint128\",\"components\":[]}]}]}],\"stateMutability\":\"nonpayable\",\"type\":\"function\",\"name\":\"sponsorCapeAsset\",\"outputs\":[]},{\"inputs\":[{\"internalType\":\"struct CAPE.CapeBlock\",\"name\":\"newBlock\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"minerAddr\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"enum CAPE.NoteType[]\",\"name\":\"noteTypes\",\"type\":\"uint8[]\",\"components\":[]},{\"internalType\":\"struct CAPE.TransferNote[]\",\"name\":\"transferNotes\",\"type\":\"tuple[]\",\"components\":[{\"internalType\":\"uint256[]\",\"name\":\"inputNullifiers\",\"type\":\"uint256[]\",\"components\":[]},{\"internalType\":\"uint256[]\",\"name\":\"outputCommitments\",\"type\":\"uint256[]\",\"components\":[]},{\"internalType\":\"struct IPlonkVerifier.PlonkProof\",\"name\":\"proof\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire0\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire1\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire2\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire3\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire4\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"prodPerm\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split0\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split1\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split2\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split3\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split4\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"zeta\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"zetaOmega\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"uint256\",\"name\":\"wireEval0\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval1\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval2\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval3\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval4\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval0\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval1\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval2\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval3\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"prodPermZetaOmegaEval\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct CAPE.AuditMemo\",\"name\":\"auditMemo\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"ephemeralKey\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"uint256[]\",\"name\":\"data\",\"type\":\"uint256[]\",\"components\":[]}]},{\"internalType\":\"struct CAPE.TransferAuxInfo\",\"name\":\"auxInfo\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"merkleRoot\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint128\",\"name\":\"fee\",\"type\":\"uint128\",\"components\":[]},{\"internalType\":\"uint64\",\"name\":\"validUntil\",\"type\":\"uint64\",\"components\":[]},{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"txnMemoVerKey\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"bytes\",\"name\":\"extraProofBoundData\",\"type\":\"bytes\",\"components\":[]}]}]},{\"internalType\":\"struct CAPE.MintNote[]\",\"name\":\"mintNotes\",\"type\":\"tuple[]\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"inputNullifier\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"chgComm\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"mintComm\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint128\",\"name\":\"mintAmount\",\"type\":\"uint128\",\"components\":[]},{\"internalType\":\"struct AssetRegistry.AssetDefinition\",\"name\":\"mintAssetDef\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"code\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"struct AssetRegistry.AssetPolicy\",\"name\":\"policy\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"auditorPk\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"credPk\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"freezerPk\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"uint256\",\"name\":\"revealMap\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint128\",\"name\":\"revealThreshold\",\"type\":\"uint128\",\"components\":[]}]}]},{\"internalType\":\"uint256\",\"name\":\"mintInternalAssetCode\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"struct IPlonkVerifier.PlonkProof\",\"name\":\"proof\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire0\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire1\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire2\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire3\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire4\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"prodPerm\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split0\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split1\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split2\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split3\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split4\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"zeta\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"zetaOmega\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"uint256\",\"name\":\"wireEval0\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval1\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval2\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval3\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval4\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval0\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval1\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval2\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval3\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"prodPermZetaOmegaEval\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct CAPE.AuditMemo\",\"name\":\"auditMemo\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"ephemeralKey\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"uint256[]\",\"name\":\"data\",\"type\":\"uint256[]\",\"components\":[]}]},{\"internalType\":\"struct CAPE.MintAuxInfo\",\"name\":\"auxInfo\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"merkleRoot\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint128\",\"name\":\"fee\",\"type\":\"uint128\",\"components\":[]},{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"txnMemoVerKey\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]}]}]},{\"internalType\":\"struct CAPE.FreezeNote[]\",\"name\":\"freezeNotes\",\"type\":\"tuple[]\",\"components\":[{\"internalType\":\"uint256[]\",\"name\":\"inputNullifiers\",\"type\":\"uint256[]\",\"components\":[]},{\"internalType\":\"uint256[]\",\"name\":\"outputCommitments\",\"type\":\"uint256[]\",\"components\":[]},{\"internalType\":\"struct IPlonkVerifier.PlonkProof\",\"name\":\"proof\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire0\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire1\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire2\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire3\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire4\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"prodPerm\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split0\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split1\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split2\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split3\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split4\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"zeta\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"zetaOmega\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"uint256\",\"name\":\"wireEval0\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval1\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval2\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval3\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval4\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval0\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval1\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval2\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval3\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"prodPermZetaOmegaEval\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct CAPE.FreezeAuxInfo\",\"name\":\"auxInfo\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"merkleRoot\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint128\",\"name\":\"fee\",\"type\":\"uint128\",\"components\":[]},{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"txnMemoVerKey\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]}]}]},{\"internalType\":\"struct CAPE.BurnNote[]\",\"name\":\"burnNotes\",\"type\":\"tuple[]\",\"components\":[{\"internalType\":\"struct CAPE.TransferNote\",\"name\":\"transferNote\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256[]\",\"name\":\"inputNullifiers\",\"type\":\"uint256[]\",\"components\":[]},{\"internalType\":\"uint256[]\",\"name\":\"outputCommitments\",\"type\":\"uint256[]\",\"components\":[]},{\"internalType\":\"struct IPlonkVerifier.PlonkProof\",\"name\":\"proof\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire0\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire1\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire2\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire3\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire4\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"prodPerm\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split0\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split1\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split2\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split3\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split4\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"zeta\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"zetaOmega\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"uint256\",\"name\":\"wireEval0\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval1\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval2\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval3\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval4\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval0\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval1\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval2\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval3\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"prodPermZetaOmegaEval\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct CAPE.AuditMemo\",\"name\":\"auditMemo\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"ephemeralKey\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"uint256[]\",\"name\":\"data\",\"type\":\"uint256[]\",\"components\":[]}]},{\"internalType\":\"struct CAPE.TransferAuxInfo\",\"name\":\"auxInfo\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"merkleRoot\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint128\",\"name\":\"fee\",\"type\":\"uint128\",\"components\":[]},{\"internalType\":\"uint64\",\"name\":\"validUntil\",\"type\":\"uint64\",\"components\":[]},{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"txnMemoVerKey\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"bytes\",\"name\":\"extraProofBoundData\",\"type\":\"bytes\",\"components\":[]}]}]},{\"internalType\":\"struct CAPE.RecordOpening\",\"name\":\"recordOpening\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint128\",\"name\":\"amount\",\"type\":\"uint128\",\"components\":[]},{\"internalType\":\"struct AssetRegistry.AssetDefinition\",\"name\":\"assetDef\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"code\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"struct AssetRegistry.AssetPolicy\",\"name\":\"policy\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"auditorPk\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"credPk\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"freezerPk\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"uint256\",\"name\":\"revealMap\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint128\",\"name\":\"revealThreshold\",\"type\":\"uint128\",\"components\":[]}]}]},{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"userAddr\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"bytes32\",\"name\":\"encKey\",\"type\":\"bytes32\",\"components\":[]},{\"internalType\":\"bool\",\"name\":\"freezeFlag\",\"type\":\"bool\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"blind\",\"type\":\"uint256\",\"components\":[]}]}]}]}],\"stateMutability\":\"nonpayable\",\"type\":\"function\",\"name\":\"submitCapeBlock\",\"outputs\":[]},{\"inputs\":[{\"internalType\":\"struct CAPE.CapeBlock\",\"name\":\"newBlock\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"minerAddr\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"enum CAPE.NoteType[]\",\"name\":\"noteTypes\",\"type\":\"uint8[]\",\"components\":[]},{\"internalType\":\"struct CAPE.TransferNote[]\",\"name\":\"transferNotes\",\"type\":\"tuple[]\",\"components\":[{\"internalType\":\"uint256[]\",\"name\":\"inputNullifiers\",\"type\":\"uint256[]\",\"components\":[]},{\"internalType\":\"uint256[]\",\"name\":\"outputCommitments\",\"type\":\"uint256[]\",\"components\":[]},{\"internalType\":\"struct IPlonkVerifier.PlonkProof\",\"name\":\"proof\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire0\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire1\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire2\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire3\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire4\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"prodPerm\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split0\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split1\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split2\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split3\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split4\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"zeta\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"zetaOmega\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"uint256\",\"name\":\"wireEval0\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval1\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval2\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval3\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval4\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval0\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval1\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval2\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval3\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"prodPermZetaOmegaEval\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct CAPE.AuditMemo\",\"name\":\"auditMemo\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"ephemeralKey\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"uint256[]\",\"name\":\"data\",\"type\":\"uint256[]\",\"components\":[]}]},{\"internalType\":\"struct CAPE.TransferAuxInfo\",\"name\":\"auxInfo\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"merkleRoot\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint128\",\"name\":\"fee\",\"type\":\"uint128\",\"components\":[]},{\"internalType\":\"uint64\",\"name\":\"validUntil\",\"type\":\"uint64\",\"components\":[]},{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"txnMemoVerKey\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"bytes\",\"name\":\"extraProofBoundData\",\"type\":\"bytes\",\"components\":[]}]}]},{\"internalType\":\"struct CAPE.MintNote[]\",\"name\":\"mintNotes\",\"type\":\"tuple[]\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"inputNullifier\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"chgComm\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"mintComm\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint128\",\"name\":\"mintAmount\",\"type\":\"uint128\",\"components\":[]},{\"internalType\":\"struct AssetRegistry.AssetDefinition\",\"name\":\"mintAssetDef\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"code\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"struct AssetRegistry.AssetPolicy\",\"name\":\"policy\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"auditorPk\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"credPk\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"freezerPk\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"uint256\",\"name\":\"revealMap\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint128\",\"name\":\"revealThreshold\",\"type\":\"uint128\",\"components\":[]}]}]},{\"internalType\":\"uint256\",\"name\":\"mintInternalAssetCode\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"struct IPlonkVerifier.PlonkProof\",\"name\":\"proof\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire0\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire1\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire2\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire3\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire4\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"prodPerm\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split0\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split1\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split2\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split3\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split4\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"zeta\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"zetaOmega\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"uint256\",\"name\":\"wireEval0\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval1\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval2\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval3\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval4\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval0\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval1\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval2\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval3\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"prodPermZetaOmegaEval\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct CAPE.AuditMemo\",\"name\":\"auditMemo\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"ephemeralKey\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"uint256[]\",\"name\":\"data\",\"type\":\"uint256[]\",\"components\":[]}]},{\"internalType\":\"struct CAPE.MintAuxInfo\",\"name\":\"auxInfo\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"merkleRoot\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint128\",\"name\":\"fee\",\"type\":\"uint128\",\"components\":[]},{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"txnMemoVerKey\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]}]}]},{\"internalType\":\"struct CAPE.FreezeNote[]\",\"name\":\"freezeNotes\",\"type\":\"tuple[]\",\"components\":[{\"internalType\":\"uint256[]\",\"name\":\"inputNullifiers\",\"type\":\"uint256[]\",\"components\":[]},{\"internalType\":\"uint256[]\",\"name\":\"outputCommitments\",\"type\":\"uint256[]\",\"components\":[]},{\"internalType\":\"struct IPlonkVerifier.PlonkProof\",\"name\":\"proof\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire0\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire1\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire2\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire3\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire4\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"prodPerm\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split0\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split1\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split2\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split3\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split4\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"zeta\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"zetaOmega\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"uint256\",\"name\":\"wireEval0\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval1\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval2\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval3\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval4\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval0\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval1\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval2\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval3\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"prodPermZetaOmegaEval\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct CAPE.FreezeAuxInfo\",\"name\":\"auxInfo\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"merkleRoot\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint128\",\"name\":\"fee\",\"type\":\"uint128\",\"components\":[]},{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"txnMemoVerKey\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]}]}]},{\"internalType\":\"struct CAPE.BurnNote[]\",\"name\":\"burnNotes\",\"type\":\"tuple[]\",\"components\":[{\"internalType\":\"struct CAPE.TransferNote\",\"name\":\"transferNote\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256[]\",\"name\":\"inputNullifiers\",\"type\":\"uint256[]\",\"components\":[]},{\"internalType\":\"uint256[]\",\"name\":\"outputCommitments\",\"type\":\"uint256[]\",\"components\":[]},{\"internalType\":\"struct IPlonkVerifier.PlonkProof\",\"name\":\"proof\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire0\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire1\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire2\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire3\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire4\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"prodPerm\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split0\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split1\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split2\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split3\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split4\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"zeta\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"zetaOmega\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"uint256\",\"name\":\"wireEval0\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval1\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval2\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval3\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval4\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval0\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval1\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval2\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval3\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"prodPermZetaOmegaEval\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct CAPE.AuditMemo\",\"name\":\"auditMemo\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"ephemeralKey\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"uint256[]\",\"name\":\"data\",\"type\":\"uint256[]\",\"components\":[]}]},{\"internalType\":\"struct CAPE.TransferAuxInfo\",\"name\":\"auxInfo\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"merkleRoot\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint128\",\"name\":\"fee\",\"type\":\"uint128\",\"components\":[]},{\"internalType\":\"uint64\",\"name\":\"validUntil\",\"type\":\"uint64\",\"components\":[]},{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"txnMemoVerKey\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"bytes\",\"name\":\"extraProofBoundData\",\"type\":\"bytes\",\"components\":[]}]}]},{\"internalType\":\"struct CAPE.RecordOpening\",\"name\":\"recordOpening\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint128\",\"name\":\"amount\",\"type\":\"uint128\",\"components\":[]},{\"internalType\":\"struct AssetRegistry.AssetDefinition\",\"name\":\"assetDef\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"code\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"struct AssetRegistry.AssetPolicy\",\"name\":\"policy\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"auditorPk\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"credPk\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"freezerPk\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"uint256\",\"name\":\"revealMap\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint128\",\"name\":\"revealThreshold\",\"type\":\"uint128\",\"components\":[]}]}]},{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"userAddr\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"bytes32\",\"name\":\"encKey\",\"type\":\"bytes32\",\"components\":[]},{\"internalType\":\"bool\",\"name\":\"freezeFlag\",\"type\":\"bool\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"blind\",\"type\":\"uint256\",\"components\":[]}]}]}]},{\"internalType\":\"bytes\",\"name\":\"extraData\",\"type\":\"bytes\",\"components\":[]}],\"stateMutability\":\"nonpayable\",\"type\":\"function\",\"name\":\"submitCapeBlockWithMemos\",\"outputs\":[]}]") . expect ("invalid abi") | |
| }); | |
| pub struct CAPE<M>(ethers::contract::Contract<M>); | |
| impl<M> Clone for CAPE<M> { | |
| fn clone(&self) -> Self { | |
| CAPE(self.0.clone()) | |
| } | |
| } | |
| impl<M> std::ops::Deref for CAPE<M> { | |
| type Target = ethers::contract::Contract<M>; | |
| fn deref(&self) -> &Self::Target { | |
| &self.0 | |
| } | |
| } | |
| impl<M: ethers::providers::Middleware> std::fmt::Debug for CAPE<M> { | |
| fn fmt(&self, f: &mut std::fmt::Formatter) -> std::fmt::Result { | |
| f.debug_tuple(stringify!(CAPE)) | |
| .field(&self.address()) | |
| .finish() | |
| } | |
| } | |
| impl<M: ethers::providers::Middleware> CAPE<M> { | |
| #[doc = r" Creates a new contract instance with the specified `ethers`"] | |
| #[doc = r" client at the given `Address`. The contract derefs to a `ethers::Contract`"] | |
| #[doc = r" object"] | |
| pub fn new<T: Into<ethers::core::types::Address>>( | |
| address: T, | |
| client: ::std::sync::Arc<M>, | |
| ) -> Self { | |
| ethers::contract::Contract::new(address.into(), CAPE_ABI.clone(), client).into() | |
| } | |
| #[doc = "Calls the contract's `CAPE_BURN_MAGIC_BYTES` (0x11829f93) function"] | |
| pub fn cape_burn_magic_bytes( | |
| &self, | |
| ) -> ethers::contract::builders::ContractCall<M, ethers::core::types::Bytes> { | |
| self.0 | |
| .method_hash([17, 130, 159, 147], ()) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Calls the contract's `CAPE_BURN_MAGIC_BYTES_SIZE` (0xb4e28f1a) function"] | |
| pub fn cape_burn_magic_bytes_size( | |
| &self, | |
| ) -> ethers::contract::builders::ContractCall<M, ethers::core::types::U256> { | |
| self.0 | |
| .method_hash([180, 226, 143, 26], ()) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Calls the contract's `CAP_NATIVE_ASSET_CODE` (0x79cf6f5c) function"] | |
| pub fn cap_native_asset_code( | |
| &self, | |
| ) -> ethers::contract::builders::ContractCall<M, ethers::core::types::U256> { | |
| self.0 | |
| .method_hash([121, 207, 111, 92], ()) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Calls the contract's `DOM_SEP_DOMESTIC_ASSET` (0x1db6b253) function"] | |
| pub fn dom_sep_domestic_asset( | |
| &self, | |
| ) -> ethers::contract::builders::ContractCall<M, [u8; 14]> { | |
| self.0 | |
| .method_hash([29, 182, 178, 83], ()) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Calls the contract's `DOM_SEP_FOREIGN_ASSET` (0xa33ba96c) function"] | |
| pub fn dom_sep_foreign_asset( | |
| &self, | |
| ) -> ethers::contract::builders::ContractCall<M, [u8; 13]> { | |
| self.0 | |
| .method_hash([163, 59, 169, 108], ()) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Calls the contract's `MAX_NUM_PENDING_DEPOSIT` (0x9dd584b9) function"] | |
| pub fn max_num_pending_deposit( | |
| &self, | |
| ) -> ethers::contract::builders::ContractCall<M, ethers::core::types::U256> { | |
| self.0 | |
| .method_hash([157, 213, 132, 185], ()) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Calls the contract's `assets` (0x9fda5b66) function"] | |
| pub fn assets( | |
| &self, | |
| p0: [u8; 32], | |
| ) -> ethers::contract::builders::ContractCall<M, ethers::core::types::Address> { | |
| self.0 | |
| .method_hash([159, 218, 91, 102], p0) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Calls the contract's `blockHeight` (0xf44ff712) function"] | |
| pub fn block_height(&self) -> ethers::contract::builders::ContractCall<M, u64> { | |
| self.0 | |
| .method_hash([244, 79, 247, 18], ()) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Calls the contract's `deployer` (0xd5f39488) function"] | |
| pub fn deployer( | |
| &self, | |
| ) -> ethers::contract::builders::ContractCall<M, ethers::core::types::Address> { | |
| self.0 | |
| .method_hash([213, 243, 148, 136], ()) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Calls the contract's `depositErc20` (0x6868dd1f) function"] | |
| pub fn deposit_erc_20( | |
| &self, | |
| ro: RecordOpening, | |
| erc_20_address: ethers::core::types::Address, | |
| ) -> ethers::contract::builders::ContractCall<M, ()> { | |
| self.0 | |
| .method_hash([104, 104, 221, 31], (ro, erc_20_address)) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Calls the contract's `faucetInitialized` (0xfe3cc3f8) function"] | |
| pub fn faucet_initialized(&self) -> ethers::contract::builders::ContractCall<M, bool> { | |
| self.0 | |
| .method_hash([254, 60, 195, 248], ()) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Calls the contract's `faucetSetupForTestnet` (0xb12f7e7b) function"] | |
| pub fn faucet_setup_for_testnet( | |
| &self, | |
| faucet_manager_address: EdOnBN254Point, | |
| faucet_manager_enc_key: [u8; 32], | |
| ) -> ethers::contract::builders::ContractCall<M, ()> { | |
| self.0 | |
| .method_hash( | |
| [177, 47, 126, 123], | |
| (faucet_manager_address, faucet_manager_enc_key), | |
| ) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Calls the contract's `getRootValue` (0x6444c8d1) function"] | |
| pub fn get_root_value( | |
| &self, | |
| ) -> ethers::contract::builders::ContractCall<M, ethers::core::types::U256> { | |
| self.0 | |
| .method_hash([100, 68, 200, 209], ()) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Calls the contract's `isCapeAssetRegistered` (0xf148fb4a) function"] | |
| pub fn is_cape_asset_registered( | |
| &self, | |
| asset_definition: AssetDefinition, | |
| ) -> ethers::contract::builders::ContractCall<M, bool> { | |
| self.0 | |
| .method_hash([241, 72, 251, 74], (asset_definition,)) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Calls the contract's `lookup` (0xd56c1ea1) function"] | |
| pub fn lookup( | |
| &self, | |
| asset_definition: AssetDefinition, | |
| ) -> ethers::contract::builders::ContractCall<M, ethers::core::types::Address> { | |
| self.0 | |
| .method_hash([213, 108, 30, 161], (asset_definition,)) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Calls the contract's `nativeDomesticAsset` (0x6de84060) function"] | |
| pub fn native_domestic_asset( | |
| &self, | |
| ) -> ethers::contract::builders::ContractCall<M, AssetDefinition> { | |
| self.0 | |
| .method_hash([109, 232, 64, 96], ()) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Calls the contract's `nullifiers` (0xd21e82ab) function"] | |
| pub fn nullifiers( | |
| &self, | |
| p0: ethers::core::types::U256, | |
| ) -> ethers::contract::builders::ContractCall<M, bool> { | |
| self.0 | |
| .method_hash([210, 30, 130, 171], p0) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Calls the contract's `pendingDeposits` (0xa7932794) function"] | |
| pub fn pending_deposits( | |
| &self, | |
| p0: ethers::core::types::U256, | |
| ) -> ethers::contract::builders::ContractCall<M, ethers::core::types::U256> { | |
| self.0 | |
| .method_hash([167, 147, 39, 148], p0) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Calls the contract's `sponsorCapeAsset` (0x0a212145) function"] | |
| pub fn sponsor_cape_asset( | |
| &self, | |
| erc_20_address: ethers::core::types::Address, | |
| new_asset: AssetDefinition, | |
| ) -> ethers::contract::builders::ContractCall<M, ()> { | |
| self.0 | |
| .method_hash([10, 33, 33, 69], (erc_20_address, new_asset)) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Calls the contract's `submitCapeBlock` (0xcb390b98) function"] | |
| pub fn submit_cape_block( | |
| &self, | |
| new_block: CapeBlock, | |
| ) -> ethers::contract::builders::ContractCall<M, ()> { | |
| self.0 | |
| .method_hash([203, 57, 11, 152], (new_block,)) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Calls the contract's `submitCapeBlockWithMemos` (0x10b4e3a1) function"] | |
| pub fn submit_cape_block_with_memos( | |
| &self, | |
| new_block: CapeBlock, | |
| extra_data: ethers::core::types::Bytes, | |
| ) -> ethers::contract::builders::ContractCall<M, ()> { | |
| self.0 | |
| .method_hash([16, 180, 227, 161], (new_block, extra_data)) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Gets the contract's `AssetSponsored` event"] | |
| pub fn asset_sponsored_filter( | |
| &self, | |
| ) -> ethers::contract::builders::Event<M, AssetSponsoredFilter> { | |
| self.0.event() | |
| } | |
| #[doc = "Gets the contract's `BlockCommitted` event"] | |
| pub fn block_committed_filter( | |
| &self, | |
| ) -> ethers::contract::builders::Event<M, BlockCommittedFilter> { | |
| self.0.event() | |
| } | |
| #[doc = "Gets the contract's `Erc20TokensDeposited` event"] | |
| pub fn erc_20_tokens_deposited_filter( | |
| &self, | |
| ) -> ethers::contract::builders::Event<M, Erc20TokensDepositedFilter> { | |
| self.0.event() | |
| } | |
| #[doc = "Gets the contract's `FaucetInitialized` event"] | |
| pub fn faucet_initialized_filter( | |
| &self, | |
| ) -> ethers::contract::builders::Event<M, FaucetInitializedFilter> { | |
| self.0.event() | |
| } | |
| #[doc = r" Returns an [`Event`](#ethers_contract::builders::Event) builder for all events of this contract"] | |
| pub fn events(&self) -> ethers::contract::builders::Event<M, CAPEEvents> { | |
| self.0.event_with_filter(Default::default()) | |
| } | |
| } | |
| impl<M: ethers::providers::Middleware> From<ethers::contract::Contract<M>> for CAPE<M> { | |
| fn from(contract: ethers::contract::Contract<M>) -> Self { | |
| Self(contract) | |
| } | |
| } | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthEvent, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethevent(name = "AssetSponsored", abi = "AssetSponsored(address,uint256)")] | |
| pub struct AssetSponsoredFilter { | |
| pub erc_20_address: ethers::core::types::Address, | |
| pub asset_definition_code: ethers::core::types::U256, | |
| } | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthEvent, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethevent( | |
| name = "BlockCommitted", | |
| abi = "BlockCommitted(uint64,uint256[],((uint256,uint256),uint8[],(uint256[],uint256[],((uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256),((uint256,uint256),uint256[]),(uint256,uint128,uint64,(uint256,uint256),bytes))[],(uint256,uint256,uint256,uint128,(uint256,((uint256,uint256),(uint256,uint256),(uint256,uint256),uint256,uint128)),uint256,((uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256),((uint256,uint256),uint256[]),(uint256,uint128,(uint256,uint256)))[],(uint256[],uint256[],((uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256),(uint256,uint128,(uint256,uint256)))[],((uint256[],uint256[],((uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256),((uint256,uint256),uint256[]),(uint256,uint128,uint64,(uint256,uint256),bytes)),(uint128,(uint256,((uint256,uint256),(uint256,uint256),(uint256,uint256),uint256,uint128)),(uint256,uint256),bytes32,bool,uint256))[]))" | |
| )] | |
| pub struct BlockCommittedFilter { | |
| #[ethevent(indexed)] | |
| pub height: u64, | |
| pub deposit_commitments: Vec<ethers::core::types::U256>, | |
| pub new_block: ( | |
| (ethers::core::types::U256, ethers::core::types::U256), | |
| Vec<u8>, | |
| Vec<( | |
| Vec<ethers::core::types::U256>, | |
| Vec<ethers::core::types::U256>, | |
| ( | |
| (ethers::core::types::U256, ethers::core::types::U256), | |
| (ethers::core::types::U256, ethers::core::types::U256), | |
| (ethers::core::types::U256, ethers::core::types::U256), | |
| (ethers::core::types::U256, ethers::core::types::U256), | |
| (ethers::core::types::U256, ethers::core::types::U256), | |
| (ethers::core::types::U256, ethers::core::types::U256), | |
| (ethers::core::types::U256, ethers::core::types::U256), | |
| (ethers::core::types::U256, ethers::core::types::U256), | |
| (ethers::core::types::U256, ethers::core::types::U256), | |
| (ethers::core::types::U256, ethers::core::types::U256), | |
| (ethers::core::types::U256, ethers::core::types::U256), | |
| (ethers::core::types::U256, ethers::core::types::U256), | |
| (ethers::core::types::U256, ethers::core::types::U256), | |
| ethers::core::types::U256, | |
| ethers::core::types::U256, | |
| ethers::core::types::U256, | |
| ethers::core::types::U256, | |
| ethers::core::types::U256, | |
| ethers::core::types::U256, | |
| ethers::core::types::U256, | |
| ethers::core::types::U256, | |
| ethers::core::types::U256, | |
| ethers::core::types::U256, | |
| ), | |
| ( | |
| (ethers::core::types::U256, ethers::core::types::U256), | |
| Vec<ethers::core::types::U256>, | |
| ), | |
| ( | |
| ethers::core::types::U256, | |
| u128, | |
| u64, | |
| (ethers::core::types::U256, ethers::core::types::U256), | |
| ethers::core::types::Bytes, | |
| ), | |
| )>, | |
| Vec<( | |
| ethers::core::types::U256, | |
| ethers::core::types::U256, | |
| ethers::core::types::U256, | |
| u128, | |
| ( | |
| ethers::core::types::U256, | |
| ( | |
| (ethers::core::types::U256, ethers::core::types::U256), | |
| (ethers::core::types::U256, ethers::core::types::U256), | |
| (ethers::core::types::U256, ethers::core::types::U256), | |
| ethers::core::types::U256, | |
| u128, | |
| ), | |
| ), | |
| ethers::core::types::U256, | |
| ( | |
| (ethers::core::types::U256, ethers::core::types::U256), | |
| (ethers::core::types::U256, ethers::core::types::U256), | |
| (ethers::core::types::U256, ethers::core::types::U256), | |
| (ethers::core::types::U256, ethers::core::types::U256), | |
| (ethers::core::types::U256, ethers::core::types::U256), | |
| (ethers::core::types::U256, ethers::core::types::U256), | |
| (ethers::core::types::U256, ethers::core::types::U256), | |
| (ethers::core::types::U256, ethers::core::types::U256), | |
| (ethers::core::types::U256, ethers::core::types::U256), | |
| (ethers::core::types::U256, ethers::core::types::U256), | |
| (ethers::core::types::U256, ethers::core::types::U256), | |
| (ethers::core::types::U256, ethers::core::types::U256), | |
| (ethers::core::types::U256, ethers::core::types::U256), | |
| ethers::core::types::U256, | |
| ethers::core::types::U256, | |
| ethers::core::types::U256, | |
| ethers::core::types::U256, | |
| ethers::core::types::U256, | |
| ethers::core::types::U256, | |
| ethers::core::types::U256, | |
| ethers::core::types::U256, | |
| ethers::core::types::U256, | |
| ethers::core::types::U256, | |
| ), | |
| ( | |
| (ethers::core::types::U256, ethers::core::types::U256), | |
| Vec<ethers::core::types::U256>, | |
| ), | |
| ( | |
| ethers::core::types::U256, | |
| u128, | |
| (ethers::core::types::U256, ethers::core::types::U256), | |
| ), | |
| )>, | |
| Vec<( | |
| Vec<ethers::core::types::U256>, | |
| Vec<ethers::core::types::U256>, | |
| ( | |
| (ethers::core::types::U256, ethers::core::types::U256), | |
| (ethers::core::types::U256, ethers::core::types::U256), | |
| (ethers::core::types::U256, ethers::core::types::U256), | |
| (ethers::core::types::U256, ethers::core::types::U256), | |
| (ethers::core::types::U256, ethers::core::types::U256), | |
| (ethers::core::types::U256, ethers::core::types::U256), | |
| (ethers::core::types::U256, ethers::core::types::U256), | |
| (ethers::core::types::U256, ethers::core::types::U256), | |
| (ethers::core::types::U256, ethers::core::types::U256), | |
| (ethers::core::types::U256, ethers::core::types::U256), | |
| (ethers::core::types::U256, ethers::core::types::U256), | |
| (ethers::core::types::U256, ethers::core::types::U256), | |
| (ethers::core::types::U256, ethers::core::types::U256), | |
| ethers::core::types::U256, | |
| ethers::core::types::U256, | |
| ethers::core::types::U256, | |
| ethers::core::types::U256, | |
| ethers::core::types::U256, | |
| ethers::core::types::U256, | |
| ethers::core::types::U256, | |
| ethers::core::types::U256, | |
| ethers::core::types::U256, | |
| ethers::core::types::U256, | |
| ), | |
| ( | |
| ethers::core::types::U256, | |
| u128, | |
| (ethers::core::types::U256, ethers::core::types::U256), | |
| ), | |
| )>, | |
| Vec<( | |
| ( | |
| Vec<ethers::core::types::U256>, | |
| Vec<ethers::core::types::U256>, | |
| ( | |
| (ethers::core::types::U256, ethers::core::types::U256), | |
| (ethers::core::types::U256, ethers::core::types::U256), | |
| (ethers::core::types::U256, ethers::core::types::U256), | |
| (ethers::core::types::U256, ethers::core::types::U256), | |
| (ethers::core::types::U256, ethers::core::types::U256), | |
| (ethers::core::types::U256, ethers::core::types::U256), | |
| (ethers::core::types::U256, ethers::core::types::U256), | |
| (ethers::core::types::U256, ethers::core::types::U256), | |
| (ethers::core::types::U256, ethers::core::types::U256), | |
| (ethers::core::types::U256, ethers::core::types::U256), | |
| (ethers::core::types::U256, ethers::core::types::U256), | |
| (ethers::core::types::U256, ethers::core::types::U256), | |
| (ethers::core::types::U256, ethers::core::types::U256), | |
| ethers::core::types::U256, | |
| ethers::core::types::U256, | |
| ethers::core::types::U256, | |
| ethers::core::types::U256, | |
| ethers::core::types::U256, | |
| ethers::core::types::U256, | |
| ethers::core::types::U256, | |
| ethers::core::types::U256, | |
| ethers::core::types::U256, | |
| ethers::core::types::U256, | |
| ), | |
| ( | |
| (ethers::core::types::U256, ethers::core::types::U256), | |
| Vec<ethers::core::types::U256>, | |
| ), | |
| ( | |
| ethers::core::types::U256, | |
| u128, | |
| u64, | |
| (ethers::core::types::U256, ethers::core::types::U256), | |
| ethers::core::types::Bytes, | |
| ), | |
| ), | |
| ( | |
| u128, | |
| ( | |
| ethers::core::types::U256, | |
| ( | |
| (ethers::core::types::U256, ethers::core::types::U256), | |
| (ethers::core::types::U256, ethers::core::types::U256), | |
| (ethers::core::types::U256, ethers::core::types::U256), | |
| ethers::core::types::U256, | |
| u128, | |
| ), | |
| ), | |
| (ethers::core::types::U256, ethers::core::types::U256), | |
| [u8; 32], | |
| bool, | |
| ethers::core::types::U256, | |
| ), | |
| )>, | |
| ), | |
| } | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthEvent, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethevent( | |
| name = "Erc20TokensDeposited", | |
| abi = "Erc20TokensDeposited(bytes,address,address)" | |
| )] | |
| pub struct Erc20TokensDepositedFilter { | |
| pub ro_bytes: ethers::core::types::Bytes, | |
| pub erc_20_token_address: ethers::core::types::Address, | |
| pub from: ethers::core::types::Address, | |
| } | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthEvent, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethevent(name = "FaucetInitialized", abi = "FaucetInitialized(bytes)")] | |
| pub struct FaucetInitializedFilter { | |
| pub ro_bytes: ethers::core::types::Bytes, | |
| } | |
| #[derive(Debug, Clone, PartialEq, Eq, ethers :: contract :: EthAbiType)] | |
| pub enum CAPEEvents { | |
| AssetSponsoredFilter(AssetSponsoredFilter), | |
| BlockCommittedFilter(BlockCommittedFilter), | |
| Erc20TokensDepositedFilter(Erc20TokensDepositedFilter), | |
| FaucetInitializedFilter(FaucetInitializedFilter), | |
| } | |
| impl ethers::contract::EthLogDecode for CAPEEvents { | |
| fn decode_log(log: ðers::core::abi::RawLog) -> Result<Self, ethers::core::abi::Error> | |
| where | |
| Self: Sized, | |
| { | |
| if let Ok(decoded) = AssetSponsoredFilter::decode_log(log) { | |
| return Ok(CAPEEvents::AssetSponsoredFilter(decoded)); | |
| } | |
| if let Ok(decoded) = BlockCommittedFilter::decode_log(log) { | |
| return Ok(CAPEEvents::BlockCommittedFilter(decoded)); | |
| } | |
| if let Ok(decoded) = Erc20TokensDepositedFilter::decode_log(log) { | |
| return Ok(CAPEEvents::Erc20TokensDepositedFilter(decoded)); | |
| } | |
| if let Ok(decoded) = FaucetInitializedFilter::decode_log(log) { | |
| return Ok(CAPEEvents::FaucetInitializedFilter(decoded)); | |
| } | |
| Err(ethers::core::abi::Error::InvalidData) | |
| } | |
| } | |
| impl ::std::fmt::Display for CAPEEvents { | |
| fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result { | |
| match self { | |
| CAPEEvents::AssetSponsoredFilter(element) => element.fmt(f), | |
| CAPEEvents::BlockCommittedFilter(element) => element.fmt(f), | |
| CAPEEvents::Erc20TokensDepositedFilter(element) => element.fmt(f), | |
| CAPEEvents::FaucetInitializedFilter(element) => element.fmt(f), | |
| } | |
| } | |
| } | |
| #[doc = "Container type for all input parameters for the `CAPE_BURN_MAGIC_BYTES`function with signature `CAPE_BURN_MAGIC_BYTES()` and selector `[17, 130, 159, 147]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall(name = "CAPE_BURN_MAGIC_BYTES", abi = "CAPE_BURN_MAGIC_BYTES()")] | |
| pub struct CapeBurnMagicBytesCall; | |
| #[doc = "Container type for all input parameters for the `CAPE_BURN_MAGIC_BYTES_SIZE`function with signature `CAPE_BURN_MAGIC_BYTES_SIZE()` and selector `[180, 226, 143, 26]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall( | |
| name = "CAPE_BURN_MAGIC_BYTES_SIZE", | |
| abi = "CAPE_BURN_MAGIC_BYTES_SIZE()" | |
| )] | |
| pub struct CapeBurnMagicBytesSizeCall; | |
| #[doc = "Container type for all input parameters for the `CAP_NATIVE_ASSET_CODE`function with signature `CAP_NATIVE_ASSET_CODE()` and selector `[121, 207, 111, 92]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall(name = "CAP_NATIVE_ASSET_CODE", abi = "CAP_NATIVE_ASSET_CODE()")] | |
| pub struct CapNativeAssetCodeCall; | |
| #[doc = "Container type for all input parameters for the `DOM_SEP_DOMESTIC_ASSET`function with signature `DOM_SEP_DOMESTIC_ASSET()` and selector `[29, 182, 178, 83]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall(name = "DOM_SEP_DOMESTIC_ASSET", abi = "DOM_SEP_DOMESTIC_ASSET()")] | |
| pub struct DomSepDomesticAssetCall; | |
| #[doc = "Container type for all input parameters for the `DOM_SEP_FOREIGN_ASSET`function with signature `DOM_SEP_FOREIGN_ASSET()` and selector `[163, 59, 169, 108]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall(name = "DOM_SEP_FOREIGN_ASSET", abi = "DOM_SEP_FOREIGN_ASSET()")] | |
| pub struct DomSepForeignAssetCall; | |
| #[doc = "Container type for all input parameters for the `MAX_NUM_PENDING_DEPOSIT`function with signature `MAX_NUM_PENDING_DEPOSIT()` and selector `[157, 213, 132, 185]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall(name = "MAX_NUM_PENDING_DEPOSIT", abi = "MAX_NUM_PENDING_DEPOSIT()")] | |
| pub struct MaxNumPendingDepositCall; | |
| #[doc = "Container type for all input parameters for the `assets`function with signature `assets(bytes32)` and selector `[159, 218, 91, 102]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall(name = "assets", abi = "assets(bytes32)")] | |
| pub struct AssetsCall(pub [u8; 32]); | |
| #[doc = "Container type for all input parameters for the `blockHeight`function with signature `blockHeight()` and selector `[244, 79, 247, 18]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall(name = "blockHeight", abi = "blockHeight()")] | |
| pub struct BlockHeightCall; | |
| #[doc = "Container type for all input parameters for the `deployer`function with signature `deployer()` and selector `[213, 243, 148, 136]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall(name = "deployer", abi = "deployer()")] | |
| pub struct DeployerCall; | |
| #[doc = "Container type for all input parameters for the `depositErc20`function with signature `depositErc20((uint128,(uint256,((uint256,uint256),(uint256,uint256),(uint256,uint256),uint256,uint128)),(uint256,uint256),bytes32,bool,uint256),address)` and selector `[104, 104, 221, 31]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall( | |
| name = "depositErc20", | |
| abi = "depositErc20((uint128,(uint256,((uint256,uint256),(uint256,uint256),(uint256,uint256),uint256,uint128)),(uint256,uint256),bytes32,bool,uint256),address)" | |
| )] | |
| pub struct DepositErc20Call { | |
| pub ro: RecordOpening, | |
| pub erc_20_address: ethers::core::types::Address, | |
| } | |
| #[doc = "Container type for all input parameters for the `faucetInitialized`function with signature `faucetInitialized()` and selector `[254, 60, 195, 248]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall(name = "faucetInitialized", abi = "faucetInitialized()")] | |
| pub struct FaucetInitializedCall; | |
| #[doc = "Container type for all input parameters for the `faucetSetupForTestnet`function with signature `faucetSetupForTestnet((uint256,uint256),bytes32)` and selector `[177, 47, 126, 123]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall( | |
| name = "faucetSetupForTestnet", | |
| abi = "faucetSetupForTestnet((uint256,uint256),bytes32)" | |
| )] | |
| pub struct FaucetSetupForTestnetCall { | |
| pub faucet_manager_address: EdOnBN254Point, | |
| pub faucet_manager_enc_key: [u8; 32], | |
| } | |
| #[doc = "Container type for all input parameters for the `getRootValue`function with signature `getRootValue()` and selector `[100, 68, 200, 209]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall(name = "getRootValue", abi = "getRootValue()")] | |
| pub struct GetRootValueCall; | |
| #[doc = "Container type for all input parameters for the `isCapeAssetRegistered`function with signature `isCapeAssetRegistered((uint256,((uint256,uint256),(uint256,uint256),(uint256,uint256),uint256,uint128)))` and selector `[241, 72, 251, 74]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall( | |
| name = "isCapeAssetRegistered", | |
| abi = "isCapeAssetRegistered((uint256,((uint256,uint256),(uint256,uint256),(uint256,uint256),uint256,uint128)))" | |
| )] | |
| pub struct IsCapeAssetRegisteredCall { | |
| pub asset_definition: AssetDefinition, | |
| } | |
| #[doc = "Container type for all input parameters for the `lookup`function with signature `lookup((uint256,((uint256,uint256),(uint256,uint256),(uint256,uint256),uint256,uint128)))` and selector `[213, 108, 30, 161]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall( | |
| name = "lookup", | |
| abi = "lookup((uint256,((uint256,uint256),(uint256,uint256),(uint256,uint256),uint256,uint128)))" | |
| )] | |
| pub struct LookupCall { | |
| pub asset_definition: AssetDefinition, | |
| } | |
| #[doc = "Container type for all input parameters for the `nativeDomesticAsset`function with signature `nativeDomesticAsset()` and selector `[109, 232, 64, 96]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall(name = "nativeDomesticAsset", abi = "nativeDomesticAsset()")] | |
| pub struct NativeDomesticAssetCall; | |
| #[doc = "Container type for all input parameters for the `nullifiers`function with signature `nullifiers(uint256)` and selector `[210, 30, 130, 171]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall(name = "nullifiers", abi = "nullifiers(uint256)")] | |
| pub struct NullifiersCall(pub ethers::core::types::U256); | |
| #[doc = "Container type for all input parameters for the `pendingDeposits`function with signature `pendingDeposits(uint256)` and selector `[167, 147, 39, 148]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall(name = "pendingDeposits", abi = "pendingDeposits(uint256)")] | |
| pub struct PendingDepositsCall(pub ethers::core::types::U256); | |
| #[doc = "Container type for all input parameters for the `sponsorCapeAsset`function with signature `sponsorCapeAsset(address,(uint256,((uint256,uint256),(uint256,uint256),(uint256,uint256),uint256,uint128)))` and selector `[10, 33, 33, 69]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall( | |
| name = "sponsorCapeAsset", | |
| abi = "sponsorCapeAsset(address,(uint256,((uint256,uint256),(uint256,uint256),(uint256,uint256),uint256,uint128)))" | |
| )] | |
| pub struct SponsorCapeAssetCall { | |
| pub erc_20_address: ethers::core::types::Address, | |
| pub new_asset: AssetDefinition, | |
| } | |
| #[doc = "Container type for all input parameters for the `submitCapeBlock`function with signature `submitCapeBlock(((uint256,uint256),uint8[],(uint256[],uint256[],((uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256),((uint256,uint256),uint256[]),(uint256,uint128,uint64,(uint256,uint256),bytes))[],(uint256,uint256,uint256,uint128,(uint256,((uint256,uint256),(uint256,uint256),(uint256,uint256),uint256,uint128)),uint256,((uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256),((uint256,uint256),uint256[]),(uint256,uint128,(uint256,uint256)))[],(uint256[],uint256[],((uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256),(uint256,uint128,(uint256,uint256)))[],((uint256[],uint256[],((uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256),((uint256,uint256),uint256[]),(uint256,uint128,uint64,(uint256,uint256),bytes)),(uint128,(uint256,((uint256,uint256),(uint256,uint256),(uint256,uint256),uint256,uint128)),(uint256,uint256),bytes32,bool,uint256))[]))` and selector `[203, 57, 11, 152]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall( | |
| name = "submitCapeBlock", | |
| abi = "submitCapeBlock(((uint256,uint256),uint8[],(uint256[],uint256[],((uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256),((uint256,uint256),uint256[]),(uint256,uint128,uint64,(uint256,uint256),bytes))[],(uint256,uint256,uint256,uint128,(uint256,((uint256,uint256),(uint256,uint256),(uint256,uint256),uint256,uint128)),uint256,((uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256),((uint256,uint256),uint256[]),(uint256,uint128,(uint256,uint256)))[],(uint256[],uint256[],((uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256),(uint256,uint128,(uint256,uint256)))[],((uint256[],uint256[],((uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256),((uint256,uint256),uint256[]),(uint256,uint128,uint64,(uint256,uint256),bytes)),(uint128,(uint256,((uint256,uint256),(uint256,uint256),(uint256,uint256),uint256,uint128)),(uint256,uint256),bytes32,bool,uint256))[]))" | |
| )] | |
| pub struct SubmitCapeBlockCall { | |
| pub new_block: CapeBlock, | |
| } | |
| #[doc = "Container type for all input parameters for the `submitCapeBlockWithMemos`function with signature `submitCapeBlockWithMemos(((uint256,uint256),uint8[],(uint256[],uint256[],((uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256),((uint256,uint256),uint256[]),(uint256,uint128,uint64,(uint256,uint256),bytes))[],(uint256,uint256,uint256,uint128,(uint256,((uint256,uint256),(uint256,uint256),(uint256,uint256),uint256,uint128)),uint256,((uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256),((uint256,uint256),uint256[]),(uint256,uint128,(uint256,uint256)))[],(uint256[],uint256[],((uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256),(uint256,uint128,(uint256,uint256)))[],((uint256[],uint256[],((uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256),((uint256,uint256),uint256[]),(uint256,uint128,uint64,(uint256,uint256),bytes)),(uint128,(uint256,((uint256,uint256),(uint256,uint256),(uint256,uint256),uint256,uint128)),(uint256,uint256),bytes32,bool,uint256))[]),bytes)` and selector `[16, 180, 227, 161]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall( | |
| name = "submitCapeBlockWithMemos", | |
| abi = "submitCapeBlockWithMemos(((uint256,uint256),uint8[],(uint256[],uint256[],((uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256),((uint256,uint256),uint256[]),(uint256,uint128,uint64,(uint256,uint256),bytes))[],(uint256,uint256,uint256,uint128,(uint256,((uint256,uint256),(uint256,uint256),(uint256,uint256),uint256,uint128)),uint256,((uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256),((uint256,uint256),uint256[]),(uint256,uint128,(uint256,uint256)))[],(uint256[],uint256[],((uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256),(uint256,uint128,(uint256,uint256)))[],((uint256[],uint256[],((uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256),((uint256,uint256),uint256[]),(uint256,uint128,uint64,(uint256,uint256),bytes)),(uint128,(uint256,((uint256,uint256),(uint256,uint256),(uint256,uint256),uint256,uint128)),(uint256,uint256),bytes32,bool,uint256))[]),bytes)" | |
| )] | |
| pub struct SubmitCapeBlockWithMemosCall { | |
| pub new_block: CapeBlock, | |
| pub extra_data: ethers::core::types::Bytes, | |
| } | |
| #[derive(Debug, Clone, PartialEq, Eq, ethers :: contract :: EthAbiType)] | |
| pub enum CAPECalls { | |
| CapeBurnMagicBytes(CapeBurnMagicBytesCall), | |
| CapeBurnMagicBytesSize(CapeBurnMagicBytesSizeCall), | |
| CapNativeAssetCode(CapNativeAssetCodeCall), | |
| DomSepDomesticAsset(DomSepDomesticAssetCall), | |
| DomSepForeignAsset(DomSepForeignAssetCall), | |
| MaxNumPendingDeposit(MaxNumPendingDepositCall), | |
| Assets(AssetsCall), | |
| BlockHeight(BlockHeightCall), | |
| Deployer(DeployerCall), | |
| DepositErc20(DepositErc20Call), | |
| FaucetInitialized(FaucetInitializedCall), | |
| FaucetSetupForTestnet(FaucetSetupForTestnetCall), | |
| GetRootValue(GetRootValueCall), | |
| IsCapeAssetRegistered(IsCapeAssetRegisteredCall), | |
| Lookup(LookupCall), | |
| NativeDomesticAsset(NativeDomesticAssetCall), | |
| Nullifiers(NullifiersCall), | |
| PendingDeposits(PendingDepositsCall), | |
| SponsorCapeAsset(SponsorCapeAssetCall), | |
| SubmitCapeBlock(SubmitCapeBlockCall), | |
| SubmitCapeBlockWithMemos(SubmitCapeBlockWithMemosCall), | |
| } | |
| impl ethers::core::abi::AbiDecode for CAPECalls { | |
| fn decode(data: impl AsRef<[u8]>) -> Result<Self, ethers::core::abi::AbiError> { | |
| if let Ok(decoded) = | |
| <CapeBurnMagicBytesCall as ethers::core::abi::AbiDecode>::decode(data.as_ref()) | |
| { | |
| return Ok(CAPECalls::CapeBurnMagicBytes(decoded)); | |
| } | |
| if let Ok(decoded) = | |
| <CapeBurnMagicBytesSizeCall as ethers::core::abi::AbiDecode>::decode(data.as_ref()) | |
| { | |
| return Ok(CAPECalls::CapeBurnMagicBytesSize(decoded)); | |
| } | |
| if let Ok(decoded) = | |
| <CapNativeAssetCodeCall as ethers::core::abi::AbiDecode>::decode(data.as_ref()) | |
| { | |
| return Ok(CAPECalls::CapNativeAssetCode(decoded)); | |
| } | |
| if let Ok(decoded) = | |
| <DomSepDomesticAssetCall as ethers::core::abi::AbiDecode>::decode(data.as_ref()) | |
| { | |
| return Ok(CAPECalls::DomSepDomesticAsset(decoded)); | |
| } | |
| if let Ok(decoded) = | |
| <DomSepForeignAssetCall as ethers::core::abi::AbiDecode>::decode(data.as_ref()) | |
| { | |
| return Ok(CAPECalls::DomSepForeignAsset(decoded)); | |
| } | |
| if let Ok(decoded) = | |
| <MaxNumPendingDepositCall as ethers::core::abi::AbiDecode>::decode(data.as_ref()) | |
| { | |
| return Ok(CAPECalls::MaxNumPendingDeposit(decoded)); | |
| } | |
| if let Ok(decoded) = <AssetsCall as ethers::core::abi::AbiDecode>::decode(data.as_ref()) | |
| { | |
| return Ok(CAPECalls::Assets(decoded)); | |
| } | |
| if let Ok(decoded) = | |
| <BlockHeightCall as ethers::core::abi::AbiDecode>::decode(data.as_ref()) | |
| { | |
| return Ok(CAPECalls::BlockHeight(decoded)); | |
| } | |
| if let Ok(decoded) = | |
| <DeployerCall as ethers::core::abi::AbiDecode>::decode(data.as_ref()) | |
| { | |
| return Ok(CAPECalls::Deployer(decoded)); | |
| } | |
| if let Ok(decoded) = | |
| <DepositErc20Call as ethers::core::abi::AbiDecode>::decode(data.as_ref()) | |
| { | |
| return Ok(CAPECalls::DepositErc20(decoded)); | |
| } | |
| if let Ok(decoded) = | |
| <FaucetInitializedCall as ethers::core::abi::AbiDecode>::decode(data.as_ref()) | |
| { | |
| return Ok(CAPECalls::FaucetInitialized(decoded)); | |
| } | |
| if let Ok(decoded) = | |
| <FaucetSetupForTestnetCall as ethers::core::abi::AbiDecode>::decode(data.as_ref()) | |
| { | |
| return Ok(CAPECalls::FaucetSetupForTestnet(decoded)); | |
| } | |
| if let Ok(decoded) = | |
| <GetRootValueCall as ethers::core::abi::AbiDecode>::decode(data.as_ref()) | |
| { | |
| return Ok(CAPECalls::GetRootValue(decoded)); | |
| } | |
| if let Ok(decoded) = | |
| <IsCapeAssetRegisteredCall as ethers::core::abi::AbiDecode>::decode(data.as_ref()) | |
| { | |
| return Ok(CAPECalls::IsCapeAssetRegistered(decoded)); | |
| } | |
| if let Ok(decoded) = <LookupCall as ethers::core::abi::AbiDecode>::decode(data.as_ref()) | |
| { | |
| return Ok(CAPECalls::Lookup(decoded)); | |
| } | |
| if let Ok(decoded) = | |
| <NativeDomesticAssetCall as ethers::core::abi::AbiDecode>::decode(data.as_ref()) | |
| { | |
| return Ok(CAPECalls::NativeDomesticAsset(decoded)); | |
| } | |
| if let Ok(decoded) = | |
| <NullifiersCall as ethers::core::abi::AbiDecode>::decode(data.as_ref()) | |
| { | |
| return Ok(CAPECalls::Nullifiers(decoded)); | |
| } | |
| if let Ok(decoded) = | |
| <PendingDepositsCall as ethers::core::abi::AbiDecode>::decode(data.as_ref()) | |
| { | |
| return Ok(CAPECalls::PendingDeposits(decoded)); | |
| } | |
| if let Ok(decoded) = | |
| <SponsorCapeAssetCall as ethers::core::abi::AbiDecode>::decode(data.as_ref()) | |
| { | |
| return Ok(CAPECalls::SponsorCapeAsset(decoded)); | |
| } | |
| if let Ok(decoded) = | |
| <SubmitCapeBlockCall as ethers::core::abi::AbiDecode>::decode(data.as_ref()) | |
| { | |
| return Ok(CAPECalls::SubmitCapeBlock(decoded)); | |
| } | |
| if let Ok(decoded) = | |
| <SubmitCapeBlockWithMemosCall as ethers::core::abi::AbiDecode>::decode( | |
| data.as_ref(), | |
| ) | |
| { | |
| return Ok(CAPECalls::SubmitCapeBlockWithMemos(decoded)); | |
| } | |
| Err(ethers::core::abi::Error::InvalidData.into()) | |
| } | |
| } | |
| impl ethers::core::abi::AbiEncode for CAPECalls { | |
| fn encode(self) -> Vec<u8> { | |
| match self { | |
| CAPECalls::CapeBurnMagicBytes(element) => element.encode(), | |
| CAPECalls::CapeBurnMagicBytesSize(element) => element.encode(), | |
| CAPECalls::CapNativeAssetCode(element) => element.encode(), | |
| CAPECalls::DomSepDomesticAsset(element) => element.encode(), | |
| CAPECalls::DomSepForeignAsset(element) => element.encode(), | |
| CAPECalls::MaxNumPendingDeposit(element) => element.encode(), | |
| CAPECalls::Assets(element) => element.encode(), | |
| CAPECalls::BlockHeight(element) => element.encode(), | |
| CAPECalls::Deployer(element) => element.encode(), | |
| CAPECalls::DepositErc20(element) => element.encode(), | |
| CAPECalls::FaucetInitialized(element) => element.encode(), | |
| CAPECalls::FaucetSetupForTestnet(element) => element.encode(), | |
| CAPECalls::GetRootValue(element) => element.encode(), | |
| CAPECalls::IsCapeAssetRegistered(element) => element.encode(), | |
| CAPECalls::Lookup(element) => element.encode(), | |
| CAPECalls::NativeDomesticAsset(element) => element.encode(), | |
| CAPECalls::Nullifiers(element) => element.encode(), | |
| CAPECalls::PendingDeposits(element) => element.encode(), | |
| CAPECalls::SponsorCapeAsset(element) => element.encode(), | |
| CAPECalls::SubmitCapeBlock(element) => element.encode(), | |
| CAPECalls::SubmitCapeBlockWithMemos(element) => element.encode(), | |
| } | |
| } | |
| } | |
| impl ::std::fmt::Display for CAPECalls { | |
| fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result { | |
| match self { | |
| CAPECalls::CapeBurnMagicBytes(element) => element.fmt(f), | |
| CAPECalls::CapeBurnMagicBytesSize(element) => element.fmt(f), | |
| CAPECalls::CapNativeAssetCode(element) => element.fmt(f), | |
| CAPECalls::DomSepDomesticAsset(element) => element.fmt(f), | |
| CAPECalls::DomSepForeignAsset(element) => element.fmt(f), | |
| CAPECalls::MaxNumPendingDeposit(element) => element.fmt(f), | |
| CAPECalls::Assets(element) => element.fmt(f), | |
| CAPECalls::BlockHeight(element) => element.fmt(f), | |
| CAPECalls::Deployer(element) => element.fmt(f), | |
| CAPECalls::DepositErc20(element) => element.fmt(f), | |
| CAPECalls::FaucetInitialized(element) => element.fmt(f), | |
| CAPECalls::FaucetSetupForTestnet(element) => element.fmt(f), | |
| CAPECalls::GetRootValue(element) => element.fmt(f), | |
| CAPECalls::IsCapeAssetRegistered(element) => element.fmt(f), | |
| CAPECalls::Lookup(element) => element.fmt(f), | |
| CAPECalls::NativeDomesticAsset(element) => element.fmt(f), | |
| CAPECalls::Nullifiers(element) => element.fmt(f), | |
| CAPECalls::PendingDeposits(element) => element.fmt(f), | |
| CAPECalls::SponsorCapeAsset(element) => element.fmt(f), | |
| CAPECalls::SubmitCapeBlock(element) => element.fmt(f), | |
| CAPECalls::SubmitCapeBlockWithMemos(element) => element.fmt(f), | |
| } | |
| } | |
| } | |
| impl ::std::convert::From<CapeBurnMagicBytesCall> for CAPECalls { | |
| fn from(var: CapeBurnMagicBytesCall) -> Self { | |
| CAPECalls::CapeBurnMagicBytes(var) | |
| } | |
| } | |
| impl ::std::convert::From<CapeBurnMagicBytesSizeCall> for CAPECalls { | |
| fn from(var: CapeBurnMagicBytesSizeCall) -> Self { | |
| CAPECalls::CapeBurnMagicBytesSize(var) | |
| } | |
| } | |
| impl ::std::convert::From<CapNativeAssetCodeCall> for CAPECalls { | |
| fn from(var: CapNativeAssetCodeCall) -> Self { | |
| CAPECalls::CapNativeAssetCode(var) | |
| } | |
| } | |
| impl ::std::convert::From<DomSepDomesticAssetCall> for CAPECalls { | |
| fn from(var: DomSepDomesticAssetCall) -> Self { | |
| CAPECalls::DomSepDomesticAsset(var) | |
| } | |
| } | |
| impl ::std::convert::From<DomSepForeignAssetCall> for CAPECalls { | |
| fn from(var: DomSepForeignAssetCall) -> Self { | |
| CAPECalls::DomSepForeignAsset(var) | |
| } | |
| } | |
| impl ::std::convert::From<MaxNumPendingDepositCall> for CAPECalls { | |
| fn from(var: MaxNumPendingDepositCall) -> Self { | |
| CAPECalls::MaxNumPendingDeposit(var) | |
| } | |
| } | |
| impl ::std::convert::From<AssetsCall> for CAPECalls { | |
| fn from(var: AssetsCall) -> Self { | |
| CAPECalls::Assets(var) | |
| } | |
| } | |
| impl ::std::convert::From<BlockHeightCall> for CAPECalls { | |
| fn from(var: BlockHeightCall) -> Self { | |
| CAPECalls::BlockHeight(var) | |
| } | |
| } | |
| impl ::std::convert::From<DeployerCall> for CAPECalls { | |
| fn from(var: DeployerCall) -> Self { | |
| CAPECalls::Deployer(var) | |
| } | |
| } | |
| impl ::std::convert::From<DepositErc20Call> for CAPECalls { | |
| fn from(var: DepositErc20Call) -> Self { | |
| CAPECalls::DepositErc20(var) | |
| } | |
| } | |
| impl ::std::convert::From<FaucetInitializedCall> for CAPECalls { | |
| fn from(var: FaucetInitializedCall) -> Self { | |
| CAPECalls::FaucetInitialized(var) | |
| } | |
| } | |
| impl ::std::convert::From<FaucetSetupForTestnetCall> for CAPECalls { | |
| fn from(var: FaucetSetupForTestnetCall) -> Self { | |
| CAPECalls::FaucetSetupForTestnet(var) | |
| } | |
| } | |
| impl ::std::convert::From<GetRootValueCall> for CAPECalls { | |
| fn from(var: GetRootValueCall) -> Self { | |
| CAPECalls::GetRootValue(var) | |
| } | |
| } | |
| impl ::std::convert::From<IsCapeAssetRegisteredCall> for CAPECalls { | |
| fn from(var: IsCapeAssetRegisteredCall) -> Self { | |
| CAPECalls::IsCapeAssetRegistered(var) | |
| } | |
| } | |
| impl ::std::convert::From<LookupCall> for CAPECalls { | |
| fn from(var: LookupCall) -> Self { | |
| CAPECalls::Lookup(var) | |
| } | |
| } | |
| impl ::std::convert::From<NativeDomesticAssetCall> for CAPECalls { | |
| fn from(var: NativeDomesticAssetCall) -> Self { | |
| CAPECalls::NativeDomesticAsset(var) | |
| } | |
| } | |
| impl ::std::convert::From<NullifiersCall> for CAPECalls { | |
| fn from(var: NullifiersCall) -> Self { | |
| CAPECalls::Nullifiers(var) | |
| } | |
| } | |
| impl ::std::convert::From<PendingDepositsCall> for CAPECalls { | |
| fn from(var: PendingDepositsCall) -> Self { | |
| CAPECalls::PendingDeposits(var) | |
| } | |
| } | |
| impl ::std::convert::From<SponsorCapeAssetCall> for CAPECalls { | |
| fn from(var: SponsorCapeAssetCall) -> Self { | |
| CAPECalls::SponsorCapeAsset(var) | |
| } | |
| } | |
| impl ::std::convert::From<SubmitCapeBlockCall> for CAPECalls { | |
| fn from(var: SubmitCapeBlockCall) -> Self { | |
| CAPECalls::SubmitCapeBlock(var) | |
| } | |
| } | |
| impl ::std::convert::From<SubmitCapeBlockWithMemosCall> for CAPECalls { | |
| fn from(var: SubmitCapeBlockWithMemosCall) -> Self { | |
| CAPECalls::SubmitCapeBlockWithMemos(var) | |
| } | |
| } | |
| } | |
| pub use dai_mod::*; | |
| #[allow(clippy::too_many_arguments, non_camel_case_types)] | |
| pub mod dai_mod { | |
| #![allow(clippy::enum_variant_names)] | |
| #![allow(dead_code)] | |
| #![allow(clippy::type_complexity)] | |
| #![allow(unused_imports)] | |
| use ethers::contract::{ | |
| builders::{ContractCall, Event}, | |
| Contract, Lazy, | |
| }; | |
| use ethers::core::{ | |
| abi::{Abi, Detokenize, InvalidOutputType, Token, Tokenizable}, | |
| types::*, | |
| }; | |
| use ethers::providers::Middleware; | |
| #[doc = "DAI was auto-generated with ethers-rs Abigen. More information at: https://github.com/gakonst/ethers-rs"] | |
| use std::sync::Arc; | |
| pub static DAI_ABI: ethers::contract::Lazy<ethers::core::abi::Abi> = | |
| ethers::contract::Lazy::new(|| { | |
| serde_json :: from_str ("[{\"inputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\",\"outputs\":[]},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\",\"components\":[],\"indexed\":true},{\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\",\"components\":[],\"indexed\":true},{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\",\"components\":[],\"indexed\":false}],\"type\":\"event\",\"name\":\"Approval\",\"outputs\":[],\"anonymous\":false},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\",\"components\":[],\"indexed\":true},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\",\"components\":[],\"indexed\":true},{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\",\"components\":[],\"indexed\":false}],\"type\":\"event\",\"name\":\"Transfer\",\"outputs\":[],\"anonymous\":false},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\",\"components\":[]},{\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\",\"components\":[]}],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"allowance\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\",\"components\":[]}]},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\",\"components\":[]}],\"stateMutability\":\"nonpayable\",\"type\":\"function\",\"name\":\"approve\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\",\"components\":[]}]},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\",\"components\":[]}],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"balanceOf\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\",\"components\":[]}]},{\"inputs\":[],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"decimals\",\"outputs\":[{\"internalType\":\"uint8\",\"name\":\"\",\"type\":\"uint8\",\"components\":[]}]},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"subtractedValue\",\"type\":\"uint256\",\"components\":[]}],\"stateMutability\":\"nonpayable\",\"type\":\"function\",\"name\":\"decreaseAllowance\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\",\"components\":[]}]},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"addedValue\",\"type\":\"uint256\",\"components\":[]}],\"stateMutability\":\"nonpayable\",\"type\":\"function\",\"name\":\"increaseAllowance\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\",\"components\":[]}]},{\"inputs\":[],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"name\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\",\"components\":[]}]},{\"inputs\":[],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"symbol\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\",\"components\":[]}]},{\"inputs\":[],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"totalSupply\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\",\"components\":[]}]},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"recipient\",\"type\":\"address\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\",\"components\":[]}],\"stateMutability\":\"nonpayable\",\"type\":\"function\",\"name\":\"transfer\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\",\"components\":[]}]},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\",\"components\":[]},{\"internalType\":\"address\",\"name\":\"recipient\",\"type\":\"address\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\",\"components\":[]}],\"stateMutability\":\"nonpayable\",\"type\":\"function\",\"name\":\"transferFrom\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\",\"components\":[]}]},{\"inputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\",\"name\":\"withdraw\",\"outputs\":[]},{\"inputs\":[],\"stateMutability\":\"payable\",\"type\":\"receive\",\"outputs\":[]}]") . expect ("invalid abi") | |
| }); | |
| pub struct DAI<M>(ethers::contract::Contract<M>); | |
| impl<M> Clone for DAI<M> { | |
| fn clone(&self) -> Self { | |
| DAI(self.0.clone()) | |
| } | |
| } | |
| impl<M> std::ops::Deref for DAI<M> { | |
| type Target = ethers::contract::Contract<M>; | |
| fn deref(&self) -> &Self::Target { | |
| &self.0 | |
| } | |
| } | |
| impl<M: ethers::providers::Middleware> std::fmt::Debug for DAI<M> { | |
| fn fmt(&self, f: &mut std::fmt::Formatter) -> std::fmt::Result { | |
| f.debug_tuple(stringify!(DAI)) | |
| .field(&self.address()) | |
| .finish() | |
| } | |
| } | |
| impl<M: ethers::providers::Middleware> DAI<M> { | |
| #[doc = r" Creates a new contract instance with the specified `ethers`"] | |
| #[doc = r" client at the given `Address`. The contract derefs to a `ethers::Contract`"] | |
| #[doc = r" object"] | |
| pub fn new<T: Into<ethers::core::types::Address>>( | |
| address: T, | |
| client: ::std::sync::Arc<M>, | |
| ) -> Self { | |
| ethers::contract::Contract::new(address.into(), DAI_ABI.clone(), client).into() | |
| } | |
| #[doc = "Calls the contract's `allowance` (0xdd62ed3e) function"] | |
| pub fn allowance( | |
| &self, | |
| owner: ethers::core::types::Address, | |
| spender: ethers::core::types::Address, | |
| ) -> ethers::contract::builders::ContractCall<M, ethers::core::types::U256> { | |
| self.0 | |
| .method_hash([221, 98, 237, 62], (owner, spender)) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Calls the contract's `approve` (0x095ea7b3) function"] | |
| pub fn approve( | |
| &self, | |
| spender: ethers::core::types::Address, | |
| amount: ethers::core::types::U256, | |
| ) -> ethers::contract::builders::ContractCall<M, bool> { | |
| self.0 | |
| .method_hash([9, 94, 167, 179], (spender, amount)) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Calls the contract's `balanceOf` (0x70a08231) function"] | |
| pub fn balance_of( | |
| &self, | |
| account: ethers::core::types::Address, | |
| ) -> ethers::contract::builders::ContractCall<M, ethers::core::types::U256> { | |
| self.0 | |
| .method_hash([112, 160, 130, 49], account) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Calls the contract's `decimals` (0x313ce567) function"] | |
| pub fn decimals(&self) -> ethers::contract::builders::ContractCall<M, u8> { | |
| self.0 | |
| .method_hash([49, 60, 229, 103], ()) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Calls the contract's `decreaseAllowance` (0xa457c2d7) function"] | |
| pub fn decrease_allowance( | |
| &self, | |
| spender: ethers::core::types::Address, | |
| subtracted_value: ethers::core::types::U256, | |
| ) -> ethers::contract::builders::ContractCall<M, bool> { | |
| self.0 | |
| .method_hash([164, 87, 194, 215], (spender, subtracted_value)) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Calls the contract's `increaseAllowance` (0x39509351) function"] | |
| pub fn increase_allowance( | |
| &self, | |
| spender: ethers::core::types::Address, | |
| added_value: ethers::core::types::U256, | |
| ) -> ethers::contract::builders::ContractCall<M, bool> { | |
| self.0 | |
| .method_hash([57, 80, 147, 81], (spender, added_value)) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Calls the contract's `name` (0x06fdde03) function"] | |
| pub fn name(&self) -> ethers::contract::builders::ContractCall<M, String> { | |
| self.0 | |
| .method_hash([6, 253, 222, 3], ()) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Calls the contract's `symbol` (0x95d89b41) function"] | |
| pub fn symbol(&self) -> ethers::contract::builders::ContractCall<M, String> { | |
| self.0 | |
| .method_hash([149, 216, 155, 65], ()) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Calls the contract's `totalSupply` (0x18160ddd) function"] | |
| pub fn total_supply( | |
| &self, | |
| ) -> ethers::contract::builders::ContractCall<M, ethers::core::types::U256> { | |
| self.0 | |
| .method_hash([24, 22, 13, 221], ()) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Calls the contract's `transfer` (0xa9059cbb) function"] | |
| pub fn transfer( | |
| &self, | |
| recipient: ethers::core::types::Address, | |
| amount: ethers::core::types::U256, | |
| ) -> ethers::contract::builders::ContractCall<M, bool> { | |
| self.0 | |
| .method_hash([169, 5, 156, 187], (recipient, amount)) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Calls the contract's `transferFrom` (0x23b872dd) function"] | |
| pub fn transfer_from( | |
| &self, | |
| sender: ethers::core::types::Address, | |
| recipient: ethers::core::types::Address, | |
| amount: ethers::core::types::U256, | |
| ) -> ethers::contract::builders::ContractCall<M, bool> { | |
| self.0 | |
| .method_hash([35, 184, 114, 221], (sender, recipient, amount)) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Calls the contract's `withdraw` (0x3ccfd60b) function"] | |
| pub fn withdraw(&self) -> ethers::contract::builders::ContractCall<M, ()> { | |
| self.0 | |
| .method_hash([60, 207, 214, 11], ()) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Gets the contract's `Approval` event"] | |
| pub fn approval_filter(&self) -> ethers::contract::builders::Event<M, ApprovalFilter> { | |
| self.0.event() | |
| } | |
| #[doc = "Gets the contract's `Transfer` event"] | |
| pub fn transfer_filter(&self) -> ethers::contract::builders::Event<M, TransferFilter> { | |
| self.0.event() | |
| } | |
| #[doc = r" Returns an [`Event`](#ethers_contract::builders::Event) builder for all events of this contract"] | |
| pub fn events(&self) -> ethers::contract::builders::Event<M, DAIEvents> { | |
| self.0.event_with_filter(Default::default()) | |
| } | |
| } | |
| impl<M: ethers::providers::Middleware> From<ethers::contract::Contract<M>> for DAI<M> { | |
| fn from(contract: ethers::contract::Contract<M>) -> Self { | |
| Self(contract) | |
| } | |
| } | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthEvent, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethevent(name = "Approval", abi = "Approval(address,address,uint256)")] | |
| pub struct ApprovalFilter { | |
| #[ethevent(indexed)] | |
| pub owner: ethers::core::types::Address, | |
| #[ethevent(indexed)] | |
| pub spender: ethers::core::types::Address, | |
| pub value: ethers::core::types::U256, | |
| } | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthEvent, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethevent(name = "Transfer", abi = "Transfer(address,address,uint256)")] | |
| pub struct TransferFilter { | |
| #[ethevent(indexed)] | |
| pub from: ethers::core::types::Address, | |
| #[ethevent(indexed)] | |
| pub to: ethers::core::types::Address, | |
| pub value: ethers::core::types::U256, | |
| } | |
| #[derive(Debug, Clone, PartialEq, Eq, ethers :: contract :: EthAbiType)] | |
| pub enum DAIEvents { | |
| ApprovalFilter(ApprovalFilter), | |
| TransferFilter(TransferFilter), | |
| } | |
| impl ethers::contract::EthLogDecode for DAIEvents { | |
| fn decode_log(log: ðers::core::abi::RawLog) -> Result<Self, ethers::core::abi::Error> | |
| where | |
| Self: Sized, | |
| { | |
| if let Ok(decoded) = ApprovalFilter::decode_log(log) { | |
| return Ok(DAIEvents::ApprovalFilter(decoded)); | |
| } | |
| if let Ok(decoded) = TransferFilter::decode_log(log) { | |
| return Ok(DAIEvents::TransferFilter(decoded)); | |
| } | |
| Err(ethers::core::abi::Error::InvalidData) | |
| } | |
| } | |
| impl ::std::fmt::Display for DAIEvents { | |
| fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result { | |
| match self { | |
| DAIEvents::ApprovalFilter(element) => element.fmt(f), | |
| DAIEvents::TransferFilter(element) => element.fmt(f), | |
| } | |
| } | |
| } | |
| #[doc = "Container type for all input parameters for the `allowance`function with signature `allowance(address,address)` and selector `[221, 98, 237, 62]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall(name = "allowance", abi = "allowance(address,address)")] | |
| pub struct AllowanceCall { | |
| pub owner: ethers::core::types::Address, | |
| pub spender: ethers::core::types::Address, | |
| } | |
| #[doc = "Container type for all input parameters for the `approve`function with signature `approve(address,uint256)` and selector `[9, 94, 167, 179]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall(name = "approve", abi = "approve(address,uint256)")] | |
| pub struct ApproveCall { | |
| pub spender: ethers::core::types::Address, | |
| pub amount: ethers::core::types::U256, | |
| } | |
| #[doc = "Container type for all input parameters for the `balanceOf`function with signature `balanceOf(address)` and selector `[112, 160, 130, 49]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall(name = "balanceOf", abi = "balanceOf(address)")] | |
| pub struct BalanceOfCall { | |
| pub account: ethers::core::types::Address, | |
| } | |
| #[doc = "Container type for all input parameters for the `decimals`function with signature `decimals()` and selector `[49, 60, 229, 103]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall(name = "decimals", abi = "decimals()")] | |
| pub struct DecimalsCall; | |
| #[doc = "Container type for all input parameters for the `decreaseAllowance`function with signature `decreaseAllowance(address,uint256)` and selector `[164, 87, 194, 215]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall(name = "decreaseAllowance", abi = "decreaseAllowance(address,uint256)")] | |
| pub struct DecreaseAllowanceCall { | |
| pub spender: ethers::core::types::Address, | |
| pub subtracted_value: ethers::core::types::U256, | |
| } | |
| #[doc = "Container type for all input parameters for the `increaseAllowance`function with signature `increaseAllowance(address,uint256)` and selector `[57, 80, 147, 81]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall(name = "increaseAllowance", abi = "increaseAllowance(address,uint256)")] | |
| pub struct IncreaseAllowanceCall { | |
| pub spender: ethers::core::types::Address, | |
| pub added_value: ethers::core::types::U256, | |
| } | |
| #[doc = "Container type for all input parameters for the `name`function with signature `name()` and selector `[6, 253, 222, 3]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall(name = "name", abi = "name()")] | |
| pub struct NameCall; | |
| #[doc = "Container type for all input parameters for the `symbol`function with signature `symbol()` and selector `[149, 216, 155, 65]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall(name = "symbol", abi = "symbol()")] | |
| pub struct SymbolCall; | |
| #[doc = "Container type for all input parameters for the `totalSupply`function with signature `totalSupply()` and selector `[24, 22, 13, 221]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall(name = "totalSupply", abi = "totalSupply()")] | |
| pub struct TotalSupplyCall; | |
| #[doc = "Container type for all input parameters for the `transfer`function with signature `transfer(address,uint256)` and selector `[169, 5, 156, 187]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall(name = "transfer", abi = "transfer(address,uint256)")] | |
| pub struct TransferCall { | |
| pub recipient: ethers::core::types::Address, | |
| pub amount: ethers::core::types::U256, | |
| } | |
| #[doc = "Container type for all input parameters for the `transferFrom`function with signature `transferFrom(address,address,uint256)` and selector `[35, 184, 114, 221]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall(name = "transferFrom", abi = "transferFrom(address,address,uint256)")] | |
| pub struct TransferFromCall { | |
| pub sender: ethers::core::types::Address, | |
| pub recipient: ethers::core::types::Address, | |
| pub amount: ethers::core::types::U256, | |
| } | |
| #[doc = "Container type for all input parameters for the `withdraw`function with signature `withdraw()` and selector `[60, 207, 214, 11]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall(name = "withdraw", abi = "withdraw()")] | |
| pub struct WithdrawCall; | |
| #[derive(Debug, Clone, PartialEq, Eq, ethers :: contract :: EthAbiType)] | |
| pub enum DAICalls { | |
| Allowance(AllowanceCall), | |
| Approve(ApproveCall), | |
| BalanceOf(BalanceOfCall), | |
| Decimals(DecimalsCall), | |
| DecreaseAllowance(DecreaseAllowanceCall), | |
| IncreaseAllowance(IncreaseAllowanceCall), | |
| Name(NameCall), | |
| Symbol(SymbolCall), | |
| TotalSupply(TotalSupplyCall), | |
| Transfer(TransferCall), | |
| TransferFrom(TransferFromCall), | |
| Withdraw(WithdrawCall), | |
| } | |
| impl ethers::core::abi::AbiDecode for DAICalls { | |
| fn decode(data: impl AsRef<[u8]>) -> Result<Self, ethers::core::abi::AbiError> { | |
| if let Ok(decoded) = | |
| <AllowanceCall as ethers::core::abi::AbiDecode>::decode(data.as_ref()) | |
| { | |
| return Ok(DAICalls::Allowance(decoded)); | |
| } | |
| if let Ok(decoded) = | |
| <ApproveCall as ethers::core::abi::AbiDecode>::decode(data.as_ref()) | |
| { | |
| return Ok(DAICalls::Approve(decoded)); | |
| } | |
| if let Ok(decoded) = | |
| <BalanceOfCall as ethers::core::abi::AbiDecode>::decode(data.as_ref()) | |
| { | |
| return Ok(DAICalls::BalanceOf(decoded)); | |
| } | |
| if let Ok(decoded) = | |
| <DecimalsCall as ethers::core::abi::AbiDecode>::decode(data.as_ref()) | |
| { | |
| return Ok(DAICalls::Decimals(decoded)); | |
| } | |
| if let Ok(decoded) = | |
| <DecreaseAllowanceCall as ethers::core::abi::AbiDecode>::decode(data.as_ref()) | |
| { | |
| return Ok(DAICalls::DecreaseAllowance(decoded)); | |
| } | |
| if let Ok(decoded) = | |
| <IncreaseAllowanceCall as ethers::core::abi::AbiDecode>::decode(data.as_ref()) | |
| { | |
| return Ok(DAICalls::IncreaseAllowance(decoded)); | |
| } | |
| if let Ok(decoded) = <NameCall as ethers::core::abi::AbiDecode>::decode(data.as_ref()) { | |
| return Ok(DAICalls::Name(decoded)); | |
| } | |
| if let Ok(decoded) = <SymbolCall as ethers::core::abi::AbiDecode>::decode(data.as_ref()) | |
| { | |
| return Ok(DAICalls::Symbol(decoded)); | |
| } | |
| if let Ok(decoded) = | |
| <TotalSupplyCall as ethers::core::abi::AbiDecode>::decode(data.as_ref()) | |
| { | |
| return Ok(DAICalls::TotalSupply(decoded)); | |
| } | |
| if let Ok(decoded) = | |
| <TransferCall as ethers::core::abi::AbiDecode>::decode(data.as_ref()) | |
| { | |
| return Ok(DAICalls::Transfer(decoded)); | |
| } | |
| if let Ok(decoded) = | |
| <TransferFromCall as ethers::core::abi::AbiDecode>::decode(data.as_ref()) | |
| { | |
| return Ok(DAICalls::TransferFrom(decoded)); | |
| } | |
| if let Ok(decoded) = | |
| <WithdrawCall as ethers::core::abi::AbiDecode>::decode(data.as_ref()) | |
| { | |
| return Ok(DAICalls::Withdraw(decoded)); | |
| } | |
| Err(ethers::core::abi::Error::InvalidData.into()) | |
| } | |
| } | |
| impl ethers::core::abi::AbiEncode for DAICalls { | |
| fn encode(self) -> Vec<u8> { | |
| match self { | |
| DAICalls::Allowance(element) => element.encode(), | |
| DAICalls::Approve(element) => element.encode(), | |
| DAICalls::BalanceOf(element) => element.encode(), | |
| DAICalls::Decimals(element) => element.encode(), | |
| DAICalls::DecreaseAllowance(element) => element.encode(), | |
| DAICalls::IncreaseAllowance(element) => element.encode(), | |
| DAICalls::Name(element) => element.encode(), | |
| DAICalls::Symbol(element) => element.encode(), | |
| DAICalls::TotalSupply(element) => element.encode(), | |
| DAICalls::Transfer(element) => element.encode(), | |
| DAICalls::TransferFrom(element) => element.encode(), | |
| DAICalls::Withdraw(element) => element.encode(), | |
| } | |
| } | |
| } | |
| impl ::std::fmt::Display for DAICalls { | |
| fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result { | |
| match self { | |
| DAICalls::Allowance(element) => element.fmt(f), | |
| DAICalls::Approve(element) => element.fmt(f), | |
| DAICalls::BalanceOf(element) => element.fmt(f), | |
| DAICalls::Decimals(element) => element.fmt(f), | |
| DAICalls::DecreaseAllowance(element) => element.fmt(f), | |
| DAICalls::IncreaseAllowance(element) => element.fmt(f), | |
| DAICalls::Name(element) => element.fmt(f), | |
| DAICalls::Symbol(element) => element.fmt(f), | |
| DAICalls::TotalSupply(element) => element.fmt(f), | |
| DAICalls::Transfer(element) => element.fmt(f), | |
| DAICalls::TransferFrom(element) => element.fmt(f), | |
| DAICalls::Withdraw(element) => element.fmt(f), | |
| } | |
| } | |
| } | |
| impl ::std::convert::From<AllowanceCall> for DAICalls { | |
| fn from(var: AllowanceCall) -> Self { | |
| DAICalls::Allowance(var) | |
| } | |
| } | |
| impl ::std::convert::From<ApproveCall> for DAICalls { | |
| fn from(var: ApproveCall) -> Self { | |
| DAICalls::Approve(var) | |
| } | |
| } | |
| impl ::std::convert::From<BalanceOfCall> for DAICalls { | |
| fn from(var: BalanceOfCall) -> Self { | |
| DAICalls::BalanceOf(var) | |
| } | |
| } | |
| impl ::std::convert::From<DecimalsCall> for DAICalls { | |
| fn from(var: DecimalsCall) -> Self { | |
| DAICalls::Decimals(var) | |
| } | |
| } | |
| impl ::std::convert::From<DecreaseAllowanceCall> for DAICalls { | |
| fn from(var: DecreaseAllowanceCall) -> Self { | |
| DAICalls::DecreaseAllowance(var) | |
| } | |
| } | |
| impl ::std::convert::From<IncreaseAllowanceCall> for DAICalls { | |
| fn from(var: IncreaseAllowanceCall) -> Self { | |
| DAICalls::IncreaseAllowance(var) | |
| } | |
| } | |
| impl ::std::convert::From<NameCall> for DAICalls { | |
| fn from(var: NameCall) -> Self { | |
| DAICalls::Name(var) | |
| } | |
| } | |
| impl ::std::convert::From<SymbolCall> for DAICalls { | |
| fn from(var: SymbolCall) -> Self { | |
| DAICalls::Symbol(var) | |
| } | |
| } | |
| impl ::std::convert::From<TotalSupplyCall> for DAICalls { | |
| fn from(var: TotalSupplyCall) -> Self { | |
| DAICalls::TotalSupply(var) | |
| } | |
| } | |
| impl ::std::convert::From<TransferCall> for DAICalls { | |
| fn from(var: TransferCall) -> Self { | |
| DAICalls::Transfer(var) | |
| } | |
| } | |
| impl ::std::convert::From<TransferFromCall> for DAICalls { | |
| fn from(var: TransferFromCall) -> Self { | |
| DAICalls::TransferFrom(var) | |
| } | |
| } | |
| impl ::std::convert::From<WithdrawCall> for DAICalls { | |
| fn from(var: WithdrawCall) -> Self { | |
| DAICalls::Withdraw(var) | |
| } | |
| } | |
| } | |
| pub use erc20_mod::*; | |
| #[allow(clippy::too_many_arguments, non_camel_case_types)] | |
| pub mod erc20_mod { | |
| #![allow(clippy::enum_variant_names)] | |
| #![allow(dead_code)] | |
| #![allow(clippy::type_complexity)] | |
| #![allow(unused_imports)] | |
| use ethers::contract::{ | |
| builders::{ContractCall, Event}, | |
| Contract, Lazy, | |
| }; | |
| use ethers::core::{ | |
| abi::{Abi, Detokenize, InvalidOutputType, Token, Tokenizable}, | |
| types::*, | |
| }; | |
| use ethers::providers::Middleware; | |
| #[doc = "ERC20 was auto-generated with ethers-rs Abigen. More information at: https://github.com/gakonst/ethers-rs"] | |
| use std::sync::Arc; | |
| pub static ERC20_ABI: ethers::contract::Lazy<ethers::core::abi::Abi> = | |
| ethers::contract::Lazy::new(|| { | |
| serde_json :: from_str ("[{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name_\",\"type\":\"string\",\"components\":[]},{\"internalType\":\"string\",\"name\":\"symbol_\",\"type\":\"string\",\"components\":[]}],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\",\"outputs\":[]},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\",\"components\":[],\"indexed\":true},{\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\",\"components\":[],\"indexed\":true},{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\",\"components\":[],\"indexed\":false}],\"type\":\"event\",\"name\":\"Approval\",\"outputs\":[],\"anonymous\":false},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\",\"components\":[],\"indexed\":true},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\",\"components\":[],\"indexed\":true},{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\",\"components\":[],\"indexed\":false}],\"type\":\"event\",\"name\":\"Transfer\",\"outputs\":[],\"anonymous\":false},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\",\"components\":[]},{\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\",\"components\":[]}],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"allowance\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\",\"components\":[]}]},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\",\"components\":[]}],\"stateMutability\":\"nonpayable\",\"type\":\"function\",\"name\":\"approve\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\",\"components\":[]}]},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\",\"components\":[]}],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"balanceOf\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\",\"components\":[]}]},{\"inputs\":[],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"decimals\",\"outputs\":[{\"internalType\":\"uint8\",\"name\":\"\",\"type\":\"uint8\",\"components\":[]}]},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"subtractedValue\",\"type\":\"uint256\",\"components\":[]}],\"stateMutability\":\"nonpayable\",\"type\":\"function\",\"name\":\"decreaseAllowance\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\",\"components\":[]}]},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"addedValue\",\"type\":\"uint256\",\"components\":[]}],\"stateMutability\":\"nonpayable\",\"type\":\"function\",\"name\":\"increaseAllowance\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\",\"components\":[]}]},{\"inputs\":[],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"name\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\",\"components\":[]}]},{\"inputs\":[],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"symbol\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\",\"components\":[]}]},{\"inputs\":[],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"totalSupply\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\",\"components\":[]}]},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"recipient\",\"type\":\"address\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\",\"components\":[]}],\"stateMutability\":\"nonpayable\",\"type\":\"function\",\"name\":\"transfer\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\",\"components\":[]}]},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\",\"components\":[]},{\"internalType\":\"address\",\"name\":\"recipient\",\"type\":\"address\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\",\"components\":[]}],\"stateMutability\":\"nonpayable\",\"type\":\"function\",\"name\":\"transferFrom\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\",\"components\":[]}]}]") . expect ("invalid abi") | |
| }); | |
| pub struct ERC20<M>(ethers::contract::Contract<M>); | |
| impl<M> Clone for ERC20<M> { | |
| fn clone(&self) -> Self { | |
| ERC20(self.0.clone()) | |
| } | |
| } | |
| impl<M> std::ops::Deref for ERC20<M> { | |
| type Target = ethers::contract::Contract<M>; | |
| fn deref(&self) -> &Self::Target { | |
| &self.0 | |
| } | |
| } | |
| impl<M: ethers::providers::Middleware> std::fmt::Debug for ERC20<M> { | |
| fn fmt(&self, f: &mut std::fmt::Formatter) -> std::fmt::Result { | |
| f.debug_tuple(stringify!(ERC20)) | |
| .field(&self.address()) | |
| .finish() | |
| } | |
| } | |
| impl<M: ethers::providers::Middleware> ERC20<M> { | |
| #[doc = r" Creates a new contract instance with the specified `ethers`"] | |
| #[doc = r" client at the given `Address`. The contract derefs to a `ethers::Contract`"] | |
| #[doc = r" object"] | |
| pub fn new<T: Into<ethers::core::types::Address>>( | |
| address: T, | |
| client: ::std::sync::Arc<M>, | |
| ) -> Self { | |
| ethers::contract::Contract::new(address.into(), ERC20_ABI.clone(), client).into() | |
| } | |
| #[doc = "Calls the contract's `allowance` (0xdd62ed3e) function"] | |
| pub fn allowance( | |
| &self, | |
| owner: ethers::core::types::Address, | |
| spender: ethers::core::types::Address, | |
| ) -> ethers::contract::builders::ContractCall<M, ethers::core::types::U256> { | |
| self.0 | |
| .method_hash([221, 98, 237, 62], (owner, spender)) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Calls the contract's `approve` (0x095ea7b3) function"] | |
| pub fn approve( | |
| &self, | |
| spender: ethers::core::types::Address, | |
| amount: ethers::core::types::U256, | |
| ) -> ethers::contract::builders::ContractCall<M, bool> { | |
| self.0 | |
| .method_hash([9, 94, 167, 179], (spender, amount)) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Calls the contract's `balanceOf` (0x70a08231) function"] | |
| pub fn balance_of( | |
| &self, | |
| account: ethers::core::types::Address, | |
| ) -> ethers::contract::builders::ContractCall<M, ethers::core::types::U256> { | |
| self.0 | |
| .method_hash([112, 160, 130, 49], account) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Calls the contract's `decimals` (0x313ce567) function"] | |
| pub fn decimals(&self) -> ethers::contract::builders::ContractCall<M, u8> { | |
| self.0 | |
| .method_hash([49, 60, 229, 103], ()) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Calls the contract's `decreaseAllowance` (0xa457c2d7) function"] | |
| pub fn decrease_allowance( | |
| &self, | |
| spender: ethers::core::types::Address, | |
| subtracted_value: ethers::core::types::U256, | |
| ) -> ethers::contract::builders::ContractCall<M, bool> { | |
| self.0 | |
| .method_hash([164, 87, 194, 215], (spender, subtracted_value)) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Calls the contract's `increaseAllowance` (0x39509351) function"] | |
| pub fn increase_allowance( | |
| &self, | |
| spender: ethers::core::types::Address, | |
| added_value: ethers::core::types::U256, | |
| ) -> ethers::contract::builders::ContractCall<M, bool> { | |
| self.0 | |
| .method_hash([57, 80, 147, 81], (spender, added_value)) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Calls the contract's `name` (0x06fdde03) function"] | |
| pub fn name(&self) -> ethers::contract::builders::ContractCall<M, String> { | |
| self.0 | |
| .method_hash([6, 253, 222, 3], ()) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Calls the contract's `symbol` (0x95d89b41) function"] | |
| pub fn symbol(&self) -> ethers::contract::builders::ContractCall<M, String> { | |
| self.0 | |
| .method_hash([149, 216, 155, 65], ()) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Calls the contract's `totalSupply` (0x18160ddd) function"] | |
| pub fn total_supply( | |
| &self, | |
| ) -> ethers::contract::builders::ContractCall<M, ethers::core::types::U256> { | |
| self.0 | |
| .method_hash([24, 22, 13, 221], ()) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Calls the contract's `transfer` (0xa9059cbb) function"] | |
| pub fn transfer( | |
| &self, | |
| recipient: ethers::core::types::Address, | |
| amount: ethers::core::types::U256, | |
| ) -> ethers::contract::builders::ContractCall<M, bool> { | |
| self.0 | |
| .method_hash([169, 5, 156, 187], (recipient, amount)) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Calls the contract's `transferFrom` (0x23b872dd) function"] | |
| pub fn transfer_from( | |
| &self, | |
| sender: ethers::core::types::Address, | |
| recipient: ethers::core::types::Address, | |
| amount: ethers::core::types::U256, | |
| ) -> ethers::contract::builders::ContractCall<M, bool> { | |
| self.0 | |
| .method_hash([35, 184, 114, 221], (sender, recipient, amount)) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Gets the contract's `Approval` event"] | |
| pub fn approval_filter(&self) -> ethers::contract::builders::Event<M, ApprovalFilter> { | |
| self.0.event() | |
| } | |
| #[doc = "Gets the contract's `Transfer` event"] | |
| pub fn transfer_filter(&self) -> ethers::contract::builders::Event<M, TransferFilter> { | |
| self.0.event() | |
| } | |
| #[doc = r" Returns an [`Event`](#ethers_contract::builders::Event) builder for all events of this contract"] | |
| pub fn events(&self) -> ethers::contract::builders::Event<M, ERC20Events> { | |
| self.0.event_with_filter(Default::default()) | |
| } | |
| } | |
| impl<M: ethers::providers::Middleware> From<ethers::contract::Contract<M>> for ERC20<M> { | |
| fn from(contract: ethers::contract::Contract<M>) -> Self { | |
| Self(contract) | |
| } | |
| } | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthEvent, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethevent(name = "Approval", abi = "Approval(address,address,uint256)")] | |
| pub struct ApprovalFilter { | |
| #[ethevent(indexed)] | |
| pub owner: ethers::core::types::Address, | |
| #[ethevent(indexed)] | |
| pub spender: ethers::core::types::Address, | |
| pub value: ethers::core::types::U256, | |
| } | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthEvent, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethevent(name = "Transfer", abi = "Transfer(address,address,uint256)")] | |
| pub struct TransferFilter { | |
| #[ethevent(indexed)] | |
| pub from: ethers::core::types::Address, | |
| #[ethevent(indexed)] | |
| pub to: ethers::core::types::Address, | |
| pub value: ethers::core::types::U256, | |
| } | |
| #[derive(Debug, Clone, PartialEq, Eq, ethers :: contract :: EthAbiType)] | |
| pub enum ERC20Events { | |
| ApprovalFilter(ApprovalFilter), | |
| TransferFilter(TransferFilter), | |
| } | |
| impl ethers::contract::EthLogDecode for ERC20Events { | |
| fn decode_log(log: ðers::core::abi::RawLog) -> Result<Self, ethers::core::abi::Error> | |
| where | |
| Self: Sized, | |
| { | |
| if let Ok(decoded) = ApprovalFilter::decode_log(log) { | |
| return Ok(ERC20Events::ApprovalFilter(decoded)); | |
| } | |
| if let Ok(decoded) = TransferFilter::decode_log(log) { | |
| return Ok(ERC20Events::TransferFilter(decoded)); | |
| } | |
| Err(ethers::core::abi::Error::InvalidData) | |
| } | |
| } | |
| impl ::std::fmt::Display for ERC20Events { | |
| fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result { | |
| match self { | |
| ERC20Events::ApprovalFilter(element) => element.fmt(f), | |
| ERC20Events::TransferFilter(element) => element.fmt(f), | |
| } | |
| } | |
| } | |
| #[doc = "Container type for all input parameters for the `allowance`function with signature `allowance(address,address)` and selector `[221, 98, 237, 62]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall(name = "allowance", abi = "allowance(address,address)")] | |
| pub struct AllowanceCall { | |
| pub owner: ethers::core::types::Address, | |
| pub spender: ethers::core::types::Address, | |
| } | |
| #[doc = "Container type for all input parameters for the `approve`function with signature `approve(address,uint256)` and selector `[9, 94, 167, 179]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall(name = "approve", abi = "approve(address,uint256)")] | |
| pub struct ApproveCall { | |
| pub spender: ethers::core::types::Address, | |
| pub amount: ethers::core::types::U256, | |
| } | |
| #[doc = "Container type for all input parameters for the `balanceOf`function with signature `balanceOf(address)` and selector `[112, 160, 130, 49]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall(name = "balanceOf", abi = "balanceOf(address)")] | |
| pub struct BalanceOfCall { | |
| pub account: ethers::core::types::Address, | |
| } | |
| #[doc = "Container type for all input parameters for the `decimals`function with signature `decimals()` and selector `[49, 60, 229, 103]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall(name = "decimals", abi = "decimals()")] | |
| pub struct DecimalsCall; | |
| #[doc = "Container type for all input parameters for the `decreaseAllowance`function with signature `decreaseAllowance(address,uint256)` and selector `[164, 87, 194, 215]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall(name = "decreaseAllowance", abi = "decreaseAllowance(address,uint256)")] | |
| pub struct DecreaseAllowanceCall { | |
| pub spender: ethers::core::types::Address, | |
| pub subtracted_value: ethers::core::types::U256, | |
| } | |
| #[doc = "Container type for all input parameters for the `increaseAllowance`function with signature `increaseAllowance(address,uint256)` and selector `[57, 80, 147, 81]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall(name = "increaseAllowance", abi = "increaseAllowance(address,uint256)")] | |
| pub struct IncreaseAllowanceCall { | |
| pub spender: ethers::core::types::Address, | |
| pub added_value: ethers::core::types::U256, | |
| } | |
| #[doc = "Container type for all input parameters for the `name`function with signature `name()` and selector `[6, 253, 222, 3]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall(name = "name", abi = "name()")] | |
| pub struct NameCall; | |
| #[doc = "Container type for all input parameters for the `symbol`function with signature `symbol()` and selector `[149, 216, 155, 65]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall(name = "symbol", abi = "symbol()")] | |
| pub struct SymbolCall; | |
| #[doc = "Container type for all input parameters for the `totalSupply`function with signature `totalSupply()` and selector `[24, 22, 13, 221]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall(name = "totalSupply", abi = "totalSupply()")] | |
| pub struct TotalSupplyCall; | |
| #[doc = "Container type for all input parameters for the `transfer`function with signature `transfer(address,uint256)` and selector `[169, 5, 156, 187]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall(name = "transfer", abi = "transfer(address,uint256)")] | |
| pub struct TransferCall { | |
| pub recipient: ethers::core::types::Address, | |
| pub amount: ethers::core::types::U256, | |
| } | |
| #[doc = "Container type for all input parameters for the `transferFrom`function with signature `transferFrom(address,address,uint256)` and selector `[35, 184, 114, 221]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall(name = "transferFrom", abi = "transferFrom(address,address,uint256)")] | |
| pub struct TransferFromCall { | |
| pub sender: ethers::core::types::Address, | |
| pub recipient: ethers::core::types::Address, | |
| pub amount: ethers::core::types::U256, | |
| } | |
| #[derive(Debug, Clone, PartialEq, Eq, ethers :: contract :: EthAbiType)] | |
| pub enum ERC20Calls { | |
| Allowance(AllowanceCall), | |
| Approve(ApproveCall), | |
| BalanceOf(BalanceOfCall), | |
| Decimals(DecimalsCall), | |
| DecreaseAllowance(DecreaseAllowanceCall), | |
| IncreaseAllowance(IncreaseAllowanceCall), | |
| Name(NameCall), | |
| Symbol(SymbolCall), | |
| TotalSupply(TotalSupplyCall), | |
| Transfer(TransferCall), | |
| TransferFrom(TransferFromCall), | |
| } | |
| impl ethers::core::abi::AbiDecode for ERC20Calls { | |
| fn decode(data: impl AsRef<[u8]>) -> Result<Self, ethers::core::abi::AbiError> { | |
| if let Ok(decoded) = | |
| <AllowanceCall as ethers::core::abi::AbiDecode>::decode(data.as_ref()) | |
| { | |
| return Ok(ERC20Calls::Allowance(decoded)); | |
| } | |
| if let Ok(decoded) = | |
| <ApproveCall as ethers::core::abi::AbiDecode>::decode(data.as_ref()) | |
| { | |
| return Ok(ERC20Calls::Approve(decoded)); | |
| } | |
| if let Ok(decoded) = | |
| <BalanceOfCall as ethers::core::abi::AbiDecode>::decode(data.as_ref()) | |
| { | |
| return Ok(ERC20Calls::BalanceOf(decoded)); | |
| } | |
| if let Ok(decoded) = | |
| <DecimalsCall as ethers::core::abi::AbiDecode>::decode(data.as_ref()) | |
| { | |
| return Ok(ERC20Calls::Decimals(decoded)); | |
| } | |
| if let Ok(decoded) = | |
| <DecreaseAllowanceCall as ethers::core::abi::AbiDecode>::decode(data.as_ref()) | |
| { | |
| return Ok(ERC20Calls::DecreaseAllowance(decoded)); | |
| } | |
| if let Ok(decoded) = | |
| <IncreaseAllowanceCall as ethers::core::abi::AbiDecode>::decode(data.as_ref()) | |
| { | |
| return Ok(ERC20Calls::IncreaseAllowance(decoded)); | |
| } | |
| if let Ok(decoded) = <NameCall as ethers::core::abi::AbiDecode>::decode(data.as_ref()) { | |
| return Ok(ERC20Calls::Name(decoded)); | |
| } | |
| if let Ok(decoded) = <SymbolCall as ethers::core::abi::AbiDecode>::decode(data.as_ref()) | |
| { | |
| return Ok(ERC20Calls::Symbol(decoded)); | |
| } | |
| if let Ok(decoded) = | |
| <TotalSupplyCall as ethers::core::abi::AbiDecode>::decode(data.as_ref()) | |
| { | |
| return Ok(ERC20Calls::TotalSupply(decoded)); | |
| } | |
| if let Ok(decoded) = | |
| <TransferCall as ethers::core::abi::AbiDecode>::decode(data.as_ref()) | |
| { | |
| return Ok(ERC20Calls::Transfer(decoded)); | |
| } | |
| if let Ok(decoded) = | |
| <TransferFromCall as ethers::core::abi::AbiDecode>::decode(data.as_ref()) | |
| { | |
| return Ok(ERC20Calls::TransferFrom(decoded)); | |
| } | |
| Err(ethers::core::abi::Error::InvalidData.into()) | |
| } | |
| } | |
| impl ethers::core::abi::AbiEncode for ERC20Calls { | |
| fn encode(self) -> Vec<u8> { | |
| match self { | |
| ERC20Calls::Allowance(element) => element.encode(), | |
| ERC20Calls::Approve(element) => element.encode(), | |
| ERC20Calls::BalanceOf(element) => element.encode(), | |
| ERC20Calls::Decimals(element) => element.encode(), | |
| ERC20Calls::DecreaseAllowance(element) => element.encode(), | |
| ERC20Calls::IncreaseAllowance(element) => element.encode(), | |
| ERC20Calls::Name(element) => element.encode(), | |
| ERC20Calls::Symbol(element) => element.encode(), | |
| ERC20Calls::TotalSupply(element) => element.encode(), | |
| ERC20Calls::Transfer(element) => element.encode(), | |
| ERC20Calls::TransferFrom(element) => element.encode(), | |
| } | |
| } | |
| } | |
| impl ::std::fmt::Display for ERC20Calls { | |
| fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result { | |
| match self { | |
| ERC20Calls::Allowance(element) => element.fmt(f), | |
| ERC20Calls::Approve(element) => element.fmt(f), | |
| ERC20Calls::BalanceOf(element) => element.fmt(f), | |
| ERC20Calls::Decimals(element) => element.fmt(f), | |
| ERC20Calls::DecreaseAllowance(element) => element.fmt(f), | |
| ERC20Calls::IncreaseAllowance(element) => element.fmt(f), | |
| ERC20Calls::Name(element) => element.fmt(f), | |
| ERC20Calls::Symbol(element) => element.fmt(f), | |
| ERC20Calls::TotalSupply(element) => element.fmt(f), | |
| ERC20Calls::Transfer(element) => element.fmt(f), | |
| ERC20Calls::TransferFrom(element) => element.fmt(f), | |
| } | |
| } | |
| } | |
| impl ::std::convert::From<AllowanceCall> for ERC20Calls { | |
| fn from(var: AllowanceCall) -> Self { | |
| ERC20Calls::Allowance(var) | |
| } | |
| } | |
| impl ::std::convert::From<ApproveCall> for ERC20Calls { | |
| fn from(var: ApproveCall) -> Self { | |
| ERC20Calls::Approve(var) | |
| } | |
| } | |
| impl ::std::convert::From<BalanceOfCall> for ERC20Calls { | |
| fn from(var: BalanceOfCall) -> Self { | |
| ERC20Calls::BalanceOf(var) | |
| } | |
| } | |
| impl ::std::convert::From<DecimalsCall> for ERC20Calls { | |
| fn from(var: DecimalsCall) -> Self { | |
| ERC20Calls::Decimals(var) | |
| } | |
| } | |
| impl ::std::convert::From<DecreaseAllowanceCall> for ERC20Calls { | |
| fn from(var: DecreaseAllowanceCall) -> Self { | |
| ERC20Calls::DecreaseAllowance(var) | |
| } | |
| } | |
| impl ::std::convert::From<IncreaseAllowanceCall> for ERC20Calls { | |
| fn from(var: IncreaseAllowanceCall) -> Self { | |
| ERC20Calls::IncreaseAllowance(var) | |
| } | |
| } | |
| impl ::std::convert::From<NameCall> for ERC20Calls { | |
| fn from(var: NameCall) -> Self { | |
| ERC20Calls::Name(var) | |
| } | |
| } | |
| impl ::std::convert::From<SymbolCall> for ERC20Calls { | |
| fn from(var: SymbolCall) -> Self { | |
| ERC20Calls::Symbol(var) | |
| } | |
| } | |
| impl ::std::convert::From<TotalSupplyCall> for ERC20Calls { | |
| fn from(var: TotalSupplyCall) -> Self { | |
| ERC20Calls::TotalSupply(var) | |
| } | |
| } | |
| impl ::std::convert::From<TransferCall> for ERC20Calls { | |
| fn from(var: TransferCall) -> Self { | |
| ERC20Calls::Transfer(var) | |
| } | |
| } | |
| impl ::std::convert::From<TransferFromCall> for ERC20Calls { | |
| fn from(var: TransferFromCall) -> Self { | |
| ERC20Calls::TransferFrom(var) | |
| } | |
| } | |
| } | |
| pub use edonbn254_mod::*; | |
| #[allow(clippy::too_many_arguments, non_camel_case_types)] | |
| pub mod edonbn254_mod { | |
| #![allow(clippy::enum_variant_names)] | |
| #![allow(dead_code)] | |
| #![allow(clippy::type_complexity)] | |
| #![allow(unused_imports)] | |
| use ethers::contract::{ | |
| builders::{ContractCall, Event}, | |
| Contract, Lazy, | |
| }; | |
| use ethers::core::{ | |
| abi::{Abi, Detokenize, InvalidOutputType, Token, Tokenizable}, | |
| types::*, | |
| }; | |
| use ethers::providers::Middleware; | |
| #[doc = "EdOnBN254 was auto-generated with ethers-rs Abigen. More information at: https://github.com/gakonst/ethers-rs"] | |
| use std::sync::Arc; | |
| pub static EDONBN254_ABI: ethers::contract::Lazy<ethers::core::abi::Abi> = | |
| ethers::contract::Lazy::new(|| { | |
| serde_json :: from_str ("[{\"inputs\":[],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"P_MOD\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\",\"components\":[]}]}]") . expect ("invalid abi") | |
| }); | |
| pub struct EdOnBN254<M>(ethers::contract::Contract<M>); | |
| impl<M> Clone for EdOnBN254<M> { | |
| fn clone(&self) -> Self { | |
| EdOnBN254(self.0.clone()) | |
| } | |
| } | |
| impl<M> std::ops::Deref for EdOnBN254<M> { | |
| type Target = ethers::contract::Contract<M>; | |
| fn deref(&self) -> &Self::Target { | |
| &self.0 | |
| } | |
| } | |
| impl<M: ethers::providers::Middleware> std::fmt::Debug for EdOnBN254<M> { | |
| fn fmt(&self, f: &mut std::fmt::Formatter) -> std::fmt::Result { | |
| f.debug_tuple(stringify!(EdOnBN254)) | |
| .field(&self.address()) | |
| .finish() | |
| } | |
| } | |
| impl<M: ethers::providers::Middleware> EdOnBN254<M> { | |
| #[doc = r" Creates a new contract instance with the specified `ethers`"] | |
| #[doc = r" client at the given `Address`. The contract derefs to a `ethers::Contract`"] | |
| #[doc = r" object"] | |
| pub fn new<T: Into<ethers::core::types::Address>>( | |
| address: T, | |
| client: ::std::sync::Arc<M>, | |
| ) -> Self { | |
| ethers::contract::Contract::new(address.into(), EDONBN254_ABI.clone(), client).into() | |
| } | |
| #[doc = "Calls the contract's `P_MOD` (0x1d712e27) function"] | |
| pub fn p_mod( | |
| &self, | |
| ) -> ethers::contract::builders::ContractCall<M, ethers::core::types::U256> { | |
| self.0 | |
| .method_hash([29, 113, 46, 39], ()) | |
| .expect("method not found (this should never happen)") | |
| } | |
| } | |
| impl<M: ethers::providers::Middleware> From<ethers::contract::Contract<M>> for EdOnBN254<M> { | |
| fn from(contract: ethers::contract::Contract<M>) -> Self { | |
| Self(contract) | |
| } | |
| } | |
| #[doc = "Container type for all input parameters for the `P_MOD`function with signature `P_MOD()` and selector `[29, 113, 46, 39]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall(name = "P_MOD", abi = "P_MOD()")] | |
| pub struct PModCall; | |
| } | |
| pub use freeze2in2out24depthvk_mod::*; | |
| #[allow(clippy::too_many_arguments, non_camel_case_types)] | |
| pub mod freeze2in2out24depthvk_mod { | |
| #![allow(clippy::enum_variant_names)] | |
| #![allow(dead_code)] | |
| #![allow(clippy::type_complexity)] | |
| #![allow(unused_imports)] | |
| use ethers::contract::{ | |
| builders::{ContractCall, Event}, | |
| Contract, Lazy, | |
| }; | |
| use ethers::core::{ | |
| abi::{Abi, Detokenize, InvalidOutputType, Token, Tokenizable}, | |
| types::*, | |
| }; | |
| use ethers::providers::Middleware; | |
| #[doc = "Freeze2In2Out24DepthVk was auto-generated with ethers-rs Abigen. More information at: https://github.com/gakonst/ethers-rs"] | |
| use std::sync::Arc; | |
| pub static FREEZE2IN2OUT24DEPTHVK_ABI: ethers::contract::Lazy<ethers::core::abi::Abi> = | |
| ethers::contract::Lazy::new(|| serde_json::from_str("[]").expect("invalid abi")); | |
| pub struct Freeze2In2Out24DepthVk<M>(ethers::contract::Contract<M>); | |
| impl<M> Clone for Freeze2In2Out24DepthVk<M> { | |
| fn clone(&self) -> Self { | |
| Freeze2In2Out24DepthVk(self.0.clone()) | |
| } | |
| } | |
| impl<M> std::ops::Deref for Freeze2In2Out24DepthVk<M> { | |
| type Target = ethers::contract::Contract<M>; | |
| fn deref(&self) -> &Self::Target { | |
| &self.0 | |
| } | |
| } | |
| impl<M: ethers::providers::Middleware> std::fmt::Debug for Freeze2In2Out24DepthVk<M> { | |
| fn fmt(&self, f: &mut std::fmt::Formatter) -> std::fmt::Result { | |
| f.debug_tuple(stringify!(Freeze2In2Out24DepthVk)) | |
| .field(&self.address()) | |
| .finish() | |
| } | |
| } | |
| impl<M: ethers::providers::Middleware> Freeze2In2Out24DepthVk<M> { | |
| #[doc = r" Creates a new contract instance with the specified `ethers`"] | |
| #[doc = r" client at the given `Address`. The contract derefs to a `ethers::Contract`"] | |
| #[doc = r" object"] | |
| pub fn new<T: Into<ethers::core::types::Address>>( | |
| address: T, | |
| client: ::std::sync::Arc<M>, | |
| ) -> Self { | |
| ethers::contract::Contract::new( | |
| address.into(), | |
| FREEZE2IN2OUT24DEPTHVK_ABI.clone(), | |
| client, | |
| ) | |
| .into() | |
| } | |
| } | |
| impl<M: ethers::providers::Middleware> From<ethers::contract::Contract<M>> | |
| for Freeze2In2Out24DepthVk<M> | |
| { | |
| fn from(contract: ethers::contract::Contract<M>) -> Self { | |
| Self(contract) | |
| } | |
| } | |
| } | |
| pub use freeze3in3out24depthvk_mod::*; | |
| #[allow(clippy::too_many_arguments, non_camel_case_types)] | |
| pub mod freeze3in3out24depthvk_mod { | |
| #![allow(clippy::enum_variant_names)] | |
| #![allow(dead_code)] | |
| #![allow(clippy::type_complexity)] | |
| #![allow(unused_imports)] | |
| use ethers::contract::{ | |
| builders::{ContractCall, Event}, | |
| Contract, Lazy, | |
| }; | |
| use ethers::core::{ | |
| abi::{Abi, Detokenize, InvalidOutputType, Token, Tokenizable}, | |
| types::*, | |
| }; | |
| use ethers::providers::Middleware; | |
| #[doc = "Freeze3In3Out24DepthVk was auto-generated with ethers-rs Abigen. More information at: https://github.com/gakonst/ethers-rs"] | |
| use std::sync::Arc; | |
| pub static FREEZE3IN3OUT24DEPTHVK_ABI: ethers::contract::Lazy<ethers::core::abi::Abi> = | |
| ethers::contract::Lazy::new(|| serde_json::from_str("[]").expect("invalid abi")); | |
| pub struct Freeze3In3Out24DepthVk<M>(ethers::contract::Contract<M>); | |
| impl<M> Clone for Freeze3In3Out24DepthVk<M> { | |
| fn clone(&self) -> Self { | |
| Freeze3In3Out24DepthVk(self.0.clone()) | |
| } | |
| } | |
| impl<M> std::ops::Deref for Freeze3In3Out24DepthVk<M> { | |
| type Target = ethers::contract::Contract<M>; | |
| fn deref(&self) -> &Self::Target { | |
| &self.0 | |
| } | |
| } | |
| impl<M: ethers::providers::Middleware> std::fmt::Debug for Freeze3In3Out24DepthVk<M> { | |
| fn fmt(&self, f: &mut std::fmt::Formatter) -> std::fmt::Result { | |
| f.debug_tuple(stringify!(Freeze3In3Out24DepthVk)) | |
| .field(&self.address()) | |
| .finish() | |
| } | |
| } | |
| impl<M: ethers::providers::Middleware> Freeze3In3Out24DepthVk<M> { | |
| #[doc = r" Creates a new contract instance with the specified `ethers`"] | |
| #[doc = r" client at the given `Address`. The contract derefs to a `ethers::Contract`"] | |
| #[doc = r" object"] | |
| pub fn new<T: Into<ethers::core::types::Address>>( | |
| address: T, | |
| client: ::std::sync::Arc<M>, | |
| ) -> Self { | |
| ethers::contract::Contract::new( | |
| address.into(), | |
| FREEZE3IN3OUT24DEPTHVK_ABI.clone(), | |
| client, | |
| ) | |
| .into() | |
| } | |
| } | |
| impl<M: ethers::providers::Middleware> From<ethers::contract::Contract<M>> | |
| for Freeze3In3Out24DepthVk<M> | |
| { | |
| fn from(contract: ethers::contract::Contract<M>) -> Self { | |
| Self(contract) | |
| } | |
| } | |
| } | |
| pub use greeter_mod::*; | |
| #[allow(clippy::too_many_arguments, non_camel_case_types)] | |
| pub mod greeter_mod { | |
| #![allow(clippy::enum_variant_names)] | |
| #![allow(dead_code)] | |
| #![allow(clippy::type_complexity)] | |
| #![allow(unused_imports)] | |
| use ethers::contract::{ | |
| builders::{ContractCall, Event}, | |
| Contract, Lazy, | |
| }; | |
| use ethers::core::{ | |
| abi::{Abi, Detokenize, InvalidOutputType, Token, Tokenizable}, | |
| types::*, | |
| }; | |
| use ethers::providers::Middleware; | |
| #[doc = "Greeter was auto-generated with ethers-rs Abigen. More information at: https://github.com/gakonst/ethers-rs"] | |
| use std::sync::Arc; | |
| pub static GREETER_ABI: ethers::contract::Lazy<ethers::core::abi::Abi> = | |
| ethers::contract::Lazy::new(|| { | |
| serde_json :: from_str ("[{\"inputs\":[{\"internalType\":\"string\",\"name\":\"greeting\",\"type\":\"string\",\"components\":[]}],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\",\"outputs\":[]},{\"inputs\":[],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"greet\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\",\"components\":[]}]},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"greeting\",\"type\":\"string\",\"components\":[]}],\"stateMutability\":\"nonpayable\",\"type\":\"function\",\"name\":\"setGreeting\",\"outputs\":[]}]") . expect ("invalid abi") | |
| }); | |
| pub struct Greeter<M>(ethers::contract::Contract<M>); | |
| impl<M> Clone for Greeter<M> { | |
| fn clone(&self) -> Self { | |
| Greeter(self.0.clone()) | |
| } | |
| } | |
| impl<M> std::ops::Deref for Greeter<M> { | |
| type Target = ethers::contract::Contract<M>; | |
| fn deref(&self) -> &Self::Target { | |
| &self.0 | |
| } | |
| } | |
| impl<M: ethers::providers::Middleware> std::fmt::Debug for Greeter<M> { | |
| fn fmt(&self, f: &mut std::fmt::Formatter) -> std::fmt::Result { | |
| f.debug_tuple(stringify!(Greeter)) | |
| .field(&self.address()) | |
| .finish() | |
| } | |
| } | |
| impl<M: ethers::providers::Middleware> Greeter<M> { | |
| #[doc = r" Creates a new contract instance with the specified `ethers`"] | |
| #[doc = r" client at the given `Address`. The contract derefs to a `ethers::Contract`"] | |
| #[doc = r" object"] | |
| pub fn new<T: Into<ethers::core::types::Address>>( | |
| address: T, | |
| client: ::std::sync::Arc<M>, | |
| ) -> Self { | |
| ethers::contract::Contract::new(address.into(), GREETER_ABI.clone(), client).into() | |
| } | |
| #[doc = "Calls the contract's `greet` (0xcfae3217) function"] | |
| pub fn greet(&self) -> ethers::contract::builders::ContractCall<M, String> { | |
| self.0 | |
| .method_hash([207, 174, 50, 23], ()) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Calls the contract's `setGreeting` (0xa4136862) function"] | |
| pub fn set_greeting( | |
| &self, | |
| greeting: String, | |
| ) -> ethers::contract::builders::ContractCall<M, ()> { | |
| self.0 | |
| .method_hash([164, 19, 104, 98], greeting) | |
| .expect("method not found (this should never happen)") | |
| } | |
| } | |
| impl<M: ethers::providers::Middleware> From<ethers::contract::Contract<M>> for Greeter<M> { | |
| fn from(contract: ethers::contract::Contract<M>) -> Self { | |
| Self(contract) | |
| } | |
| } | |
| #[doc = "Container type for all input parameters for the `greet`function with signature `greet()` and selector `[207, 174, 50, 23]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall(name = "greet", abi = "greet()")] | |
| pub struct GreetCall; | |
| #[doc = "Container type for all input parameters for the `setGreeting`function with signature `setGreeting(string)` and selector `[164, 19, 104, 98]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall(name = "setGreeting", abi = "setGreeting(string)")] | |
| pub struct SetGreetingCall { | |
| pub greeting: String, | |
| } | |
| #[derive(Debug, Clone, PartialEq, Eq, ethers :: contract :: EthAbiType)] | |
| pub enum GreeterCalls { | |
| Greet(GreetCall), | |
| SetGreeting(SetGreetingCall), | |
| } | |
| impl ethers::core::abi::AbiDecode for GreeterCalls { | |
| fn decode(data: impl AsRef<[u8]>) -> Result<Self, ethers::core::abi::AbiError> { | |
| if let Ok(decoded) = <GreetCall as ethers::core::abi::AbiDecode>::decode(data.as_ref()) | |
| { | |
| return Ok(GreeterCalls::Greet(decoded)); | |
| } | |
| if let Ok(decoded) = | |
| <SetGreetingCall as ethers::core::abi::AbiDecode>::decode(data.as_ref()) | |
| { | |
| return Ok(GreeterCalls::SetGreeting(decoded)); | |
| } | |
| Err(ethers::core::abi::Error::InvalidData.into()) | |
| } | |
| } | |
| impl ethers::core::abi::AbiEncode for GreeterCalls { | |
| fn encode(self) -> Vec<u8> { | |
| match self { | |
| GreeterCalls::Greet(element) => element.encode(), | |
| GreeterCalls::SetGreeting(element) => element.encode(), | |
| } | |
| } | |
| } | |
| impl ::std::fmt::Display for GreeterCalls { | |
| fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result { | |
| match self { | |
| GreeterCalls::Greet(element) => element.fmt(f), | |
| GreeterCalls::SetGreeting(element) => element.fmt(f), | |
| } | |
| } | |
| } | |
| impl ::std::convert::From<GreetCall> for GreeterCalls { | |
| fn from(var: GreetCall) -> Self { | |
| GreeterCalls::Greet(var) | |
| } | |
| } | |
| impl ::std::convert::From<SetGreetingCall> for GreeterCalls { | |
| fn from(var: SetGreetingCall) -> Self { | |
| GreeterCalls::SetGreeting(var) | |
| } | |
| } | |
| } | |
| pub use ierc20_mod::*; | |
| #[allow(clippy::too_many_arguments, non_camel_case_types)] | |
| pub mod ierc20_mod { | |
| #![allow(clippy::enum_variant_names)] | |
| #![allow(dead_code)] | |
| #![allow(clippy::type_complexity)] | |
| #![allow(unused_imports)] | |
| use ethers::contract::{ | |
| builders::{ContractCall, Event}, | |
| Contract, Lazy, | |
| }; | |
| use ethers::core::{ | |
| abi::{Abi, Detokenize, InvalidOutputType, Token, Tokenizable}, | |
| types::*, | |
| }; | |
| use ethers::providers::Middleware; | |
| #[doc = "IERC20 was auto-generated with ethers-rs Abigen. More information at: https://github.com/gakonst/ethers-rs"] | |
| use std::sync::Arc; | |
| pub static IERC20_ABI: ethers::contract::Lazy<ethers::core::abi::Abi> = | |
| ethers::contract::Lazy::new(|| { | |
| serde_json :: from_str ("[{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\",\"components\":[],\"indexed\":true},{\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\",\"components\":[],\"indexed\":true},{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\",\"components\":[],\"indexed\":false}],\"type\":\"event\",\"name\":\"Approval\",\"outputs\":[],\"anonymous\":false},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\",\"components\":[],\"indexed\":true},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\",\"components\":[],\"indexed\":true},{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\",\"components\":[],\"indexed\":false}],\"type\":\"event\",\"name\":\"Transfer\",\"outputs\":[],\"anonymous\":false},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\",\"components\":[]},{\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\",\"components\":[]}],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"allowance\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\",\"components\":[]}]},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\",\"components\":[]}],\"stateMutability\":\"nonpayable\",\"type\":\"function\",\"name\":\"approve\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\",\"components\":[]}]},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\",\"components\":[]}],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"balanceOf\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\",\"components\":[]}]},{\"inputs\":[],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"totalSupply\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\",\"components\":[]}]},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"recipient\",\"type\":\"address\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\",\"components\":[]}],\"stateMutability\":\"nonpayable\",\"type\":\"function\",\"name\":\"transfer\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\",\"components\":[]}]},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\",\"components\":[]},{\"internalType\":\"address\",\"name\":\"recipient\",\"type\":\"address\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\",\"components\":[]}],\"stateMutability\":\"nonpayable\",\"type\":\"function\",\"name\":\"transferFrom\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\",\"components\":[]}]}]") . expect ("invalid abi") | |
| }); | |
| pub struct IERC20<M>(ethers::contract::Contract<M>); | |
| impl<M> Clone for IERC20<M> { | |
| fn clone(&self) -> Self { | |
| IERC20(self.0.clone()) | |
| } | |
| } | |
| impl<M> std::ops::Deref for IERC20<M> { | |
| type Target = ethers::contract::Contract<M>; | |
| fn deref(&self) -> &Self::Target { | |
| &self.0 | |
| } | |
| } | |
| impl<M: ethers::providers::Middleware> std::fmt::Debug for IERC20<M> { | |
| fn fmt(&self, f: &mut std::fmt::Formatter) -> std::fmt::Result { | |
| f.debug_tuple(stringify!(IERC20)) | |
| .field(&self.address()) | |
| .finish() | |
| } | |
| } | |
| impl<M: ethers::providers::Middleware> IERC20<M> { | |
| #[doc = r" Creates a new contract instance with the specified `ethers`"] | |
| #[doc = r" client at the given `Address`. The contract derefs to a `ethers::Contract`"] | |
| #[doc = r" object"] | |
| pub fn new<T: Into<ethers::core::types::Address>>( | |
| address: T, | |
| client: ::std::sync::Arc<M>, | |
| ) -> Self { | |
| ethers::contract::Contract::new(address.into(), IERC20_ABI.clone(), client).into() | |
| } | |
| #[doc = "Calls the contract's `allowance` (0xdd62ed3e) function"] | |
| pub fn allowance( | |
| &self, | |
| owner: ethers::core::types::Address, | |
| spender: ethers::core::types::Address, | |
| ) -> ethers::contract::builders::ContractCall<M, ethers::core::types::U256> { | |
| self.0 | |
| .method_hash([221, 98, 237, 62], (owner, spender)) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Calls the contract's `approve` (0x095ea7b3) function"] | |
| pub fn approve( | |
| &self, | |
| spender: ethers::core::types::Address, | |
| amount: ethers::core::types::U256, | |
| ) -> ethers::contract::builders::ContractCall<M, bool> { | |
| self.0 | |
| .method_hash([9, 94, 167, 179], (spender, amount)) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Calls the contract's `balanceOf` (0x70a08231) function"] | |
| pub fn balance_of( | |
| &self, | |
| account: ethers::core::types::Address, | |
| ) -> ethers::contract::builders::ContractCall<M, ethers::core::types::U256> { | |
| self.0 | |
| .method_hash([112, 160, 130, 49], account) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Calls the contract's `totalSupply` (0x18160ddd) function"] | |
| pub fn total_supply( | |
| &self, | |
| ) -> ethers::contract::builders::ContractCall<M, ethers::core::types::U256> { | |
| self.0 | |
| .method_hash([24, 22, 13, 221], ()) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Calls the contract's `transfer` (0xa9059cbb) function"] | |
| pub fn transfer( | |
| &self, | |
| recipient: ethers::core::types::Address, | |
| amount: ethers::core::types::U256, | |
| ) -> ethers::contract::builders::ContractCall<M, bool> { | |
| self.0 | |
| .method_hash([169, 5, 156, 187], (recipient, amount)) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Calls the contract's `transferFrom` (0x23b872dd) function"] | |
| pub fn transfer_from( | |
| &self, | |
| sender: ethers::core::types::Address, | |
| recipient: ethers::core::types::Address, | |
| amount: ethers::core::types::U256, | |
| ) -> ethers::contract::builders::ContractCall<M, bool> { | |
| self.0 | |
| .method_hash([35, 184, 114, 221], (sender, recipient, amount)) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Gets the contract's `Approval` event"] | |
| pub fn approval_filter(&self) -> ethers::contract::builders::Event<M, ApprovalFilter> { | |
| self.0.event() | |
| } | |
| #[doc = "Gets the contract's `Transfer` event"] | |
| pub fn transfer_filter(&self) -> ethers::contract::builders::Event<M, TransferFilter> { | |
| self.0.event() | |
| } | |
| #[doc = r" Returns an [`Event`](#ethers_contract::builders::Event) builder for all events of this contract"] | |
| pub fn events(&self) -> ethers::contract::builders::Event<M, IERC20Events> { | |
| self.0.event_with_filter(Default::default()) | |
| } | |
| } | |
| impl<M: ethers::providers::Middleware> From<ethers::contract::Contract<M>> for IERC20<M> { | |
| fn from(contract: ethers::contract::Contract<M>) -> Self { | |
| Self(contract) | |
| } | |
| } | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthEvent, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethevent(name = "Approval", abi = "Approval(address,address,uint256)")] | |
| pub struct ApprovalFilter { | |
| #[ethevent(indexed)] | |
| pub owner: ethers::core::types::Address, | |
| #[ethevent(indexed)] | |
| pub spender: ethers::core::types::Address, | |
| pub value: ethers::core::types::U256, | |
| } | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthEvent, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethevent(name = "Transfer", abi = "Transfer(address,address,uint256)")] | |
| pub struct TransferFilter { | |
| #[ethevent(indexed)] | |
| pub from: ethers::core::types::Address, | |
| #[ethevent(indexed)] | |
| pub to: ethers::core::types::Address, | |
| pub value: ethers::core::types::U256, | |
| } | |
| #[derive(Debug, Clone, PartialEq, Eq, ethers :: contract :: EthAbiType)] | |
| pub enum IERC20Events { | |
| ApprovalFilter(ApprovalFilter), | |
| TransferFilter(TransferFilter), | |
| } | |
| impl ethers::contract::EthLogDecode for IERC20Events { | |
| fn decode_log(log: ðers::core::abi::RawLog) -> Result<Self, ethers::core::abi::Error> | |
| where | |
| Self: Sized, | |
| { | |
| if let Ok(decoded) = ApprovalFilter::decode_log(log) { | |
| return Ok(IERC20Events::ApprovalFilter(decoded)); | |
| } | |
| if let Ok(decoded) = TransferFilter::decode_log(log) { | |
| return Ok(IERC20Events::TransferFilter(decoded)); | |
| } | |
| Err(ethers::core::abi::Error::InvalidData) | |
| } | |
| } | |
| impl ::std::fmt::Display for IERC20Events { | |
| fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result { | |
| match self { | |
| IERC20Events::ApprovalFilter(element) => element.fmt(f), | |
| IERC20Events::TransferFilter(element) => element.fmt(f), | |
| } | |
| } | |
| } | |
| #[doc = "Container type for all input parameters for the `allowance`function with signature `allowance(address,address)` and selector `[221, 98, 237, 62]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall(name = "allowance", abi = "allowance(address,address)")] | |
| pub struct AllowanceCall { | |
| pub owner: ethers::core::types::Address, | |
| pub spender: ethers::core::types::Address, | |
| } | |
| #[doc = "Container type for all input parameters for the `approve`function with signature `approve(address,uint256)` and selector `[9, 94, 167, 179]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall(name = "approve", abi = "approve(address,uint256)")] | |
| pub struct ApproveCall { | |
| pub spender: ethers::core::types::Address, | |
| pub amount: ethers::core::types::U256, | |
| } | |
| #[doc = "Container type for all input parameters for the `balanceOf`function with signature `balanceOf(address)` and selector `[112, 160, 130, 49]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall(name = "balanceOf", abi = "balanceOf(address)")] | |
| pub struct BalanceOfCall { | |
| pub account: ethers::core::types::Address, | |
| } | |
| #[doc = "Container type for all input parameters for the `totalSupply`function with signature `totalSupply()` and selector `[24, 22, 13, 221]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall(name = "totalSupply", abi = "totalSupply()")] | |
| pub struct TotalSupplyCall; | |
| #[doc = "Container type for all input parameters for the `transfer`function with signature `transfer(address,uint256)` and selector `[169, 5, 156, 187]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall(name = "transfer", abi = "transfer(address,uint256)")] | |
| pub struct TransferCall { | |
| pub recipient: ethers::core::types::Address, | |
| pub amount: ethers::core::types::U256, | |
| } | |
| #[doc = "Container type for all input parameters for the `transferFrom`function with signature `transferFrom(address,address,uint256)` and selector `[35, 184, 114, 221]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall(name = "transferFrom", abi = "transferFrom(address,address,uint256)")] | |
| pub struct TransferFromCall { | |
| pub sender: ethers::core::types::Address, | |
| pub recipient: ethers::core::types::Address, | |
| pub amount: ethers::core::types::U256, | |
| } | |
| #[derive(Debug, Clone, PartialEq, Eq, ethers :: contract :: EthAbiType)] | |
| pub enum IERC20Calls { | |
| Allowance(AllowanceCall), | |
| Approve(ApproveCall), | |
| BalanceOf(BalanceOfCall), | |
| TotalSupply(TotalSupplyCall), | |
| Transfer(TransferCall), | |
| TransferFrom(TransferFromCall), | |
| } | |
| impl ethers::core::abi::AbiDecode for IERC20Calls { | |
| fn decode(data: impl AsRef<[u8]>) -> Result<Self, ethers::core::abi::AbiError> { | |
| if let Ok(decoded) = | |
| <AllowanceCall as ethers::core::abi::AbiDecode>::decode(data.as_ref()) | |
| { | |
| return Ok(IERC20Calls::Allowance(decoded)); | |
| } | |
| if let Ok(decoded) = | |
| <ApproveCall as ethers::core::abi::AbiDecode>::decode(data.as_ref()) | |
| { | |
| return Ok(IERC20Calls::Approve(decoded)); | |
| } | |
| if let Ok(decoded) = | |
| <BalanceOfCall as ethers::core::abi::AbiDecode>::decode(data.as_ref()) | |
| { | |
| return Ok(IERC20Calls::BalanceOf(decoded)); | |
| } | |
| if let Ok(decoded) = | |
| <TotalSupplyCall as ethers::core::abi::AbiDecode>::decode(data.as_ref()) | |
| { | |
| return Ok(IERC20Calls::TotalSupply(decoded)); | |
| } | |
| if let Ok(decoded) = | |
| <TransferCall as ethers::core::abi::AbiDecode>::decode(data.as_ref()) | |
| { | |
| return Ok(IERC20Calls::Transfer(decoded)); | |
| } | |
| if let Ok(decoded) = | |
| <TransferFromCall as ethers::core::abi::AbiDecode>::decode(data.as_ref()) | |
| { | |
| return Ok(IERC20Calls::TransferFrom(decoded)); | |
| } | |
| Err(ethers::core::abi::Error::InvalidData.into()) | |
| } | |
| } | |
| impl ethers::core::abi::AbiEncode for IERC20Calls { | |
| fn encode(self) -> Vec<u8> { | |
| match self { | |
| IERC20Calls::Allowance(element) => element.encode(), | |
| IERC20Calls::Approve(element) => element.encode(), | |
| IERC20Calls::BalanceOf(element) => element.encode(), | |
| IERC20Calls::TotalSupply(element) => element.encode(), | |
| IERC20Calls::Transfer(element) => element.encode(), | |
| IERC20Calls::TransferFrom(element) => element.encode(), | |
| } | |
| } | |
| } | |
| impl ::std::fmt::Display for IERC20Calls { | |
| fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result { | |
| match self { | |
| IERC20Calls::Allowance(element) => element.fmt(f), | |
| IERC20Calls::Approve(element) => element.fmt(f), | |
| IERC20Calls::BalanceOf(element) => element.fmt(f), | |
| IERC20Calls::TotalSupply(element) => element.fmt(f), | |
| IERC20Calls::Transfer(element) => element.fmt(f), | |
| IERC20Calls::TransferFrom(element) => element.fmt(f), | |
| } | |
| } | |
| } | |
| impl ::std::convert::From<AllowanceCall> for IERC20Calls { | |
| fn from(var: AllowanceCall) -> Self { | |
| IERC20Calls::Allowance(var) | |
| } | |
| } | |
| impl ::std::convert::From<ApproveCall> for IERC20Calls { | |
| fn from(var: ApproveCall) -> Self { | |
| IERC20Calls::Approve(var) | |
| } | |
| } | |
| impl ::std::convert::From<BalanceOfCall> for IERC20Calls { | |
| fn from(var: BalanceOfCall) -> Self { | |
| IERC20Calls::BalanceOf(var) | |
| } | |
| } | |
| impl ::std::convert::From<TotalSupplyCall> for IERC20Calls { | |
| fn from(var: TotalSupplyCall) -> Self { | |
| IERC20Calls::TotalSupply(var) | |
| } | |
| } | |
| impl ::std::convert::From<TransferCall> for IERC20Calls { | |
| fn from(var: TransferCall) -> Self { | |
| IERC20Calls::Transfer(var) | |
| } | |
| } | |
| impl ::std::convert::From<TransferFromCall> for IERC20Calls { | |
| fn from(var: TransferFromCall) -> Self { | |
| IERC20Calls::TransferFrom(var) | |
| } | |
| } | |
| } | |
| pub use iplonkverifier_mod::*; | |
| #[allow(clippy::too_many_arguments, non_camel_case_types)] | |
| pub mod iplonkverifier_mod { | |
| #![allow(clippy::enum_variant_names)] | |
| #![allow(dead_code)] | |
| #![allow(clippy::type_complexity)] | |
| #![allow(unused_imports)] | |
| pub use super::__shared_types::*; | |
| use ethers::contract::{ | |
| builders::{ContractCall, Event}, | |
| Contract, Lazy, | |
| }; | |
| use ethers::core::{ | |
| abi::{Abi, Detokenize, InvalidOutputType, Token, Tokenizable}, | |
| types::*, | |
| }; | |
| use ethers::providers::Middleware; | |
| #[doc = "IPlonkVerifier was auto-generated with ethers-rs Abigen. More information at: https://github.com/gakonst/ethers-rs"] | |
| use std::sync::Arc; | |
| pub static IPLONKVERIFIER_ABI: ethers::contract::Lazy<ethers::core::abi::Abi> = | |
| ethers::contract::Lazy::new(|| { | |
| serde_json :: from_str ("[{\"inputs\":[{\"internalType\":\"struct IPlonkVerifier.VerifyingKey[]\",\"name\":\"verifyingKeys\",\"type\":\"tuple[]\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"domainSize\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"numInputs\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"sigma0\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"sigma1\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"sigma2\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"sigma3\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"sigma4\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"q1\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"q2\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"q3\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"q4\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"qM12\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"qM34\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"qO\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"qC\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"qH1\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"qH2\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"qH3\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"qH4\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"qEcc\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]}]},{\"internalType\":\"uint256[][]\",\"name\":\"publicInputs\",\"type\":\"uint256[][]\",\"components\":[]},{\"internalType\":\"struct IPlonkVerifier.PlonkProof[]\",\"name\":\"proofs\",\"type\":\"tuple[]\",\"components\":[{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire0\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire1\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire2\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire3\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire4\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"prodPerm\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split0\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split1\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split2\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split3\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split4\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"zeta\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"zetaOmega\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"uint256\",\"name\":\"wireEval0\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval1\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval2\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval3\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval4\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval0\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval1\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval2\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval3\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"prodPermZetaOmegaEval\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"bytes[]\",\"name\":\"extraTranscriptInitMsgs\",\"type\":\"bytes[]\",\"components\":[]}],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"batchVerify\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\",\"components\":[]}]}]") . expect ("invalid abi") | |
| }); | |
| pub struct IPlonkVerifier<M>(ethers::contract::Contract<M>); | |
| impl<M> Clone for IPlonkVerifier<M> { | |
| fn clone(&self) -> Self { | |
| IPlonkVerifier(self.0.clone()) | |
| } | |
| } | |
| impl<M> std::ops::Deref for IPlonkVerifier<M> { | |
| type Target = ethers::contract::Contract<M>; | |
| fn deref(&self) -> &Self::Target { | |
| &self.0 | |
| } | |
| } | |
| impl<M: ethers::providers::Middleware> std::fmt::Debug for IPlonkVerifier<M> { | |
| fn fmt(&self, f: &mut std::fmt::Formatter) -> std::fmt::Result { | |
| f.debug_tuple(stringify!(IPlonkVerifier)) | |
| .field(&self.address()) | |
| .finish() | |
| } | |
| } | |
| impl<M: ethers::providers::Middleware> IPlonkVerifier<M> { | |
| #[doc = r" Creates a new contract instance with the specified `ethers`"] | |
| #[doc = r" client at the given `Address`. The contract derefs to a `ethers::Contract`"] | |
| #[doc = r" object"] | |
| pub fn new<T: Into<ethers::core::types::Address>>( | |
| address: T, | |
| client: ::std::sync::Arc<M>, | |
| ) -> Self { | |
| ethers::contract::Contract::new(address.into(), IPLONKVERIFIER_ABI.clone(), client) | |
| .into() | |
| } | |
| #[doc = "Calls the contract's `batchVerify` (0x830affd6) function"] | |
| pub fn batch_verify( | |
| &self, | |
| verifying_keys: ::std::vec::Vec<VerifyingKey>, | |
| public_inputs: ::std::vec::Vec<::std::vec::Vec<ethers::core::types::U256>>, | |
| proofs: ::std::vec::Vec<PlonkProof>, | |
| extra_transcript_init_msgs: ::std::vec::Vec<ethers::core::types::Bytes>, | |
| ) -> ethers::contract::builders::ContractCall<M, bool> { | |
| self.0 | |
| .method_hash( | |
| [131, 10, 255, 214], | |
| ( | |
| verifying_keys, | |
| public_inputs, | |
| proofs, | |
| extra_transcript_init_msgs, | |
| ), | |
| ) | |
| .expect("method not found (this should never happen)") | |
| } | |
| } | |
| impl<M: ethers::providers::Middleware> From<ethers::contract::Contract<M>> for IPlonkVerifier<M> { | |
| fn from(contract: ethers::contract::Contract<M>) -> Self { | |
| Self(contract) | |
| } | |
| } | |
| #[doc = "Container type for all input parameters for the `batchVerify`function with signature `batchVerify((uint256,uint256,(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256))[],uint256[][],((uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256)[],bytes[])` and selector `[131, 10, 255, 214]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall( | |
| name = "batchVerify", | |
| abi = "batchVerify((uint256,uint256,(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256))[],uint256[][],((uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256)[],bytes[])" | |
| )] | |
| pub struct BatchVerifyCall { | |
| pub verifying_keys: ::std::vec::Vec<VerifyingKey>, | |
| pub public_inputs: ::std::vec::Vec<::std::vec::Vec<ethers::core::types::U256>>, | |
| pub proofs: ::std::vec::Vec<PlonkProof>, | |
| pub extra_transcript_init_msgs: ::std::vec::Vec<ethers::core::types::Bytes>, | |
| } | |
| } | |
| pub use irecordsmerkletree_mod::*; | |
| #[allow(clippy::too_many_arguments, non_camel_case_types)] | |
| pub mod irecordsmerkletree_mod { | |
| #![allow(clippy::enum_variant_names)] | |
| #![allow(dead_code)] | |
| #![allow(clippy::type_complexity)] | |
| #![allow(unused_imports)] | |
| use ethers::contract::{ | |
| builders::{ContractCall, Event}, | |
| Contract, Lazy, | |
| }; | |
| use ethers::core::{ | |
| abi::{Abi, Detokenize, InvalidOutputType, Token, Tokenizable}, | |
| types::*, | |
| }; | |
| use ethers::providers::Middleware; | |
| #[doc = "IRecordsMerkleTree was auto-generated with ethers-rs Abigen. More information at: https://github.com/gakonst/ethers-rs"] | |
| use std::sync::Arc; | |
| pub static IRECORDSMERKLETREE_ABI: ethers::contract::Lazy<ethers::core::abi::Abi> = | |
| ethers::contract::Lazy::new(|| { | |
| serde_json :: from_str ("[{\"inputs\":[],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"getHeight\",\"outputs\":[{\"internalType\":\"uint8\",\"name\":\"\",\"type\":\"uint8\",\"components\":[]}]},{\"inputs\":[],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"getNumLeaves\",\"outputs\":[{\"internalType\":\"uint64\",\"name\":\"\",\"type\":\"uint64\",\"components\":[]}]},{\"inputs\":[],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"getRootValue\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\",\"components\":[]}]},{\"inputs\":[{\"internalType\":\"uint256[]\",\"name\":\"elements\",\"type\":\"uint256[]\",\"components\":[]}],\"stateMutability\":\"nonpayable\",\"type\":\"function\",\"name\":\"updateRecordsMerkleTree\",\"outputs\":[]}]") . expect ("invalid abi") | |
| }); | |
| pub struct IRecordsMerkleTree<M>(ethers::contract::Contract<M>); | |
| impl<M> Clone for IRecordsMerkleTree<M> { | |
| fn clone(&self) -> Self { | |
| IRecordsMerkleTree(self.0.clone()) | |
| } | |
| } | |
| impl<M> std::ops::Deref for IRecordsMerkleTree<M> { | |
| type Target = ethers::contract::Contract<M>; | |
| fn deref(&self) -> &Self::Target { | |
| &self.0 | |
| } | |
| } | |
| impl<M: ethers::providers::Middleware> std::fmt::Debug for IRecordsMerkleTree<M> { | |
| fn fmt(&self, f: &mut std::fmt::Formatter) -> std::fmt::Result { | |
| f.debug_tuple(stringify!(IRecordsMerkleTree)) | |
| .field(&self.address()) | |
| .finish() | |
| } | |
| } | |
| impl<M: ethers::providers::Middleware> IRecordsMerkleTree<M> { | |
| #[doc = r" Creates a new contract instance with the specified `ethers`"] | |
| #[doc = r" client at the given `Address`. The contract derefs to a `ethers::Contract`"] | |
| #[doc = r" object"] | |
| pub fn new<T: Into<ethers::core::types::Address>>( | |
| address: T, | |
| client: ::std::sync::Arc<M>, | |
| ) -> Self { | |
| ethers::contract::Contract::new(address.into(), IRECORDSMERKLETREE_ABI.clone(), client) | |
| .into() | |
| } | |
| #[doc = "Calls the contract's `getHeight` (0x19efb11d) function"] | |
| pub fn get_height(&self) -> ethers::contract::builders::ContractCall<M, u8> { | |
| self.0 | |
| .method_hash([25, 239, 177, 29], ()) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Calls the contract's `getNumLeaves` (0x927d52ab) function"] | |
| pub fn get_num_leaves(&self) -> ethers::contract::builders::ContractCall<M, u64> { | |
| self.0 | |
| .method_hash([146, 125, 82, 171], ()) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Calls the contract's `getRootValue` (0x6444c8d1) function"] | |
| pub fn get_root_value( | |
| &self, | |
| ) -> ethers::contract::builders::ContractCall<M, ethers::core::types::U256> { | |
| self.0 | |
| .method_hash([100, 68, 200, 209], ()) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Calls the contract's `updateRecordsMerkleTree` (0x330ee6a7) function"] | |
| pub fn update_records_merkle_tree( | |
| &self, | |
| elements: ::std::vec::Vec<ethers::core::types::U256>, | |
| ) -> ethers::contract::builders::ContractCall<M, ()> { | |
| self.0 | |
| .method_hash([51, 14, 230, 167], elements) | |
| .expect("method not found (this should never happen)") | |
| } | |
| } | |
| impl<M: ethers::providers::Middleware> From<ethers::contract::Contract<M>> | |
| for IRecordsMerkleTree<M> | |
| { | |
| fn from(contract: ethers::contract::Contract<M>) -> Self { | |
| Self(contract) | |
| } | |
| } | |
| #[doc = "Container type for all input parameters for the `getHeight`function with signature `getHeight()` and selector `[25, 239, 177, 29]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall(name = "getHeight", abi = "getHeight()")] | |
| pub struct GetHeightCall; | |
| #[doc = "Container type for all input parameters for the `getNumLeaves`function with signature `getNumLeaves()` and selector `[146, 125, 82, 171]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall(name = "getNumLeaves", abi = "getNumLeaves()")] | |
| pub struct GetNumLeavesCall; | |
| #[doc = "Container type for all input parameters for the `getRootValue`function with signature `getRootValue()` and selector `[100, 68, 200, 209]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall(name = "getRootValue", abi = "getRootValue()")] | |
| pub struct GetRootValueCall; | |
| #[doc = "Container type for all input parameters for the `updateRecordsMerkleTree`function with signature `updateRecordsMerkleTree(uint256[])` and selector `[51, 14, 230, 167]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall( | |
| name = "updateRecordsMerkleTree", | |
| abi = "updateRecordsMerkleTree(uint256[])" | |
| )] | |
| pub struct UpdateRecordsMerkleTreeCall { | |
| pub elements: ::std::vec::Vec<ethers::core::types::U256>, | |
| } | |
| #[derive(Debug, Clone, PartialEq, Eq, ethers :: contract :: EthAbiType)] | |
| pub enum IRecordsMerkleTreeCalls { | |
| GetHeight(GetHeightCall), | |
| GetNumLeaves(GetNumLeavesCall), | |
| GetRootValue(GetRootValueCall), | |
| UpdateRecordsMerkleTree(UpdateRecordsMerkleTreeCall), | |
| } | |
| impl ethers::core::abi::AbiDecode for IRecordsMerkleTreeCalls { | |
| fn decode(data: impl AsRef<[u8]>) -> Result<Self, ethers::core::abi::AbiError> { | |
| if let Ok(decoded) = | |
| <GetHeightCall as ethers::core::abi::AbiDecode>::decode(data.as_ref()) | |
| { | |
| return Ok(IRecordsMerkleTreeCalls::GetHeight(decoded)); | |
| } | |
| if let Ok(decoded) = | |
| <GetNumLeavesCall as ethers::core::abi::AbiDecode>::decode(data.as_ref()) | |
| { | |
| return Ok(IRecordsMerkleTreeCalls::GetNumLeaves(decoded)); | |
| } | |
| if let Ok(decoded) = | |
| <GetRootValueCall as ethers::core::abi::AbiDecode>::decode(data.as_ref()) | |
| { | |
| return Ok(IRecordsMerkleTreeCalls::GetRootValue(decoded)); | |
| } | |
| if let Ok(decoded) = | |
| <UpdateRecordsMerkleTreeCall as ethers::core::abi::AbiDecode>::decode(data.as_ref()) | |
| { | |
| return Ok(IRecordsMerkleTreeCalls::UpdateRecordsMerkleTree(decoded)); | |
| } | |
| Err(ethers::core::abi::Error::InvalidData.into()) | |
| } | |
| } | |
| impl ethers::core::abi::AbiEncode for IRecordsMerkleTreeCalls { | |
| fn encode(self) -> Vec<u8> { | |
| match self { | |
| IRecordsMerkleTreeCalls::GetHeight(element) => element.encode(), | |
| IRecordsMerkleTreeCalls::GetNumLeaves(element) => element.encode(), | |
| IRecordsMerkleTreeCalls::GetRootValue(element) => element.encode(), | |
| IRecordsMerkleTreeCalls::UpdateRecordsMerkleTree(element) => element.encode(), | |
| } | |
| } | |
| } | |
| impl ::std::fmt::Display for IRecordsMerkleTreeCalls { | |
| fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result { | |
| match self { | |
| IRecordsMerkleTreeCalls::GetHeight(element) => element.fmt(f), | |
| IRecordsMerkleTreeCalls::GetNumLeaves(element) => element.fmt(f), | |
| IRecordsMerkleTreeCalls::GetRootValue(element) => element.fmt(f), | |
| IRecordsMerkleTreeCalls::UpdateRecordsMerkleTree(element) => element.fmt(f), | |
| } | |
| } | |
| } | |
| impl ::std::convert::From<GetHeightCall> for IRecordsMerkleTreeCalls { | |
| fn from(var: GetHeightCall) -> Self { | |
| IRecordsMerkleTreeCalls::GetHeight(var) | |
| } | |
| } | |
| impl ::std::convert::From<GetNumLeavesCall> for IRecordsMerkleTreeCalls { | |
| fn from(var: GetNumLeavesCall) -> Self { | |
| IRecordsMerkleTreeCalls::GetNumLeaves(var) | |
| } | |
| } | |
| impl ::std::convert::From<GetRootValueCall> for IRecordsMerkleTreeCalls { | |
| fn from(var: GetRootValueCall) -> Self { | |
| IRecordsMerkleTreeCalls::GetRootValue(var) | |
| } | |
| } | |
| impl ::std::convert::From<UpdateRecordsMerkleTreeCall> for IRecordsMerkleTreeCalls { | |
| fn from(var: UpdateRecordsMerkleTreeCall) -> Self { | |
| IRecordsMerkleTreeCalls::UpdateRecordsMerkleTree(var) | |
| } | |
| } | |
| } | |
| pub use malicioustoken_mod::*; | |
| #[allow(clippy::too_many_arguments, non_camel_case_types)] | |
| pub mod malicioustoken_mod { | |
| #![allow(clippy::enum_variant_names)] | |
| #![allow(dead_code)] | |
| #![allow(clippy::type_complexity)] | |
| #![allow(unused_imports)] | |
| use ethers::contract::{ | |
| builders::{ContractCall, Event}, | |
| Contract, Lazy, | |
| }; | |
| use ethers::core::{ | |
| abi::{Abi, Detokenize, InvalidOutputType, Token, Tokenizable}, | |
| types::*, | |
| }; | |
| use ethers::providers::Middleware; | |
| #[doc = "MaliciousToken was auto-generated with ethers-rs Abigen. More information at: https://github.com/gakonst/ethers-rs"] | |
| use std::sync::Arc; | |
| pub static MALICIOUSTOKEN_ABI: ethers::contract::Lazy<ethers::core::abi::Abi> = | |
| ethers::contract::Lazy::new(|| { | |
| serde_json :: from_str ("[{\"inputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\",\"outputs\":[]},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\",\"components\":[],\"indexed\":true},{\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\",\"components\":[],\"indexed\":true},{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\",\"components\":[],\"indexed\":false}],\"type\":\"event\",\"name\":\"Approval\",\"outputs\":[],\"anonymous\":false},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\",\"components\":[],\"indexed\":true},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\",\"components\":[],\"indexed\":true},{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\",\"components\":[],\"indexed\":false}],\"type\":\"event\",\"name\":\"Transfer\",\"outputs\":[],\"anonymous\":false},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\",\"components\":[]},{\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\",\"components\":[]}],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"allowance\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\",\"components\":[]}]},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\",\"components\":[]}],\"stateMutability\":\"nonpayable\",\"type\":\"function\",\"name\":\"approve\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\",\"components\":[]}]},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\",\"components\":[]}],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"balanceOf\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\",\"components\":[]}]},{\"inputs\":[],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"decimals\",\"outputs\":[{\"internalType\":\"uint8\",\"name\":\"\",\"type\":\"uint8\",\"components\":[]}]},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"subtractedValue\",\"type\":\"uint256\",\"components\":[]}],\"stateMutability\":\"nonpayable\",\"type\":\"function\",\"name\":\"decreaseAllowance\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\",\"components\":[]}]},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"addedValue\",\"type\":\"uint256\",\"components\":[]}],\"stateMutability\":\"nonpayable\",\"type\":\"function\",\"name\":\"increaseAllowance\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\",\"components\":[]}]},{\"inputs\":[],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"name\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\",\"components\":[]}]},{\"inputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\",\"name\":\"selectDepositAttack\",\"outputs\":[]},{\"inputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\",\"name\":\"selectSubmitBlockAttack\",\"outputs\":[]},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"targetContractAddress\",\"type\":\"address\",\"components\":[]}],\"stateMutability\":\"nonpayable\",\"type\":\"function\",\"name\":\"setTargetContractAddress\",\"outputs\":[]},{\"inputs\":[],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"symbol\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\",\"components\":[]}]},{\"inputs\":[],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"totalSupply\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\",\"components\":[]}]},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"recipient\",\"type\":\"address\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\",\"components\":[]}],\"stateMutability\":\"nonpayable\",\"type\":\"function\",\"name\":\"transfer\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\",\"components\":[]}]},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\",\"components\":[]},{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\",\"components\":[]}],\"stateMutability\":\"nonpayable\",\"type\":\"function\",\"name\":\"transferFrom\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\",\"components\":[]}]}]") . expect ("invalid abi") | |
| }); | |
| pub struct MaliciousToken<M>(ethers::contract::Contract<M>); | |
| impl<M> Clone for MaliciousToken<M> { | |
| fn clone(&self) -> Self { | |
| MaliciousToken(self.0.clone()) | |
| } | |
| } | |
| impl<M> std::ops::Deref for MaliciousToken<M> { | |
| type Target = ethers::contract::Contract<M>; | |
| fn deref(&self) -> &Self::Target { | |
| &self.0 | |
| } | |
| } | |
| impl<M: ethers::providers::Middleware> std::fmt::Debug for MaliciousToken<M> { | |
| fn fmt(&self, f: &mut std::fmt::Formatter) -> std::fmt::Result { | |
| f.debug_tuple(stringify!(MaliciousToken)) | |
| .field(&self.address()) | |
| .finish() | |
| } | |
| } | |
| impl<M: ethers::providers::Middleware> MaliciousToken<M> { | |
| #[doc = r" Creates a new contract instance with the specified `ethers`"] | |
| #[doc = r" client at the given `Address`. The contract derefs to a `ethers::Contract`"] | |
| #[doc = r" object"] | |
| pub fn new<T: Into<ethers::core::types::Address>>( | |
| address: T, | |
| client: ::std::sync::Arc<M>, | |
| ) -> Self { | |
| ethers::contract::Contract::new(address.into(), MALICIOUSTOKEN_ABI.clone(), client) | |
| .into() | |
| } | |
| #[doc = "Calls the contract's `allowance` (0xdd62ed3e) function"] | |
| pub fn allowance( | |
| &self, | |
| owner: ethers::core::types::Address, | |
| spender: ethers::core::types::Address, | |
| ) -> ethers::contract::builders::ContractCall<M, ethers::core::types::U256> { | |
| self.0 | |
| .method_hash([221, 98, 237, 62], (owner, spender)) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Calls the contract's `approve` (0x095ea7b3) function"] | |
| pub fn approve( | |
| &self, | |
| spender: ethers::core::types::Address, | |
| amount: ethers::core::types::U256, | |
| ) -> ethers::contract::builders::ContractCall<M, bool> { | |
| self.0 | |
| .method_hash([9, 94, 167, 179], (spender, amount)) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Calls the contract's `balanceOf` (0x70a08231) function"] | |
| pub fn balance_of( | |
| &self, | |
| account: ethers::core::types::Address, | |
| ) -> ethers::contract::builders::ContractCall<M, ethers::core::types::U256> { | |
| self.0 | |
| .method_hash([112, 160, 130, 49], account) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Calls the contract's `decimals` (0x313ce567) function"] | |
| pub fn decimals(&self) -> ethers::contract::builders::ContractCall<M, u8> { | |
| self.0 | |
| .method_hash([49, 60, 229, 103], ()) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Calls the contract's `decreaseAllowance` (0xa457c2d7) function"] | |
| pub fn decrease_allowance( | |
| &self, | |
| spender: ethers::core::types::Address, | |
| subtracted_value: ethers::core::types::U256, | |
| ) -> ethers::contract::builders::ContractCall<M, bool> { | |
| self.0 | |
| .method_hash([164, 87, 194, 215], (spender, subtracted_value)) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Calls the contract's `increaseAllowance` (0x39509351) function"] | |
| pub fn increase_allowance( | |
| &self, | |
| spender: ethers::core::types::Address, | |
| added_value: ethers::core::types::U256, | |
| ) -> ethers::contract::builders::ContractCall<M, bool> { | |
| self.0 | |
| .method_hash([57, 80, 147, 81], (spender, added_value)) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Calls the contract's `name` (0x06fdde03) function"] | |
| pub fn name(&self) -> ethers::contract::builders::ContractCall<M, String> { | |
| self.0 | |
| .method_hash([6, 253, 222, 3], ()) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Calls the contract's `selectDepositAttack` (0xe19a714a) function"] | |
| pub fn select_deposit_attack(&self) -> ethers::contract::builders::ContractCall<M, ()> { | |
| self.0 | |
| .method_hash([225, 154, 113, 74], ()) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Calls the contract's `selectSubmitBlockAttack` (0x9a94498d) function"] | |
| pub fn select_submit_block_attack( | |
| &self, | |
| ) -> ethers::contract::builders::ContractCall<M, ()> { | |
| self.0 | |
| .method_hash([154, 148, 73, 141], ()) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Calls the contract's `setTargetContractAddress` (0x4fd15386) function"] | |
| pub fn set_target_contract_address( | |
| &self, | |
| target_contract_address: ethers::core::types::Address, | |
| ) -> ethers::contract::builders::ContractCall<M, ()> { | |
| self.0 | |
| .method_hash([79, 209, 83, 134], target_contract_address) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Calls the contract's `symbol` (0x95d89b41) function"] | |
| pub fn symbol(&self) -> ethers::contract::builders::ContractCall<M, String> { | |
| self.0 | |
| .method_hash([149, 216, 155, 65], ()) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Calls the contract's `totalSupply` (0x18160ddd) function"] | |
| pub fn total_supply( | |
| &self, | |
| ) -> ethers::contract::builders::ContractCall<M, ethers::core::types::U256> { | |
| self.0 | |
| .method_hash([24, 22, 13, 221], ()) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Calls the contract's `transfer` (0xa9059cbb) function"] | |
| pub fn transfer( | |
| &self, | |
| recipient: ethers::core::types::Address, | |
| amount: ethers::core::types::U256, | |
| ) -> ethers::contract::builders::ContractCall<M, bool> { | |
| self.0 | |
| .method_hash([169, 5, 156, 187], (recipient, amount)) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Calls the contract's `transferFrom` (0x23b872dd) function"] | |
| pub fn transfer_from( | |
| &self, | |
| p0: ethers::core::types::Address, | |
| p1: ethers::core::types::Address, | |
| p2: ethers::core::types::U256, | |
| ) -> ethers::contract::builders::ContractCall<M, bool> { | |
| self.0 | |
| .method_hash([35, 184, 114, 221], (p0, p1, p2)) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Gets the contract's `Approval` event"] | |
| pub fn approval_filter(&self) -> ethers::contract::builders::Event<M, ApprovalFilter> { | |
| self.0.event() | |
| } | |
| #[doc = "Gets the contract's `Transfer` event"] | |
| pub fn transfer_filter(&self) -> ethers::contract::builders::Event<M, TransferFilter> { | |
| self.0.event() | |
| } | |
| #[doc = r" Returns an [`Event`](#ethers_contract::builders::Event) builder for all events of this contract"] | |
| pub fn events(&self) -> ethers::contract::builders::Event<M, MaliciousTokenEvents> { | |
| self.0.event_with_filter(Default::default()) | |
| } | |
| } | |
| impl<M: ethers::providers::Middleware> From<ethers::contract::Contract<M>> for MaliciousToken<M> { | |
| fn from(contract: ethers::contract::Contract<M>) -> Self { | |
| Self(contract) | |
| } | |
| } | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthEvent, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethevent(name = "Approval", abi = "Approval(address,address,uint256)")] | |
| pub struct ApprovalFilter { | |
| #[ethevent(indexed)] | |
| pub owner: ethers::core::types::Address, | |
| #[ethevent(indexed)] | |
| pub spender: ethers::core::types::Address, | |
| pub value: ethers::core::types::U256, | |
| } | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthEvent, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethevent(name = "Transfer", abi = "Transfer(address,address,uint256)")] | |
| pub struct TransferFilter { | |
| #[ethevent(indexed)] | |
| pub from: ethers::core::types::Address, | |
| #[ethevent(indexed)] | |
| pub to: ethers::core::types::Address, | |
| pub value: ethers::core::types::U256, | |
| } | |
| #[derive(Debug, Clone, PartialEq, Eq, ethers :: contract :: EthAbiType)] | |
| pub enum MaliciousTokenEvents { | |
| ApprovalFilter(ApprovalFilter), | |
| TransferFilter(TransferFilter), | |
| } | |
| impl ethers::contract::EthLogDecode for MaliciousTokenEvents { | |
| fn decode_log(log: ðers::core::abi::RawLog) -> Result<Self, ethers::core::abi::Error> | |
| where | |
| Self: Sized, | |
| { | |
| if let Ok(decoded) = ApprovalFilter::decode_log(log) { | |
| return Ok(MaliciousTokenEvents::ApprovalFilter(decoded)); | |
| } | |
| if let Ok(decoded) = TransferFilter::decode_log(log) { | |
| return Ok(MaliciousTokenEvents::TransferFilter(decoded)); | |
| } | |
| Err(ethers::core::abi::Error::InvalidData) | |
| } | |
| } | |
| impl ::std::fmt::Display for MaliciousTokenEvents { | |
| fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result { | |
| match self { | |
| MaliciousTokenEvents::ApprovalFilter(element) => element.fmt(f), | |
| MaliciousTokenEvents::TransferFilter(element) => element.fmt(f), | |
| } | |
| } | |
| } | |
| #[doc = "Container type for all input parameters for the `allowance`function with signature `allowance(address,address)` and selector `[221, 98, 237, 62]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall(name = "allowance", abi = "allowance(address,address)")] | |
| pub struct AllowanceCall { | |
| pub owner: ethers::core::types::Address, | |
| pub spender: ethers::core::types::Address, | |
| } | |
| #[doc = "Container type for all input parameters for the `approve`function with signature `approve(address,uint256)` and selector `[9, 94, 167, 179]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall(name = "approve", abi = "approve(address,uint256)")] | |
| pub struct ApproveCall { | |
| pub spender: ethers::core::types::Address, | |
| pub amount: ethers::core::types::U256, | |
| } | |
| #[doc = "Container type for all input parameters for the `balanceOf`function with signature `balanceOf(address)` and selector `[112, 160, 130, 49]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall(name = "balanceOf", abi = "balanceOf(address)")] | |
| pub struct BalanceOfCall { | |
| pub account: ethers::core::types::Address, | |
| } | |
| #[doc = "Container type for all input parameters for the `decimals`function with signature `decimals()` and selector `[49, 60, 229, 103]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall(name = "decimals", abi = "decimals()")] | |
| pub struct DecimalsCall; | |
| #[doc = "Container type for all input parameters for the `decreaseAllowance`function with signature `decreaseAllowance(address,uint256)` and selector `[164, 87, 194, 215]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall(name = "decreaseAllowance", abi = "decreaseAllowance(address,uint256)")] | |
| pub struct DecreaseAllowanceCall { | |
| pub spender: ethers::core::types::Address, | |
| pub subtracted_value: ethers::core::types::U256, | |
| } | |
| #[doc = "Container type for all input parameters for the `increaseAllowance`function with signature `increaseAllowance(address,uint256)` and selector `[57, 80, 147, 81]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall(name = "increaseAllowance", abi = "increaseAllowance(address,uint256)")] | |
| pub struct IncreaseAllowanceCall { | |
| pub spender: ethers::core::types::Address, | |
| pub added_value: ethers::core::types::U256, | |
| } | |
| #[doc = "Container type for all input parameters for the `name`function with signature `name()` and selector `[6, 253, 222, 3]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall(name = "name", abi = "name()")] | |
| pub struct NameCall; | |
| #[doc = "Container type for all input parameters for the `selectDepositAttack`function with signature `selectDepositAttack()` and selector `[225, 154, 113, 74]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall(name = "selectDepositAttack", abi = "selectDepositAttack()")] | |
| pub struct SelectDepositAttackCall; | |
| #[doc = "Container type for all input parameters for the `selectSubmitBlockAttack`function with signature `selectSubmitBlockAttack()` and selector `[154, 148, 73, 141]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall(name = "selectSubmitBlockAttack", abi = "selectSubmitBlockAttack()")] | |
| pub struct SelectSubmitBlockAttackCall; | |
| #[doc = "Container type for all input parameters for the `setTargetContractAddress`function with signature `setTargetContractAddress(address)` and selector `[79, 209, 83, 134]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall( | |
| name = "setTargetContractAddress", | |
| abi = "setTargetContractAddress(address)" | |
| )] | |
| pub struct SetTargetContractAddressCall { | |
| pub target_contract_address: ethers::core::types::Address, | |
| } | |
| #[doc = "Container type for all input parameters for the `symbol`function with signature `symbol()` and selector `[149, 216, 155, 65]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall(name = "symbol", abi = "symbol()")] | |
| pub struct SymbolCall; | |
| #[doc = "Container type for all input parameters for the `totalSupply`function with signature `totalSupply()` and selector `[24, 22, 13, 221]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall(name = "totalSupply", abi = "totalSupply()")] | |
| pub struct TotalSupplyCall; | |
| #[doc = "Container type for all input parameters for the `transfer`function with signature `transfer(address,uint256)` and selector `[169, 5, 156, 187]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall(name = "transfer", abi = "transfer(address,uint256)")] | |
| pub struct TransferCall { | |
| pub recipient: ethers::core::types::Address, | |
| pub amount: ethers::core::types::U256, | |
| } | |
| #[doc = "Container type for all input parameters for the `transferFrom`function with signature `transferFrom(address,address,uint256)` and selector `[35, 184, 114, 221]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall(name = "transferFrom", abi = "transferFrom(address,address,uint256)")] | |
| pub struct TransferFromCall( | |
| pub ethers::core::types::Address, | |
| pub ethers::core::types::Address, | |
| pub ethers::core::types::U256, | |
| ); | |
| #[derive(Debug, Clone, PartialEq, Eq, ethers :: contract :: EthAbiType)] | |
| pub enum MaliciousTokenCalls { | |
| Allowance(AllowanceCall), | |
| Approve(ApproveCall), | |
| BalanceOf(BalanceOfCall), | |
| Decimals(DecimalsCall), | |
| DecreaseAllowance(DecreaseAllowanceCall), | |
| IncreaseAllowance(IncreaseAllowanceCall), | |
| Name(NameCall), | |
| SelectDepositAttack(SelectDepositAttackCall), | |
| SelectSubmitBlockAttack(SelectSubmitBlockAttackCall), | |
| SetTargetContractAddress(SetTargetContractAddressCall), | |
| Symbol(SymbolCall), | |
| TotalSupply(TotalSupplyCall), | |
| Transfer(TransferCall), | |
| TransferFrom(TransferFromCall), | |
| } | |
| impl ethers::core::abi::AbiDecode for MaliciousTokenCalls { | |
| fn decode(data: impl AsRef<[u8]>) -> Result<Self, ethers::core::abi::AbiError> { | |
| if let Ok(decoded) = | |
| <AllowanceCall as ethers::core::abi::AbiDecode>::decode(data.as_ref()) | |
| { | |
| return Ok(MaliciousTokenCalls::Allowance(decoded)); | |
| } | |
| if let Ok(decoded) = | |
| <ApproveCall as ethers::core::abi::AbiDecode>::decode(data.as_ref()) | |
| { | |
| return Ok(MaliciousTokenCalls::Approve(decoded)); | |
| } | |
| if let Ok(decoded) = | |
| <BalanceOfCall as ethers::core::abi::AbiDecode>::decode(data.as_ref()) | |
| { | |
| return Ok(MaliciousTokenCalls::BalanceOf(decoded)); | |
| } | |
| if let Ok(decoded) = | |
| <DecimalsCall as ethers::core::abi::AbiDecode>::decode(data.as_ref()) | |
| { | |
| return Ok(MaliciousTokenCalls::Decimals(decoded)); | |
| } | |
| if let Ok(decoded) = | |
| <DecreaseAllowanceCall as ethers::core::abi::AbiDecode>::decode(data.as_ref()) | |
| { | |
| return Ok(MaliciousTokenCalls::DecreaseAllowance(decoded)); | |
| } | |
| if let Ok(decoded) = | |
| <IncreaseAllowanceCall as ethers::core::abi::AbiDecode>::decode(data.as_ref()) | |
| { | |
| return Ok(MaliciousTokenCalls::IncreaseAllowance(decoded)); | |
| } | |
| if let Ok(decoded) = <NameCall as ethers::core::abi::AbiDecode>::decode(data.as_ref()) { | |
| return Ok(MaliciousTokenCalls::Name(decoded)); | |
| } | |
| if let Ok(decoded) = | |
| <SelectDepositAttackCall as ethers::core::abi::AbiDecode>::decode(data.as_ref()) | |
| { | |
| return Ok(MaliciousTokenCalls::SelectDepositAttack(decoded)); | |
| } | |
| if let Ok(decoded) = | |
| <SelectSubmitBlockAttackCall as ethers::core::abi::AbiDecode>::decode(data.as_ref()) | |
| { | |
| return Ok(MaliciousTokenCalls::SelectSubmitBlockAttack(decoded)); | |
| } | |
| if let Ok(decoded) = | |
| <SetTargetContractAddressCall as ethers::core::abi::AbiDecode>::decode( | |
| data.as_ref(), | |
| ) | |
| { | |
| return Ok(MaliciousTokenCalls::SetTargetContractAddress(decoded)); | |
| } | |
| if let Ok(decoded) = <SymbolCall as ethers::core::abi::AbiDecode>::decode(data.as_ref()) | |
| { | |
| return Ok(MaliciousTokenCalls::Symbol(decoded)); | |
| } | |
| if let Ok(decoded) = | |
| <TotalSupplyCall as ethers::core::abi::AbiDecode>::decode(data.as_ref()) | |
| { | |
| return Ok(MaliciousTokenCalls::TotalSupply(decoded)); | |
| } | |
| if let Ok(decoded) = | |
| <TransferCall as ethers::core::abi::AbiDecode>::decode(data.as_ref()) | |
| { | |
| return Ok(MaliciousTokenCalls::Transfer(decoded)); | |
| } | |
| if let Ok(decoded) = | |
| <TransferFromCall as ethers::core::abi::AbiDecode>::decode(data.as_ref()) | |
| { | |
| return Ok(MaliciousTokenCalls::TransferFrom(decoded)); | |
| } | |
| Err(ethers::core::abi::Error::InvalidData.into()) | |
| } | |
| } | |
| impl ethers::core::abi::AbiEncode for MaliciousTokenCalls { | |
| fn encode(self) -> Vec<u8> { | |
| match self { | |
| MaliciousTokenCalls::Allowance(element) => element.encode(), | |
| MaliciousTokenCalls::Approve(element) => element.encode(), | |
| MaliciousTokenCalls::BalanceOf(element) => element.encode(), | |
| MaliciousTokenCalls::Decimals(element) => element.encode(), | |
| MaliciousTokenCalls::DecreaseAllowance(element) => element.encode(), | |
| MaliciousTokenCalls::IncreaseAllowance(element) => element.encode(), | |
| MaliciousTokenCalls::Name(element) => element.encode(), | |
| MaliciousTokenCalls::SelectDepositAttack(element) => element.encode(), | |
| MaliciousTokenCalls::SelectSubmitBlockAttack(element) => element.encode(), | |
| MaliciousTokenCalls::SetTargetContractAddress(element) => element.encode(), | |
| MaliciousTokenCalls::Symbol(element) => element.encode(), | |
| MaliciousTokenCalls::TotalSupply(element) => element.encode(), | |
| MaliciousTokenCalls::Transfer(element) => element.encode(), | |
| MaliciousTokenCalls::TransferFrom(element) => element.encode(), | |
| } | |
| } | |
| } | |
| impl ::std::fmt::Display for MaliciousTokenCalls { | |
| fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result { | |
| match self { | |
| MaliciousTokenCalls::Allowance(element) => element.fmt(f), | |
| MaliciousTokenCalls::Approve(element) => element.fmt(f), | |
| MaliciousTokenCalls::BalanceOf(element) => element.fmt(f), | |
| MaliciousTokenCalls::Decimals(element) => element.fmt(f), | |
| MaliciousTokenCalls::DecreaseAllowance(element) => element.fmt(f), | |
| MaliciousTokenCalls::IncreaseAllowance(element) => element.fmt(f), | |
| MaliciousTokenCalls::Name(element) => element.fmt(f), | |
| MaliciousTokenCalls::SelectDepositAttack(element) => element.fmt(f), | |
| MaliciousTokenCalls::SelectSubmitBlockAttack(element) => element.fmt(f), | |
| MaliciousTokenCalls::SetTargetContractAddress(element) => element.fmt(f), | |
| MaliciousTokenCalls::Symbol(element) => element.fmt(f), | |
| MaliciousTokenCalls::TotalSupply(element) => element.fmt(f), | |
| MaliciousTokenCalls::Transfer(element) => element.fmt(f), | |
| MaliciousTokenCalls::TransferFrom(element) => element.fmt(f), | |
| } | |
| } | |
| } | |
| impl ::std::convert::From<AllowanceCall> for MaliciousTokenCalls { | |
| fn from(var: AllowanceCall) -> Self { | |
| MaliciousTokenCalls::Allowance(var) | |
| } | |
| } | |
| impl ::std::convert::From<ApproveCall> for MaliciousTokenCalls { | |
| fn from(var: ApproveCall) -> Self { | |
| MaliciousTokenCalls::Approve(var) | |
| } | |
| } | |
| impl ::std::convert::From<BalanceOfCall> for MaliciousTokenCalls { | |
| fn from(var: BalanceOfCall) -> Self { | |
| MaliciousTokenCalls::BalanceOf(var) | |
| } | |
| } | |
| impl ::std::convert::From<DecimalsCall> for MaliciousTokenCalls { | |
| fn from(var: DecimalsCall) -> Self { | |
| MaliciousTokenCalls::Decimals(var) | |
| } | |
| } | |
| impl ::std::convert::From<DecreaseAllowanceCall> for MaliciousTokenCalls { | |
| fn from(var: DecreaseAllowanceCall) -> Self { | |
| MaliciousTokenCalls::DecreaseAllowance(var) | |
| } | |
| } | |
| impl ::std::convert::From<IncreaseAllowanceCall> for MaliciousTokenCalls { | |
| fn from(var: IncreaseAllowanceCall) -> Self { | |
| MaliciousTokenCalls::IncreaseAllowance(var) | |
| } | |
| } | |
| impl ::std::convert::From<NameCall> for MaliciousTokenCalls { | |
| fn from(var: NameCall) -> Self { | |
| MaliciousTokenCalls::Name(var) | |
| } | |
| } | |
| impl ::std::convert::From<SelectDepositAttackCall> for MaliciousTokenCalls { | |
| fn from(var: SelectDepositAttackCall) -> Self { | |
| MaliciousTokenCalls::SelectDepositAttack(var) | |
| } | |
| } | |
| impl ::std::convert::From<SelectSubmitBlockAttackCall> for MaliciousTokenCalls { | |
| fn from(var: SelectSubmitBlockAttackCall) -> Self { | |
| MaliciousTokenCalls::SelectSubmitBlockAttack(var) | |
| } | |
| } | |
| impl ::std::convert::From<SetTargetContractAddressCall> for MaliciousTokenCalls { | |
| fn from(var: SetTargetContractAddressCall) -> Self { | |
| MaliciousTokenCalls::SetTargetContractAddress(var) | |
| } | |
| } | |
| impl ::std::convert::From<SymbolCall> for MaliciousTokenCalls { | |
| fn from(var: SymbolCall) -> Self { | |
| MaliciousTokenCalls::Symbol(var) | |
| } | |
| } | |
| impl ::std::convert::From<TotalSupplyCall> for MaliciousTokenCalls { | |
| fn from(var: TotalSupplyCall) -> Self { | |
| MaliciousTokenCalls::TotalSupply(var) | |
| } | |
| } | |
| impl ::std::convert::From<TransferCall> for MaliciousTokenCalls { | |
| fn from(var: TransferCall) -> Self { | |
| MaliciousTokenCalls::Transfer(var) | |
| } | |
| } | |
| impl ::std::convert::From<TransferFromCall> for MaliciousTokenCalls { | |
| fn from(var: TransferFromCall) -> Self { | |
| MaliciousTokenCalls::TransferFrom(var) | |
| } | |
| } | |
| } | |
| pub use mint1in2out24depthvk_mod::*; | |
| #[allow(clippy::too_many_arguments, non_camel_case_types)] | |
| pub mod mint1in2out24depthvk_mod { | |
| #![allow(clippy::enum_variant_names)] | |
| #![allow(dead_code)] | |
| #![allow(clippy::type_complexity)] | |
| #![allow(unused_imports)] | |
| use ethers::contract::{ | |
| builders::{ContractCall, Event}, | |
| Contract, Lazy, | |
| }; | |
| use ethers::core::{ | |
| abi::{Abi, Detokenize, InvalidOutputType, Token, Tokenizable}, | |
| types::*, | |
| }; | |
| use ethers::providers::Middleware; | |
| #[doc = "Mint1In2Out24DepthVk was auto-generated with ethers-rs Abigen. More information at: https://github.com/gakonst/ethers-rs"] | |
| use std::sync::Arc; | |
| pub static MINT1IN2OUT24DEPTHVK_ABI: ethers::contract::Lazy<ethers::core::abi::Abi> = | |
| ethers::contract::Lazy::new(|| serde_json::from_str("[]").expect("invalid abi")); | |
| pub struct Mint1In2Out24DepthVk<M>(ethers::contract::Contract<M>); | |
| impl<M> Clone for Mint1In2Out24DepthVk<M> { | |
| fn clone(&self) -> Self { | |
| Mint1In2Out24DepthVk(self.0.clone()) | |
| } | |
| } | |
| impl<M> std::ops::Deref for Mint1In2Out24DepthVk<M> { | |
| type Target = ethers::contract::Contract<M>; | |
| fn deref(&self) -> &Self::Target { | |
| &self.0 | |
| } | |
| } | |
| impl<M: ethers::providers::Middleware> std::fmt::Debug for Mint1In2Out24DepthVk<M> { | |
| fn fmt(&self, f: &mut std::fmt::Formatter) -> std::fmt::Result { | |
| f.debug_tuple(stringify!(Mint1In2Out24DepthVk)) | |
| .field(&self.address()) | |
| .finish() | |
| } | |
| } | |
| impl<M: ethers::providers::Middleware> Mint1In2Out24DepthVk<M> { | |
| #[doc = r" Creates a new contract instance with the specified `ethers`"] | |
| #[doc = r" client at the given `Address`. The contract derefs to a `ethers::Contract`"] | |
| #[doc = r" object"] | |
| pub fn new<T: Into<ethers::core::types::Address>>( | |
| address: T, | |
| client: ::std::sync::Arc<M>, | |
| ) -> Self { | |
| ethers::contract::Contract::new( | |
| address.into(), | |
| MINT1IN2OUT24DEPTHVK_ABI.clone(), | |
| client, | |
| ) | |
| .into() | |
| } | |
| } | |
| impl<M: ethers::providers::Middleware> From<ethers::contract::Contract<M>> | |
| for Mint1In2Out24DepthVk<M> | |
| { | |
| fn from(contract: ethers::contract::Contract<M>) -> Self { | |
| Self(contract) | |
| } | |
| } | |
| } | |
| pub use plonkverifier_mod::*; | |
| #[allow(clippy::too_many_arguments, non_camel_case_types)] | |
| pub mod plonkverifier_mod { | |
| #![allow(clippy::enum_variant_names)] | |
| #![allow(dead_code)] | |
| #![allow(clippy::type_complexity)] | |
| #![allow(unused_imports)] | |
| pub use super::__shared_types::*; | |
| use ethers::contract::{ | |
| builders::{ContractCall, Event}, | |
| Contract, Lazy, | |
| }; | |
| use ethers::core::{ | |
| abi::{Abi, Detokenize, InvalidOutputType, Token, Tokenizable}, | |
| types::*, | |
| }; | |
| use ethers::providers::Middleware; | |
| #[doc = "PlonkVerifier was auto-generated with ethers-rs Abigen. More information at: https://github.com/gakonst/ethers-rs"] | |
| use std::sync::Arc; | |
| pub static PLONKVERIFIER_ABI: ethers::contract::Lazy<ethers::core::abi::Abi> = | |
| ethers::contract::Lazy::new(|| { | |
| serde_json :: from_str ("[{\"inputs\":[{\"internalType\":\"struct IPlonkVerifier.VerifyingKey[]\",\"name\":\"verifyingKeys\",\"type\":\"tuple[]\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"domainSize\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"numInputs\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"sigma0\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"sigma1\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"sigma2\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"sigma3\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"sigma4\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"q1\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"q2\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"q3\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"q4\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"qM12\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"qM34\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"qO\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"qC\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"qH1\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"qH2\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"qH3\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"qH4\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"qEcc\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]}]},{\"internalType\":\"uint256[][]\",\"name\":\"publicInputs\",\"type\":\"uint256[][]\",\"components\":[]},{\"internalType\":\"struct IPlonkVerifier.PlonkProof[]\",\"name\":\"proofs\",\"type\":\"tuple[]\",\"components\":[{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire0\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire1\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire2\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire3\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire4\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"prodPerm\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split0\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split1\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split2\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split3\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split4\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"zeta\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"zetaOmega\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"uint256\",\"name\":\"wireEval0\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval1\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval2\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval3\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval4\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval0\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval1\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval2\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval3\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"prodPermZetaOmegaEval\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"bytes[]\",\"name\":\"extraTranscriptInitMsgs\",\"type\":\"bytes[]\",\"components\":[]}],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"batchVerify\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\",\"components\":[]}]}]") . expect ("invalid abi") | |
| }); | |
| pub struct PlonkVerifier<M>(ethers::contract::Contract<M>); | |
| impl<M> Clone for PlonkVerifier<M> { | |
| fn clone(&self) -> Self { | |
| PlonkVerifier(self.0.clone()) | |
| } | |
| } | |
| impl<M> std::ops::Deref for PlonkVerifier<M> { | |
| type Target = ethers::contract::Contract<M>; | |
| fn deref(&self) -> &Self::Target { | |
| &self.0 | |
| } | |
| } | |
| impl<M: ethers::providers::Middleware> std::fmt::Debug for PlonkVerifier<M> { | |
| fn fmt(&self, f: &mut std::fmt::Formatter) -> std::fmt::Result { | |
| f.debug_tuple(stringify!(PlonkVerifier)) | |
| .field(&self.address()) | |
| .finish() | |
| } | |
| } | |
| impl<M: ethers::providers::Middleware> PlonkVerifier<M> { | |
| #[doc = r" Creates a new contract instance with the specified `ethers`"] | |
| #[doc = r" client at the given `Address`. The contract derefs to a `ethers::Contract`"] | |
| #[doc = r" object"] | |
| pub fn new<T: Into<ethers::core::types::Address>>( | |
| address: T, | |
| client: ::std::sync::Arc<M>, | |
| ) -> Self { | |
| ethers::contract::Contract::new(address.into(), PLONKVERIFIER_ABI.clone(), client) | |
| .into() | |
| } | |
| #[doc = "Calls the contract's `batchVerify` (0x830affd6) function"] | |
| pub fn batch_verify( | |
| &self, | |
| verifying_keys: ::std::vec::Vec<VerifyingKey>, | |
| public_inputs: ::std::vec::Vec<::std::vec::Vec<ethers::core::types::U256>>, | |
| proofs: ::std::vec::Vec<PlonkProof>, | |
| extra_transcript_init_msgs: ::std::vec::Vec<ethers::core::types::Bytes>, | |
| ) -> ethers::contract::builders::ContractCall<M, bool> { | |
| self.0 | |
| .method_hash( | |
| [131, 10, 255, 214], | |
| ( | |
| verifying_keys, | |
| public_inputs, | |
| proofs, | |
| extra_transcript_init_msgs, | |
| ), | |
| ) | |
| .expect("method not found (this should never happen)") | |
| } | |
| } | |
| impl<M: ethers::providers::Middleware> From<ethers::contract::Contract<M>> for PlonkVerifier<M> { | |
| fn from(contract: ethers::contract::Contract<M>) -> Self { | |
| Self(contract) | |
| } | |
| } | |
| #[doc = "Container type for all input parameters for the `batchVerify`function with signature `batchVerify((uint256,uint256,(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256))[],uint256[][],((uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256)[],bytes[])` and selector `[131, 10, 255, 214]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall( | |
| name = "batchVerify", | |
| abi = "batchVerify((uint256,uint256,(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256))[],uint256[][],((uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256)[],bytes[])" | |
| )] | |
| pub struct BatchVerifyCall { | |
| pub verifying_keys: ::std::vec::Vec<VerifyingKey>, | |
| pub public_inputs: ::std::vec::Vec<::std::vec::Vec<ethers::core::types::U256>>, | |
| pub proofs: ::std::vec::Vec<PlonkProof>, | |
| pub extra_transcript_init_msgs: ::std::vec::Vec<ethers::core::types::Bytes>, | |
| } | |
| } | |
| pub use polynomialeval_mod::*; | |
| #[allow(clippy::too_many_arguments, non_camel_case_types)] | |
| pub mod polynomialeval_mod { | |
| #![allow(clippy::enum_variant_names)] | |
| #![allow(dead_code)] | |
| #![allow(clippy::type_complexity)] | |
| #![allow(unused_imports)] | |
| use ethers::contract::{ | |
| builders::{ContractCall, Event}, | |
| Contract, Lazy, | |
| }; | |
| use ethers::core::{ | |
| abi::{Abi, Detokenize, InvalidOutputType, Token, Tokenizable}, | |
| types::*, | |
| }; | |
| use ethers::providers::Middleware; | |
| #[doc = "PolynomialEval was auto-generated with ethers-rs Abigen. More information at: https://github.com/gakonst/ethers-rs"] | |
| use std::sync::Arc; | |
| pub static POLYNOMIALEVAL_ABI: ethers::contract::Lazy<ethers::core::abi::Abi> = | |
| ethers::contract::Lazy::new(|| serde_json::from_str("[]").expect("invalid abi")); | |
| pub struct PolynomialEval<M>(ethers::contract::Contract<M>); | |
| impl<M> Clone for PolynomialEval<M> { | |
| fn clone(&self) -> Self { | |
| PolynomialEval(self.0.clone()) | |
| } | |
| } | |
| impl<M> std::ops::Deref for PolynomialEval<M> { | |
| type Target = ethers::contract::Contract<M>; | |
| fn deref(&self) -> &Self::Target { | |
| &self.0 | |
| } | |
| } | |
| impl<M: ethers::providers::Middleware> std::fmt::Debug for PolynomialEval<M> { | |
| fn fmt(&self, f: &mut std::fmt::Formatter) -> std::fmt::Result { | |
| f.debug_tuple(stringify!(PolynomialEval)) | |
| .field(&self.address()) | |
| .finish() | |
| } | |
| } | |
| impl<M: ethers::providers::Middleware> PolynomialEval<M> { | |
| #[doc = r" Creates a new contract instance with the specified `ethers`"] | |
| #[doc = r" client at the given `Address`. The contract derefs to a `ethers::Contract`"] | |
| #[doc = r" object"] | |
| pub fn new<T: Into<ethers::core::types::Address>>( | |
| address: T, | |
| client: ::std::sync::Arc<M>, | |
| ) -> Self { | |
| ethers::contract::Contract::new(address.into(), POLYNOMIALEVAL_ABI.clone(), client) | |
| .into() | |
| } | |
| } | |
| impl<M: ethers::providers::Middleware> From<ethers::contract::Contract<M>> for PolynomialEval<M> { | |
| fn from(contract: ethers::contract::Contract<M>) -> Self { | |
| Self(contract) | |
| } | |
| } | |
| } | |
| pub use recordsmerkletree_mod::*; | |
| #[allow(clippy::too_many_arguments, non_camel_case_types)] | |
| pub mod recordsmerkletree_mod { | |
| #![allow(clippy::enum_variant_names)] | |
| #![allow(dead_code)] | |
| #![allow(clippy::type_complexity)] | |
| #![allow(unused_imports)] | |
| use ethers::contract::{ | |
| builders::{ContractCall, Event}, | |
| Contract, Lazy, | |
| }; | |
| use ethers::core::{ | |
| abi::{Abi, Detokenize, InvalidOutputType, Token, Tokenizable}, | |
| types::*, | |
| }; | |
| use ethers::providers::Middleware; | |
| #[doc = "RecordsMerkleTree was auto-generated with ethers-rs Abigen. More information at: https://github.com/gakonst/ethers-rs"] | |
| use std::sync::Arc; | |
| pub static RECORDSMERKLETREE_ABI: ethers::contract::Lazy<ethers::core::abi::Abi> = | |
| ethers::contract::Lazy::new(|| { | |
| serde_json :: from_str ("[{\"inputs\":[{\"internalType\":\"uint8\",\"name\":\"merkleTreeHeight\",\"type\":\"uint8\",\"components\":[]}],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\",\"outputs\":[]},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"previousOwner\",\"type\":\"address\",\"components\":[],\"indexed\":true},{\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\",\"components\":[],\"indexed\":true}],\"type\":\"event\",\"name\":\"OwnershipTransferred\",\"outputs\":[],\"anonymous\":false},{\"inputs\":[],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"getHeight\",\"outputs\":[{\"internalType\":\"uint8\",\"name\":\"\",\"type\":\"uint8\",\"components\":[]}]},{\"inputs\":[],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"getNumLeaves\",\"outputs\":[{\"internalType\":\"uint64\",\"name\":\"\",\"type\":\"uint64\",\"components\":[]}]},{\"inputs\":[],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"getRootValue\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\",\"components\":[]}]},{\"inputs\":[],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\",\"components\":[]}]},{\"inputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\",\"name\":\"renounceOwnership\",\"outputs\":[]},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\",\"components\":[]}],\"stateMutability\":\"nonpayable\",\"type\":\"function\",\"name\":\"transferOwnership\",\"outputs\":[]},{\"inputs\":[{\"internalType\":\"uint256[]\",\"name\":\"elements\",\"type\":\"uint256[]\",\"components\":[]}],\"stateMutability\":\"nonpayable\",\"type\":\"function\",\"name\":\"updateRecordsMerkleTree\",\"outputs\":[]}]") . expect ("invalid abi") | |
| }); | |
| pub struct RecordsMerkleTree<M>(ethers::contract::Contract<M>); | |
| impl<M> Clone for RecordsMerkleTree<M> { | |
| fn clone(&self) -> Self { | |
| RecordsMerkleTree(self.0.clone()) | |
| } | |
| } | |
| impl<M> std::ops::Deref for RecordsMerkleTree<M> { | |
| type Target = ethers::contract::Contract<M>; | |
| fn deref(&self) -> &Self::Target { | |
| &self.0 | |
| } | |
| } | |
| impl<M: ethers::providers::Middleware> std::fmt::Debug for RecordsMerkleTree<M> { | |
| fn fmt(&self, f: &mut std::fmt::Formatter) -> std::fmt::Result { | |
| f.debug_tuple(stringify!(RecordsMerkleTree)) | |
| .field(&self.address()) | |
| .finish() | |
| } | |
| } | |
| impl<M: ethers::providers::Middleware> RecordsMerkleTree<M> { | |
| #[doc = r" Creates a new contract instance with the specified `ethers`"] | |
| #[doc = r" client at the given `Address`. The contract derefs to a `ethers::Contract`"] | |
| #[doc = r" object"] | |
| pub fn new<T: Into<ethers::core::types::Address>>( | |
| address: T, | |
| client: ::std::sync::Arc<M>, | |
| ) -> Self { | |
| ethers::contract::Contract::new(address.into(), RECORDSMERKLETREE_ABI.clone(), client) | |
| .into() | |
| } | |
| #[doc = "Calls the contract's `getHeight` (0x19efb11d) function"] | |
| pub fn get_height(&self) -> ethers::contract::builders::ContractCall<M, u8> { | |
| self.0 | |
| .method_hash([25, 239, 177, 29], ()) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Calls the contract's `getNumLeaves` (0x927d52ab) function"] | |
| pub fn get_num_leaves(&self) -> ethers::contract::builders::ContractCall<M, u64> { | |
| self.0 | |
| .method_hash([146, 125, 82, 171], ()) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Calls the contract's `getRootValue` (0x6444c8d1) function"] | |
| pub fn get_root_value( | |
| &self, | |
| ) -> ethers::contract::builders::ContractCall<M, ethers::core::types::U256> { | |
| self.0 | |
| .method_hash([100, 68, 200, 209], ()) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Calls the contract's `owner` (0x8da5cb5b) function"] | |
| pub fn owner( | |
| &self, | |
| ) -> ethers::contract::builders::ContractCall<M, ethers::core::types::Address> { | |
| self.0 | |
| .method_hash([141, 165, 203, 91], ()) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Calls the contract's `renounceOwnership` (0x715018a6) function"] | |
| pub fn renounce_ownership(&self) -> ethers::contract::builders::ContractCall<M, ()> { | |
| self.0 | |
| .method_hash([113, 80, 24, 166], ()) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Calls the contract's `transferOwnership` (0xf2fde38b) function"] | |
| pub fn transfer_ownership( | |
| &self, | |
| new_owner: ethers::core::types::Address, | |
| ) -> ethers::contract::builders::ContractCall<M, ()> { | |
| self.0 | |
| .method_hash([242, 253, 227, 139], new_owner) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Calls the contract's `updateRecordsMerkleTree` (0x330ee6a7) function"] | |
| pub fn update_records_merkle_tree( | |
| &self, | |
| elements: ::std::vec::Vec<ethers::core::types::U256>, | |
| ) -> ethers::contract::builders::ContractCall<M, ()> { | |
| self.0 | |
| .method_hash([51, 14, 230, 167], elements) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Gets the contract's `OwnershipTransferred` event"] | |
| pub fn ownership_transferred_filter( | |
| &self, | |
| ) -> ethers::contract::builders::Event<M, OwnershipTransferredFilter> { | |
| self.0.event() | |
| } | |
| #[doc = r" Returns an [`Event`](#ethers_contract::builders::Event) builder for all events of this contract"] | |
| pub fn events(&self) -> ethers::contract::builders::Event<M, OwnershipTransferredFilter> { | |
| self.0.event_with_filter(Default::default()) | |
| } | |
| } | |
| impl<M: ethers::providers::Middleware> From<ethers::contract::Contract<M>> | |
| for RecordsMerkleTree<M> | |
| { | |
| fn from(contract: ethers::contract::Contract<M>) -> Self { | |
| Self(contract) | |
| } | |
| } | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthEvent, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethevent( | |
| name = "OwnershipTransferred", | |
| abi = "OwnershipTransferred(address,address)" | |
| )] | |
| pub struct OwnershipTransferredFilter { | |
| #[ethevent(indexed)] | |
| pub previous_owner: ethers::core::types::Address, | |
| #[ethevent(indexed)] | |
| pub new_owner: ethers::core::types::Address, | |
| } | |
| #[doc = "Container type for all input parameters for the `getHeight`function with signature `getHeight()` and selector `[25, 239, 177, 29]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall(name = "getHeight", abi = "getHeight()")] | |
| pub struct GetHeightCall; | |
| #[doc = "Container type for all input parameters for the `getNumLeaves`function with signature `getNumLeaves()` and selector `[146, 125, 82, 171]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall(name = "getNumLeaves", abi = "getNumLeaves()")] | |
| pub struct GetNumLeavesCall; | |
| #[doc = "Container type for all input parameters for the `getRootValue`function with signature `getRootValue()` and selector `[100, 68, 200, 209]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall(name = "getRootValue", abi = "getRootValue()")] | |
| pub struct GetRootValueCall; | |
| #[doc = "Container type for all input parameters for the `owner`function with signature `owner()` and selector `[141, 165, 203, 91]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall(name = "owner", abi = "owner()")] | |
| pub struct OwnerCall; | |
| #[doc = "Container type for all input parameters for the `renounceOwnership`function with signature `renounceOwnership()` and selector `[113, 80, 24, 166]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall(name = "renounceOwnership", abi = "renounceOwnership()")] | |
| pub struct RenounceOwnershipCall; | |
| #[doc = "Container type for all input parameters for the `transferOwnership`function with signature `transferOwnership(address)` and selector `[242, 253, 227, 139]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall(name = "transferOwnership", abi = "transferOwnership(address)")] | |
| pub struct TransferOwnershipCall { | |
| pub new_owner: ethers::core::types::Address, | |
| } | |
| #[doc = "Container type for all input parameters for the `updateRecordsMerkleTree`function with signature `updateRecordsMerkleTree(uint256[])` and selector `[51, 14, 230, 167]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall( | |
| name = "updateRecordsMerkleTree", | |
| abi = "updateRecordsMerkleTree(uint256[])" | |
| )] | |
| pub struct UpdateRecordsMerkleTreeCall { | |
| pub elements: ::std::vec::Vec<ethers::core::types::U256>, | |
| } | |
| #[derive(Debug, Clone, PartialEq, Eq, ethers :: contract :: EthAbiType)] | |
| pub enum RecordsMerkleTreeCalls { | |
| GetHeight(GetHeightCall), | |
| GetNumLeaves(GetNumLeavesCall), | |
| GetRootValue(GetRootValueCall), | |
| Owner(OwnerCall), | |
| RenounceOwnership(RenounceOwnershipCall), | |
| TransferOwnership(TransferOwnershipCall), | |
| UpdateRecordsMerkleTree(UpdateRecordsMerkleTreeCall), | |
| } | |
| impl ethers::core::abi::AbiDecode for RecordsMerkleTreeCalls { | |
| fn decode(data: impl AsRef<[u8]>) -> Result<Self, ethers::core::abi::AbiError> { | |
| if let Ok(decoded) = | |
| <GetHeightCall as ethers::core::abi::AbiDecode>::decode(data.as_ref()) | |
| { | |
| return Ok(RecordsMerkleTreeCalls::GetHeight(decoded)); | |
| } | |
| if let Ok(decoded) = | |
| <GetNumLeavesCall as ethers::core::abi::AbiDecode>::decode(data.as_ref()) | |
| { | |
| return Ok(RecordsMerkleTreeCalls::GetNumLeaves(decoded)); | |
| } | |
| if let Ok(decoded) = | |
| <GetRootValueCall as ethers::core::abi::AbiDecode>::decode(data.as_ref()) | |
| { | |
| return Ok(RecordsMerkleTreeCalls::GetRootValue(decoded)); | |
| } | |
| if let Ok(decoded) = <OwnerCall as ethers::core::abi::AbiDecode>::decode(data.as_ref()) | |
| { | |
| return Ok(RecordsMerkleTreeCalls::Owner(decoded)); | |
| } | |
| if let Ok(decoded) = | |
| <RenounceOwnershipCall as ethers::core::abi::AbiDecode>::decode(data.as_ref()) | |
| { | |
| return Ok(RecordsMerkleTreeCalls::RenounceOwnership(decoded)); | |
| } | |
| if let Ok(decoded) = | |
| <TransferOwnershipCall as ethers::core::abi::AbiDecode>::decode(data.as_ref()) | |
| { | |
| return Ok(RecordsMerkleTreeCalls::TransferOwnership(decoded)); | |
| } | |
| if let Ok(decoded) = | |
| <UpdateRecordsMerkleTreeCall as ethers::core::abi::AbiDecode>::decode(data.as_ref()) | |
| { | |
| return Ok(RecordsMerkleTreeCalls::UpdateRecordsMerkleTree(decoded)); | |
| } | |
| Err(ethers::core::abi::Error::InvalidData.into()) | |
| } | |
| } | |
| impl ethers::core::abi::AbiEncode for RecordsMerkleTreeCalls { | |
| fn encode(self) -> Vec<u8> { | |
| match self { | |
| RecordsMerkleTreeCalls::GetHeight(element) => element.encode(), | |
| RecordsMerkleTreeCalls::GetNumLeaves(element) => element.encode(), | |
| RecordsMerkleTreeCalls::GetRootValue(element) => element.encode(), | |
| RecordsMerkleTreeCalls::Owner(element) => element.encode(), | |
| RecordsMerkleTreeCalls::RenounceOwnership(element) => element.encode(), | |
| RecordsMerkleTreeCalls::TransferOwnership(element) => element.encode(), | |
| RecordsMerkleTreeCalls::UpdateRecordsMerkleTree(element) => element.encode(), | |
| } | |
| } | |
| } | |
| impl ::std::fmt::Display for RecordsMerkleTreeCalls { | |
| fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result { | |
| match self { | |
| RecordsMerkleTreeCalls::GetHeight(element) => element.fmt(f), | |
| RecordsMerkleTreeCalls::GetNumLeaves(element) => element.fmt(f), | |
| RecordsMerkleTreeCalls::GetRootValue(element) => element.fmt(f), | |
| RecordsMerkleTreeCalls::Owner(element) => element.fmt(f), | |
| RecordsMerkleTreeCalls::RenounceOwnership(element) => element.fmt(f), | |
| RecordsMerkleTreeCalls::TransferOwnership(element) => element.fmt(f), | |
| RecordsMerkleTreeCalls::UpdateRecordsMerkleTree(element) => element.fmt(f), | |
| } | |
| } | |
| } | |
| impl ::std::convert::From<GetHeightCall> for RecordsMerkleTreeCalls { | |
| fn from(var: GetHeightCall) -> Self { | |
| RecordsMerkleTreeCalls::GetHeight(var) | |
| } | |
| } | |
| impl ::std::convert::From<GetNumLeavesCall> for RecordsMerkleTreeCalls { | |
| fn from(var: GetNumLeavesCall) -> Self { | |
| RecordsMerkleTreeCalls::GetNumLeaves(var) | |
| } | |
| } | |
| impl ::std::convert::From<GetRootValueCall> for RecordsMerkleTreeCalls { | |
| fn from(var: GetRootValueCall) -> Self { | |
| RecordsMerkleTreeCalls::GetRootValue(var) | |
| } | |
| } | |
| impl ::std::convert::From<OwnerCall> for RecordsMerkleTreeCalls { | |
| fn from(var: OwnerCall) -> Self { | |
| RecordsMerkleTreeCalls::Owner(var) | |
| } | |
| } | |
| impl ::std::convert::From<RenounceOwnershipCall> for RecordsMerkleTreeCalls { | |
| fn from(var: RenounceOwnershipCall) -> Self { | |
| RecordsMerkleTreeCalls::RenounceOwnership(var) | |
| } | |
| } | |
| impl ::std::convert::From<TransferOwnershipCall> for RecordsMerkleTreeCalls { | |
| fn from(var: TransferOwnershipCall) -> Self { | |
| RecordsMerkleTreeCalls::TransferOwnership(var) | |
| } | |
| } | |
| impl ::std::convert::From<UpdateRecordsMerkleTreeCall> for RecordsMerkleTreeCalls { | |
| fn from(var: UpdateRecordsMerkleTreeCall) -> Self { | |
| RecordsMerkleTreeCalls::UpdateRecordsMerkleTree(var) | |
| } | |
| } | |
| } | |
| pub use rescuelib_mod::*; | |
| #[allow(clippy::too_many_arguments, non_camel_case_types)] | |
| pub mod rescuelib_mod { | |
| #![allow(clippy::enum_variant_names)] | |
| #![allow(dead_code)] | |
| #![allow(clippy::type_complexity)] | |
| #![allow(unused_imports)] | |
| use ethers::contract::{ | |
| builders::{ContractCall, Event}, | |
| Contract, Lazy, | |
| }; | |
| use ethers::core::{ | |
| abi::{Abi, Detokenize, InvalidOutputType, Token, Tokenizable}, | |
| types::*, | |
| }; | |
| use ethers::providers::Middleware; | |
| #[doc = "RescueLib was auto-generated with ethers-rs Abigen. More information at: https://github.com/gakonst/ethers-rs"] | |
| use std::sync::Arc; | |
| pub static RESCUELIB_ABI: ethers::contract::Lazy<ethers::core::abi::Abi> = | |
| ethers::contract::Lazy::new(|| { | |
| serde_json :: from_str ("[{\"inputs\":[{\"internalType\":\"uint256[15]\",\"name\":\"inputs\",\"type\":\"uint256[15]\",\"components\":[]}],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"commit\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\",\"components\":[]}]},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"a\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"b\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"c\",\"type\":\"uint256\",\"components\":[]}],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"hash\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"o\",\"type\":\"uint256\",\"components\":[]}]}]") . expect ("invalid abi") | |
| }); | |
| pub struct RescueLib<M>(ethers::contract::Contract<M>); | |
| impl<M> Clone for RescueLib<M> { | |
| fn clone(&self) -> Self { | |
| RescueLib(self.0.clone()) | |
| } | |
| } | |
| impl<M> std::ops::Deref for RescueLib<M> { | |
| type Target = ethers::contract::Contract<M>; | |
| fn deref(&self) -> &Self::Target { | |
| &self.0 | |
| } | |
| } | |
| impl<M: ethers::providers::Middleware> std::fmt::Debug for RescueLib<M> { | |
| fn fmt(&self, f: &mut std::fmt::Formatter) -> std::fmt::Result { | |
| f.debug_tuple(stringify!(RescueLib)) | |
| .field(&self.address()) | |
| .finish() | |
| } | |
| } | |
| impl<M: ethers::providers::Middleware> RescueLib<M> { | |
| #[doc = r" Creates a new contract instance with the specified `ethers`"] | |
| #[doc = r" client at the given `Address`. The contract derefs to a `ethers::Contract`"] | |
| #[doc = r" object"] | |
| pub fn new<T: Into<ethers::core::types::Address>>( | |
| address: T, | |
| client: ::std::sync::Arc<M>, | |
| ) -> Self { | |
| ethers::contract::Contract::new(address.into(), RESCUELIB_ABI.clone(), client).into() | |
| } | |
| #[doc = "Calls the contract's `commit` (0x8c548036) function"] | |
| pub fn commit( | |
| &self, | |
| inputs: [ethers::core::types::U256; 15usize], | |
| ) -> ethers::contract::builders::ContractCall<M, ethers::core::types::U256> { | |
| self.0 | |
| .method_hash([140, 84, 128, 54], inputs) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Calls the contract's `hash` (0xe05bac68) function"] | |
| pub fn hash( | |
| &self, | |
| a: ethers::core::types::U256, | |
| b: ethers::core::types::U256, | |
| c: ethers::core::types::U256, | |
| ) -> ethers::contract::builders::ContractCall<M, ethers::core::types::U256> { | |
| self.0 | |
| .method_hash([224, 91, 172, 104], (a, b, c)) | |
| .expect("method not found (this should never happen)") | |
| } | |
| } | |
| impl<M: ethers::providers::Middleware> From<ethers::contract::Contract<M>> for RescueLib<M> { | |
| fn from(contract: ethers::contract::Contract<M>) -> Self { | |
| Self(contract) | |
| } | |
| } | |
| #[doc = "Container type for all input parameters for the `commit`function with signature `commit(uint256[15])` and selector `[140, 84, 128, 54]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall(name = "commit", abi = "commit(uint256[15])")] | |
| pub struct CommitCall { | |
| pub inputs: [ethers::core::types::U256; 15usize], | |
| } | |
| #[doc = "Container type for all input parameters for the `hash`function with signature `hash(uint256,uint256,uint256)` and selector `[224, 91, 172, 104]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall(name = "hash", abi = "hash(uint256,uint256,uint256)")] | |
| pub struct HashCall { | |
| pub a: ethers::core::types::U256, | |
| pub b: ethers::core::types::U256, | |
| pub c: ethers::core::types::U256, | |
| } | |
| #[derive(Debug, Clone, PartialEq, Eq, ethers :: contract :: EthAbiType)] | |
| pub enum RescueLibCalls { | |
| Commit(CommitCall), | |
| Hash(HashCall), | |
| } | |
| impl ethers::core::abi::AbiDecode for RescueLibCalls { | |
| fn decode(data: impl AsRef<[u8]>) -> Result<Self, ethers::core::abi::AbiError> { | |
| if let Ok(decoded) = <CommitCall as ethers::core::abi::AbiDecode>::decode(data.as_ref()) | |
| { | |
| return Ok(RescueLibCalls::Commit(decoded)); | |
| } | |
| if let Ok(decoded) = <HashCall as ethers::core::abi::AbiDecode>::decode(data.as_ref()) { | |
| return Ok(RescueLibCalls::Hash(decoded)); | |
| } | |
| Err(ethers::core::abi::Error::InvalidData.into()) | |
| } | |
| } | |
| impl ethers::core::abi::AbiEncode for RescueLibCalls { | |
| fn encode(self) -> Vec<u8> { | |
| match self { | |
| RescueLibCalls::Commit(element) => element.encode(), | |
| RescueLibCalls::Hash(element) => element.encode(), | |
| } | |
| } | |
| } | |
| impl ::std::fmt::Display for RescueLibCalls { | |
| fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result { | |
| match self { | |
| RescueLibCalls::Commit(element) => element.fmt(f), | |
| RescueLibCalls::Hash(element) => element.fmt(f), | |
| } | |
| } | |
| } | |
| impl ::std::convert::From<CommitCall> for RescueLibCalls { | |
| fn from(var: CommitCall) -> Self { | |
| RescueLibCalls::Commit(var) | |
| } | |
| } | |
| impl ::std::convert::From<HashCall> for RescueLibCalls { | |
| fn from(var: HashCall) -> Self { | |
| RescueLibCalls::Hash(var) | |
| } | |
| } | |
| } | |
| pub use rescuenonoptimized_mod::*; | |
| #[allow(clippy::too_many_arguments, non_camel_case_types)] | |
| pub mod rescuenonoptimized_mod { | |
| #![allow(clippy::enum_variant_names)] | |
| #![allow(dead_code)] | |
| #![allow(clippy::type_complexity)] | |
| #![allow(unused_imports)] | |
| use ethers::contract::{ | |
| builders::{ContractCall, Event}, | |
| Contract, Lazy, | |
| }; | |
| use ethers::core::{ | |
| abi::{Abi, Detokenize, InvalidOutputType, Token, Tokenizable}, | |
| types::*, | |
| }; | |
| use ethers::providers::Middleware; | |
| #[doc = "RescueNonOptimized was auto-generated with ethers-rs Abigen. More information at: https://github.com/gakonst/ethers-rs"] | |
| use std::sync::Arc; | |
| pub static RESCUENONOPTIMIZED_ABI: ethers::contract::Lazy<ethers::core::abi::Abi> = | |
| ethers::contract::Lazy::new(|| { | |
| serde_json :: from_str ("[{\"inputs\":[{\"internalType\":\"uint256[15]\",\"name\":\"inputs\",\"type\":\"uint256[15]\",\"components\":[]}],\"stateMutability\":\"nonpayable\",\"type\":\"function\",\"name\":\"commit\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\",\"components\":[]}]},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"base\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"e\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"m\",\"type\":\"uint256\",\"components\":[]}],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"expMod\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"o\",\"type\":\"uint256\",\"components\":[]}]},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"a\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"b\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"c\",\"type\":\"uint256\",\"components\":[]}],\"stateMutability\":\"nonpayable\",\"type\":\"function\",\"name\":\"hash\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\",\"components\":[]}]}]") . expect ("invalid abi") | |
| }); | |
| pub struct RescueNonOptimized<M>(ethers::contract::Contract<M>); | |
| impl<M> Clone for RescueNonOptimized<M> { | |
| fn clone(&self) -> Self { | |
| RescueNonOptimized(self.0.clone()) | |
| } | |
| } | |
| impl<M> std::ops::Deref for RescueNonOptimized<M> { | |
| type Target = ethers::contract::Contract<M>; | |
| fn deref(&self) -> &Self::Target { | |
| &self.0 | |
| } | |
| } | |
| impl<M: ethers::providers::Middleware> std::fmt::Debug for RescueNonOptimized<M> { | |
| fn fmt(&self, f: &mut std::fmt::Formatter) -> std::fmt::Result { | |
| f.debug_tuple(stringify!(RescueNonOptimized)) | |
| .field(&self.address()) | |
| .finish() | |
| } | |
| } | |
| impl<M: ethers::providers::Middleware> RescueNonOptimized<M> { | |
| #[doc = r" Creates a new contract instance with the specified `ethers`"] | |
| #[doc = r" client at the given `Address`. The contract derefs to a `ethers::Contract`"] | |
| #[doc = r" object"] | |
| pub fn new<T: Into<ethers::core::types::Address>>( | |
| address: T, | |
| client: ::std::sync::Arc<M>, | |
| ) -> Self { | |
| ethers::contract::Contract::new(address.into(), RESCUENONOPTIMIZED_ABI.clone(), client) | |
| .into() | |
| } | |
| #[doc = "Calls the contract's `commit` (0x8c548036) function"] | |
| pub fn commit( | |
| &self, | |
| inputs: [ethers::core::types::U256; 15usize], | |
| ) -> ethers::contract::builders::ContractCall<M, ethers::core::types::U256> { | |
| self.0 | |
| .method_hash([140, 84, 128, 54], inputs) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Calls the contract's `expMod` (0xad69caa5) function"] | |
| pub fn exp_mod( | |
| &self, | |
| base: ethers::core::types::U256, | |
| e: ethers::core::types::U256, | |
| m: ethers::core::types::U256, | |
| ) -> ethers::contract::builders::ContractCall<M, ethers::core::types::U256> { | |
| self.0 | |
| .method_hash([173, 105, 202, 165], (base, e, m)) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Calls the contract's `hash` (0xe05bac68) function"] | |
| pub fn hash( | |
| &self, | |
| a: ethers::core::types::U256, | |
| b: ethers::core::types::U256, | |
| c: ethers::core::types::U256, | |
| ) -> ethers::contract::builders::ContractCall<M, ethers::core::types::U256> { | |
| self.0 | |
| .method_hash([224, 91, 172, 104], (a, b, c)) | |
| .expect("method not found (this should never happen)") | |
| } | |
| } | |
| impl<M: ethers::providers::Middleware> From<ethers::contract::Contract<M>> | |
| for RescueNonOptimized<M> | |
| { | |
| fn from(contract: ethers::contract::Contract<M>) -> Self { | |
| Self(contract) | |
| } | |
| } | |
| #[doc = "Container type for all input parameters for the `commit`function with signature `commit(uint256[15])` and selector `[140, 84, 128, 54]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall(name = "commit", abi = "commit(uint256[15])")] | |
| pub struct CommitCall { | |
| pub inputs: [ethers::core::types::U256; 15usize], | |
| } | |
| #[doc = "Container type for all input parameters for the `expMod`function with signature `expMod(uint256,uint256,uint256)` and selector `[173, 105, 202, 165]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall(name = "expMod", abi = "expMod(uint256,uint256,uint256)")] | |
| pub struct ExpModCall { | |
| pub base: ethers::core::types::U256, | |
| pub e: ethers::core::types::U256, | |
| pub m: ethers::core::types::U256, | |
| } | |
| #[doc = "Container type for all input parameters for the `hash`function with signature `hash(uint256,uint256,uint256)` and selector `[224, 91, 172, 104]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall(name = "hash", abi = "hash(uint256,uint256,uint256)")] | |
| pub struct HashCall { | |
| pub a: ethers::core::types::U256, | |
| pub b: ethers::core::types::U256, | |
| pub c: ethers::core::types::U256, | |
| } | |
| #[derive(Debug, Clone, PartialEq, Eq, ethers :: contract :: EthAbiType)] | |
| pub enum RescueNonOptimizedCalls { | |
| Commit(CommitCall), | |
| ExpMod(ExpModCall), | |
| Hash(HashCall), | |
| } | |
| impl ethers::core::abi::AbiDecode for RescueNonOptimizedCalls { | |
| fn decode(data: impl AsRef<[u8]>) -> Result<Self, ethers::core::abi::AbiError> { | |
| if let Ok(decoded) = <CommitCall as ethers::core::abi::AbiDecode>::decode(data.as_ref()) | |
| { | |
| return Ok(RescueNonOptimizedCalls::Commit(decoded)); | |
| } | |
| if let Ok(decoded) = <ExpModCall as ethers::core::abi::AbiDecode>::decode(data.as_ref()) | |
| { | |
| return Ok(RescueNonOptimizedCalls::ExpMod(decoded)); | |
| } | |
| if let Ok(decoded) = <HashCall as ethers::core::abi::AbiDecode>::decode(data.as_ref()) { | |
| return Ok(RescueNonOptimizedCalls::Hash(decoded)); | |
| } | |
| Err(ethers::core::abi::Error::InvalidData.into()) | |
| } | |
| } | |
| impl ethers::core::abi::AbiEncode for RescueNonOptimizedCalls { | |
| fn encode(self) -> Vec<u8> { | |
| match self { | |
| RescueNonOptimizedCalls::Commit(element) => element.encode(), | |
| RescueNonOptimizedCalls::ExpMod(element) => element.encode(), | |
| RescueNonOptimizedCalls::Hash(element) => element.encode(), | |
| } | |
| } | |
| } | |
| impl ::std::fmt::Display for RescueNonOptimizedCalls { | |
| fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result { | |
| match self { | |
| RescueNonOptimizedCalls::Commit(element) => element.fmt(f), | |
| RescueNonOptimizedCalls::ExpMod(element) => element.fmt(f), | |
| RescueNonOptimizedCalls::Hash(element) => element.fmt(f), | |
| } | |
| } | |
| } | |
| impl ::std::convert::From<CommitCall> for RescueNonOptimizedCalls { | |
| fn from(var: CommitCall) -> Self { | |
| RescueNonOptimizedCalls::Commit(var) | |
| } | |
| } | |
| impl ::std::convert::From<ExpModCall> for RescueNonOptimizedCalls { | |
| fn from(var: ExpModCall) -> Self { | |
| RescueNonOptimizedCalls::ExpMod(var) | |
| } | |
| } | |
| impl ::std::convert::From<HashCall> for RescueNonOptimizedCalls { | |
| fn from(var: HashCall) -> Self { | |
| RescueNonOptimizedCalls::Hash(var) | |
| } | |
| } | |
| } | |
| pub use rootstore_mod::*; | |
| #[allow(clippy::too_many_arguments, non_camel_case_types)] | |
| pub mod rootstore_mod { | |
| #![allow(clippy::enum_variant_names)] | |
| #![allow(dead_code)] | |
| #![allow(clippy::type_complexity)] | |
| #![allow(unused_imports)] | |
| use ethers::contract::{ | |
| builders::{ContractCall, Event}, | |
| Contract, Lazy, | |
| }; | |
| use ethers::core::{ | |
| abi::{Abi, Detokenize, InvalidOutputType, Token, Tokenizable}, | |
| types::*, | |
| }; | |
| use ethers::providers::Middleware; | |
| #[doc = "RootStore was auto-generated with ethers-rs Abigen. More information at: https://github.com/gakonst/ethers-rs"] | |
| use std::sync::Arc; | |
| pub static ROOTSTORE_ABI: ethers::contract::Lazy<ethers::core::abi::Abi> = | |
| ethers::contract::Lazy::new(|| { | |
| serde_json :: from_str ("[{\"inputs\":[{\"internalType\":\"uint64\",\"name\":\"nRoots\",\"type\":\"uint64\",\"components\":[]}],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\",\"outputs\":[]}]") . expect ("invalid abi") | |
| }); | |
| pub struct RootStore<M>(ethers::contract::Contract<M>); | |
| impl<M> Clone for RootStore<M> { | |
| fn clone(&self) -> Self { | |
| RootStore(self.0.clone()) | |
| } | |
| } | |
| impl<M> std::ops::Deref for RootStore<M> { | |
| type Target = ethers::contract::Contract<M>; | |
| fn deref(&self) -> &Self::Target { | |
| &self.0 | |
| } | |
| } | |
| impl<M: ethers::providers::Middleware> std::fmt::Debug for RootStore<M> { | |
| fn fmt(&self, f: &mut std::fmt::Formatter) -> std::fmt::Result { | |
| f.debug_tuple(stringify!(RootStore)) | |
| .field(&self.address()) | |
| .finish() | |
| } | |
| } | |
| impl<M: ethers::providers::Middleware> RootStore<M> { | |
| #[doc = r" Creates a new contract instance with the specified `ethers`"] | |
| #[doc = r" client at the given `Address`. The contract derefs to a `ethers::Contract`"] | |
| #[doc = r" object"] | |
| pub fn new<T: Into<ethers::core::types::Address>>( | |
| address: T, | |
| client: ::std::sync::Arc<M>, | |
| ) -> Self { | |
| ethers::contract::Contract::new(address.into(), ROOTSTORE_ABI.clone(), client).into() | |
| } | |
| } | |
| impl<M: ethers::providers::Middleware> From<ethers::contract::Contract<M>> for RootStore<M> { | |
| fn from(contract: ethers::contract::Contract<M>) -> Self { | |
| Self(contract) | |
| } | |
| } | |
| } | |
| pub use simpletoken_mod::*; | |
| #[allow(clippy::too_many_arguments, non_camel_case_types)] | |
| pub mod simpletoken_mod { | |
| #![allow(clippy::enum_variant_names)] | |
| #![allow(dead_code)] | |
| #![allow(clippy::type_complexity)] | |
| #![allow(unused_imports)] | |
| use ethers::contract::{ | |
| builders::{ContractCall, Event}, | |
| Contract, Lazy, | |
| }; | |
| use ethers::core::{ | |
| abi::{Abi, Detokenize, InvalidOutputType, Token, Tokenizable}, | |
| types::*, | |
| }; | |
| use ethers::providers::Middleware; | |
| #[doc = "SimpleToken was auto-generated with ethers-rs Abigen. More information at: https://github.com/gakonst/ethers-rs"] | |
| use std::sync::Arc; | |
| pub static SIMPLETOKEN_ABI: ethers::contract::Lazy<ethers::core::abi::Abi> = | |
| ethers::contract::Lazy::new(|| { | |
| serde_json :: from_str ("[{\"inputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\",\"outputs\":[]},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\",\"components\":[],\"indexed\":true},{\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\",\"components\":[],\"indexed\":true},{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\",\"components\":[],\"indexed\":false}],\"type\":\"event\",\"name\":\"Approval\",\"outputs\":[],\"anonymous\":false},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\",\"components\":[],\"indexed\":true},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\",\"components\":[],\"indexed\":true},{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\",\"components\":[],\"indexed\":false}],\"type\":\"event\",\"name\":\"Transfer\",\"outputs\":[],\"anonymous\":false},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\",\"components\":[]},{\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\",\"components\":[]}],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"allowance\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\",\"components\":[]}]},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\",\"components\":[]}],\"stateMutability\":\"nonpayable\",\"type\":\"function\",\"name\":\"approve\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\",\"components\":[]}]},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\",\"components\":[]}],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"balanceOf\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\",\"components\":[]}]},{\"inputs\":[],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"decimals\",\"outputs\":[{\"internalType\":\"uint8\",\"name\":\"\",\"type\":\"uint8\",\"components\":[]}]},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"subtractedValue\",\"type\":\"uint256\",\"components\":[]}],\"stateMutability\":\"nonpayable\",\"type\":\"function\",\"name\":\"decreaseAllowance\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\",\"components\":[]}]},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"addedValue\",\"type\":\"uint256\",\"components\":[]}],\"stateMutability\":\"nonpayable\",\"type\":\"function\",\"name\":\"increaseAllowance\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\",\"components\":[]}]},{\"inputs\":[],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"name\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\",\"components\":[]}]},{\"inputs\":[],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"symbol\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\",\"components\":[]}]},{\"inputs\":[],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"totalSupply\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\",\"components\":[]}]},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"recipient\",\"type\":\"address\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\",\"components\":[]}],\"stateMutability\":\"nonpayable\",\"type\":\"function\",\"name\":\"transfer\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\",\"components\":[]}]},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\",\"components\":[]},{\"internalType\":\"address\",\"name\":\"recipient\",\"type\":\"address\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\",\"components\":[]}],\"stateMutability\":\"nonpayable\",\"type\":\"function\",\"name\":\"transferFrom\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\",\"components\":[]}]},{\"inputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\",\"name\":\"withdraw\",\"outputs\":[]},{\"inputs\":[],\"stateMutability\":\"payable\",\"type\":\"receive\",\"outputs\":[]}]") . expect ("invalid abi") | |
| }); | |
| pub struct SimpleToken<M>(ethers::contract::Contract<M>); | |
| impl<M> Clone for SimpleToken<M> { | |
| fn clone(&self) -> Self { | |
| SimpleToken(self.0.clone()) | |
| } | |
| } | |
| impl<M> std::ops::Deref for SimpleToken<M> { | |
| type Target = ethers::contract::Contract<M>; | |
| fn deref(&self) -> &Self::Target { | |
| &self.0 | |
| } | |
| } | |
| impl<M: ethers::providers::Middleware> std::fmt::Debug for SimpleToken<M> { | |
| fn fmt(&self, f: &mut std::fmt::Formatter) -> std::fmt::Result { | |
| f.debug_tuple(stringify!(SimpleToken)) | |
| .field(&self.address()) | |
| .finish() | |
| } | |
| } | |
| impl<M: ethers::providers::Middleware> SimpleToken<M> { | |
| #[doc = r" Creates a new contract instance with the specified `ethers`"] | |
| #[doc = r" client at the given `Address`. The contract derefs to a `ethers::Contract`"] | |
| #[doc = r" object"] | |
| pub fn new<T: Into<ethers::core::types::Address>>( | |
| address: T, | |
| client: ::std::sync::Arc<M>, | |
| ) -> Self { | |
| ethers::contract::Contract::new(address.into(), SIMPLETOKEN_ABI.clone(), client).into() | |
| } | |
| #[doc = "Calls the contract's `allowance` (0xdd62ed3e) function"] | |
| pub fn allowance( | |
| &self, | |
| owner: ethers::core::types::Address, | |
| spender: ethers::core::types::Address, | |
| ) -> ethers::contract::builders::ContractCall<M, ethers::core::types::U256> { | |
| self.0 | |
| .method_hash([221, 98, 237, 62], (owner, spender)) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Calls the contract's `approve` (0x095ea7b3) function"] | |
| pub fn approve( | |
| &self, | |
| spender: ethers::core::types::Address, | |
| amount: ethers::core::types::U256, | |
| ) -> ethers::contract::builders::ContractCall<M, bool> { | |
| self.0 | |
| .method_hash([9, 94, 167, 179], (spender, amount)) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Calls the contract's `balanceOf` (0x70a08231) function"] | |
| pub fn balance_of( | |
| &self, | |
| account: ethers::core::types::Address, | |
| ) -> ethers::contract::builders::ContractCall<M, ethers::core::types::U256> { | |
| self.0 | |
| .method_hash([112, 160, 130, 49], account) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Calls the contract's `decimals` (0x313ce567) function"] | |
| pub fn decimals(&self) -> ethers::contract::builders::ContractCall<M, u8> { | |
| self.0 | |
| .method_hash([49, 60, 229, 103], ()) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Calls the contract's `decreaseAllowance` (0xa457c2d7) function"] | |
| pub fn decrease_allowance( | |
| &self, | |
| spender: ethers::core::types::Address, | |
| subtracted_value: ethers::core::types::U256, | |
| ) -> ethers::contract::builders::ContractCall<M, bool> { | |
| self.0 | |
| .method_hash([164, 87, 194, 215], (spender, subtracted_value)) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Calls the contract's `increaseAllowance` (0x39509351) function"] | |
| pub fn increase_allowance( | |
| &self, | |
| spender: ethers::core::types::Address, | |
| added_value: ethers::core::types::U256, | |
| ) -> ethers::contract::builders::ContractCall<M, bool> { | |
| self.0 | |
| .method_hash([57, 80, 147, 81], (spender, added_value)) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Calls the contract's `name` (0x06fdde03) function"] | |
| pub fn name(&self) -> ethers::contract::builders::ContractCall<M, String> { | |
| self.0 | |
| .method_hash([6, 253, 222, 3], ()) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Calls the contract's `symbol` (0x95d89b41) function"] | |
| pub fn symbol(&self) -> ethers::contract::builders::ContractCall<M, String> { | |
| self.0 | |
| .method_hash([149, 216, 155, 65], ()) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Calls the contract's `totalSupply` (0x18160ddd) function"] | |
| pub fn total_supply( | |
| &self, | |
| ) -> ethers::contract::builders::ContractCall<M, ethers::core::types::U256> { | |
| self.0 | |
| .method_hash([24, 22, 13, 221], ()) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Calls the contract's `transfer` (0xa9059cbb) function"] | |
| pub fn transfer( | |
| &self, | |
| recipient: ethers::core::types::Address, | |
| amount: ethers::core::types::U256, | |
| ) -> ethers::contract::builders::ContractCall<M, bool> { | |
| self.0 | |
| .method_hash([169, 5, 156, 187], (recipient, amount)) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Calls the contract's `transferFrom` (0x23b872dd) function"] | |
| pub fn transfer_from( | |
| &self, | |
| sender: ethers::core::types::Address, | |
| recipient: ethers::core::types::Address, | |
| amount: ethers::core::types::U256, | |
| ) -> ethers::contract::builders::ContractCall<M, bool> { | |
| self.0 | |
| .method_hash([35, 184, 114, 221], (sender, recipient, amount)) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Calls the contract's `withdraw` (0x3ccfd60b) function"] | |
| pub fn withdraw(&self) -> ethers::contract::builders::ContractCall<M, ()> { | |
| self.0 | |
| .method_hash([60, 207, 214, 11], ()) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Gets the contract's `Approval` event"] | |
| pub fn approval_filter(&self) -> ethers::contract::builders::Event<M, ApprovalFilter> { | |
| self.0.event() | |
| } | |
| #[doc = "Gets the contract's `Transfer` event"] | |
| pub fn transfer_filter(&self) -> ethers::contract::builders::Event<M, TransferFilter> { | |
| self.0.event() | |
| } | |
| #[doc = r" Returns an [`Event`](#ethers_contract::builders::Event) builder for all events of this contract"] | |
| pub fn events(&self) -> ethers::contract::builders::Event<M, SimpleTokenEvents> { | |
| self.0.event_with_filter(Default::default()) | |
| } | |
| } | |
| impl<M: ethers::providers::Middleware> From<ethers::contract::Contract<M>> for SimpleToken<M> { | |
| fn from(contract: ethers::contract::Contract<M>) -> Self { | |
| Self(contract) | |
| } | |
| } | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthEvent, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethevent(name = "Approval", abi = "Approval(address,address,uint256)")] | |
| pub struct ApprovalFilter { | |
| #[ethevent(indexed)] | |
| pub owner: ethers::core::types::Address, | |
| #[ethevent(indexed)] | |
| pub spender: ethers::core::types::Address, | |
| pub value: ethers::core::types::U256, | |
| } | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthEvent, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethevent(name = "Transfer", abi = "Transfer(address,address,uint256)")] | |
| pub struct TransferFilter { | |
| #[ethevent(indexed)] | |
| pub from: ethers::core::types::Address, | |
| #[ethevent(indexed)] | |
| pub to: ethers::core::types::Address, | |
| pub value: ethers::core::types::U256, | |
| } | |
| #[derive(Debug, Clone, PartialEq, Eq, ethers :: contract :: EthAbiType)] | |
| pub enum SimpleTokenEvents { | |
| ApprovalFilter(ApprovalFilter), | |
| TransferFilter(TransferFilter), | |
| } | |
| impl ethers::contract::EthLogDecode for SimpleTokenEvents { | |
| fn decode_log(log: ðers::core::abi::RawLog) -> Result<Self, ethers::core::abi::Error> | |
| where | |
| Self: Sized, | |
| { | |
| if let Ok(decoded) = ApprovalFilter::decode_log(log) { | |
| return Ok(SimpleTokenEvents::ApprovalFilter(decoded)); | |
| } | |
| if let Ok(decoded) = TransferFilter::decode_log(log) { | |
| return Ok(SimpleTokenEvents::TransferFilter(decoded)); | |
| } | |
| Err(ethers::core::abi::Error::InvalidData) | |
| } | |
| } | |
| impl ::std::fmt::Display for SimpleTokenEvents { | |
| fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result { | |
| match self { | |
| SimpleTokenEvents::ApprovalFilter(element) => element.fmt(f), | |
| SimpleTokenEvents::TransferFilter(element) => element.fmt(f), | |
| } | |
| } | |
| } | |
| #[doc = "Container type for all input parameters for the `allowance`function with signature `allowance(address,address)` and selector `[221, 98, 237, 62]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall(name = "allowance", abi = "allowance(address,address)")] | |
| pub struct AllowanceCall { | |
| pub owner: ethers::core::types::Address, | |
| pub spender: ethers::core::types::Address, | |
| } | |
| #[doc = "Container type for all input parameters for the `approve`function with signature `approve(address,uint256)` and selector `[9, 94, 167, 179]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall(name = "approve", abi = "approve(address,uint256)")] | |
| pub struct ApproveCall { | |
| pub spender: ethers::core::types::Address, | |
| pub amount: ethers::core::types::U256, | |
| } | |
| #[doc = "Container type for all input parameters for the `balanceOf`function with signature `balanceOf(address)` and selector `[112, 160, 130, 49]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall(name = "balanceOf", abi = "balanceOf(address)")] | |
| pub struct BalanceOfCall { | |
| pub account: ethers::core::types::Address, | |
| } | |
| #[doc = "Container type for all input parameters for the `decimals`function with signature `decimals()` and selector `[49, 60, 229, 103]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall(name = "decimals", abi = "decimals()")] | |
| pub struct DecimalsCall; | |
| #[doc = "Container type for all input parameters for the `decreaseAllowance`function with signature `decreaseAllowance(address,uint256)` and selector `[164, 87, 194, 215]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall(name = "decreaseAllowance", abi = "decreaseAllowance(address,uint256)")] | |
| pub struct DecreaseAllowanceCall { | |
| pub spender: ethers::core::types::Address, | |
| pub subtracted_value: ethers::core::types::U256, | |
| } | |
| #[doc = "Container type for all input parameters for the `increaseAllowance`function with signature `increaseAllowance(address,uint256)` and selector `[57, 80, 147, 81]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall(name = "increaseAllowance", abi = "increaseAllowance(address,uint256)")] | |
| pub struct IncreaseAllowanceCall { | |
| pub spender: ethers::core::types::Address, | |
| pub added_value: ethers::core::types::U256, | |
| } | |
| #[doc = "Container type for all input parameters for the `name`function with signature `name()` and selector `[6, 253, 222, 3]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall(name = "name", abi = "name()")] | |
| pub struct NameCall; | |
| #[doc = "Container type for all input parameters for the `symbol`function with signature `symbol()` and selector `[149, 216, 155, 65]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall(name = "symbol", abi = "symbol()")] | |
| pub struct SymbolCall; | |
| #[doc = "Container type for all input parameters for the `totalSupply`function with signature `totalSupply()` and selector `[24, 22, 13, 221]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall(name = "totalSupply", abi = "totalSupply()")] | |
| pub struct TotalSupplyCall; | |
| #[doc = "Container type for all input parameters for the `transfer`function with signature `transfer(address,uint256)` and selector `[169, 5, 156, 187]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall(name = "transfer", abi = "transfer(address,uint256)")] | |
| pub struct TransferCall { | |
| pub recipient: ethers::core::types::Address, | |
| pub amount: ethers::core::types::U256, | |
| } | |
| #[doc = "Container type for all input parameters for the `transferFrom`function with signature `transferFrom(address,address,uint256)` and selector `[35, 184, 114, 221]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall(name = "transferFrom", abi = "transferFrom(address,address,uint256)")] | |
| pub struct TransferFromCall { | |
| pub sender: ethers::core::types::Address, | |
| pub recipient: ethers::core::types::Address, | |
| pub amount: ethers::core::types::U256, | |
| } | |
| #[doc = "Container type for all input parameters for the `withdraw`function with signature `withdraw()` and selector `[60, 207, 214, 11]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall(name = "withdraw", abi = "withdraw()")] | |
| pub struct WithdrawCall; | |
| #[derive(Debug, Clone, PartialEq, Eq, ethers :: contract :: EthAbiType)] | |
| pub enum SimpleTokenCalls { | |
| Allowance(AllowanceCall), | |
| Approve(ApproveCall), | |
| BalanceOf(BalanceOfCall), | |
| Decimals(DecimalsCall), | |
| DecreaseAllowance(DecreaseAllowanceCall), | |
| IncreaseAllowance(IncreaseAllowanceCall), | |
| Name(NameCall), | |
| Symbol(SymbolCall), | |
| TotalSupply(TotalSupplyCall), | |
| Transfer(TransferCall), | |
| TransferFrom(TransferFromCall), | |
| Withdraw(WithdrawCall), | |
| } | |
| impl ethers::core::abi::AbiDecode for SimpleTokenCalls { | |
| fn decode(data: impl AsRef<[u8]>) -> Result<Self, ethers::core::abi::AbiError> { | |
| if let Ok(decoded) = | |
| <AllowanceCall as ethers::core::abi::AbiDecode>::decode(data.as_ref()) | |
| { | |
| return Ok(SimpleTokenCalls::Allowance(decoded)); | |
| } | |
| if let Ok(decoded) = | |
| <ApproveCall as ethers::core::abi::AbiDecode>::decode(data.as_ref()) | |
| { | |
| return Ok(SimpleTokenCalls::Approve(decoded)); | |
| } | |
| if let Ok(decoded) = | |
| <BalanceOfCall as ethers::core::abi::AbiDecode>::decode(data.as_ref()) | |
| { | |
| return Ok(SimpleTokenCalls::BalanceOf(decoded)); | |
| } | |
| if let Ok(decoded) = | |
| <DecimalsCall as ethers::core::abi::AbiDecode>::decode(data.as_ref()) | |
| { | |
| return Ok(SimpleTokenCalls::Decimals(decoded)); | |
| } | |
| if let Ok(decoded) = | |
| <DecreaseAllowanceCall as ethers::core::abi::AbiDecode>::decode(data.as_ref()) | |
| { | |
| return Ok(SimpleTokenCalls::DecreaseAllowance(decoded)); | |
| } | |
| if let Ok(decoded) = | |
| <IncreaseAllowanceCall as ethers::core::abi::AbiDecode>::decode(data.as_ref()) | |
| { | |
| return Ok(SimpleTokenCalls::IncreaseAllowance(decoded)); | |
| } | |
| if let Ok(decoded) = <NameCall as ethers::core::abi::AbiDecode>::decode(data.as_ref()) { | |
| return Ok(SimpleTokenCalls::Name(decoded)); | |
| } | |
| if let Ok(decoded) = <SymbolCall as ethers::core::abi::AbiDecode>::decode(data.as_ref()) | |
| { | |
| return Ok(SimpleTokenCalls::Symbol(decoded)); | |
| } | |
| if let Ok(decoded) = | |
| <TotalSupplyCall as ethers::core::abi::AbiDecode>::decode(data.as_ref()) | |
| { | |
| return Ok(SimpleTokenCalls::TotalSupply(decoded)); | |
| } | |
| if let Ok(decoded) = | |
| <TransferCall as ethers::core::abi::AbiDecode>::decode(data.as_ref()) | |
| { | |
| return Ok(SimpleTokenCalls::Transfer(decoded)); | |
| } | |
| if let Ok(decoded) = | |
| <TransferFromCall as ethers::core::abi::AbiDecode>::decode(data.as_ref()) | |
| { | |
| return Ok(SimpleTokenCalls::TransferFrom(decoded)); | |
| } | |
| if let Ok(decoded) = | |
| <WithdrawCall as ethers::core::abi::AbiDecode>::decode(data.as_ref()) | |
| { | |
| return Ok(SimpleTokenCalls::Withdraw(decoded)); | |
| } | |
| Err(ethers::core::abi::Error::InvalidData.into()) | |
| } | |
| } | |
| impl ethers::core::abi::AbiEncode for SimpleTokenCalls { | |
| fn encode(self) -> Vec<u8> { | |
| match self { | |
| SimpleTokenCalls::Allowance(element) => element.encode(), | |
| SimpleTokenCalls::Approve(element) => element.encode(), | |
| SimpleTokenCalls::BalanceOf(element) => element.encode(), | |
| SimpleTokenCalls::Decimals(element) => element.encode(), | |
| SimpleTokenCalls::DecreaseAllowance(element) => element.encode(), | |
| SimpleTokenCalls::IncreaseAllowance(element) => element.encode(), | |
| SimpleTokenCalls::Name(element) => element.encode(), | |
| SimpleTokenCalls::Symbol(element) => element.encode(), | |
| SimpleTokenCalls::TotalSupply(element) => element.encode(), | |
| SimpleTokenCalls::Transfer(element) => element.encode(), | |
| SimpleTokenCalls::TransferFrom(element) => element.encode(), | |
| SimpleTokenCalls::Withdraw(element) => element.encode(), | |
| } | |
| } | |
| } | |
| impl ::std::fmt::Display for SimpleTokenCalls { | |
| fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result { | |
| match self { | |
| SimpleTokenCalls::Allowance(element) => element.fmt(f), | |
| SimpleTokenCalls::Approve(element) => element.fmt(f), | |
| SimpleTokenCalls::BalanceOf(element) => element.fmt(f), | |
| SimpleTokenCalls::Decimals(element) => element.fmt(f), | |
| SimpleTokenCalls::DecreaseAllowance(element) => element.fmt(f), | |
| SimpleTokenCalls::IncreaseAllowance(element) => element.fmt(f), | |
| SimpleTokenCalls::Name(element) => element.fmt(f), | |
| SimpleTokenCalls::Symbol(element) => element.fmt(f), | |
| SimpleTokenCalls::TotalSupply(element) => element.fmt(f), | |
| SimpleTokenCalls::Transfer(element) => element.fmt(f), | |
| SimpleTokenCalls::TransferFrom(element) => element.fmt(f), | |
| SimpleTokenCalls::Withdraw(element) => element.fmt(f), | |
| } | |
| } | |
| } | |
| impl ::std::convert::From<AllowanceCall> for SimpleTokenCalls { | |
| fn from(var: AllowanceCall) -> Self { | |
| SimpleTokenCalls::Allowance(var) | |
| } | |
| } | |
| impl ::std::convert::From<ApproveCall> for SimpleTokenCalls { | |
| fn from(var: ApproveCall) -> Self { | |
| SimpleTokenCalls::Approve(var) | |
| } | |
| } | |
| impl ::std::convert::From<BalanceOfCall> for SimpleTokenCalls { | |
| fn from(var: BalanceOfCall) -> Self { | |
| SimpleTokenCalls::BalanceOf(var) | |
| } | |
| } | |
| impl ::std::convert::From<DecimalsCall> for SimpleTokenCalls { | |
| fn from(var: DecimalsCall) -> Self { | |
| SimpleTokenCalls::Decimals(var) | |
| } | |
| } | |
| impl ::std::convert::From<DecreaseAllowanceCall> for SimpleTokenCalls { | |
| fn from(var: DecreaseAllowanceCall) -> Self { | |
| SimpleTokenCalls::DecreaseAllowance(var) | |
| } | |
| } | |
| impl ::std::convert::From<IncreaseAllowanceCall> for SimpleTokenCalls { | |
| fn from(var: IncreaseAllowanceCall) -> Self { | |
| SimpleTokenCalls::IncreaseAllowance(var) | |
| } | |
| } | |
| impl ::std::convert::From<NameCall> for SimpleTokenCalls { | |
| fn from(var: NameCall) -> Self { | |
| SimpleTokenCalls::Name(var) | |
| } | |
| } | |
| impl ::std::convert::From<SymbolCall> for SimpleTokenCalls { | |
| fn from(var: SymbolCall) -> Self { | |
| SimpleTokenCalls::Symbol(var) | |
| } | |
| } | |
| impl ::std::convert::From<TotalSupplyCall> for SimpleTokenCalls { | |
| fn from(var: TotalSupplyCall) -> Self { | |
| SimpleTokenCalls::TotalSupply(var) | |
| } | |
| } | |
| impl ::std::convert::From<TransferCall> for SimpleTokenCalls { | |
| fn from(var: TransferCall) -> Self { | |
| SimpleTokenCalls::Transfer(var) | |
| } | |
| } | |
| impl ::std::convert::From<TransferFromCall> for SimpleTokenCalls { | |
| fn from(var: TransferFromCall) -> Self { | |
| SimpleTokenCalls::TransferFrom(var) | |
| } | |
| } | |
| impl ::std::convert::From<WithdrawCall> for SimpleTokenCalls { | |
| fn from(var: WithdrawCall) -> Self { | |
| SimpleTokenCalls::Withdraw(var) | |
| } | |
| } | |
| } | |
| pub use testaccumulatingarray_mod::*; | |
| #[allow(clippy::too_many_arguments, non_camel_case_types)] | |
| pub mod testaccumulatingarray_mod { | |
| #![allow(clippy::enum_variant_names)] | |
| #![allow(dead_code)] | |
| #![allow(clippy::type_complexity)] | |
| #![allow(unused_imports)] | |
| use ethers::contract::{ | |
| builders::{ContractCall, Event}, | |
| Contract, Lazy, | |
| }; | |
| use ethers::core::{ | |
| abi::{Abi, Detokenize, InvalidOutputType, Token, Tokenizable}, | |
| types::*, | |
| }; | |
| use ethers::providers::Middleware; | |
| #[doc = "TestAccumulatingArray was auto-generated with ethers-rs Abigen. More information at: https://github.com/gakonst/ethers-rs"] | |
| use std::sync::Arc; | |
| pub static TESTACCUMULATINGARRAY_ABI: ethers::contract::Lazy<ethers::core::abi::Abi> = | |
| ethers::contract::Lazy::new(|| { | |
| serde_json :: from_str ("[{\"inputs\":[{\"internalType\":\"uint256[][]\",\"name\":\"arrays\",\"type\":\"uint256[][]\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"length\",\"type\":\"uint256\",\"components\":[]}],\"stateMutability\":\"pure\",\"type\":\"function\",\"name\":\"accumulate\",\"outputs\":[{\"internalType\":\"uint256[]\",\"name\":\"\",\"type\":\"uint256[]\",\"components\":[]}]},{\"inputs\":[{\"internalType\":\"uint256[][]\",\"name\":\"arrays\",\"type\":\"uint256[][]\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"length\",\"type\":\"uint256\",\"components\":[]}],\"stateMutability\":\"pure\",\"type\":\"function\",\"name\":\"accumulateWithIndividuals\",\"outputs\":[{\"internalType\":\"uint256[]\",\"name\":\"\",\"type\":\"uint256[]\",\"components\":[]}]}]") . expect ("invalid abi") | |
| }); | |
| pub struct TestAccumulatingArray<M>(ethers::contract::Contract<M>); | |
| impl<M> Clone for TestAccumulatingArray<M> { | |
| fn clone(&self) -> Self { | |
| TestAccumulatingArray(self.0.clone()) | |
| } | |
| } | |
| impl<M> std::ops::Deref for TestAccumulatingArray<M> { | |
| type Target = ethers::contract::Contract<M>; | |
| fn deref(&self) -> &Self::Target { | |
| &self.0 | |
| } | |
| } | |
| impl<M: ethers::providers::Middleware> std::fmt::Debug for TestAccumulatingArray<M> { | |
| fn fmt(&self, f: &mut std::fmt::Formatter) -> std::fmt::Result { | |
| f.debug_tuple(stringify!(TestAccumulatingArray)) | |
| .field(&self.address()) | |
| .finish() | |
| } | |
| } | |
| impl<M: ethers::providers::Middleware> TestAccumulatingArray<M> { | |
| #[doc = r" Creates a new contract instance with the specified `ethers`"] | |
| #[doc = r" client at the given `Address`. The contract derefs to a `ethers::Contract`"] | |
| #[doc = r" object"] | |
| pub fn new<T: Into<ethers::core::types::Address>>( | |
| address: T, | |
| client: ::std::sync::Arc<M>, | |
| ) -> Self { | |
| ethers::contract::Contract::new( | |
| address.into(), | |
| TESTACCUMULATINGARRAY_ABI.clone(), | |
| client, | |
| ) | |
| .into() | |
| } | |
| #[doc = "Calls the contract's `accumulate` (0x9bbc032c) function"] | |
| pub fn accumulate( | |
| &self, | |
| arrays: ::std::vec::Vec<::std::vec::Vec<ethers::core::types::U256>>, | |
| length: ethers::core::types::U256, | |
| ) -> ethers::contract::builders::ContractCall<M, ::std::vec::Vec<ethers::core::types::U256>> | |
| { | |
| self.0 | |
| .method_hash([155, 188, 3, 44], (arrays, length)) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Calls the contract's `accumulateWithIndividuals` (0x4609762b) function"] | |
| pub fn accumulate_with_individuals( | |
| &self, | |
| arrays: ::std::vec::Vec<::std::vec::Vec<ethers::core::types::U256>>, | |
| length: ethers::core::types::U256, | |
| ) -> ethers::contract::builders::ContractCall<M, ::std::vec::Vec<ethers::core::types::U256>> | |
| { | |
| self.0 | |
| .method_hash([70, 9, 118, 43], (arrays, length)) | |
| .expect("method not found (this should never happen)") | |
| } | |
| } | |
| impl<M: ethers::providers::Middleware> From<ethers::contract::Contract<M>> | |
| for TestAccumulatingArray<M> | |
| { | |
| fn from(contract: ethers::contract::Contract<M>) -> Self { | |
| Self(contract) | |
| } | |
| } | |
| #[doc = "Container type for all input parameters for the `accumulate`function with signature `accumulate(uint256[][],uint256)` and selector `[155, 188, 3, 44]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall(name = "accumulate", abi = "accumulate(uint256[][],uint256)")] | |
| pub struct AccumulateCall { | |
| pub arrays: ::std::vec::Vec<::std::vec::Vec<ethers::core::types::U256>>, | |
| pub length: ethers::core::types::U256, | |
| } | |
| #[doc = "Container type for all input parameters for the `accumulateWithIndividuals`function with signature `accumulateWithIndividuals(uint256[][],uint256)` and selector `[70, 9, 118, 43]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall( | |
| name = "accumulateWithIndividuals", | |
| abi = "accumulateWithIndividuals(uint256[][],uint256)" | |
| )] | |
| pub struct AccumulateWithIndividualsCall { | |
| pub arrays: ::std::vec::Vec<::std::vec::Vec<ethers::core::types::U256>>, | |
| pub length: ethers::core::types::U256, | |
| } | |
| #[derive(Debug, Clone, PartialEq, Eq, ethers :: contract :: EthAbiType)] | |
| pub enum TestAccumulatingArrayCalls { | |
| Accumulate(AccumulateCall), | |
| AccumulateWithIndividuals(AccumulateWithIndividualsCall), | |
| } | |
| impl ethers::core::abi::AbiDecode for TestAccumulatingArrayCalls { | |
| fn decode(data: impl AsRef<[u8]>) -> Result<Self, ethers::core::abi::AbiError> { | |
| if let Ok(decoded) = | |
| <AccumulateCall as ethers::core::abi::AbiDecode>::decode(data.as_ref()) | |
| { | |
| return Ok(TestAccumulatingArrayCalls::Accumulate(decoded)); | |
| } | |
| if let Ok(decoded) = | |
| <AccumulateWithIndividualsCall as ethers::core::abi::AbiDecode>::decode( | |
| data.as_ref(), | |
| ) | |
| { | |
| return Ok(TestAccumulatingArrayCalls::AccumulateWithIndividuals( | |
| decoded, | |
| )); | |
| } | |
| Err(ethers::core::abi::Error::InvalidData.into()) | |
| } | |
| } | |
| impl ethers::core::abi::AbiEncode for TestAccumulatingArrayCalls { | |
| fn encode(self) -> Vec<u8> { | |
| match self { | |
| TestAccumulatingArrayCalls::Accumulate(element) => element.encode(), | |
| TestAccumulatingArrayCalls::AccumulateWithIndividuals(element) => element.encode(), | |
| } | |
| } | |
| } | |
| impl ::std::fmt::Display for TestAccumulatingArrayCalls { | |
| fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result { | |
| match self { | |
| TestAccumulatingArrayCalls::Accumulate(element) => element.fmt(f), | |
| TestAccumulatingArrayCalls::AccumulateWithIndividuals(element) => element.fmt(f), | |
| } | |
| } | |
| } | |
| impl ::std::convert::From<AccumulateCall> for TestAccumulatingArrayCalls { | |
| fn from(var: AccumulateCall) -> Self { | |
| TestAccumulatingArrayCalls::Accumulate(var) | |
| } | |
| } | |
| impl ::std::convert::From<AccumulateWithIndividualsCall> for TestAccumulatingArrayCalls { | |
| fn from(var: AccumulateWithIndividualsCall) -> Self { | |
| TestAccumulatingArrayCalls::AccumulateWithIndividuals(var) | |
| } | |
| } | |
| } | |
| pub use testbn254_mod::*; | |
| #[allow(clippy::too_many_arguments, non_camel_case_types)] | |
| pub mod testbn254_mod { | |
| #![allow(clippy::enum_variant_names)] | |
| #![allow(dead_code)] | |
| #![allow(clippy::type_complexity)] | |
| #![allow(unused_imports)] | |
| pub use super::__shared_types::*; | |
| use ethers::contract::{ | |
| builders::{ContractCall, Event}, | |
| Contract, Lazy, | |
| }; | |
| use ethers::core::{ | |
| abi::{Abi, Detokenize, InvalidOutputType, Token, Tokenizable}, | |
| types::*, | |
| }; | |
| use ethers::providers::Middleware; | |
| #[doc = "TestBN254 was auto-generated with ethers-rs Abigen. More information at: https://github.com/gakonst/ethers-rs"] | |
| use std::sync::Arc; | |
| pub static TESTBN254_ABI: ethers::contract::Lazy<ethers::core::abi::Abi> = | |
| ethers::contract::Lazy::new(|| { | |
| serde_json :: from_str ("[{\"inputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\",\"outputs\":[]},{\"inputs\":[],\"stateMutability\":\"pure\",\"type\":\"function\",\"name\":\"P1\",\"outputs\":[{\"internalType\":\"struct BN254.G1Point\",\"name\":\"\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]}]},{\"inputs\":[],\"stateMutability\":\"pure\",\"type\":\"function\",\"name\":\"P2\",\"outputs\":[{\"internalType\":\"struct BN254.G2Point\",\"name\":\"\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x0\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"x1\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y0\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y1\",\"type\":\"uint256\",\"components\":[]}]}]},{\"inputs\":[{\"internalType\":\"struct BN254.G1Point\",\"name\":\"p1\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"p2\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]}],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"add\",\"outputs\":[{\"internalType\":\"struct BN254.G1Point\",\"name\":\"\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]}]},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"leBytes\",\"type\":\"bytes\",\"components\":[]}],\"stateMutability\":\"pure\",\"type\":\"function\",\"name\":\"fromLeBytesModOrder\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\",\"components\":[]}]},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"input\",\"type\":\"bytes32\",\"components\":[]}],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"g1Deserialize\",\"outputs\":[{\"internalType\":\"struct BN254.G1Point\",\"name\":\"point\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]}]},{\"inputs\":[{\"internalType\":\"struct BN254.G1Point\",\"name\":\"point\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]}],\"stateMutability\":\"pure\",\"type\":\"function\",\"name\":\"g1Serialize\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"res\",\"type\":\"bytes\",\"components\":[]}]},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"fr\",\"type\":\"uint256\",\"components\":[]}],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"invert\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"output\",\"type\":\"uint256\",\"components\":[]}]},{\"inputs\":[{\"internalType\":\"struct BN254.G1Point\",\"name\":\"point\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]}],\"stateMutability\":\"pure\",\"type\":\"function\",\"name\":\"isInfinity\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\",\"components\":[]}]},{\"inputs\":[{\"internalType\":\"struct BN254.G1Point\",\"name\":\"p\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]}],\"stateMutability\":\"pure\",\"type\":\"function\",\"name\":\"isYNegative\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\",\"components\":[]}]},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"fr\",\"type\":\"uint256\",\"components\":[]}],\"stateMutability\":\"pure\",\"type\":\"function\",\"name\":\"negateFr\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"res\",\"type\":\"uint256\",\"components\":[]}]},{\"inputs\":[{\"internalType\":\"struct BN254.G1Point\",\"name\":\"p\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]}],\"stateMutability\":\"pure\",\"type\":\"function\",\"name\":\"negateG1\",\"outputs\":[{\"internalType\":\"struct BN254.G1Point\",\"name\":\"r\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]}]},{\"inputs\":[{\"internalType\":\"struct BN254.G1Point\",\"name\":\"a1\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G2Point\",\"name\":\"a2\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x0\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"x1\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y0\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y1\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"b1\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G2Point\",\"name\":\"b2\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x0\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"x1\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y0\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y1\",\"type\":\"uint256\",\"components\":[]}]}],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"pairingProd2\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\",\"components\":[]}]},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"base\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"exponent\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"modulus\",\"type\":\"uint256\",\"components\":[]}],\"stateMutability\":\"pure\",\"type\":\"function\",\"name\":\"powSmall\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\",\"components\":[]}]},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]}],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"quadraticResidue\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"isQuadraticResidue\",\"type\":\"bool\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"a\",\"type\":\"uint256\",\"components\":[]}]},{\"inputs\":[{\"internalType\":\"struct BN254.G1Point\",\"name\":\"p\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"uint256\",\"name\":\"s\",\"type\":\"uint256\",\"components\":[]}],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"scalarMul\",\"outputs\":[{\"internalType\":\"struct BN254.G1Point\",\"name\":\"r\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]}]},{\"inputs\":[{\"internalType\":\"struct BN254.G1Point[]\",\"name\":\"bases\",\"type\":\"tuple[]\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"uint256[]\",\"name\":\"scalars\",\"type\":\"uint256[]\",\"components\":[]}],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"testMultiScalarMul\",\"outputs\":[{\"internalType\":\"struct BN254.G1Point\",\"name\":\"\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]}]},{\"inputs\":[{\"internalType\":\"struct BN254.G1Point\",\"name\":\"point\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]}],\"stateMutability\":\"pure\",\"type\":\"function\",\"name\":\"validateG1Point\",\"outputs\":[]},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"fr\",\"type\":\"uint256\",\"components\":[]}],\"stateMutability\":\"pure\",\"type\":\"function\",\"name\":\"validateScalarField\",\"outputs\":[]}]") . expect ("invalid abi") | |
| }); | |
| pub struct TestBN254<M>(ethers::contract::Contract<M>); | |
| impl<M> Clone for TestBN254<M> { | |
| fn clone(&self) -> Self { | |
| TestBN254(self.0.clone()) | |
| } | |
| } | |
| impl<M> std::ops::Deref for TestBN254<M> { | |
| type Target = ethers::contract::Contract<M>; | |
| fn deref(&self) -> &Self::Target { | |
| &self.0 | |
| } | |
| } | |
| impl<M: ethers::providers::Middleware> std::fmt::Debug for TestBN254<M> { | |
| fn fmt(&self, f: &mut std::fmt::Formatter) -> std::fmt::Result { | |
| f.debug_tuple(stringify!(TestBN254)) | |
| .field(&self.address()) | |
| .finish() | |
| } | |
| } | |
| impl<M: ethers::providers::Middleware> TestBN254<M> { | |
| #[doc = r" Creates a new contract instance with the specified `ethers`"] | |
| #[doc = r" client at the given `Address`. The contract derefs to a `ethers::Contract`"] | |
| #[doc = r" object"] | |
| pub fn new<T: Into<ethers::core::types::Address>>( | |
| address: T, | |
| client: ::std::sync::Arc<M>, | |
| ) -> Self { | |
| ethers::contract::Contract::new(address.into(), TESTBN254_ABI.clone(), client).into() | |
| } | |
| #[doc = "Calls the contract's `P1` (0x1de21b76) function"] | |
| pub fn p1(&self) -> ethers::contract::builders::ContractCall<M, G1Point> { | |
| self.0 | |
| .method_hash([29, 226, 27, 118], ()) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Calls the contract's `P2` (0x30332aea) function"] | |
| pub fn p2(&self) -> ethers::contract::builders::ContractCall<M, G2Point> { | |
| self.0 | |
| .method_hash([48, 51, 42, 234], ()) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Calls the contract's `add` (0x82d23b8a) function"] | |
| pub fn add( | |
| &self, | |
| p_1: G1Point, | |
| p_2: G1Point, | |
| ) -> ethers::contract::builders::ContractCall<M, G1Point> { | |
| self.0 | |
| .method_hash([130, 210, 59, 138], (p_1, p_2)) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Calls the contract's `fromLeBytesModOrder` (0x4c7c53a4) function"] | |
| pub fn from_le_bytes_mod_order( | |
| &self, | |
| le_bytes: ethers::core::types::Bytes, | |
| ) -> ethers::contract::builders::ContractCall<M, ethers::core::types::U256> { | |
| self.0 | |
| .method_hash([76, 124, 83, 164], le_bytes) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Calls the contract's `g1Deserialize` (0x5ca2d43e) function"] | |
| pub fn g_1_deserialize( | |
| &self, | |
| input: [u8; 32], | |
| ) -> ethers::contract::builders::ContractCall<M, G1Point> { | |
| self.0 | |
| .method_hash([92, 162, 212, 62], input) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Calls the contract's `g1Serialize` (0x8adadb48) function"] | |
| pub fn g_1_serialize( | |
| &self, | |
| point: G1Point, | |
| ) -> ethers::contract::builders::ContractCall<M, ethers::core::types::Bytes> { | |
| self.0 | |
| .method_hash([138, 218, 219, 72], (point,)) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Calls the contract's `invert` (0x7351ee37) function"] | |
| pub fn invert( | |
| &self, | |
| fr: ethers::core::types::U256, | |
| ) -> ethers::contract::builders::ContractCall<M, ethers::core::types::U256> { | |
| self.0 | |
| .method_hash([115, 81, 238, 55], fr) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Calls the contract's `isInfinity` (0x213455e5) function"] | |
| pub fn is_infinity( | |
| &self, | |
| point: G1Point, | |
| ) -> ethers::contract::builders::ContractCall<M, bool> { | |
| self.0 | |
| .method_hash([33, 52, 85, 229], (point,)) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Calls the contract's `isYNegative` (0xcb9e8010) function"] | |
| pub fn is_y_negative( | |
| &self, | |
| p: G1Point, | |
| ) -> ethers::contract::builders::ContractCall<M, bool> { | |
| self.0 | |
| .method_hash([203, 158, 128, 16], (p,)) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Calls the contract's `negateFr` (0xc6b89ed0) function"] | |
| pub fn negate_fr( | |
| &self, | |
| fr: ethers::core::types::U256, | |
| ) -> ethers::contract::builders::ContractCall<M, ethers::core::types::U256> { | |
| self.0 | |
| .method_hash([198, 184, 158, 208], fr) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Calls the contract's `negateG1` (0x960ffb67) function"] | |
| pub fn negate_g1( | |
| &self, | |
| p: G1Point, | |
| ) -> ethers::contract::builders::ContractCall<M, G1Point> { | |
| self.0 | |
| .method_hash([150, 15, 251, 103], (p,)) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Calls the contract's `pairingProd2` (0x7d75d6c9) function"] | |
| pub fn pairing_prod_2( | |
| &self, | |
| a_1: G1Point, | |
| a_2: G2Point, | |
| b_1: G1Point, | |
| b_2: G2Point, | |
| ) -> ethers::contract::builders::ContractCall<M, bool> { | |
| self.0 | |
| .method_hash([125, 117, 214, 201], (a_1, a_2, b_1, b_2)) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Calls the contract's `powSmall` (0x44ec50d6) function"] | |
| pub fn pow_small( | |
| &self, | |
| base: ethers::core::types::U256, | |
| exponent: ethers::core::types::U256, | |
| modulus: ethers::core::types::U256, | |
| ) -> ethers::contract::builders::ContractCall<M, ethers::core::types::U256> { | |
| self.0 | |
| .method_hash([68, 236, 80, 214], (base, exponent, modulus)) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Calls the contract's `quadraticResidue` (0x45e4dcca) function"] | |
| pub fn quadratic_residue( | |
| &self, | |
| x: ethers::core::types::U256, | |
| ) -> ethers::contract::builders::ContractCall<M, (bool, ethers::core::types::U256)> | |
| { | |
| self.0 | |
| .method_hash([69, 228, 220, 202], x) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Calls the contract's `scalarMul` (0x40a05867) function"] | |
| pub fn scalar_mul( | |
| &self, | |
| p: G1Point, | |
| s: ethers::core::types::U256, | |
| ) -> ethers::contract::builders::ContractCall<M, G1Point> { | |
| self.0 | |
| .method_hash([64, 160, 88, 103], (p, s)) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Calls the contract's `testMultiScalarMul` (0xe31bc80e) function"] | |
| pub fn test_multi_scalar_mul( | |
| &self, | |
| bases: ::std::vec::Vec<G1Point>, | |
| scalars: ::std::vec::Vec<ethers::core::types::U256>, | |
| ) -> ethers::contract::builders::ContractCall<M, G1Point> { | |
| self.0 | |
| .method_hash([227, 27, 200, 14], (bases, scalars)) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Calls the contract's `validateG1Point` (0xaba050de) function"] | |
| pub fn validate_g1_point( | |
| &self, | |
| point: G1Point, | |
| ) -> ethers::contract::builders::ContractCall<M, ()> { | |
| self.0 | |
| .method_hash([171, 160, 80, 222], (point,)) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Calls the contract's `validateScalarField` (0x4f91e48e) function"] | |
| pub fn validate_scalar_field( | |
| &self, | |
| fr: ethers::core::types::U256, | |
| ) -> ethers::contract::builders::ContractCall<M, ()> { | |
| self.0 | |
| .method_hash([79, 145, 228, 142], fr) | |
| .expect("method not found (this should never happen)") | |
| } | |
| } | |
| impl<M: ethers::providers::Middleware> From<ethers::contract::Contract<M>> for TestBN254<M> { | |
| fn from(contract: ethers::contract::Contract<M>) -> Self { | |
| Self(contract) | |
| } | |
| } | |
| #[doc = "Container type for all input parameters for the `P1`function with signature `P1()` and selector `[29, 226, 27, 118]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall(name = "P1", abi = "P1()")] | |
| pub struct P1Call; | |
| #[doc = "Container type for all input parameters for the `P2`function with signature `P2()` and selector `[48, 51, 42, 234]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall(name = "P2", abi = "P2()")] | |
| pub struct P2Call; | |
| #[doc = "Container type for all input parameters for the `add`function with signature `add((uint256,uint256),(uint256,uint256))` and selector `[130, 210, 59, 138]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall(name = "add", abi = "add((uint256,uint256),(uint256,uint256))")] | |
| pub struct AddCall { | |
| pub p_1: G1Point, | |
| pub p_2: G1Point, | |
| } | |
| #[doc = "Container type for all input parameters for the `fromLeBytesModOrder`function with signature `fromLeBytesModOrder(bytes)` and selector `[76, 124, 83, 164]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall(name = "fromLeBytesModOrder", abi = "fromLeBytesModOrder(bytes)")] | |
| pub struct FromLeBytesModOrderCall { | |
| pub le_bytes: ethers::core::types::Bytes, | |
| } | |
| #[doc = "Container type for all input parameters for the `g1Deserialize`function with signature `g1Deserialize(bytes32)` and selector `[92, 162, 212, 62]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall(name = "g1Deserialize", abi = "g1Deserialize(bytes32)")] | |
| pub struct G1DeserializeCall { | |
| pub input: [u8; 32], | |
| } | |
| #[doc = "Container type for all input parameters for the `g1Serialize`function with signature `g1Serialize((uint256,uint256))` and selector `[138, 218, 219, 72]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall(name = "g1Serialize", abi = "g1Serialize((uint256,uint256))")] | |
| pub struct G1SerializeCall { | |
| pub point: G1Point, | |
| } | |
| #[doc = "Container type for all input parameters for the `invert`function with signature `invert(uint256)` and selector `[115, 81, 238, 55]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall(name = "invert", abi = "invert(uint256)")] | |
| pub struct InvertCall { | |
| pub fr: ethers::core::types::U256, | |
| } | |
| #[doc = "Container type for all input parameters for the `isInfinity`function with signature `isInfinity((uint256,uint256))` and selector `[33, 52, 85, 229]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall(name = "isInfinity", abi = "isInfinity((uint256,uint256))")] | |
| pub struct IsInfinityCall { | |
| pub point: G1Point, | |
| } | |
| #[doc = "Container type for all input parameters for the `isYNegative`function with signature `isYNegative((uint256,uint256))` and selector `[203, 158, 128, 16]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall(name = "isYNegative", abi = "isYNegative((uint256,uint256))")] | |
| pub struct IsYNegativeCall { | |
| pub p: G1Point, | |
| } | |
| #[doc = "Container type for all input parameters for the `negateFr`function with signature `negateFr(uint256)` and selector `[198, 184, 158, 208]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall(name = "negateFr", abi = "negateFr(uint256)")] | |
| pub struct NegateFrCall { | |
| pub fr: ethers::core::types::U256, | |
| } | |
| #[doc = "Container type for all input parameters for the `negateG1`function with signature `negateG1((uint256,uint256))` and selector `[150, 15, 251, 103]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall(name = "negateG1", abi = "negateG1((uint256,uint256))")] | |
| pub struct NegateG1Call { | |
| pub p: G1Point, | |
| } | |
| #[doc = "Container type for all input parameters for the `pairingProd2`function with signature `pairingProd2((uint256,uint256),(uint256,uint256,uint256,uint256),(uint256,uint256),(uint256,uint256,uint256,uint256))` and selector `[125, 117, 214, 201]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall( | |
| name = "pairingProd2", | |
| abi = "pairingProd2((uint256,uint256),(uint256,uint256,uint256,uint256),(uint256,uint256),(uint256,uint256,uint256,uint256))" | |
| )] | |
| pub struct PairingProd2Call { | |
| pub a_1: G1Point, | |
| pub a_2: G2Point, | |
| pub b_1: G1Point, | |
| pub b_2: G2Point, | |
| } | |
| #[doc = "Container type for all input parameters for the `powSmall`function with signature `powSmall(uint256,uint256,uint256)` and selector `[68, 236, 80, 214]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall(name = "powSmall", abi = "powSmall(uint256,uint256,uint256)")] | |
| pub struct PowSmallCall { | |
| pub base: ethers::core::types::U256, | |
| pub exponent: ethers::core::types::U256, | |
| pub modulus: ethers::core::types::U256, | |
| } | |
| #[doc = "Container type for all input parameters for the `quadraticResidue`function with signature `quadraticResidue(uint256)` and selector `[69, 228, 220, 202]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall(name = "quadraticResidue", abi = "quadraticResidue(uint256)")] | |
| pub struct QuadraticResidueCall { | |
| pub x: ethers::core::types::U256, | |
| } | |
| #[doc = "Container type for all input parameters for the `scalarMul`function with signature `scalarMul((uint256,uint256),uint256)` and selector `[64, 160, 88, 103]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall(name = "scalarMul", abi = "scalarMul((uint256,uint256),uint256)")] | |
| pub struct ScalarMulCall { | |
| pub p: G1Point, | |
| pub s: ethers::core::types::U256, | |
| } | |
| #[doc = "Container type for all input parameters for the `testMultiScalarMul`function with signature `testMultiScalarMul((uint256,uint256)[],uint256[])` and selector `[227, 27, 200, 14]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall( | |
| name = "testMultiScalarMul", | |
| abi = "testMultiScalarMul((uint256,uint256)[],uint256[])" | |
| )] | |
| pub struct TestMultiScalarMulCall { | |
| pub bases: ::std::vec::Vec<G1Point>, | |
| pub scalars: ::std::vec::Vec<ethers::core::types::U256>, | |
| } | |
| #[doc = "Container type for all input parameters for the `validateG1Point`function with signature `validateG1Point((uint256,uint256))` and selector `[171, 160, 80, 222]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall(name = "validateG1Point", abi = "validateG1Point((uint256,uint256))")] | |
| pub struct ValidateG1PointCall { | |
| pub point: G1Point, | |
| } | |
| #[doc = "Container type for all input parameters for the `validateScalarField`function with signature `validateScalarField(uint256)` and selector `[79, 145, 228, 142]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall(name = "validateScalarField", abi = "validateScalarField(uint256)")] | |
| pub struct ValidateScalarFieldCall { | |
| pub fr: ethers::core::types::U256, | |
| } | |
| #[derive(Debug, Clone, PartialEq, Eq, ethers :: contract :: EthAbiType)] | |
| pub enum TestBN254Calls { | |
| P1(P1Call), | |
| P2(P2Call), | |
| Add(AddCall), | |
| FromLeBytesModOrder(FromLeBytesModOrderCall), | |
| G1Deserialize(G1DeserializeCall), | |
| G1Serialize(G1SerializeCall), | |
| Invert(InvertCall), | |
| IsInfinity(IsInfinityCall), | |
| IsYNegative(IsYNegativeCall), | |
| NegateFr(NegateFrCall), | |
| NegateG1(NegateG1Call), | |
| PairingProd2(PairingProd2Call), | |
| PowSmall(PowSmallCall), | |
| QuadraticResidue(QuadraticResidueCall), | |
| ScalarMul(ScalarMulCall), | |
| TestMultiScalarMul(TestMultiScalarMulCall), | |
| ValidateG1Point(ValidateG1PointCall), | |
| ValidateScalarField(ValidateScalarFieldCall), | |
| } | |
| impl ethers::core::abi::AbiDecode for TestBN254Calls { | |
| fn decode(data: impl AsRef<[u8]>) -> Result<Self, ethers::core::abi::AbiError> { | |
| if let Ok(decoded) = <P1Call as ethers::core::abi::AbiDecode>::decode(data.as_ref()) { | |
| return Ok(TestBN254Calls::P1(decoded)); | |
| } | |
| if let Ok(decoded) = <P2Call as ethers::core::abi::AbiDecode>::decode(data.as_ref()) { | |
| return Ok(TestBN254Calls::P2(decoded)); | |
| } | |
| if let Ok(decoded) = <AddCall as ethers::core::abi::AbiDecode>::decode(data.as_ref()) { | |
| return Ok(TestBN254Calls::Add(decoded)); | |
| } | |
| if let Ok(decoded) = | |
| <FromLeBytesModOrderCall as ethers::core::abi::AbiDecode>::decode(data.as_ref()) | |
| { | |
| return Ok(TestBN254Calls::FromLeBytesModOrder(decoded)); | |
| } | |
| if let Ok(decoded) = | |
| <G1DeserializeCall as ethers::core::abi::AbiDecode>::decode(data.as_ref()) | |
| { | |
| return Ok(TestBN254Calls::G1Deserialize(decoded)); | |
| } | |
| if let Ok(decoded) = | |
| <G1SerializeCall as ethers::core::abi::AbiDecode>::decode(data.as_ref()) | |
| { | |
| return Ok(TestBN254Calls::G1Serialize(decoded)); | |
| } | |
| if let Ok(decoded) = <InvertCall as ethers::core::abi::AbiDecode>::decode(data.as_ref()) | |
| { | |
| return Ok(TestBN254Calls::Invert(decoded)); | |
| } | |
| if let Ok(decoded) = | |
| <IsInfinityCall as ethers::core::abi::AbiDecode>::decode(data.as_ref()) | |
| { | |
| return Ok(TestBN254Calls::IsInfinity(decoded)); | |
| } | |
| if let Ok(decoded) = | |
| <IsYNegativeCall as ethers::core::abi::AbiDecode>::decode(data.as_ref()) | |
| { | |
| return Ok(TestBN254Calls::IsYNegative(decoded)); | |
| } | |
| if let Ok(decoded) = | |
| <NegateFrCall as ethers::core::abi::AbiDecode>::decode(data.as_ref()) | |
| { | |
| return Ok(TestBN254Calls::NegateFr(decoded)); | |
| } | |
| if let Ok(decoded) = | |
| <NegateG1Call as ethers::core::abi::AbiDecode>::decode(data.as_ref()) | |
| { | |
| return Ok(TestBN254Calls::NegateG1(decoded)); | |
| } | |
| if let Ok(decoded) = | |
| <PairingProd2Call as ethers::core::abi::AbiDecode>::decode(data.as_ref()) | |
| { | |
| return Ok(TestBN254Calls::PairingProd2(decoded)); | |
| } | |
| if let Ok(decoded) = | |
| <PowSmallCall as ethers::core::abi::AbiDecode>::decode(data.as_ref()) | |
| { | |
| return Ok(TestBN254Calls::PowSmall(decoded)); | |
| } | |
| if let Ok(decoded) = | |
| <QuadraticResidueCall as ethers::core::abi::AbiDecode>::decode(data.as_ref()) | |
| { | |
| return Ok(TestBN254Calls::QuadraticResidue(decoded)); | |
| } | |
| if let Ok(decoded) = | |
| <ScalarMulCall as ethers::core::abi::AbiDecode>::decode(data.as_ref()) | |
| { | |
| return Ok(TestBN254Calls::ScalarMul(decoded)); | |
| } | |
| if let Ok(decoded) = | |
| <TestMultiScalarMulCall as ethers::core::abi::AbiDecode>::decode(data.as_ref()) | |
| { | |
| return Ok(TestBN254Calls::TestMultiScalarMul(decoded)); | |
| } | |
| if let Ok(decoded) = | |
| <ValidateG1PointCall as ethers::core::abi::AbiDecode>::decode(data.as_ref()) | |
| { | |
| return Ok(TestBN254Calls::ValidateG1Point(decoded)); | |
| } | |
| if let Ok(decoded) = | |
| <ValidateScalarFieldCall as ethers::core::abi::AbiDecode>::decode(data.as_ref()) | |
| { | |
| return Ok(TestBN254Calls::ValidateScalarField(decoded)); | |
| } | |
| Err(ethers::core::abi::Error::InvalidData.into()) | |
| } | |
| } | |
| impl ethers::core::abi::AbiEncode for TestBN254Calls { | |
| fn encode(self) -> Vec<u8> { | |
| match self { | |
| TestBN254Calls::P1(element) => element.encode(), | |
| TestBN254Calls::P2(element) => element.encode(), | |
| TestBN254Calls::Add(element) => element.encode(), | |
| TestBN254Calls::FromLeBytesModOrder(element) => element.encode(), | |
| TestBN254Calls::G1Deserialize(element) => element.encode(), | |
| TestBN254Calls::G1Serialize(element) => element.encode(), | |
| TestBN254Calls::Invert(element) => element.encode(), | |
| TestBN254Calls::IsInfinity(element) => element.encode(), | |
| TestBN254Calls::IsYNegative(element) => element.encode(), | |
| TestBN254Calls::NegateFr(element) => element.encode(), | |
| TestBN254Calls::NegateG1(element) => element.encode(), | |
| TestBN254Calls::PairingProd2(element) => element.encode(), | |
| TestBN254Calls::PowSmall(element) => element.encode(), | |
| TestBN254Calls::QuadraticResidue(element) => element.encode(), | |
| TestBN254Calls::ScalarMul(element) => element.encode(), | |
| TestBN254Calls::TestMultiScalarMul(element) => element.encode(), | |
| TestBN254Calls::ValidateG1Point(element) => element.encode(), | |
| TestBN254Calls::ValidateScalarField(element) => element.encode(), | |
| } | |
| } | |
| } | |
| impl ::std::fmt::Display for TestBN254Calls { | |
| fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result { | |
| match self { | |
| TestBN254Calls::P1(element) => element.fmt(f), | |
| TestBN254Calls::P2(element) => element.fmt(f), | |
| TestBN254Calls::Add(element) => element.fmt(f), | |
| TestBN254Calls::FromLeBytesModOrder(element) => element.fmt(f), | |
| TestBN254Calls::G1Deserialize(element) => element.fmt(f), | |
| TestBN254Calls::G1Serialize(element) => element.fmt(f), | |
| TestBN254Calls::Invert(element) => element.fmt(f), | |
| TestBN254Calls::IsInfinity(element) => element.fmt(f), | |
| TestBN254Calls::IsYNegative(element) => element.fmt(f), | |
| TestBN254Calls::NegateFr(element) => element.fmt(f), | |
| TestBN254Calls::NegateG1(element) => element.fmt(f), | |
| TestBN254Calls::PairingProd2(element) => element.fmt(f), | |
| TestBN254Calls::PowSmall(element) => element.fmt(f), | |
| TestBN254Calls::QuadraticResidue(element) => element.fmt(f), | |
| TestBN254Calls::ScalarMul(element) => element.fmt(f), | |
| TestBN254Calls::TestMultiScalarMul(element) => element.fmt(f), | |
| TestBN254Calls::ValidateG1Point(element) => element.fmt(f), | |
| TestBN254Calls::ValidateScalarField(element) => element.fmt(f), | |
| } | |
| } | |
| } | |
| impl ::std::convert::From<P1Call> for TestBN254Calls { | |
| fn from(var: P1Call) -> Self { | |
| TestBN254Calls::P1(var) | |
| } | |
| } | |
| impl ::std::convert::From<P2Call> for TestBN254Calls { | |
| fn from(var: P2Call) -> Self { | |
| TestBN254Calls::P2(var) | |
| } | |
| } | |
| impl ::std::convert::From<AddCall> for TestBN254Calls { | |
| fn from(var: AddCall) -> Self { | |
| TestBN254Calls::Add(var) | |
| } | |
| } | |
| impl ::std::convert::From<FromLeBytesModOrderCall> for TestBN254Calls { | |
| fn from(var: FromLeBytesModOrderCall) -> Self { | |
| TestBN254Calls::FromLeBytesModOrder(var) | |
| } | |
| } | |
| impl ::std::convert::From<G1DeserializeCall> for TestBN254Calls { | |
| fn from(var: G1DeserializeCall) -> Self { | |
| TestBN254Calls::G1Deserialize(var) | |
| } | |
| } | |
| impl ::std::convert::From<G1SerializeCall> for TestBN254Calls { | |
| fn from(var: G1SerializeCall) -> Self { | |
| TestBN254Calls::G1Serialize(var) | |
| } | |
| } | |
| impl ::std::convert::From<InvertCall> for TestBN254Calls { | |
| fn from(var: InvertCall) -> Self { | |
| TestBN254Calls::Invert(var) | |
| } | |
| } | |
| impl ::std::convert::From<IsInfinityCall> for TestBN254Calls { | |
| fn from(var: IsInfinityCall) -> Self { | |
| TestBN254Calls::IsInfinity(var) | |
| } | |
| } | |
| impl ::std::convert::From<IsYNegativeCall> for TestBN254Calls { | |
| fn from(var: IsYNegativeCall) -> Self { | |
| TestBN254Calls::IsYNegative(var) | |
| } | |
| } | |
| impl ::std::convert::From<NegateFrCall> for TestBN254Calls { | |
| fn from(var: NegateFrCall) -> Self { | |
| TestBN254Calls::NegateFr(var) | |
| } | |
| } | |
| impl ::std::convert::From<NegateG1Call> for TestBN254Calls { | |
| fn from(var: NegateG1Call) -> Self { | |
| TestBN254Calls::NegateG1(var) | |
| } | |
| } | |
| impl ::std::convert::From<PairingProd2Call> for TestBN254Calls { | |
| fn from(var: PairingProd2Call) -> Self { | |
| TestBN254Calls::PairingProd2(var) | |
| } | |
| } | |
| impl ::std::convert::From<PowSmallCall> for TestBN254Calls { | |
| fn from(var: PowSmallCall) -> Self { | |
| TestBN254Calls::PowSmall(var) | |
| } | |
| } | |
| impl ::std::convert::From<QuadraticResidueCall> for TestBN254Calls { | |
| fn from(var: QuadraticResidueCall) -> Self { | |
| TestBN254Calls::QuadraticResidue(var) | |
| } | |
| } | |
| impl ::std::convert::From<ScalarMulCall> for TestBN254Calls { | |
| fn from(var: ScalarMulCall) -> Self { | |
| TestBN254Calls::ScalarMul(var) | |
| } | |
| } | |
| impl ::std::convert::From<TestMultiScalarMulCall> for TestBN254Calls { | |
| fn from(var: TestMultiScalarMulCall) -> Self { | |
| TestBN254Calls::TestMultiScalarMul(var) | |
| } | |
| } | |
| impl ::std::convert::From<ValidateG1PointCall> for TestBN254Calls { | |
| fn from(var: ValidateG1PointCall) -> Self { | |
| TestBN254Calls::ValidateG1Point(var) | |
| } | |
| } | |
| impl ::std::convert::From<ValidateScalarFieldCall> for TestBN254Calls { | |
| fn from(var: ValidateScalarFieldCall) -> Self { | |
| TestBN254Calls::ValidateScalarField(var) | |
| } | |
| } | |
| #[doc = "`G2Point(uint256,uint256,uint256,uint256)`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthAbiType, | |
| ethers :: contract :: EthAbiCodec, | |
| )] | |
| pub struct G2Point { | |
| pub x_0: ethers::core::types::U256, | |
| pub x_1: ethers::core::types::U256, | |
| pub y_0: ethers::core::types::U256, | |
| pub y_1: ethers::core::types::U256, | |
| } | |
| } | |
| pub use testcape_mod::*; | |
| #[allow(clippy::too_many_arguments, non_camel_case_types)] | |
| pub mod testcape_mod { | |
| #![allow(clippy::enum_variant_names)] | |
| #![allow(dead_code)] | |
| #![allow(clippy::type_complexity)] | |
| #![allow(unused_imports)] | |
| pub use super::__shared_types::*; | |
| use ethers::contract::{ | |
| builders::{ContractCall, Event}, | |
| Contract, Lazy, | |
| }; | |
| use ethers::core::{ | |
| abi::{Abi, Detokenize, InvalidOutputType, Token, Tokenizable}, | |
| types::*, | |
| }; | |
| use ethers::providers::Middleware; | |
| #[doc = "TestCAPE was auto-generated with ethers-rs Abigen. More information at: https://github.com/gakonst/ethers-rs"] | |
| use std::sync::Arc; | |
| pub static TESTCAPE_ABI: ethers::contract::Lazy<ethers::core::abi::Abi> = | |
| ethers::contract::Lazy::new(|| { | |
| serde_json :: from_str ("[{\"inputs\":[{\"internalType\":\"uint64\",\"name\":\"nRoots\",\"type\":\"uint64\",\"components\":[]},{\"internalType\":\"address\",\"name\":\"verifierAddr\",\"type\":\"address\",\"components\":[]},{\"internalType\":\"address\",\"name\":\"recordsMerkleTreeAddr\",\"type\":\"address\",\"components\":[]}],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\",\"outputs\":[]},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"erc20Address\",\"type\":\"address\",\"components\":[],\"indexed\":false},{\"internalType\":\"uint256\",\"name\":\"assetDefinitionCode\",\"type\":\"uint256\",\"components\":[],\"indexed\":false}],\"type\":\"event\",\"name\":\"AssetSponsored\",\"outputs\":[],\"anonymous\":false},{\"inputs\":[{\"internalType\":\"uint64\",\"name\":\"height\",\"type\":\"uint64\",\"components\":[],\"indexed\":true},{\"internalType\":\"uint256[]\",\"name\":\"depositCommitments\",\"type\":\"uint256[]\",\"components\":[],\"indexed\":false},{\"internalType\":\"struct CAPE.CapeBlock\",\"name\":\"newBlock\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"minerAddr\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"enum CAPE.NoteType[]\",\"name\":\"noteTypes\",\"type\":\"uint8[]\",\"components\":[]},{\"internalType\":\"struct CAPE.TransferNote[]\",\"name\":\"transferNotes\",\"type\":\"tuple[]\",\"components\":[{\"internalType\":\"uint256[]\",\"name\":\"inputNullifiers\",\"type\":\"uint256[]\",\"components\":[]},{\"internalType\":\"uint256[]\",\"name\":\"outputCommitments\",\"type\":\"uint256[]\",\"components\":[]},{\"internalType\":\"struct IPlonkVerifier.PlonkProof\",\"name\":\"proof\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire0\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire1\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire2\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire3\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire4\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"prodPerm\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split0\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split1\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split2\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split3\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split4\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"zeta\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"zetaOmega\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"uint256\",\"name\":\"wireEval0\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval1\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval2\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval3\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval4\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval0\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval1\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval2\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval3\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"prodPermZetaOmegaEval\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct CAPE.AuditMemo\",\"name\":\"auditMemo\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"ephemeralKey\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"uint256[]\",\"name\":\"data\",\"type\":\"uint256[]\",\"components\":[]}]},{\"internalType\":\"struct CAPE.TransferAuxInfo\",\"name\":\"auxInfo\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"merkleRoot\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint128\",\"name\":\"fee\",\"type\":\"uint128\",\"components\":[]},{\"internalType\":\"uint64\",\"name\":\"validUntil\",\"type\":\"uint64\",\"components\":[]},{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"txnMemoVerKey\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"bytes\",\"name\":\"extraProofBoundData\",\"type\":\"bytes\",\"components\":[]}]}]},{\"internalType\":\"struct CAPE.MintNote[]\",\"name\":\"mintNotes\",\"type\":\"tuple[]\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"inputNullifier\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"chgComm\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"mintComm\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint128\",\"name\":\"mintAmount\",\"type\":\"uint128\",\"components\":[]},{\"internalType\":\"struct AssetRegistry.AssetDefinition\",\"name\":\"mintAssetDef\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"code\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"struct AssetRegistry.AssetPolicy\",\"name\":\"policy\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"auditorPk\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"credPk\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"freezerPk\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"uint256\",\"name\":\"revealMap\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint128\",\"name\":\"revealThreshold\",\"type\":\"uint128\",\"components\":[]}]}]},{\"internalType\":\"uint256\",\"name\":\"mintInternalAssetCode\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"struct IPlonkVerifier.PlonkProof\",\"name\":\"proof\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire0\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire1\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire2\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire3\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire4\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"prodPerm\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split0\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split1\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split2\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split3\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split4\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"zeta\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"zetaOmega\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"uint256\",\"name\":\"wireEval0\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval1\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval2\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval3\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval4\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval0\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval1\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval2\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval3\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"prodPermZetaOmegaEval\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct CAPE.AuditMemo\",\"name\":\"auditMemo\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"ephemeralKey\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"uint256[]\",\"name\":\"data\",\"type\":\"uint256[]\",\"components\":[]}]},{\"internalType\":\"struct CAPE.MintAuxInfo\",\"name\":\"auxInfo\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"merkleRoot\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint128\",\"name\":\"fee\",\"type\":\"uint128\",\"components\":[]},{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"txnMemoVerKey\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]}]}]},{\"internalType\":\"struct CAPE.FreezeNote[]\",\"name\":\"freezeNotes\",\"type\":\"tuple[]\",\"components\":[{\"internalType\":\"uint256[]\",\"name\":\"inputNullifiers\",\"type\":\"uint256[]\",\"components\":[]},{\"internalType\":\"uint256[]\",\"name\":\"outputCommitments\",\"type\":\"uint256[]\",\"components\":[]},{\"internalType\":\"struct IPlonkVerifier.PlonkProof\",\"name\":\"proof\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire0\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire1\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire2\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire3\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire4\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"prodPerm\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split0\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split1\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split2\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split3\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split4\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"zeta\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"zetaOmega\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"uint256\",\"name\":\"wireEval0\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval1\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval2\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval3\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval4\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval0\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval1\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval2\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval3\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"prodPermZetaOmegaEval\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct CAPE.FreezeAuxInfo\",\"name\":\"auxInfo\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"merkleRoot\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint128\",\"name\":\"fee\",\"type\":\"uint128\",\"components\":[]},{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"txnMemoVerKey\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]}]}]},{\"internalType\":\"struct CAPE.BurnNote[]\",\"name\":\"burnNotes\",\"type\":\"tuple[]\",\"components\":[{\"internalType\":\"struct CAPE.TransferNote\",\"name\":\"transferNote\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256[]\",\"name\":\"inputNullifiers\",\"type\":\"uint256[]\",\"components\":[]},{\"internalType\":\"uint256[]\",\"name\":\"outputCommitments\",\"type\":\"uint256[]\",\"components\":[]},{\"internalType\":\"struct IPlonkVerifier.PlonkProof\",\"name\":\"proof\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire0\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire1\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire2\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire3\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire4\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"prodPerm\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split0\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split1\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split2\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split3\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split4\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"zeta\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"zetaOmega\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"uint256\",\"name\":\"wireEval0\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval1\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval2\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval3\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval4\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval0\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval1\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval2\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval3\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"prodPermZetaOmegaEval\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct CAPE.AuditMemo\",\"name\":\"auditMemo\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"ephemeralKey\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"uint256[]\",\"name\":\"data\",\"type\":\"uint256[]\",\"components\":[]}]},{\"internalType\":\"struct CAPE.TransferAuxInfo\",\"name\":\"auxInfo\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"merkleRoot\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint128\",\"name\":\"fee\",\"type\":\"uint128\",\"components\":[]},{\"internalType\":\"uint64\",\"name\":\"validUntil\",\"type\":\"uint64\",\"components\":[]},{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"txnMemoVerKey\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"bytes\",\"name\":\"extraProofBoundData\",\"type\":\"bytes\",\"components\":[]}]}]},{\"internalType\":\"struct CAPE.RecordOpening\",\"name\":\"recordOpening\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint128\",\"name\":\"amount\",\"type\":\"uint128\",\"components\":[]},{\"internalType\":\"struct AssetRegistry.AssetDefinition\",\"name\":\"assetDef\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"code\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"struct AssetRegistry.AssetPolicy\",\"name\":\"policy\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"auditorPk\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"credPk\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"freezerPk\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"uint256\",\"name\":\"revealMap\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint128\",\"name\":\"revealThreshold\",\"type\":\"uint128\",\"components\":[]}]}]},{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"userAddr\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"bytes32\",\"name\":\"encKey\",\"type\":\"bytes32\",\"components\":[]},{\"internalType\":\"bool\",\"name\":\"freezeFlag\",\"type\":\"bool\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"blind\",\"type\":\"uint256\",\"components\":[]}]}]}],\"indexed\":false}],\"type\":\"event\",\"name\":\"BlockCommitted\",\"outputs\":[],\"anonymous\":false},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"roBytes\",\"type\":\"bytes\",\"components\":[],\"indexed\":false},{\"internalType\":\"address\",\"name\":\"erc20TokenAddress\",\"type\":\"address\",\"components\":[],\"indexed\":false},{\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\",\"components\":[],\"indexed\":false}],\"type\":\"event\",\"name\":\"Erc20TokensDeposited\",\"outputs\":[],\"anonymous\":false},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"roBytes\",\"type\":\"bytes\",\"components\":[],\"indexed\":false}],\"type\":\"event\",\"name\":\"FaucetInitialized\",\"outputs\":[],\"anonymous\":false},{\"inputs\":[],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"CAPE_BURN_MAGIC_BYTES\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\",\"components\":[]}]},{\"inputs\":[],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"CAPE_BURN_MAGIC_BYTES_SIZE\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\",\"components\":[]}]},{\"inputs\":[],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"CAP_NATIVE_ASSET_CODE\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\",\"components\":[]}]},{\"inputs\":[],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"DOM_SEP_DOMESTIC_ASSET\",\"outputs\":[{\"internalType\":\"bytes14\",\"name\":\"\",\"type\":\"bytes14\",\"components\":[]}]},{\"inputs\":[],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"DOM_SEP_FOREIGN_ASSET\",\"outputs\":[{\"internalType\":\"bytes13\",\"name\":\"\",\"type\":\"bytes13\",\"components\":[]}]},{\"inputs\":[],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"MAX_NUM_PENDING_DEPOSIT\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\",\"components\":[]}]},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"root\",\"type\":\"uint256\",\"components\":[]}],\"stateMutability\":\"nonpayable\",\"type\":\"function\",\"name\":\"addRoot\",\"outputs\":[]},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\",\"components\":[]}],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"assets\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\",\"components\":[]}]},{\"inputs\":[],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"blockHeight\",\"outputs\":[{\"internalType\":\"uint64\",\"name\":\"\",\"type\":\"uint64\",\"components\":[]}]},{\"inputs\":[{\"internalType\":\"struct CAPE.BurnNote\",\"name\":\"note\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"struct CAPE.TransferNote\",\"name\":\"transferNote\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256[]\",\"name\":\"inputNullifiers\",\"type\":\"uint256[]\",\"components\":[]},{\"internalType\":\"uint256[]\",\"name\":\"outputCommitments\",\"type\":\"uint256[]\",\"components\":[]},{\"internalType\":\"struct IPlonkVerifier.PlonkProof\",\"name\":\"proof\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire0\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire1\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire2\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire3\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire4\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"prodPerm\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split0\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split1\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split2\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split3\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split4\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"zeta\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"zetaOmega\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"uint256\",\"name\":\"wireEval0\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval1\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval2\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval3\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval4\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval0\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval1\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval2\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval3\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"prodPermZetaOmegaEval\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct CAPE.AuditMemo\",\"name\":\"auditMemo\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"ephemeralKey\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"uint256[]\",\"name\":\"data\",\"type\":\"uint256[]\",\"components\":[]}]},{\"internalType\":\"struct CAPE.TransferAuxInfo\",\"name\":\"auxInfo\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"merkleRoot\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint128\",\"name\":\"fee\",\"type\":\"uint128\",\"components\":[]},{\"internalType\":\"uint64\",\"name\":\"validUntil\",\"type\":\"uint64\",\"components\":[]},{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"txnMemoVerKey\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"bytes\",\"name\":\"extraProofBoundData\",\"type\":\"bytes\",\"components\":[]}]}]},{\"internalType\":\"struct CAPE.RecordOpening\",\"name\":\"recordOpening\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint128\",\"name\":\"amount\",\"type\":\"uint128\",\"components\":[]},{\"internalType\":\"struct AssetRegistry.AssetDefinition\",\"name\":\"assetDef\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"code\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"struct AssetRegistry.AssetPolicy\",\"name\":\"policy\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"auditorPk\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"credPk\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"freezerPk\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"uint256\",\"name\":\"revealMap\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint128\",\"name\":\"revealThreshold\",\"type\":\"uint128\",\"components\":[]}]}]},{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"userAddr\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"bytes32\",\"name\":\"encKey\",\"type\":\"bytes32\",\"components\":[]},{\"internalType\":\"bool\",\"name\":\"freezeFlag\",\"type\":\"bool\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"blind\",\"type\":\"uint256\",\"components\":[]}]}]}],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"checkBurn\",\"outputs\":[]},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"assetDefinitionCode\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"internalAssetCode\",\"type\":\"uint256\",\"components\":[]}],\"stateMutability\":\"pure\",\"type\":\"function\",\"name\":\"checkDomesticAssetCode\",\"outputs\":[]},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"assetDefinitionCode\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"address\",\"name\":\"erc20Address\",\"type\":\"address\",\"components\":[]},{\"internalType\":\"address\",\"name\":\"sponsor\",\"type\":\"address\",\"components\":[]},{\"internalType\":\"struct AssetRegistry.AssetPolicy\",\"name\":\"policy\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"auditorPk\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"credPk\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"freezerPk\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"uint256\",\"name\":\"revealMap\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint128\",\"name\":\"revealThreshold\",\"type\":\"uint128\",\"components\":[]}]}],\"stateMutability\":\"pure\",\"type\":\"function\",\"name\":\"checkForeignAssetCode\",\"outputs\":[]},{\"inputs\":[{\"internalType\":\"struct CAPE.TransferNote\",\"name\":\"note\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256[]\",\"name\":\"inputNullifiers\",\"type\":\"uint256[]\",\"components\":[]},{\"internalType\":\"uint256[]\",\"name\":\"outputCommitments\",\"type\":\"uint256[]\",\"components\":[]},{\"internalType\":\"struct IPlonkVerifier.PlonkProof\",\"name\":\"proof\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire0\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire1\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire2\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire3\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire4\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"prodPerm\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split0\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split1\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split2\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split3\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split4\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"zeta\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"zetaOmega\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"uint256\",\"name\":\"wireEval0\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval1\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval2\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval3\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval4\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval0\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval1\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval2\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval3\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"prodPermZetaOmegaEval\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct CAPE.AuditMemo\",\"name\":\"auditMemo\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"ephemeralKey\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"uint256[]\",\"name\":\"data\",\"type\":\"uint256[]\",\"components\":[]}]},{\"internalType\":\"struct CAPE.TransferAuxInfo\",\"name\":\"auxInfo\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"merkleRoot\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint128\",\"name\":\"fee\",\"type\":\"uint128\",\"components\":[]},{\"internalType\":\"uint64\",\"name\":\"validUntil\",\"type\":\"uint64\",\"components\":[]},{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"txnMemoVerKey\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"bytes\",\"name\":\"extraProofBoundData\",\"type\":\"bytes\",\"components\":[]}]}]}],\"stateMutability\":\"pure\",\"type\":\"function\",\"name\":\"checkTransfer\",\"outputs\":[]},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"erc20Address\",\"type\":\"address\",\"components\":[]},{\"internalType\":\"address\",\"name\":\"sponsor\",\"type\":\"address\",\"components\":[]},{\"internalType\":\"struct AssetRegistry.AssetPolicy\",\"name\":\"policy\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"auditorPk\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"credPk\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"freezerPk\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"uint256\",\"name\":\"revealMap\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint128\",\"name\":\"revealThreshold\",\"type\":\"uint128\",\"components\":[]}]}],\"stateMutability\":\"pure\",\"type\":\"function\",\"name\":\"computeAssetDescription\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\",\"components\":[]}]},{\"inputs\":[{\"internalType\":\"struct CAPE.CapeBlock\",\"name\":\"newBlock\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"minerAddr\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"enum CAPE.NoteType[]\",\"name\":\"noteTypes\",\"type\":\"uint8[]\",\"components\":[]},{\"internalType\":\"struct CAPE.TransferNote[]\",\"name\":\"transferNotes\",\"type\":\"tuple[]\",\"components\":[{\"internalType\":\"uint256[]\",\"name\":\"inputNullifiers\",\"type\":\"uint256[]\",\"components\":[]},{\"internalType\":\"uint256[]\",\"name\":\"outputCommitments\",\"type\":\"uint256[]\",\"components\":[]},{\"internalType\":\"struct IPlonkVerifier.PlonkProof\",\"name\":\"proof\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire0\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire1\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire2\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire3\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire4\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"prodPerm\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split0\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split1\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split2\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split3\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split4\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"zeta\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"zetaOmega\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"uint256\",\"name\":\"wireEval0\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval1\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval2\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval3\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval4\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval0\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval1\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval2\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval3\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"prodPermZetaOmegaEval\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct CAPE.AuditMemo\",\"name\":\"auditMemo\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"ephemeralKey\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"uint256[]\",\"name\":\"data\",\"type\":\"uint256[]\",\"components\":[]}]},{\"internalType\":\"struct CAPE.TransferAuxInfo\",\"name\":\"auxInfo\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"merkleRoot\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint128\",\"name\":\"fee\",\"type\":\"uint128\",\"components\":[]},{\"internalType\":\"uint64\",\"name\":\"validUntil\",\"type\":\"uint64\",\"components\":[]},{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"txnMemoVerKey\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"bytes\",\"name\":\"extraProofBoundData\",\"type\":\"bytes\",\"components\":[]}]}]},{\"internalType\":\"struct CAPE.MintNote[]\",\"name\":\"mintNotes\",\"type\":\"tuple[]\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"inputNullifier\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"chgComm\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"mintComm\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint128\",\"name\":\"mintAmount\",\"type\":\"uint128\",\"components\":[]},{\"internalType\":\"struct AssetRegistry.AssetDefinition\",\"name\":\"mintAssetDef\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"code\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"struct AssetRegistry.AssetPolicy\",\"name\":\"policy\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"auditorPk\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"credPk\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"freezerPk\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"uint256\",\"name\":\"revealMap\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint128\",\"name\":\"revealThreshold\",\"type\":\"uint128\",\"components\":[]}]}]},{\"internalType\":\"uint256\",\"name\":\"mintInternalAssetCode\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"struct IPlonkVerifier.PlonkProof\",\"name\":\"proof\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire0\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire1\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire2\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire3\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire4\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"prodPerm\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split0\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split1\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split2\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split3\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split4\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"zeta\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"zetaOmega\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"uint256\",\"name\":\"wireEval0\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval1\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval2\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval3\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval4\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval0\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval1\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval2\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval3\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"prodPermZetaOmegaEval\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct CAPE.AuditMemo\",\"name\":\"auditMemo\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"ephemeralKey\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"uint256[]\",\"name\":\"data\",\"type\":\"uint256[]\",\"components\":[]}]},{\"internalType\":\"struct CAPE.MintAuxInfo\",\"name\":\"auxInfo\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"merkleRoot\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint128\",\"name\":\"fee\",\"type\":\"uint128\",\"components\":[]},{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"txnMemoVerKey\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]}]}]},{\"internalType\":\"struct CAPE.FreezeNote[]\",\"name\":\"freezeNotes\",\"type\":\"tuple[]\",\"components\":[{\"internalType\":\"uint256[]\",\"name\":\"inputNullifiers\",\"type\":\"uint256[]\",\"components\":[]},{\"internalType\":\"uint256[]\",\"name\":\"outputCommitments\",\"type\":\"uint256[]\",\"components\":[]},{\"internalType\":\"struct IPlonkVerifier.PlonkProof\",\"name\":\"proof\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire0\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire1\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire2\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire3\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire4\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"prodPerm\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split0\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split1\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split2\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split3\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split4\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"zeta\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"zetaOmega\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"uint256\",\"name\":\"wireEval0\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval1\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval2\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval3\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval4\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval0\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval1\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval2\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval3\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"prodPermZetaOmegaEval\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct CAPE.FreezeAuxInfo\",\"name\":\"auxInfo\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"merkleRoot\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint128\",\"name\":\"fee\",\"type\":\"uint128\",\"components\":[]},{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"txnMemoVerKey\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]}]}]},{\"internalType\":\"struct CAPE.BurnNote[]\",\"name\":\"burnNotes\",\"type\":\"tuple[]\",\"components\":[{\"internalType\":\"struct CAPE.TransferNote\",\"name\":\"transferNote\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256[]\",\"name\":\"inputNullifiers\",\"type\":\"uint256[]\",\"components\":[]},{\"internalType\":\"uint256[]\",\"name\":\"outputCommitments\",\"type\":\"uint256[]\",\"components\":[]},{\"internalType\":\"struct IPlonkVerifier.PlonkProof\",\"name\":\"proof\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire0\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire1\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire2\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire3\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire4\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"prodPerm\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split0\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split1\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split2\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split3\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split4\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"zeta\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"zetaOmega\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"uint256\",\"name\":\"wireEval0\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval1\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval2\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval3\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval4\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval0\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval1\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval2\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval3\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"prodPermZetaOmegaEval\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct CAPE.AuditMemo\",\"name\":\"auditMemo\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"ephemeralKey\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"uint256[]\",\"name\":\"data\",\"type\":\"uint256[]\",\"components\":[]}]},{\"internalType\":\"struct CAPE.TransferAuxInfo\",\"name\":\"auxInfo\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"merkleRoot\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint128\",\"name\":\"fee\",\"type\":\"uint128\",\"components\":[]},{\"internalType\":\"uint64\",\"name\":\"validUntil\",\"type\":\"uint64\",\"components\":[]},{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"txnMemoVerKey\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"bytes\",\"name\":\"extraProofBoundData\",\"type\":\"bytes\",\"components\":[]}]}]},{\"internalType\":\"struct CAPE.RecordOpening\",\"name\":\"recordOpening\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint128\",\"name\":\"amount\",\"type\":\"uint128\",\"components\":[]},{\"internalType\":\"struct AssetRegistry.AssetDefinition\",\"name\":\"assetDef\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"code\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"struct AssetRegistry.AssetPolicy\",\"name\":\"policy\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"auditorPk\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"credPk\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"freezerPk\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"uint256\",\"name\":\"revealMap\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint128\",\"name\":\"revealThreshold\",\"type\":\"uint128\",\"components\":[]}]}]},{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"userAddr\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"bytes32\",\"name\":\"encKey\",\"type\":\"bytes32\",\"components\":[]},{\"internalType\":\"bool\",\"name\":\"freezeFlag\",\"type\":\"bool\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"blind\",\"type\":\"uint256\",\"components\":[]}]}]}]}],\"stateMutability\":\"pure\",\"type\":\"function\",\"name\":\"computeNumCommitments\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\",\"components\":[]}]},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"extraProofBoundData\",\"type\":\"bytes\",\"components\":[]}],\"stateMutability\":\"pure\",\"type\":\"function\",\"name\":\"containsBurnPrefix\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\",\"components\":[]}]},{\"inputs\":[{\"internalType\":\"struct CAPE.BurnNote\",\"name\":\"note\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"struct CAPE.TransferNote\",\"name\":\"transferNote\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256[]\",\"name\":\"inputNullifiers\",\"type\":\"uint256[]\",\"components\":[]},{\"internalType\":\"uint256[]\",\"name\":\"outputCommitments\",\"type\":\"uint256[]\",\"components\":[]},{\"internalType\":\"struct IPlonkVerifier.PlonkProof\",\"name\":\"proof\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire0\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire1\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire2\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire3\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire4\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"prodPerm\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split0\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split1\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split2\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split3\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split4\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"zeta\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"zetaOmega\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"uint256\",\"name\":\"wireEval0\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval1\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval2\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval3\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval4\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval0\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval1\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval2\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval3\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"prodPermZetaOmegaEval\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct CAPE.AuditMemo\",\"name\":\"auditMemo\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"ephemeralKey\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"uint256[]\",\"name\":\"data\",\"type\":\"uint256[]\",\"components\":[]}]},{\"internalType\":\"struct CAPE.TransferAuxInfo\",\"name\":\"auxInfo\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"merkleRoot\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint128\",\"name\":\"fee\",\"type\":\"uint128\",\"components\":[]},{\"internalType\":\"uint64\",\"name\":\"validUntil\",\"type\":\"uint64\",\"components\":[]},{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"txnMemoVerKey\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"bytes\",\"name\":\"extraProofBoundData\",\"type\":\"bytes\",\"components\":[]}]}]},{\"internalType\":\"struct CAPE.RecordOpening\",\"name\":\"recordOpening\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint128\",\"name\":\"amount\",\"type\":\"uint128\",\"components\":[]},{\"internalType\":\"struct AssetRegistry.AssetDefinition\",\"name\":\"assetDef\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"code\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"struct AssetRegistry.AssetPolicy\",\"name\":\"policy\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"auditorPk\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"credPk\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"freezerPk\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"uint256\",\"name\":\"revealMap\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint128\",\"name\":\"revealThreshold\",\"type\":\"uint128\",\"components\":[]}]}]},{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"userAddr\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"bytes32\",\"name\":\"encKey\",\"type\":\"bytes32\",\"components\":[]},{\"internalType\":\"bool\",\"name\":\"freezeFlag\",\"type\":\"bool\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"blind\",\"type\":\"uint256\",\"components\":[]}]}]}],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"containsBurnRecord\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\",\"components\":[]}]},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"root\",\"type\":\"uint256\",\"components\":[]}],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"containsRoot\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\",\"components\":[]}]},{\"inputs\":[],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"deployer\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\",\"components\":[]}]},{\"inputs\":[{\"internalType\":\"struct CAPE.RecordOpening\",\"name\":\"ro\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint128\",\"name\":\"amount\",\"type\":\"uint128\",\"components\":[]},{\"internalType\":\"struct AssetRegistry.AssetDefinition\",\"name\":\"assetDef\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"code\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"struct AssetRegistry.AssetPolicy\",\"name\":\"policy\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"auditorPk\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"credPk\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"freezerPk\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"uint256\",\"name\":\"revealMap\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint128\",\"name\":\"revealThreshold\",\"type\":\"uint128\",\"components\":[]}]}]},{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"userAddr\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"bytes32\",\"name\":\"encKey\",\"type\":\"bytes32\",\"components\":[]},{\"internalType\":\"bool\",\"name\":\"freezeFlag\",\"type\":\"bool\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"blind\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"address\",\"name\":\"erc20Address\",\"type\":\"address\",\"components\":[]}],\"stateMutability\":\"nonpayable\",\"type\":\"function\",\"name\":\"depositErc20\",\"outputs\":[]},{\"inputs\":[{\"internalType\":\"struct CAPE.RecordOpening\",\"name\":\"ro\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint128\",\"name\":\"amount\",\"type\":\"uint128\",\"components\":[]},{\"internalType\":\"struct AssetRegistry.AssetDefinition\",\"name\":\"assetDef\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"code\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"struct AssetRegistry.AssetPolicy\",\"name\":\"policy\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"auditorPk\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"credPk\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"freezerPk\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"uint256\",\"name\":\"revealMap\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint128\",\"name\":\"revealThreshold\",\"type\":\"uint128\",\"components\":[]}]}]},{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"userAddr\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"bytes32\",\"name\":\"encKey\",\"type\":\"bytes32\",\"components\":[]},{\"internalType\":\"bool\",\"name\":\"freezeFlag\",\"type\":\"bool\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"blind\",\"type\":\"uint256\",\"components\":[]}]}],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"deriveRecordCommitment\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\",\"components\":[]}]},{\"inputs\":[],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"faucetInitialized\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\",\"components\":[]}]},{\"inputs\":[{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"faucetManagerAddress\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"bytes32\",\"name\":\"faucetManagerEncKey\",\"type\":\"bytes32\",\"components\":[]}],\"stateMutability\":\"nonpayable\",\"type\":\"function\",\"name\":\"faucetSetupForTestnet\",\"outputs\":[]},{\"inputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\",\"name\":\"fillUpPendingDepositsQueue\",\"outputs\":[]},{\"inputs\":[],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"getNumLeaves\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\",\"components\":[]}]},{\"inputs\":[],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"getRootValue\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\",\"components\":[]}]},{\"inputs\":[{\"internalType\":\"struct AssetRegistry.AssetDefinition\",\"name\":\"assetDefinition\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"code\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"struct AssetRegistry.AssetPolicy\",\"name\":\"policy\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"auditorPk\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"credPk\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"freezerPk\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"uint256\",\"name\":\"revealMap\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint128\",\"name\":\"revealThreshold\",\"type\":\"uint128\",\"components\":[]}]}]}],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"isCapeAssetRegistered\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\",\"components\":[]}]},{\"inputs\":[{\"internalType\":\"struct AssetRegistry.AssetDefinition\",\"name\":\"assetDefinition\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"code\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"struct AssetRegistry.AssetPolicy\",\"name\":\"policy\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"auditorPk\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"credPk\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"freezerPk\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"uint256\",\"name\":\"revealMap\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint128\",\"name\":\"revealThreshold\",\"type\":\"uint128\",\"components\":[]}]}]}],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"lookup\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\",\"components\":[]}]},{\"inputs\":[],\"stateMutability\":\"pure\",\"type\":\"function\",\"name\":\"nativeDomesticAsset\",\"outputs\":[{\"internalType\":\"struct AssetRegistry.AssetDefinition\",\"name\":\"assetDefinition\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"code\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"struct AssetRegistry.AssetPolicy\",\"name\":\"policy\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"auditorPk\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"credPk\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"freezerPk\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"uint256\",\"name\":\"revealMap\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint128\",\"name\":\"revealThreshold\",\"type\":\"uint128\",\"components\":[]}]}]}]},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\",\"components\":[]}],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"nullifiers\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\",\"components\":[]}]},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\",\"components\":[]}],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"pendingDeposits\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\",\"components\":[]}]},{\"inputs\":[],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"pendingDepositsLength\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\",\"components\":[]}]},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"nullifier\",\"type\":\"uint256\",\"components\":[]}],\"stateMutability\":\"nonpayable\",\"type\":\"function\",\"name\":\"publish\",\"outputs\":[]},{\"inputs\":[{\"internalType\":\"uint64\",\"name\":\"newHeight\",\"type\":\"uint64\",\"components\":[]}],\"stateMutability\":\"nonpayable\",\"type\":\"function\",\"name\":\"setHeight\",\"outputs\":[]},{\"inputs\":[{\"internalType\":\"uint256[]\",\"name\":\"elements\",\"type\":\"uint256[]\",\"components\":[]}],\"stateMutability\":\"nonpayable\",\"type\":\"function\",\"name\":\"setInitialRecordCommitments\",\"outputs\":[]},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"erc20Address\",\"type\":\"address\",\"components\":[]},{\"internalType\":\"struct AssetRegistry.AssetDefinition\",\"name\":\"newAsset\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"code\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"struct AssetRegistry.AssetPolicy\",\"name\":\"policy\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"auditorPk\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"credPk\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"freezerPk\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"uint256\",\"name\":\"revealMap\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint128\",\"name\":\"revealThreshold\",\"type\":\"uint128\",\"components\":[]}]}]}],\"stateMutability\":\"nonpayable\",\"type\":\"function\",\"name\":\"sponsorCapeAsset\",\"outputs\":[]},{\"inputs\":[{\"internalType\":\"struct CAPE.CapeBlock\",\"name\":\"newBlock\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"minerAddr\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"enum CAPE.NoteType[]\",\"name\":\"noteTypes\",\"type\":\"uint8[]\",\"components\":[]},{\"internalType\":\"struct CAPE.TransferNote[]\",\"name\":\"transferNotes\",\"type\":\"tuple[]\",\"components\":[{\"internalType\":\"uint256[]\",\"name\":\"inputNullifiers\",\"type\":\"uint256[]\",\"components\":[]},{\"internalType\":\"uint256[]\",\"name\":\"outputCommitments\",\"type\":\"uint256[]\",\"components\":[]},{\"internalType\":\"struct IPlonkVerifier.PlonkProof\",\"name\":\"proof\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire0\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire1\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire2\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire3\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire4\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"prodPerm\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split0\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split1\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split2\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split3\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split4\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"zeta\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"zetaOmega\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"uint256\",\"name\":\"wireEval0\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval1\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval2\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval3\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval4\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval0\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval1\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval2\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval3\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"prodPermZetaOmegaEval\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct CAPE.AuditMemo\",\"name\":\"auditMemo\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"ephemeralKey\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"uint256[]\",\"name\":\"data\",\"type\":\"uint256[]\",\"components\":[]}]},{\"internalType\":\"struct CAPE.TransferAuxInfo\",\"name\":\"auxInfo\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"merkleRoot\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint128\",\"name\":\"fee\",\"type\":\"uint128\",\"components\":[]},{\"internalType\":\"uint64\",\"name\":\"validUntil\",\"type\":\"uint64\",\"components\":[]},{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"txnMemoVerKey\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"bytes\",\"name\":\"extraProofBoundData\",\"type\":\"bytes\",\"components\":[]}]}]},{\"internalType\":\"struct CAPE.MintNote[]\",\"name\":\"mintNotes\",\"type\":\"tuple[]\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"inputNullifier\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"chgComm\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"mintComm\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint128\",\"name\":\"mintAmount\",\"type\":\"uint128\",\"components\":[]},{\"internalType\":\"struct AssetRegistry.AssetDefinition\",\"name\":\"mintAssetDef\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"code\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"struct AssetRegistry.AssetPolicy\",\"name\":\"policy\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"auditorPk\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"credPk\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"freezerPk\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"uint256\",\"name\":\"revealMap\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint128\",\"name\":\"revealThreshold\",\"type\":\"uint128\",\"components\":[]}]}]},{\"internalType\":\"uint256\",\"name\":\"mintInternalAssetCode\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"struct IPlonkVerifier.PlonkProof\",\"name\":\"proof\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire0\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire1\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire2\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire3\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire4\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"prodPerm\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split0\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split1\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split2\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split3\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split4\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"zeta\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"zetaOmega\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"uint256\",\"name\":\"wireEval0\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval1\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval2\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval3\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval4\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval0\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval1\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval2\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval3\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"prodPermZetaOmegaEval\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct CAPE.AuditMemo\",\"name\":\"auditMemo\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"ephemeralKey\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"uint256[]\",\"name\":\"data\",\"type\":\"uint256[]\",\"components\":[]}]},{\"internalType\":\"struct CAPE.MintAuxInfo\",\"name\":\"auxInfo\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"merkleRoot\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint128\",\"name\":\"fee\",\"type\":\"uint128\",\"components\":[]},{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"txnMemoVerKey\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]}]}]},{\"internalType\":\"struct CAPE.FreezeNote[]\",\"name\":\"freezeNotes\",\"type\":\"tuple[]\",\"components\":[{\"internalType\":\"uint256[]\",\"name\":\"inputNullifiers\",\"type\":\"uint256[]\",\"components\":[]},{\"internalType\":\"uint256[]\",\"name\":\"outputCommitments\",\"type\":\"uint256[]\",\"components\":[]},{\"internalType\":\"struct IPlonkVerifier.PlonkProof\",\"name\":\"proof\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire0\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire1\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire2\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire3\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire4\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"prodPerm\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split0\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split1\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split2\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split3\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split4\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"zeta\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"zetaOmega\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"uint256\",\"name\":\"wireEval0\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval1\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval2\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval3\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval4\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval0\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval1\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval2\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval3\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"prodPermZetaOmegaEval\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct CAPE.FreezeAuxInfo\",\"name\":\"auxInfo\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"merkleRoot\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint128\",\"name\":\"fee\",\"type\":\"uint128\",\"components\":[]},{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"txnMemoVerKey\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]}]}]},{\"internalType\":\"struct CAPE.BurnNote[]\",\"name\":\"burnNotes\",\"type\":\"tuple[]\",\"components\":[{\"internalType\":\"struct CAPE.TransferNote\",\"name\":\"transferNote\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256[]\",\"name\":\"inputNullifiers\",\"type\":\"uint256[]\",\"components\":[]},{\"internalType\":\"uint256[]\",\"name\":\"outputCommitments\",\"type\":\"uint256[]\",\"components\":[]},{\"internalType\":\"struct IPlonkVerifier.PlonkProof\",\"name\":\"proof\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire0\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire1\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire2\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire3\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire4\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"prodPerm\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split0\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split1\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split2\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split3\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split4\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"zeta\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"zetaOmega\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"uint256\",\"name\":\"wireEval0\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval1\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval2\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval3\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval4\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval0\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval1\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval2\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval3\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"prodPermZetaOmegaEval\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct CAPE.AuditMemo\",\"name\":\"auditMemo\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"ephemeralKey\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"uint256[]\",\"name\":\"data\",\"type\":\"uint256[]\",\"components\":[]}]},{\"internalType\":\"struct CAPE.TransferAuxInfo\",\"name\":\"auxInfo\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"merkleRoot\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint128\",\"name\":\"fee\",\"type\":\"uint128\",\"components\":[]},{\"internalType\":\"uint64\",\"name\":\"validUntil\",\"type\":\"uint64\",\"components\":[]},{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"txnMemoVerKey\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"bytes\",\"name\":\"extraProofBoundData\",\"type\":\"bytes\",\"components\":[]}]}]},{\"internalType\":\"struct CAPE.RecordOpening\",\"name\":\"recordOpening\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint128\",\"name\":\"amount\",\"type\":\"uint128\",\"components\":[]},{\"internalType\":\"struct AssetRegistry.AssetDefinition\",\"name\":\"assetDef\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"code\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"struct AssetRegistry.AssetPolicy\",\"name\":\"policy\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"auditorPk\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"credPk\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"freezerPk\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"uint256\",\"name\":\"revealMap\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint128\",\"name\":\"revealThreshold\",\"type\":\"uint128\",\"components\":[]}]}]},{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"userAddr\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"bytes32\",\"name\":\"encKey\",\"type\":\"bytes32\",\"components\":[]},{\"internalType\":\"bool\",\"name\":\"freezeFlag\",\"type\":\"bool\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"blind\",\"type\":\"uint256\",\"components\":[]}]}]}]}],\"stateMutability\":\"nonpayable\",\"type\":\"function\",\"name\":\"submitCapeBlock\",\"outputs\":[]},{\"inputs\":[{\"internalType\":\"struct CAPE.CapeBlock\",\"name\":\"newBlock\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"minerAddr\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"enum CAPE.NoteType[]\",\"name\":\"noteTypes\",\"type\":\"uint8[]\",\"components\":[]},{\"internalType\":\"struct CAPE.TransferNote[]\",\"name\":\"transferNotes\",\"type\":\"tuple[]\",\"components\":[{\"internalType\":\"uint256[]\",\"name\":\"inputNullifiers\",\"type\":\"uint256[]\",\"components\":[]},{\"internalType\":\"uint256[]\",\"name\":\"outputCommitments\",\"type\":\"uint256[]\",\"components\":[]},{\"internalType\":\"struct IPlonkVerifier.PlonkProof\",\"name\":\"proof\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire0\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire1\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire2\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire3\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire4\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"prodPerm\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split0\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split1\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split2\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split3\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split4\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"zeta\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"zetaOmega\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"uint256\",\"name\":\"wireEval0\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval1\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval2\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval3\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval4\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval0\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval1\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval2\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval3\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"prodPermZetaOmegaEval\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct CAPE.AuditMemo\",\"name\":\"auditMemo\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"ephemeralKey\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"uint256[]\",\"name\":\"data\",\"type\":\"uint256[]\",\"components\":[]}]},{\"internalType\":\"struct CAPE.TransferAuxInfo\",\"name\":\"auxInfo\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"merkleRoot\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint128\",\"name\":\"fee\",\"type\":\"uint128\",\"components\":[]},{\"internalType\":\"uint64\",\"name\":\"validUntil\",\"type\":\"uint64\",\"components\":[]},{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"txnMemoVerKey\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"bytes\",\"name\":\"extraProofBoundData\",\"type\":\"bytes\",\"components\":[]}]}]},{\"internalType\":\"struct CAPE.MintNote[]\",\"name\":\"mintNotes\",\"type\":\"tuple[]\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"inputNullifier\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"chgComm\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"mintComm\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint128\",\"name\":\"mintAmount\",\"type\":\"uint128\",\"components\":[]},{\"internalType\":\"struct AssetRegistry.AssetDefinition\",\"name\":\"mintAssetDef\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"code\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"struct AssetRegistry.AssetPolicy\",\"name\":\"policy\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"auditorPk\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"credPk\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"freezerPk\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"uint256\",\"name\":\"revealMap\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint128\",\"name\":\"revealThreshold\",\"type\":\"uint128\",\"components\":[]}]}]},{\"internalType\":\"uint256\",\"name\":\"mintInternalAssetCode\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"struct IPlonkVerifier.PlonkProof\",\"name\":\"proof\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire0\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire1\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire2\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire3\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire4\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"prodPerm\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split0\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split1\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split2\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split3\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split4\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"zeta\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"zetaOmega\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"uint256\",\"name\":\"wireEval0\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval1\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval2\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval3\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval4\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval0\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval1\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval2\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval3\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"prodPermZetaOmegaEval\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct CAPE.AuditMemo\",\"name\":\"auditMemo\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"ephemeralKey\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"uint256[]\",\"name\":\"data\",\"type\":\"uint256[]\",\"components\":[]}]},{\"internalType\":\"struct CAPE.MintAuxInfo\",\"name\":\"auxInfo\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"merkleRoot\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint128\",\"name\":\"fee\",\"type\":\"uint128\",\"components\":[]},{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"txnMemoVerKey\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]}]}]},{\"internalType\":\"struct CAPE.FreezeNote[]\",\"name\":\"freezeNotes\",\"type\":\"tuple[]\",\"components\":[{\"internalType\":\"uint256[]\",\"name\":\"inputNullifiers\",\"type\":\"uint256[]\",\"components\":[]},{\"internalType\":\"uint256[]\",\"name\":\"outputCommitments\",\"type\":\"uint256[]\",\"components\":[]},{\"internalType\":\"struct IPlonkVerifier.PlonkProof\",\"name\":\"proof\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire0\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire1\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire2\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire3\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire4\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"prodPerm\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split0\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split1\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split2\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split3\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split4\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"zeta\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"zetaOmega\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"uint256\",\"name\":\"wireEval0\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval1\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval2\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval3\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval4\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval0\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval1\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval2\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval3\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"prodPermZetaOmegaEval\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct CAPE.FreezeAuxInfo\",\"name\":\"auxInfo\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"merkleRoot\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint128\",\"name\":\"fee\",\"type\":\"uint128\",\"components\":[]},{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"txnMemoVerKey\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]}]}]},{\"internalType\":\"struct CAPE.BurnNote[]\",\"name\":\"burnNotes\",\"type\":\"tuple[]\",\"components\":[{\"internalType\":\"struct CAPE.TransferNote\",\"name\":\"transferNote\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256[]\",\"name\":\"inputNullifiers\",\"type\":\"uint256[]\",\"components\":[]},{\"internalType\":\"uint256[]\",\"name\":\"outputCommitments\",\"type\":\"uint256[]\",\"components\":[]},{\"internalType\":\"struct IPlonkVerifier.PlonkProof\",\"name\":\"proof\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire0\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire1\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire2\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire3\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire4\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"prodPerm\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split0\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split1\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split2\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split3\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split4\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"zeta\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"zetaOmega\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"uint256\",\"name\":\"wireEval0\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval1\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval2\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval3\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval4\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval0\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval1\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval2\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval3\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"prodPermZetaOmegaEval\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct CAPE.AuditMemo\",\"name\":\"auditMemo\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"ephemeralKey\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"uint256[]\",\"name\":\"data\",\"type\":\"uint256[]\",\"components\":[]}]},{\"internalType\":\"struct CAPE.TransferAuxInfo\",\"name\":\"auxInfo\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"merkleRoot\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint128\",\"name\":\"fee\",\"type\":\"uint128\",\"components\":[]},{\"internalType\":\"uint64\",\"name\":\"validUntil\",\"type\":\"uint64\",\"components\":[]},{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"txnMemoVerKey\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"bytes\",\"name\":\"extraProofBoundData\",\"type\":\"bytes\",\"components\":[]}]}]},{\"internalType\":\"struct CAPE.RecordOpening\",\"name\":\"recordOpening\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint128\",\"name\":\"amount\",\"type\":\"uint128\",\"components\":[]},{\"internalType\":\"struct AssetRegistry.AssetDefinition\",\"name\":\"assetDef\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"code\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"struct AssetRegistry.AssetPolicy\",\"name\":\"policy\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"auditorPk\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"credPk\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"freezerPk\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"uint256\",\"name\":\"revealMap\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint128\",\"name\":\"revealThreshold\",\"type\":\"uint128\",\"components\":[]}]}]},{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"userAddr\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"bytes32\",\"name\":\"encKey\",\"type\":\"bytes32\",\"components\":[]},{\"internalType\":\"bool\",\"name\":\"freezeFlag\",\"type\":\"bool\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"blind\",\"type\":\"uint256\",\"components\":[]}]}]}]},{\"internalType\":\"bytes\",\"name\":\"extraData\",\"type\":\"bytes\",\"components\":[]}],\"stateMutability\":\"nonpayable\",\"type\":\"function\",\"name\":\"submitCapeBlockWithMemos\",\"outputs\":[]}]") . expect ("invalid abi") | |
| }); | |
| pub struct TestCAPE<M>(ethers::contract::Contract<M>); | |
| impl<M> Clone for TestCAPE<M> { | |
| fn clone(&self) -> Self { | |
| TestCAPE(self.0.clone()) | |
| } | |
| } | |
| impl<M> std::ops::Deref for TestCAPE<M> { | |
| type Target = ethers::contract::Contract<M>; | |
| fn deref(&self) -> &Self::Target { | |
| &self.0 | |
| } | |
| } | |
| impl<M: ethers::providers::Middleware> std::fmt::Debug for TestCAPE<M> { | |
| fn fmt(&self, f: &mut std::fmt::Formatter) -> std::fmt::Result { | |
| f.debug_tuple(stringify!(TestCAPE)) | |
| .field(&self.address()) | |
| .finish() | |
| } | |
| } | |
| impl<M: ethers::providers::Middleware> TestCAPE<M> { | |
| #[doc = r" Creates a new contract instance with the specified `ethers`"] | |
| #[doc = r" client at the given `Address`. The contract derefs to a `ethers::Contract`"] | |
| #[doc = r" object"] | |
| pub fn new<T: Into<ethers::core::types::Address>>( | |
| address: T, | |
| client: ::std::sync::Arc<M>, | |
| ) -> Self { | |
| ethers::contract::Contract::new(address.into(), TESTCAPE_ABI.clone(), client).into() | |
| } | |
| #[doc = "Calls the contract's `CAPE_BURN_MAGIC_BYTES` (0x11829f93) function"] | |
| pub fn cape_burn_magic_bytes( | |
| &self, | |
| ) -> ethers::contract::builders::ContractCall<M, ethers::core::types::Bytes> { | |
| self.0 | |
| .method_hash([17, 130, 159, 147], ()) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Calls the contract's `CAPE_BURN_MAGIC_BYTES_SIZE` (0xb4e28f1a) function"] | |
| pub fn cape_burn_magic_bytes_size( | |
| &self, | |
| ) -> ethers::contract::builders::ContractCall<M, ethers::core::types::U256> { | |
| self.0 | |
| .method_hash([180, 226, 143, 26], ()) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Calls the contract's `CAP_NATIVE_ASSET_CODE` (0x79cf6f5c) function"] | |
| pub fn cap_native_asset_code( | |
| &self, | |
| ) -> ethers::contract::builders::ContractCall<M, ethers::core::types::U256> { | |
| self.0 | |
| .method_hash([121, 207, 111, 92], ()) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Calls the contract's `DOM_SEP_DOMESTIC_ASSET` (0x1db6b253) function"] | |
| pub fn dom_sep_domestic_asset( | |
| &self, | |
| ) -> ethers::contract::builders::ContractCall<M, [u8; 14]> { | |
| self.0 | |
| .method_hash([29, 182, 178, 83], ()) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Calls the contract's `DOM_SEP_FOREIGN_ASSET` (0xa33ba96c) function"] | |
| pub fn dom_sep_foreign_asset( | |
| &self, | |
| ) -> ethers::contract::builders::ContractCall<M, [u8; 13]> { | |
| self.0 | |
| .method_hash([163, 59, 169, 108], ()) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Calls the contract's `MAX_NUM_PENDING_DEPOSIT` (0x9dd584b9) function"] | |
| pub fn max_num_pending_deposit( | |
| &self, | |
| ) -> ethers::contract::builders::ContractCall<M, ethers::core::types::U256> { | |
| self.0 | |
| .method_hash([157, 213, 132, 185], ()) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Calls the contract's `addRoot` (0xe8aaf83e) function"] | |
| pub fn add_root( | |
| &self, | |
| root: ethers::core::types::U256, | |
| ) -> ethers::contract::builders::ContractCall<M, ()> { | |
| self.0 | |
| .method_hash([232, 170, 248, 62], root) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Calls the contract's `assets` (0x9fda5b66) function"] | |
| pub fn assets( | |
| &self, | |
| p0: [u8; 32], | |
| ) -> ethers::contract::builders::ContractCall<M, ethers::core::types::Address> { | |
| self.0 | |
| .method_hash([159, 218, 91, 102], p0) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Calls the contract's `blockHeight` (0xf44ff712) function"] | |
| pub fn block_height(&self) -> ethers::contract::builders::ContractCall<M, u64> { | |
| self.0 | |
| .method_hash([244, 79, 247, 18], ()) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Calls the contract's `checkBurn` (0xd73ce5d7) function"] | |
| pub fn check_burn( | |
| &self, | |
| note: BurnNote, | |
| ) -> ethers::contract::builders::ContractCall<M, ()> { | |
| self.0 | |
| .method_hash([215, 60, 229, 215], (note,)) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Calls the contract's `checkDomesticAssetCode` (0xec45a3ea) function"] | |
| pub fn check_domestic_asset_code( | |
| &self, | |
| asset_definition_code: ethers::core::types::U256, | |
| internal_asset_code: ethers::core::types::U256, | |
| ) -> ethers::contract::builders::ContractCall<M, ()> { | |
| self.0 | |
| .method_hash( | |
| [236, 69, 163, 234], | |
| (asset_definition_code, internal_asset_code), | |
| ) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Calls the contract's `checkForeignAssetCode` (0x4da7ef1b) function"] | |
| pub fn check_foreign_asset_code( | |
| &self, | |
| asset_definition_code: ethers::core::types::U256, | |
| erc_20_address: ethers::core::types::Address, | |
| sponsor: ethers::core::types::Address, | |
| policy: AssetPolicy, | |
| ) -> ethers::contract::builders::ContractCall<M, ()> { | |
| self.0 | |
| .method_hash( | |
| [77, 167, 239, 27], | |
| (asset_definition_code, erc_20_address, sponsor, policy), | |
| ) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Calls the contract's `checkTransfer` (0x9e50da77) function"] | |
| pub fn check_transfer( | |
| &self, | |
| note: TransferNote, | |
| ) -> ethers::contract::builders::ContractCall<M, ()> { | |
| self.0 | |
| .method_hash([158, 80, 218, 119], (note,)) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Calls the contract's `computeAssetDescription` (0xd0f996a8) function"] | |
| pub fn compute_asset_description( | |
| &self, | |
| erc_20_address: ethers::core::types::Address, | |
| sponsor: ethers::core::types::Address, | |
| policy: AssetPolicy, | |
| ) -> ethers::contract::builders::ContractCall<M, ethers::core::types::Bytes> { | |
| self.0 | |
| .method_hash([208, 249, 150, 168], (erc_20_address, sponsor, policy)) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Calls the contract's `computeNumCommitments` (0x8ec4a6f8) function"] | |
| pub fn compute_num_commitments( | |
| &self, | |
| new_block: CapeBlock, | |
| ) -> ethers::contract::builders::ContractCall<M, ethers::core::types::U256> { | |
| self.0 | |
| .method_hash([142, 196, 166, 248], (new_block,)) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Calls the contract's `containsBurnPrefix` (0x2f846680) function"] | |
| pub fn contains_burn_prefix( | |
| &self, | |
| extra_proof_bound_data: ethers::core::types::Bytes, | |
| ) -> ethers::contract::builders::ContractCall<M, bool> { | |
| self.0 | |
| .method_hash([47, 132, 102, 128], extra_proof_bound_data) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Calls the contract's `containsBurnRecord` (0xb24207de) function"] | |
| pub fn contains_burn_record( | |
| &self, | |
| note: BurnNote, | |
| ) -> ethers::contract::builders::ContractCall<M, bool> { | |
| self.0 | |
| .method_hash([178, 66, 7, 222], (note,)) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Calls the contract's `containsRoot` (0x7c897b72) function"] | |
| pub fn contains_root( | |
| &self, | |
| root: ethers::core::types::U256, | |
| ) -> ethers::contract::builders::ContractCall<M, bool> { | |
| self.0 | |
| .method_hash([124, 137, 123, 114], root) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Calls the contract's `deployer` (0xd5f39488) function"] | |
| pub fn deployer( | |
| &self, | |
| ) -> ethers::contract::builders::ContractCall<M, ethers::core::types::Address> { | |
| self.0 | |
| .method_hash([213, 243, 148, 136], ()) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Calls the contract's `depositErc20` (0x6868dd1f) function"] | |
| pub fn deposit_erc_20( | |
| &self, | |
| ro: RecordOpening, | |
| erc_20_address: ethers::core::types::Address, | |
| ) -> ethers::contract::builders::ContractCall<M, ()> { | |
| self.0 | |
| .method_hash([104, 104, 221, 31], (ro, erc_20_address)) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Calls the contract's `deriveRecordCommitment` (0x980f78b8) function"] | |
| pub fn derive_record_commitment( | |
| &self, | |
| ro: RecordOpening, | |
| ) -> ethers::contract::builders::ContractCall<M, ethers::core::types::U256> { | |
| self.0 | |
| .method_hash([152, 15, 120, 184], (ro,)) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Calls the contract's `faucetInitialized` (0xfe3cc3f8) function"] | |
| pub fn faucet_initialized(&self) -> ethers::contract::builders::ContractCall<M, bool> { | |
| self.0 | |
| .method_hash([254, 60, 195, 248], ()) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Calls the contract's `faucetSetupForTestnet` (0xb12f7e7b) function"] | |
| pub fn faucet_setup_for_testnet( | |
| &self, | |
| faucet_manager_address: EdOnBN254Point, | |
| faucet_manager_enc_key: [u8; 32], | |
| ) -> ethers::contract::builders::ContractCall<M, ()> { | |
| self.0 | |
| .method_hash( | |
| [177, 47, 126, 123], | |
| (faucet_manager_address, faucet_manager_enc_key), | |
| ) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Calls the contract's `fillUpPendingDepositsQueue` (0x21a5ad07) function"] | |
| pub fn fill_up_pending_deposits_queue( | |
| &self, | |
| ) -> ethers::contract::builders::ContractCall<M, ()> { | |
| self.0 | |
| .method_hash([33, 165, 173, 7], ()) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Calls the contract's `getNumLeaves` (0x927d52ab) function"] | |
| pub fn get_num_leaves( | |
| &self, | |
| ) -> ethers::contract::builders::ContractCall<M, ethers::core::types::U256> { | |
| self.0 | |
| .method_hash([146, 125, 82, 171], ()) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Calls the contract's `getRootValue` (0x6444c8d1) function"] | |
| pub fn get_root_value( | |
| &self, | |
| ) -> ethers::contract::builders::ContractCall<M, ethers::core::types::U256> { | |
| self.0 | |
| .method_hash([100, 68, 200, 209], ()) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Calls the contract's `isCapeAssetRegistered` (0xf148fb4a) function"] | |
| pub fn is_cape_asset_registered( | |
| &self, | |
| asset_definition: AssetDefinition, | |
| ) -> ethers::contract::builders::ContractCall<M, bool> { | |
| self.0 | |
| .method_hash([241, 72, 251, 74], (asset_definition,)) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Calls the contract's `lookup` (0xd56c1ea1) function"] | |
| pub fn lookup( | |
| &self, | |
| asset_definition: AssetDefinition, | |
| ) -> ethers::contract::builders::ContractCall<M, ethers::core::types::Address> { | |
| self.0 | |
| .method_hash([213, 108, 30, 161], (asset_definition,)) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Calls the contract's `nativeDomesticAsset` (0x6de84060) function"] | |
| pub fn native_domestic_asset( | |
| &self, | |
| ) -> ethers::contract::builders::ContractCall<M, AssetDefinition> { | |
| self.0 | |
| .method_hash([109, 232, 64, 96], ()) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Calls the contract's `nullifiers` (0xd21e82ab) function"] | |
| pub fn nullifiers( | |
| &self, | |
| p0: ethers::core::types::U256, | |
| ) -> ethers::contract::builders::ContractCall<M, bool> { | |
| self.0 | |
| .method_hash([210, 30, 130, 171], p0) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Calls the contract's `pendingDeposits` (0xa7932794) function"] | |
| pub fn pending_deposits( | |
| &self, | |
| p0: ethers::core::types::U256, | |
| ) -> ethers::contract::builders::ContractCall<M, ethers::core::types::U256> { | |
| self.0 | |
| .method_hash([167, 147, 39, 148], p0) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Calls the contract's `pendingDepositsLength` (0x01bd0ea5) function"] | |
| pub fn pending_deposits_length( | |
| &self, | |
| ) -> ethers::contract::builders::ContractCall<M, ethers::core::types::U256> { | |
| self.0 | |
| .method_hash([1, 189, 14, 165], ()) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Calls the contract's `publish` (0xcc4ef119) function"] | |
| pub fn publish( | |
| &self, | |
| nullifier: ethers::core::types::U256, | |
| ) -> ethers::contract::builders::ContractCall<M, ()> { | |
| self.0 | |
| .method_hash([204, 78, 241, 25], nullifier) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Calls the contract's `setHeight` (0x99db4d41) function"] | |
| pub fn set_height( | |
| &self, | |
| new_height: u64, | |
| ) -> ethers::contract::builders::ContractCall<M, ()> { | |
| self.0 | |
| .method_hash([153, 219, 77, 65], new_height) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Calls the contract's `setInitialRecordCommitments` (0xba721089) function"] | |
| pub fn set_initial_record_commitments( | |
| &self, | |
| elements: ::std::vec::Vec<ethers::core::types::U256>, | |
| ) -> ethers::contract::builders::ContractCall<M, ()> { | |
| self.0 | |
| .method_hash([186, 114, 16, 137], elements) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Calls the contract's `sponsorCapeAsset` (0x0a212145) function"] | |
| pub fn sponsor_cape_asset( | |
| &self, | |
| erc_20_address: ethers::core::types::Address, | |
| new_asset: AssetDefinition, | |
| ) -> ethers::contract::builders::ContractCall<M, ()> { | |
| self.0 | |
| .method_hash([10, 33, 33, 69], (erc_20_address, new_asset)) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Calls the contract's `submitCapeBlock` (0xcb390b98) function"] | |
| pub fn submit_cape_block( | |
| &self, | |
| new_block: CapeBlock, | |
| ) -> ethers::contract::builders::ContractCall<M, ()> { | |
| self.0 | |
| .method_hash([203, 57, 11, 152], (new_block,)) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Calls the contract's `submitCapeBlockWithMemos` (0x10b4e3a1) function"] | |
| pub fn submit_cape_block_with_memos( | |
| &self, | |
| new_block: CapeBlock, | |
| extra_data: ethers::core::types::Bytes, | |
| ) -> ethers::contract::builders::ContractCall<M, ()> { | |
| self.0 | |
| .method_hash([16, 180, 227, 161], (new_block, extra_data)) | |
| .expect("method not found (this should never happen)") | |
| } | |
| #[doc = "Gets the contract's `AssetSponsored` event"] | |
| pub fn asset_sponsored_filter( | |
| &self, | |
| ) -> ethers::contract::builders::Event<M, AssetSponsoredFilter> { | |
| self.0.event() | |
| } | |
| #[doc = "Gets the contract's `BlockCommitted` event"] | |
| pub fn block_committed_filter( | |
| &self, | |
| ) -> ethers::contract::builders::Event<M, BlockCommittedFilter> { | |
| self.0.event() | |
| } | |
| #[doc = "Gets the contract's `Erc20TokensDeposited` event"] | |
| pub fn erc_20_tokens_deposited_filter( | |
| &self, | |
| ) -> ethers::contract::builders::Event<M, Erc20TokensDepositedFilter> { | |
| self.0.event() | |
| } | |
| #[doc = "Gets the contract's `FaucetInitialized` event"] | |
| pub fn faucet_initialized_filter( | |
| &self, | |
| ) -> ethers::contract::builders::Event<M, FaucetInitializedFilter> { | |
| self.0.event() | |
| } | |
| #[doc = r" Returns an [`Event`](#ethers_contract::builders::Event) builder for all events of this contract"] | |
| pub fn events(&self) -> ethers::contract::builders::Event<M, TestCAPEEvents> { | |
| self.0.event_with_filter(Default::default()) | |
| } | |
| } | |
| impl<M: ethers::providers::Middleware> From<ethers::contract::Contract<M>> for TestCAPE<M> { | |
| fn from(contract: ethers::contract::Contract<M>) -> Self { | |
| Self(contract) | |
| } | |
| } | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthEvent, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethevent(name = "AssetSponsored", abi = "AssetSponsored(address,uint256)")] | |
| pub struct AssetSponsoredFilter { | |
| pub erc_20_address: ethers::core::types::Address, | |
| pub asset_definition_code: ethers::core::types::U256, | |
| } | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthEvent, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethevent( | |
| name = "BlockCommitted", | |
| abi = "BlockCommitted(uint64,uint256[],((uint256,uint256),uint8[],(uint256[],uint256[],((uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256),((uint256,uint256),uint256[]),(uint256,uint128,uint64,(uint256,uint256),bytes))[],(uint256,uint256,uint256,uint128,(uint256,((uint256,uint256),(uint256,uint256),(uint256,uint256),uint256,uint128)),uint256,((uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256),((uint256,uint256),uint256[]),(uint256,uint128,(uint256,uint256)))[],(uint256[],uint256[],((uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256),(uint256,uint128,(uint256,uint256)))[],((uint256[],uint256[],((uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256),((uint256,uint256),uint256[]),(uint256,uint128,uint64,(uint256,uint256),bytes)),(uint128,(uint256,((uint256,uint256),(uint256,uint256),(uint256,uint256),uint256,uint128)),(uint256,uint256),bytes32,bool,uint256))[]))" | |
| )] | |
| pub struct BlockCommittedFilter { | |
| #[ethevent(indexed)] | |
| pub height: u64, | |
| pub deposit_commitments: Vec<ethers::core::types::U256>, | |
| pub new_block: ( | |
| (ethers::core::types::U256, ethers::core::types::U256), | |
| Vec<u8>, | |
| Vec<( | |
| Vec<ethers::core::types::U256>, | |
| Vec<ethers::core::types::U256>, | |
| ( | |
| (ethers::core::types::U256, ethers::core::types::U256), | |
| (ethers::core::types::U256, ethers::core::types::U256), | |
| (ethers::core::types::U256, ethers::core::types::U256), | |
| (ethers::core::types::U256, ethers::core::types::U256), | |
| (ethers::core::types::U256, ethers::core::types::U256), | |
| (ethers::core::types::U256, ethers::core::types::U256), | |
| (ethers::core::types::U256, ethers::core::types::U256), | |
| (ethers::core::types::U256, ethers::core::types::U256), | |
| (ethers::core::types::U256, ethers::core::types::U256), | |
| (ethers::core::types::U256, ethers::core::types::U256), | |
| (ethers::core::types::U256, ethers::core::types::U256), | |
| (ethers::core::types::U256, ethers::core::types::U256), | |
| (ethers::core::types::U256, ethers::core::types::U256), | |
| ethers::core::types::U256, | |
| ethers::core::types::U256, | |
| ethers::core::types::U256, | |
| ethers::core::types::U256, | |
| ethers::core::types::U256, | |
| ethers::core::types::U256, | |
| ethers::core::types::U256, | |
| ethers::core::types::U256, | |
| ethers::core::types::U256, | |
| ethers::core::types::U256, | |
| ), | |
| ( | |
| (ethers::core::types::U256, ethers::core::types::U256), | |
| Vec<ethers::core::types::U256>, | |
| ), | |
| ( | |
| ethers::core::types::U256, | |
| u128, | |
| u64, | |
| (ethers::core::types::U256, ethers::core::types::U256), | |
| ethers::core::types::Bytes, | |
| ), | |
| )>, | |
| Vec<( | |
| ethers::core::types::U256, | |
| ethers::core::types::U256, | |
| ethers::core::types::U256, | |
| u128, | |
| ( | |
| ethers::core::types::U256, | |
| ( | |
| (ethers::core::types::U256, ethers::core::types::U256), | |
| (ethers::core::types::U256, ethers::core::types::U256), | |
| (ethers::core::types::U256, ethers::core::types::U256), | |
| ethers::core::types::U256, | |
| u128, | |
| ), | |
| ), | |
| ethers::core::types::U256, | |
| ( | |
| (ethers::core::types::U256, ethers::core::types::U256), | |
| (ethers::core::types::U256, ethers::core::types::U256), | |
| (ethers::core::types::U256, ethers::core::types::U256), | |
| (ethers::core::types::U256, ethers::core::types::U256), | |
| (ethers::core::types::U256, ethers::core::types::U256), | |
| (ethers::core::types::U256, ethers::core::types::U256), | |
| (ethers::core::types::U256, ethers::core::types::U256), | |
| (ethers::core::types::U256, ethers::core::types::U256), | |
| (ethers::core::types::U256, ethers::core::types::U256), | |
| (ethers::core::types::U256, ethers::core::types::U256), | |
| (ethers::core::types::U256, ethers::core::types::U256), | |
| (ethers::core::types::U256, ethers::core::types::U256), | |
| (ethers::core::types::U256, ethers::core::types::U256), | |
| ethers::core::types::U256, | |
| ethers::core::types::U256, | |
| ethers::core::types::U256, | |
| ethers::core::types::U256, | |
| ethers::core::types::U256, | |
| ethers::core::types::U256, | |
| ethers::core::types::U256, | |
| ethers::core::types::U256, | |
| ethers::core::types::U256, | |
| ethers::core::types::U256, | |
| ), | |
| ( | |
| (ethers::core::types::U256, ethers::core::types::U256), | |
| Vec<ethers::core::types::U256>, | |
| ), | |
| ( | |
| ethers::core::types::U256, | |
| u128, | |
| (ethers::core::types::U256, ethers::core::types::U256), | |
| ), | |
| )>, | |
| Vec<( | |
| Vec<ethers::core::types::U256>, | |
| Vec<ethers::core::types::U256>, | |
| ( | |
| (ethers::core::types::U256, ethers::core::types::U256), | |
| (ethers::core::types::U256, ethers::core::types::U256), | |
| (ethers::core::types::U256, ethers::core::types::U256), | |
| (ethers::core::types::U256, ethers::core::types::U256), | |
| (ethers::core::types::U256, ethers::core::types::U256), | |
| (ethers::core::types::U256, ethers::core::types::U256), | |
| (ethers::core::types::U256, ethers::core::types::U256), | |
| (ethers::core::types::U256, ethers::core::types::U256), | |
| (ethers::core::types::U256, ethers::core::types::U256), | |
| (ethers::core::types::U256, ethers::core::types::U256), | |
| (ethers::core::types::U256, ethers::core::types::U256), | |
| (ethers::core::types::U256, ethers::core::types::U256), | |
| (ethers::core::types::U256, ethers::core::types::U256), | |
| ethers::core::types::U256, | |
| ethers::core::types::U256, | |
| ethers::core::types::U256, | |
| ethers::core::types::U256, | |
| ethers::core::types::U256, | |
| ethers::core::types::U256, | |
| ethers::core::types::U256, | |
| ethers::core::types::U256, | |
| ethers::core::types::U256, | |
| ethers::core::types::U256, | |
| ), | |
| ( | |
| ethers::core::types::U256, | |
| u128, | |
| (ethers::core::types::U256, ethers::core::types::U256), | |
| ), | |
| )>, | |
| Vec<( | |
| ( | |
| Vec<ethers::core::types::U256>, | |
| Vec<ethers::core::types::U256>, | |
| ( | |
| (ethers::core::types::U256, ethers::core::types::U256), | |
| (ethers::core::types::U256, ethers::core::types::U256), | |
| (ethers::core::types::U256, ethers::core::types::U256), | |
| (ethers::core::types::U256, ethers::core::types::U256), | |
| (ethers::core::types::U256, ethers::core::types::U256), | |
| (ethers::core::types::U256, ethers::core::types::U256), | |
| (ethers::core::types::U256, ethers::core::types::U256), | |
| (ethers::core::types::U256, ethers::core::types::U256), | |
| (ethers::core::types::U256, ethers::core::types::U256), | |
| (ethers::core::types::U256, ethers::core::types::U256), | |
| (ethers::core::types::U256, ethers::core::types::U256), | |
| (ethers::core::types::U256, ethers::core::types::U256), | |
| (ethers::core::types::U256, ethers::core::types::U256), | |
| ethers::core::types::U256, | |
| ethers::core::types::U256, | |
| ethers::core::types::U256, | |
| ethers::core::types::U256, | |
| ethers::core::types::U256, | |
| ethers::core::types::U256, | |
| ethers::core::types::U256, | |
| ethers::core::types::U256, | |
| ethers::core::types::U256, | |
| ethers::core::types::U256, | |
| ), | |
| ( | |
| (ethers::core::types::U256, ethers::core::types::U256), | |
| Vec<ethers::core::types::U256>, | |
| ), | |
| ( | |
| ethers::core::types::U256, | |
| u128, | |
| u64, | |
| (ethers::core::types::U256, ethers::core::types::U256), | |
| ethers::core::types::Bytes, | |
| ), | |
| ), | |
| ( | |
| u128, | |
| ( | |
| ethers::core::types::U256, | |
| ( | |
| (ethers::core::types::U256, ethers::core::types::U256), | |
| (ethers::core::types::U256, ethers::core::types::U256), | |
| (ethers::core::types::U256, ethers::core::types::U256), | |
| ethers::core::types::U256, | |
| u128, | |
| ), | |
| ), | |
| (ethers::core::types::U256, ethers::core::types::U256), | |
| [u8; 32], | |
| bool, | |
| ethers::core::types::U256, | |
| ), | |
| )>, | |
| ), | |
| } | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthEvent, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethevent( | |
| name = "Erc20TokensDeposited", | |
| abi = "Erc20TokensDeposited(bytes,address,address)" | |
| )] | |
| pub struct Erc20TokensDepositedFilter { | |
| pub ro_bytes: ethers::core::types::Bytes, | |
| pub erc_20_token_address: ethers::core::types::Address, | |
| pub from: ethers::core::types::Address, | |
| } | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthEvent, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethevent(name = "FaucetInitialized", abi = "FaucetInitialized(bytes)")] | |
| pub struct FaucetInitializedFilter { | |
| pub ro_bytes: ethers::core::types::Bytes, | |
| } | |
| #[derive(Debug, Clone, PartialEq, Eq, ethers :: contract :: EthAbiType)] | |
| pub enum TestCAPEEvents { | |
| AssetSponsoredFilter(AssetSponsoredFilter), | |
| BlockCommittedFilter(BlockCommittedFilter), | |
| Erc20TokensDepositedFilter(Erc20TokensDepositedFilter), | |
| FaucetInitializedFilter(FaucetInitializedFilter), | |
| } | |
| impl ethers::contract::EthLogDecode for TestCAPEEvents { | |
| fn decode_log(log: ðers::core::abi::RawLog) -> Result<Self, ethers::core::abi::Error> | |
| where | |
| Self: Sized, | |
| { | |
| if let Ok(decoded) = AssetSponsoredFilter::decode_log(log) { | |
| return Ok(TestCAPEEvents::AssetSponsoredFilter(decoded)); | |
| } | |
| if let Ok(decoded) = BlockCommittedFilter::decode_log(log) { | |
| return Ok(TestCAPEEvents::BlockCommittedFilter(decoded)); | |
| } | |
| if let Ok(decoded) = Erc20TokensDepositedFilter::decode_log(log) { | |
| return Ok(TestCAPEEvents::Erc20TokensDepositedFilter(decoded)); | |
| } | |
| if let Ok(decoded) = FaucetInitializedFilter::decode_log(log) { | |
| return Ok(TestCAPEEvents::FaucetInitializedFilter(decoded)); | |
| } | |
| Err(ethers::core::abi::Error::InvalidData) | |
| } | |
| } | |
| impl ::std::fmt::Display for TestCAPEEvents { | |
| fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result { | |
| match self { | |
| TestCAPEEvents::AssetSponsoredFilter(element) => element.fmt(f), | |
| TestCAPEEvents::BlockCommittedFilter(element) => element.fmt(f), | |
| TestCAPEEvents::Erc20TokensDepositedFilter(element) => element.fmt(f), | |
| TestCAPEEvents::FaucetInitializedFilter(element) => element.fmt(f), | |
| } | |
| } | |
| } | |
| #[doc = "Container type for all input parameters for the `CAPE_BURN_MAGIC_BYTES`function with signature `CAPE_BURN_MAGIC_BYTES()` and selector `[17, 130, 159, 147]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall(name = "CAPE_BURN_MAGIC_BYTES", abi = "CAPE_BURN_MAGIC_BYTES()")] | |
| pub struct CapeBurnMagicBytesCall; | |
| #[doc = "Container type for all input parameters for the `CAPE_BURN_MAGIC_BYTES_SIZE`function with signature `CAPE_BURN_MAGIC_BYTES_SIZE()` and selector `[180, 226, 143, 26]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall( | |
| name = "CAPE_BURN_MAGIC_BYTES_SIZE", | |
| abi = "CAPE_BURN_MAGIC_BYTES_SIZE()" | |
| )] | |
| pub struct CapeBurnMagicBytesSizeCall; | |
| #[doc = "Container type for all input parameters for the `CAP_NATIVE_ASSET_CODE`function with signature `CAP_NATIVE_ASSET_CODE()` and selector `[121, 207, 111, 92]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall(name = "CAP_NATIVE_ASSET_CODE", abi = "CAP_NATIVE_ASSET_CODE()")] | |
| pub struct CapNativeAssetCodeCall; | |
| #[doc = "Container type for all input parameters for the `DOM_SEP_DOMESTIC_ASSET`function with signature `DOM_SEP_DOMESTIC_ASSET()` and selector `[29, 182, 178, 83]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall(name = "DOM_SEP_DOMESTIC_ASSET", abi = "DOM_SEP_DOMESTIC_ASSET()")] | |
| pub struct DomSepDomesticAssetCall; | |
| #[doc = "Container type for all input parameters for the `DOM_SEP_FOREIGN_ASSET`function with signature `DOM_SEP_FOREIGN_ASSET()` and selector `[163, 59, 169, 108]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall(name = "DOM_SEP_FOREIGN_ASSET", abi = "DOM_SEP_FOREIGN_ASSET()")] | |
| pub struct DomSepForeignAssetCall; | |
| #[doc = "Container type for all input parameters for the `MAX_NUM_PENDING_DEPOSIT`function with signature `MAX_NUM_PENDING_DEPOSIT()` and selector `[157, 213, 132, 185]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall(name = "MAX_NUM_PENDING_DEPOSIT", abi = "MAX_NUM_PENDING_DEPOSIT()")] | |
| pub struct MaxNumPendingDepositCall; | |
| #[doc = "Container type for all input parameters for the `addRoot`function with signature `addRoot(uint256)` and selector `[232, 170, 248, 62]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall(name = "addRoot", abi = "addRoot(uint256)")] | |
| pub struct AddRootCall { | |
| pub root: ethers::core::types::U256, | |
| } | |
| #[doc = "Container type for all input parameters for the `assets`function with signature `assets(bytes32)` and selector `[159, 218, 91, 102]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall(name = "assets", abi = "assets(bytes32)")] | |
| pub struct AssetsCall(pub [u8; 32]); | |
| #[doc = "Container type for all input parameters for the `blockHeight`function with signature `blockHeight()` and selector `[244, 79, 247, 18]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall(name = "blockHeight", abi = "blockHeight()")] | |
| pub struct BlockHeightCall; | |
| #[doc = "Container type for all input parameters for the `checkBurn`function with signature `checkBurn(((uint256[],uint256[],((uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256),((uint256,uint256),uint256[]),(uint256,uint128,uint64,(uint256,uint256),bytes)),(uint128,(uint256,((uint256,uint256),(uint256,uint256),(uint256,uint256),uint256,uint128)),(uint256,uint256),bytes32,bool,uint256)))` and selector `[215, 60, 229, 215]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall( | |
| name = "checkBurn", | |
| abi = "checkBurn(((uint256[],uint256[],((uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256),((uint256,uint256),uint256[]),(uint256,uint128,uint64,(uint256,uint256),bytes)),(uint128,(uint256,((uint256,uint256),(uint256,uint256),(uint256,uint256),uint256,uint128)),(uint256,uint256),bytes32,bool,uint256)))" | |
| )] | |
| pub struct CheckBurnCall { | |
| pub note: BurnNote, | |
| } | |
| #[doc = "Container type for all input parameters for the `checkDomesticAssetCode`function with signature `checkDomesticAssetCode(uint256,uint256)` and selector `[236, 69, 163, 234]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall( | |
| name = "checkDomesticAssetCode", | |
| abi = "checkDomesticAssetCode(uint256,uint256)" | |
| )] | |
| pub struct CheckDomesticAssetCodeCall { | |
| pub asset_definition_code: ethers::core::types::U256, | |
| pub internal_asset_code: ethers::core::types::U256, | |
| } | |
| #[doc = "Container type for all input parameters for the `checkForeignAssetCode`function with signature `checkForeignAssetCode(uint256,address,address,((uint256,uint256),(uint256,uint256),(uint256,uint256),uint256,uint128))` and selector `[77, 167, 239, 27]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall( | |
| name = "checkForeignAssetCode", | |
| abi = "checkForeignAssetCode(uint256,address,address,((uint256,uint256),(uint256,uint256),(uint256,uint256),uint256,uint128))" | |
| )] | |
| pub struct CheckForeignAssetCodeCall { | |
| pub asset_definition_code: ethers::core::types::U256, | |
| pub erc_20_address: ethers::core::types::Address, | |
| pub sponsor: ethers::core::types::Address, | |
| pub policy: AssetPolicy, | |
| } | |
| #[doc = "Container type for all input parameters for the `checkTransfer`function with signature `checkTransfer((uint256[],uint256[],((uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256),((uint256,uint256),uint256[]),(uint256,uint128,uint64,(uint256,uint256),bytes)))` and selector `[158, 80, 218, 119]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall( | |
| name = "checkTransfer", | |
| abi = "checkTransfer((uint256[],uint256[],((uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256),((uint256,uint256),uint256[]),(uint256,uint128,uint64,(uint256,uint256),bytes)))" | |
| )] | |
| pub struct CheckTransferCall { | |
| pub note: TransferNote, | |
| } | |
| #[doc = "Container type for all input parameters for the `computeAssetDescription`function with signature `computeAssetDescription(address,address,((uint256,uint256),(uint256,uint256),(uint256,uint256),uint256,uint128))` and selector `[208, 249, 150, 168]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall( | |
| name = "computeAssetDescription", | |
| abi = "computeAssetDescription(address,address,((uint256,uint256),(uint256,uint256),(uint256,uint256),uint256,uint128))" | |
| )] | |
| pub struct ComputeAssetDescriptionCall { | |
| pub erc_20_address: ethers::core::types::Address, | |
| pub sponsor: ethers::core::types::Address, | |
| pub policy: AssetPolicy, | |
| } | |
| #[doc = "Container type for all input parameters for the `computeNumCommitments`function with signature `computeNumCommitments(((uint256,uint256),uint8[],(uint256[],uint256[],((uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256),((uint256,uint256),uint256[]),(uint256,uint128,uint64,(uint256,uint256),bytes))[],(uint256,uint256,uint256,uint128,(uint256,((uint256,uint256),(uint256,uint256),(uint256,uint256),uint256,uint128)),uint256,((uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256),((uint256,uint256),uint256[]),(uint256,uint128,(uint256,uint256)))[],(uint256[],uint256[],((uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256),(uint256,uint128,(uint256,uint256)))[],((uint256[],uint256[],((uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256),((uint256,uint256),uint256[]),(uint256,uint128,uint64,(uint256,uint256),bytes)),(uint128,(uint256,((uint256,uint256),(uint256,uint256),(uint256,uint256),uint256,uint128)),(uint256,uint256),bytes32,bool,uint256))[]))` and selector `[142, 196, 166, 248]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall( | |
| name = "computeNumCommitments", | |
| abi = "computeNumCommitments(((uint256,uint256),uint8[],(uint256[],uint256[],((uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256),((uint256,uint256),uint256[]),(uint256,uint128,uint64,(uint256,uint256),bytes))[],(uint256,uint256,uint256,uint128,(uint256,((uint256,uint256),(uint256,uint256),(uint256,uint256),uint256,uint128)),uint256,((uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256),((uint256,uint256),uint256[]),(uint256,uint128,(uint256,uint256)))[],(uint256[],uint256[],((uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256),(uint256,uint128,(uint256,uint256)))[],((uint256[],uint256[],((uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256),((uint256,uint256),uint256[]),(uint256,uint128,uint64,(uint256,uint256),bytes)),(uint128,(uint256,((uint256,uint256),(uint256,uint256),(uint256,uint256),uint256,uint128)),(uint256,uint256),bytes32,bool,uint256))[]))" | |
| )] | |
| pub struct ComputeNumCommitmentsCall { | |
| pub new_block: CapeBlock, | |
| } | |
| #[doc = "Container type for all input parameters for the `containsBurnPrefix`function with signature `containsBurnPrefix(bytes)` and selector `[47, 132, 102, 128]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall(name = "containsBurnPrefix", abi = "containsBurnPrefix(bytes)")] | |
| pub struct ContainsBurnPrefixCall { | |
| pub extra_proof_bound_data: ethers::core::types::Bytes, | |
| } | |
| #[doc = "Container type for all input parameters for the `containsBurnRecord`function with signature `containsBurnRecord(((uint256[],uint256[],((uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256),((uint256,uint256),uint256[]),(uint256,uint128,uint64,(uint256,uint256),bytes)),(uint128,(uint256,((uint256,uint256),(uint256,uint256),(uint256,uint256),uint256,uint128)),(uint256,uint256),bytes32,bool,uint256)))` and selector `[178, 66, 7, 222]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall( | |
| name = "containsBurnRecord", | |
| abi = "containsBurnRecord(((uint256[],uint256[],((uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256),((uint256,uint256),uint256[]),(uint256,uint128,uint64,(uint256,uint256),bytes)),(uint128,(uint256,((uint256,uint256),(uint256,uint256),(uint256,uint256),uint256,uint128)),(uint256,uint256),bytes32,bool,uint256)))" | |
| )] | |
| pub struct ContainsBurnRecordCall { | |
| pub note: BurnNote, | |
| } | |
| #[doc = "Container type for all input parameters for the `containsRoot`function with signature `containsRoot(uint256)` and selector `[124, 137, 123, 114]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall(name = "containsRoot", abi = "containsRoot(uint256)")] | |
| pub struct ContainsRootCall { | |
| pub root: ethers::core::types::U256, | |
| } | |
| #[doc = "Container type for all input parameters for the `deployer`function with signature `deployer()` and selector `[213, 243, 148, 136]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall(name = "deployer", abi = "deployer()")] | |
| pub struct DeployerCall; | |
| #[doc = "Container type for all input parameters for the `depositErc20`function with signature `depositErc20((uint128,(uint256,((uint256,uint256),(uint256,uint256),(uint256,uint256),uint256,uint128)),(uint256,uint256),bytes32,bool,uint256),address)` and selector `[104, 104, 221, 31]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall( | |
| name = "depositErc20", | |
| abi = "depositErc20((uint128,(uint256,((uint256,uint256),(uint256,uint256),(uint256,uint256),uint256,uint128)),(uint256,uint256),bytes32,bool,uint256),address)" | |
| )] | |
| pub struct DepositErc20Call { | |
| pub ro: RecordOpening, | |
| pub erc_20_address: ethers::core::types::Address, | |
| } | |
| #[doc = "Container type for all input parameters for the `deriveRecordCommitment`function with signature `deriveRecordCommitment((uint128,(uint256,((uint256,uint256),(uint256,uint256),(uint256,uint256),uint256,uint128)),(uint256,uint256),bytes32,bool,uint256))` and selector `[152, 15, 120, 184]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall( | |
| name = "deriveRecordCommitment", | |
| abi = "deriveRecordCommitment((uint128,(uint256,((uint256,uint256),(uint256,uint256),(uint256,uint256),uint256,uint128)),(uint256,uint256),bytes32,bool,uint256))" | |
| )] | |
| pub struct DeriveRecordCommitmentCall { | |
| pub ro: RecordOpening, | |
| } | |
| #[doc = "Container type for all input parameters for the `faucetInitialized`function with signature `faucetInitialized()` and selector `[254, 60, 195, 248]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall(name = "faucetInitialized", abi = "faucetInitialized()")] | |
| pub struct FaucetInitializedCall; | |
| #[doc = "Container type for all input parameters for the `faucetSetupForTestnet`function with signature `faucetSetupForTestnet((uint256,uint256),bytes32)` and selector `[177, 47, 126, 123]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall( | |
| name = "faucetSetupForTestnet", | |
| abi = "faucetSetupForTestnet((uint256,uint256),bytes32)" | |
| )] | |
| pub struct FaucetSetupForTestnetCall { | |
| pub faucet_manager_address: EdOnBN254Point, | |
| pub faucet_manager_enc_key: [u8; 32], | |
| } | |
| #[doc = "Container type for all input parameters for the `fillUpPendingDepositsQueue`function with signature `fillUpPendingDepositsQueue()` and selector `[33, 165, 173, 7]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall( | |
| name = "fillUpPendingDepositsQueue", | |
| abi = "fillUpPendingDepositsQueue()" | |
| )] | |
| pub struct FillUpPendingDepositsQueueCall; | |
| #[doc = "Container type for all input parameters for the `getNumLeaves`function with signature `getNumLeaves()` and selector `[146, 125, 82, 171]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall(name = "getNumLeaves", abi = "getNumLeaves()")] | |
| pub struct GetNumLeavesCall; | |
| #[doc = "Container type for all input parameters for the `getRootValue`function with signature `getRootValue()` and selector `[100, 68, 200, 209]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall(name = "getRootValue", abi = "getRootValue()")] | |
| pub struct GetRootValueCall; | |
| #[doc = "Container type for all input parameters for the `isCapeAssetRegistered`function with signature `isCapeAssetRegistered((uint256,((uint256,uint256),(uint256,uint256),(uint256,uint256),uint256,uint128)))` and selector `[241, 72, 251, 74]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall( | |
| name = "isCapeAssetRegistered", | |
| abi = "isCapeAssetRegistered((uint256,((uint256,uint256),(uint256,uint256),(uint256,uint256),uint256,uint128)))" | |
| )] | |
| pub struct IsCapeAssetRegisteredCall { | |
| pub asset_definition: AssetDefinition, | |
| } | |
| #[doc = "Container type for all input parameters for the `lookup`function with signature `lookup((uint256,((uint256,uint256),(uint256,uint256),(uint256,uint256),uint256,uint128)))` and selector `[213, 108, 30, 161]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall( | |
| name = "lookup", | |
| abi = "lookup((uint256,((uint256,uint256),(uint256,uint256),(uint256,uint256),uint256,uint128)))" | |
| )] | |
| pub struct LookupCall { | |
| pub asset_definition: AssetDefinition, | |
| } | |
| #[doc = "Container type for all input parameters for the `nativeDomesticAsset`function with signature `nativeDomesticAsset()` and selector `[109, 232, 64, 96]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall(name = "nativeDomesticAsset", abi = "nativeDomesticAsset()")] | |
| pub struct NativeDomesticAssetCall; | |
| #[doc = "Container type for all input parameters for the `nullifiers`function with signature `nullifiers(uint256)` and selector `[210, 30, 130, 171]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall(name = "nullifiers", abi = "nullifiers(uint256)")] | |
| pub struct NullifiersCall(pub ethers::core::types::U256); | |
| #[doc = "Container type for all input parameters for the `pendingDeposits`function with signature `pendingDeposits(uint256)` and selector `[167, 147, 39, 148]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall(name = "pendingDeposits", abi = "pendingDeposits(uint256)")] | |
| pub struct PendingDepositsCall(pub ethers::core::types::U256); | |
| #[doc = "Container type for all input parameters for the `pendingDepositsLength`function with signature `pendingDepositsLength()` and selector `[1, 189, 14, 165]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall(name = "pendingDepositsLength", abi = "pendingDepositsLength()")] | |
| pub struct PendingDepositsLengthCall; | |
| #[doc = "Container type for all input parameters for the `publish`function with signature `publish(uint256)` and selector `[204, 78, 241, 25]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall(name = "publish", abi = "publish(uint256)")] | |
| pub struct PublishCall { | |
| pub nullifier: ethers::core::types::U256, | |
| } | |
| #[doc = "Container type for all input parameters for the `setHeight`function with signature `setHeight(uint64)` and selector `[153, 219, 77, 65]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall(name = "setHeight", abi = "setHeight(uint64)")] | |
| pub struct SetHeightCall { | |
| pub new_height: u64, | |
| } | |
| #[doc = "Container type for all input parameters for the `setInitialRecordCommitments`function with signature `setInitialRecordCommitments(uint256[])` and selector `[186, 114, 16, 137]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall( | |
| name = "setInitialRecordCommitments", | |
| abi = "setInitialRecordCommitments(uint256[])" | |
| )] | |
| pub struct SetInitialRecordCommitmentsCall { | |
| pub elements: ::std::vec::Vec<ethers::core::types::U256>, | |
| } | |
| #[doc = "Container type for all input parameters for the `sponsorCapeAsset`function with signature `sponsorCapeAsset(address,(uint256,((uint256,uint256),(uint256,uint256),(uint256,uint256),uint256,uint128)))` and selector `[10, 33, 33, 69]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall( | |
| name = "sponsorCapeAsset", | |
| abi = "sponsorCapeAsset(address,(uint256,((uint256,uint256),(uint256,uint256),(uint256,uint256),uint256,uint128)))" | |
| )] | |
| pub struct SponsorCapeAssetCall { | |
| pub erc_20_address: ethers::core::types::Address, | |
| pub new_asset: AssetDefinition, | |
| } | |
| #[doc = "Container type for all input parameters for the `submitCapeBlock`function with signature `submitCapeBlock(((uint256,uint256),uint8[],(uint256[],uint256[],((uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256),((uint256,uint256),uint256[]),(uint256,uint128,uint64,(uint256,uint256),bytes))[],(uint256,uint256,uint256,uint128,(uint256,((uint256,uint256),(uint256,uint256),(uint256,uint256),uint256,uint128)),uint256,((uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256),((uint256,uint256),uint256[]),(uint256,uint128,(uint256,uint256)))[],(uint256[],uint256[],((uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256),(uint256,uint128,(uint256,uint256)))[],((uint256[],uint256[],((uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256),((uint256,uint256),uint256[]),(uint256,uint128,uint64,(uint256,uint256),bytes)),(uint128,(uint256,((uint256,uint256),(uint256,uint256),(uint256,uint256),uint256,uint128)),(uint256,uint256),bytes32,bool,uint256))[]))` and selector `[203, 57, 11, 152]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall( | |
| name = "submitCapeBlock", | |
| abi = "submitCapeBlock(((uint256,uint256),uint8[],(uint256[],uint256[],((uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256),((uint256,uint256),uint256[]),(uint256,uint128,uint64,(uint256,uint256),bytes))[],(uint256,uint256,uint256,uint128,(uint256,((uint256,uint256),(uint256,uint256),(uint256,uint256),uint256,uint128)),uint256,((uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256),((uint256,uint256),uint256[]),(uint256,uint128,(uint256,uint256)))[],(uint256[],uint256[],((uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256),(uint256,uint128,(uint256,uint256)))[],((uint256[],uint256[],((uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256),((uint256,uint256),uint256[]),(uint256,uint128,uint64,(uint256,uint256),bytes)),(uint128,(uint256,((uint256,uint256),(uint256,uint256),(uint256,uint256),uint256,uint128)),(uint256,uint256),bytes32,bool,uint256))[]))" | |
| )] | |
| pub struct SubmitCapeBlockCall { | |
| pub new_block: CapeBlock, | |
| } | |
| #[doc = "Container type for all input parameters for the `submitCapeBlockWithMemos`function with signature `submitCapeBlockWithMemos(((uint256,uint256),uint8[],(uint256[],uint256[],((uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256),((uint256,uint256),uint256[]),(uint256,uint128,uint64,(uint256,uint256),bytes))[],(uint256,uint256,uint256,uint128,(uint256,((uint256,uint256),(uint256,uint256),(uint256,uint256),uint256,uint128)),uint256,((uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256),((uint256,uint256),uint256[]),(uint256,uint128,(uint256,uint256)))[],(uint256[],uint256[],((uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256),(uint256,uint128,(uint256,uint256)))[],((uint256[],uint256[],((uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256),((uint256,uint256),uint256[]),(uint256,uint128,uint64,(uint256,uint256),bytes)),(uint128,(uint256,((uint256,uint256),(uint256,uint256),(uint256,uint256),uint256,uint128)),(uint256,uint256),bytes32,bool,uint256))[]),bytes)` and selector `[16, 180, 227, 161]`"] | |
| #[derive( | |
| Clone, | |
| Debug, | |
| Default, | |
| Eq, | |
| PartialEq, | |
| ethers :: contract :: EthCall, | |
| ethers :: contract :: EthDisplay, | |
| )] | |
| #[ethcall( | |
| name = "submitCapeBlockWithMemos", | |
| abi = "submitCapeBlockWithMemos(((uint256,uint256),uint8[],(uint256[],uint256[],((uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256),((uint256,uint256),uint256[]),(uint256,uint128,uint64,(uint256,uint256),bytes))[],(uint256,uint256,uint256,uint128,(uint256,((uint256,uint256),(uint256,uint256),(uint256,uint256),uint256,uint128)),uint256,((uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256),((uint256,uint256),uint256[]),(uint256,uint128,(uint256,uint256)))[],(uint256[],uint256[],((uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256),(uint256,uint128,(uint256,uint256)))[],((uint256[],uint256[],((uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256),((uint256,uint256),uint256[]),(uint256,uint128,uint64,(uint256,uint256),bytes)),(uint128,(uint256,((uint256,uint256),(uint256,uint256),(uint256,uint256),uint256,uint128)),(uint256,uint256),bytes32,bool,uint256))[]),bytes)" | |
| )] | |
| pub struct SubmitCapeBlockWithMemosCall { | |
| pub new_block: CapeBlock, | |
| pub extra_data: ethers::core::types::Bytes, | |
| } | |
| #[derive(Debug, Clone, PartialEq, Eq, ethers :: contract :: EthAbiType)] | |
| pub enum TestCAPECalls { | |
| CapeBurnMagicBytes(CapeBurnMagicBytesCall), | |
| CapeBurnMagicBytesSize(CapeBurnMagicBytesSizeCall), | |
| CapNativeAssetCode(CapNativeAssetCodeCall), | |
| DomSepDomesticAsset(DomSepDomesticAssetCall), | |
| DomSepForeignAsset(DomSepForeignAssetCall), | |
| MaxNumPendingDeposit(MaxNumPendingDepositCall), | |
| AddRoot(AddRootCall), | |
| Assets(AssetsCall), | |
| BlockHeight(BlockHeightCall), | |
| CheckBurn(CheckBurnCall), | |
| CheckDomesticAssetCode(CheckDomesticAssetCodeCall), | |
| CheckForeignAssetCode(CheckForeignAssetCodeCall), | |
| CheckTransfer(CheckTransferCall), | |
| ComputeAssetDescription(ComputeAssetDescriptionCall), | |
| ComputeNumCommitments(ComputeNumCommitmentsCall), | |
| ContainsBurnPrefix(ContainsBurnPrefixCall), | |
| ContainsBurnRecord(ContainsBurnRecordCall), | |
| ContainsRoot(ContainsRootCall), | |
| Deployer(DeployerCall), | |
| DepositErc20(DepositErc20Call), | |
| DeriveRecordCommitment(DeriveRecordCommitmentCall), | |
| FaucetInitialized(FaucetInitializedCall), | |
| FaucetSetupForTestnet(FaucetSetupForTestnetCall), | |
| FillUpPendingDepositsQueue(FillUpPendingDepositsQueueCall), | |
| GetNumLeaves(GetNumLeavesCall), | |
| GetRootValue(GetRootValueCall), | |
| IsCapeAssetRegistered(IsCapeAssetRegisteredCall), | |
| Lookup(LookupCall), | |
| NativeDomesticAsset(NativeDomesticAssetCall), | |
| Nullifiers(NullifiersCall), | |
| PendingDeposits(PendingDepositsCall), | |
| PendingDepositsLength(PendingDepositsLengthCall), | |
| Publish(PublishCall), | |
| SetHeight(SetHeightCall), | |
| SetInitialRecordCommitments(SetInitialRecordCommitmentsCall), | |
| SponsorCapeAsset(SponsorCapeAssetCall), | |
| SubmitCapeBlock(SubmitCapeBlockCall), | |
| SubmitCapeBlockWithMemos(SubmitCapeBlockWithMemosCall), | |
| } | |
| impl ethers::core::abi::AbiDecode for TestCAPECalls { | |
| fn decode(data: impl AsRef<[u8]>) -> Result<Self, ethers::core::abi::AbiError> { | |
| if let Ok(decoded) = | |
| <CapeBurnMagicBytesCall as ethers::core::abi::AbiDecode>::decode(data.as_ref()) | |
| { | |
| return Ok(TestCAPECalls::CapeBurnMagicBytes(decoded)); | |
| } | |
| if let Ok(decoded) = | |
| <CapeBurnMagicBytesSizeCall as ethers::core::abi::AbiDecode>::decode(data.as_ref()) | |
| { | |
| return Ok(TestCAPECalls::CapeBurnMagicBytesSize(decoded)); | |
| } | |
| if let Ok(decoded) = | |
| <CapNativeAssetCodeCall as ethers::core::abi::AbiDecode>::decode(data.as_ref()) | |
| { | |
| return Ok(TestCAPECalls::CapNativeAssetCode(decoded)); | |
| } | |
| if let Ok(decoded) = | |
| <DomSepDomesticAssetCall as ethers::core::abi::AbiDecode>::decode(data.as_ref()) | |
| { | |
| return Ok(TestCAPECalls::DomSepDomesticAsset(decoded)); | |
| } | |
| if let Ok(decoded) = | |
| <DomSepForeignAssetCall as ethers::core::abi::AbiDecode>::decode(data.as_ref()) | |
| { | |
| return Ok(TestCAPECalls::DomSepForeignAsset(decoded)); | |
| } | |
| if let Ok(decoded) = | |
| <MaxNumPendingDepositCall as ethers::core::abi::AbiDecode>::decode(data.as_ref()) | |
| { | |
| return Ok(TestCAPECalls::MaxNumPendingDeposit(decoded)); | |
| } | |
| if let Ok(decoded) = | |
| <AddRootCall as ethers::core::abi::AbiDecode>::decode(data.as_ref()) | |
| { | |
| return Ok(TestCAPECalls::AddRoot(decoded)); | |
| } | |
| if let Ok(decoded) = <AssetsCall as ethers::core::abi::AbiDecode>::decode(data.as_ref()) | |
| { | |
| return Ok(TestCAPECalls::Assets(decoded)); | |
| } | |
| if let Ok(decoded) = | |
| <BlockHeightCall as ethers::core::abi::AbiDecode>::decode(data.as_ref()) | |
| { | |
| return Ok(TestCAPECalls::BlockHeight(decoded)); | |
| } | |
| if let Ok(decoded) = | |
| <CheckBurnCall as ethers::core::abi::AbiDecode>::decode(data.as_ref()) | |
| { | |
| return Ok(TestCAPECalls::CheckBurn(decoded)); | |
| } | |
| if let Ok(decoded) = | |
| <CheckDomesticAssetCodeCall as ethers::core::abi::AbiDecode>::decode(data.as_ref()) | |
| { | |
| return Ok(TestCAPECalls::CheckDomesticAssetCode(decoded)); | |
| } | |
| if let Ok(decoded) = | |
| <CheckForeignAssetCodeCall as ethers::core::abi::AbiDecode>::decode(data.as_ref()) | |
| { | |
| return Ok(TestCAPECalls::CheckForeignAssetCode(decoded)); | |
| } | |
| if let Ok(decoded) = | |
| <CheckTransferCall as ethers::core::abi::AbiDecode>::decode(data.as_ref()) | |
| { | |
| return Ok(TestCAPECalls::CheckTransfer(decoded)); | |
| } | |
| if let Ok(decoded) = | |
| <ComputeAssetDescriptionCall as ethers::core::abi::AbiDecode>::decode(data.as_ref()) | |
| { | |
| return Ok(TestCAPECalls::ComputeAssetDescription(decoded)); | |
| } | |
| if let Ok(decoded) = | |
| <ComputeNumCommitmentsCall as ethers::core::abi::AbiDecode>::decode(data.as_ref()) | |
| { | |
| return Ok(TestCAPECalls::ComputeNumCommitments(decoded)); | |
| } | |
| if let Ok(decoded) = | |
| <ContainsBurnPrefixCall as ethers::core::abi::AbiDecode>::decode(data.as_ref()) | |
| { | |
| return Ok(TestCAPECalls::ContainsBurnPrefix(decoded)); | |
| } | |
| if let Ok(decoded) = | |
| <ContainsBurnRecordCall as ethers::core::abi::AbiDecode>::decode(data.as_ref()) | |
| { | |
| return Ok(TestCAPECalls::ContainsBurnRecord(decoded)); | |
| } | |
| if let Ok(decoded) = | |
| <ContainsRootCall as ethers::core::abi::AbiDecode>::decode(data.as_ref()) | |
| { | |
| return Ok(TestCAPECalls::ContainsRoot(decoded)); | |
| } | |
| if let Ok(decoded) = | |
| <DeployerCall as ethers::core::abi::AbiDecode>::decode(data.as_ref()) | |
| { | |
| return Ok(TestCAPECalls::Deployer(decoded)); | |
| } | |
| if let Ok(decoded) = | |
| <DepositErc20Call as ethers::core::abi::AbiDecode>::decode(data.as_ref()) | |
| { | |
| return Ok(TestCAPECalls::DepositErc20(decoded)); | |
| } | |
| if let Ok(decoded) = | |
| <DeriveRecordCommitmentCall as ethers::core::abi::AbiDecode>::decode(data.as_ref()) | |
| { | |
| return Ok(TestCAPECalls::DeriveRecordCommitment(decoded)); | |
| } | |
| if let Ok(decoded) = | |
| <FaucetInitializedCall as ethers::core::abi::AbiDecode>::decode(data.as_ref()) | |
| { | |
| return Ok(TestCAPECalls::FaucetInitialized(decoded)); | |
| } | |
| if let Ok(decoded) = | |
| <FaucetSetupForTestnetCall as ethers::core::abi::AbiDecode>::decode(data.as_ref()) | |
| { | |
| return Ok(TestCAPECalls::FaucetSetupForTestnet(decoded)); | |
| } | |
| if let Ok(decoded) = | |
| <FillUpPendingDepositsQueueCall as ethers::core::abi::AbiDecode>::decode( | |
| data.as_ref(), | |
| ) | |
| { | |
| return Ok(TestCAPECalls::FillUpPendingDepositsQueue(decoded)); | |
| } | |
| if let Ok(decoded) = | |
| <GetNumLeavesCall as ethers::core::abi::AbiDecode>::decode(data.as_ref()) | |
| { | |
| return Ok(TestCAPECalls::GetNumLeaves(decoded)); | |
| } | |
| if let Ok(decoded) = | |
| <GetRootValueCall as ethers::core::abi::AbiDecode>::decode(data.as_ref()) | |
| { | |
| return Ok(TestCAPECalls::GetRootValue(decoded)); | |
| } | |
| if let Ok(decoded) = | |
| <IsCapeAssetRegisteredCall as ethers::core::abi::AbiDecode>::decode(data.as_ref()) | |
| { | |
| return Ok(TestCAPECalls::IsCapeAssetRegistered(decoded)); | |
| } | |
| if let Ok(decoded) = <LookupCall as ethers::core::abi::AbiDecode>::decode(data.as_ref()) | |
| { | |
| return Ok(TestCAPECalls::Lookup(decoded)); | |
| } | |
| if let Ok(decoded) = | |
| <NativeDomesticAssetCall as ethers::core::abi::AbiDecode>::decode(data.as_ref()) | |
| { | |
| return Ok(TestCAPECalls::NativeDomesticAsset(decoded)); | |
| } | |
| if let Ok(decoded) = | |
| <NullifiersCall as ethers::core::abi::AbiDecode>::decode(data.as_ref()) | |
| { | |
| return Ok(TestCAPECalls::Nullifiers(decoded)); | |
| } | |
| if let Ok(decoded) = | |
| <PendingDepositsCall as ethers::core::abi::AbiDecode>::decode(data.as_ref()) | |
| { | |
| return Ok(TestCAPECalls::PendingDeposits(decoded)); | |
| } | |
| if let Ok(decoded) = | |
| <PendingDepositsLengthCall as ethers::core::abi::AbiDecode>::decode(data.as_ref()) | |
| { | |
| return Ok(TestCAPECalls::PendingDepositsLength(decoded)); | |
| } | |
| if let Ok(decoded) = | |
| <PublishCall as ethers::core::abi::AbiDecode>::decode(data.as_ref()) | |
| { | |
| return Ok(TestCAPECalls::Publish(decoded)); | |
| } | |
| if let Ok(decoded) = | |
| <SetHeightCall as ethers::core::abi::AbiDecode>::decode(data.as_ref()) | |
| { | |
| return Ok(TestCAPECalls::SetHeight(decoded)); | |
| } | |
| if let Ok(decoded) = | |
| <SetInitialRecordCommitmentsCall as ethers::core::abi::AbiDecode>::decode( | |
| data.as_ref(), | |
| ) | |
| { | |
| return Ok(TestCAPECalls::SetInitialRecordCommitments(decoded)); | |
| } | |
| if let Ok(decoded) = | |
| <SponsorCapeAssetCall as ethers::core::abi::AbiDecode>::decode(data.as_ref()) | |
| { | |
| return Ok(TestCAPECalls::SponsorCapeAsset(decoded)); | |
| } | |
| if let Ok(decoded) = | |
| <SubmitCapeBlockCall as ethers::core::abi::AbiDecode>::decode(data.as_ref()) | |
| { | |
| return Ok(TestCAPECalls::SubmitCapeBlock(decoded)); | |
| } | |
| if let Ok(decoded) = | |
| <SubmitCapeBlockWithMemosCall as ethers::core::abi::AbiDecode>::decode( | |
| data.as_ref(), | |
| ) | |
| { | |
| return Ok(TestCAPECalls::SubmitCapeBlockWithMemos(decoded)); | |
| } | |
| Err(ethers::core::abi::Error::InvalidData.into()) | |
| } | |
| } | |
| impl ethers::core::abi::AbiEncode for TestCAPECalls { | |
| fn encode(self) -> Vec<u8> { | |
| match self { | |
| TestCAPECalls::CapeBurnMagicBytes(element) => element.encode(), | |
| TestCAPECalls::CapeBurnMagicBytesSize(element) => element.encode(), | |
| TestCAPECalls::CapNativeAssetCode(element) => element.encode(), | |
| TestCAPECalls::DomSepDomesticAsset(element) => element.encode(), | |
| TestCAPECalls::DomSepForeignAsset(element) => element.encode(), | |
| TestCAPECalls::MaxNumPendingDeposit(element) => element.encode(), | |
| TestCAPECalls::AddRoot(element) => element.encode(), | |
| TestCAPECalls::Assets(element) => element.encode(), | |
| TestCAPECalls::BlockHeight(element) => element.encode(), | |
| TestCAPECalls::CheckBurn(element) => element.encode(), | |
| TestCAPECalls::CheckDomesticAssetCode(element) => element.encode(), | |
| TestCAPECalls::CheckForeignAssetCode(element) => element.encode(), | |
| TestCAPECalls::CheckTransfer(element) => element.encode(), | |
| TestCAPECalls::ComputeAssetDescription(element) => element.encode(), | |
| TestCAPECalls::ComputeNumCommitments(element) => element.encode(), | |
| TestCAPECalls::ContainsBurnPrefix(element) => element.encode(), | |
| TestCAPECalls::ContainsBurnRecord(element) => element.encode(), | |
| TestCAPECalls::ContainsRoot(element) => element.encode(), | |
| TestCAPECalls::Deployer(element) => element.encode(), | |
| TestCAPECalls::DepositErc20(element) => element.encode(), | |
| TestCAPECalls::DeriveRecordCommitment(element) => element.encode(), | |
| TestCAPECalls::FaucetInitialized(element) => element.encode(), | |
| TestCAPECalls::FaucetSetupForTestnet(element) => element.encode(), | |
| TestCAPECalls::FillUpPendingDepositsQueue(element) => element.encode(), | |
| TestCAPECalls::GetNumLeaves(element) => element.encode(), | |
| TestCAPECalls::GetRootValue(element) => element.encode(), | |
| TestCAPECalls::IsCapeAssetRegistered(element) => element.encode(), | |
| TestCAPECalls::Lookup(element) => element.encode(), | |
| TestCAPECalls::NativeDomesticAsset(element) => element.encode(), | |
| TestCAPECalls::Nullifiers(element) => element.encode(), | |
| TestCAPECalls::PendingDeposits(element) => element.encode(), | |
| TestCAPECalls::PendingDepositsLength(element) => element.encode(), | |
| TestCAPECalls::Publish(element) => element.encode(), | |
| TestCAPECalls::SetHeight(element) => element.encode(), | |
| TestCAPECalls::SetInitialRecordCommitments(element) => element.encode(), | |
| TestCAPECalls::SponsorCapeAsset(element) => element.encode(), | |
| TestCAPECalls::SubmitCapeBlock(element) => element.encode(), | |
| TestCAPECalls::SubmitCapeBlockWithMemos(element) => element.encode(), | |
| } | |
| } | |
| } | |
| impl ::std::fmt::Display for TestCAPECalls { | |
| fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result { | |
| match self { | |
| TestCAPECalls::CapeBurnMagicBytes(element) => element.fmt(f), | |
| TestCAPECalls::CapeBurnMagicBytesSize(element) => element.fmt(f), | |
| TestCAPECalls::CapNativeAssetCode(element) => element.fmt(f), | |
| TestCAPECalls::DomSepDomesticAsset(element) => element.fmt(f), | |
| TestCAPECalls::DomSepForeignAsset(element) => element.fmt(f), | |
| TestCAPECalls::MaxNumPendingDeposit(element) => element.fmt(f), | |
| TestCAPECalls::AddRoot(element) => element.fmt(f), | |
| TestCAPECalls::Assets(element) => element.fmt(f), | |
| TestCAPECalls::BlockHeight(element) => element.fmt(f), | |
| TestCAPECalls::CheckBurn(element) => element.fmt(f), | |
| TestCAPECalls::CheckDomesticAssetCode(element) => element.fmt(f), | |
| TestCAPECalls::CheckForeignAssetCode(element) => element.fmt(f), | |
| TestCAPECalls::CheckTransfer(element) => element.fmt(f), | |
| TestCAPECalls::ComputeAssetDescription(element) => element.fmt(f), | |
| TestCAPECalls::ComputeNumCommitments(element) => element.fmt(f), | |
| TestCAPECalls::ContainsBurnPrefix(element) => element.fmt(f), | |
| TestCAPECalls::ContainsBurnRecord(element) => element.fmt(f), | |
| TestCAPECalls::ContainsRoot(element) => element.fmt(f), | |
| TestCAPECalls::Deployer(element) => element.fmt(f), | |
| TestCAPECalls::DepositErc20(element) => element.fmt(f), | |
| TestCAPECalls::DeriveRecordCommitment(element) => element.fmt(f), | |
| TestCAPECalls::FaucetInitialized(element) => element.fmt(f), | |
| TestCAPECalls::FaucetSetupForTestnet(element) => element.fmt(f), | |
| TestCAPECalls::FillUpPendingDepositsQueue(element) => element.fmt(f), | |
| TestCAPECalls::GetNumLeaves(element) => element.fmt(f), | |
| TestCAPECalls::GetRootValue(element) => element.fmt(f), | |
| TestCAPECalls::IsCapeAssetRegistered(element) => element.fmt(f), | |
| TestCAPECalls::Lookup(element) => element.fmt(f), | |
| TestCAPECalls::NativeDomesticAsset(element) => element.fmt(f), | |
| TestCAPECalls::Nullifiers(element) => element.fmt(f), | |
| TestCAPECalls::PendingDeposits(element) => element.fmt(f), | |
| TestCAPECalls::PendingDepositsLength(element) => element.fmt(f), | |
| TestCAPECalls::Publish(element) => element.fmt(f), | |
| TestCAPECalls::SetHeight(element) => element.fmt(f), | |
| TestCAPECalls::SetInitialRecordCommitments(element) => element.fmt(f), | |
| TestCAPECalls::SponsorCapeAsset(element) => element.fmt(f), | |
| TestCAPECalls::SubmitCapeBlock(element) => element.fmt(f), | |
| TestCAPECalls::SubmitCapeBlockWithMemos(element) => element.fmt(f), | |
| } | |
| } | |
| } | |
| impl ::std::convert::From<CapeBurnMagicBytesCall> for TestCAPECalls { | |
| fn from(var: CapeBurnMagicBytesCall) -> Self { | |
| TestCAPECalls::CapeBurnMagicBytes(var) | |
| } | |
| } | |
| impl ::std::convert::From<CapeBurnMagicBytesSizeCall> for TestCAPECalls { | |
| fn from(var: CapeBurnMagicBytesSizeCall) -> Self { | |
| TestCAPECalls::CapeBurnMagicBytesSize(var) | |
| } | |
| } | |
| impl ::std::convert::From<CapNativeAssetCodeCall> for TestCAPECalls { | |
| fn from(var: CapNativeAssetCodeCall) -> Self { | |
| TestCAPECalls::CapNativeAssetCode(var) | |
| } | |
| } | |
| impl ::std::convert::From<DomSepDomesticAssetCall> for TestCAPECalls { | |
| fn from(var: DomSepDomesticAssetCall) -> Self { | |
| TestCAPECalls::DomSepDomesticAsset(var) | |
| } | |
| } | |
| impl ::std::convert::From<DomSepForeignAssetCall> for TestCAPECalls { | |
| fn from(var: DomSepForeignAssetCall) -> Self { | |
| TestCAPECalls::DomSepForeignAsset(var) | |
| } | |
| } | |
| impl ::std::convert::From<MaxNumPendingDepositCall> for TestCAPECalls { | |
| fn from(var: MaxNumPendingDepositCall) -> Self { | |
| TestCAPECalls::MaxNumPendingDeposit(var) | |
| } | |
| } | |
| impl ::std::convert::From<AddRootCall> for TestCAPECalls { | |
| fn from(var: AddRootCall) -> Self { | |
| TestCAPECalls::AddRoot(var) | |
| } | |
| } | |
| impl ::std::convert::From<AssetsCall> for TestCAPECalls { | |
| fn from(var: AssetsCall) -> Self { | |
| TestCAPECalls::Assets(var) | |
| } | |
| } | |
| impl ::std::convert::From<BlockHeightCall> for TestCAPECalls { | |
| fn from(var: BlockHeightCall) -> Self { | |
| TestCAPECalls::BlockHeight(var) | |
| } | |
| } | |
| impl ::std::convert::From<CheckBurnCall> for TestCAPECalls { | |
| fn from(var: CheckBurnCall) -> Self { | |
| TestCAPECalls::CheckBurn(var) | |
| } | |
| } | |
| impl ::std::convert::From<CheckDomesticAssetCodeCall> for TestCAPECalls { | |
| fn from(var: CheckDomesticAssetCodeCall) -> Self { | |
| TestCAPECalls::CheckDomesticAssetCode(var) | |
| } | |
| } | |
| impl ::std::convert::From<CheckForeignAssetCodeCall> for TestCAPECalls { | |
| fn from(var: CheckForeignAssetCodeCall) -> Self { | |
| TestCAPECalls::CheckForeignAssetCode(var) | |
| } | |
| } | |
| impl ::std::convert::From<CheckTransferCall> for TestCAPECalls { | |
| fn from(var: CheckTransferCall) -> Self { | |
| TestCAPECalls::CheckTransfer(var) | |
| } | |
| } | |
| impl ::std::convert::From<ComputeAssetDescriptionCall> for TestCAPECalls { | |
| fn from(var: ComputeAssetDescriptionCall) -> Self { | |
| TestCAPECalls::ComputeAssetDescription(var) | |
| } | |
| } | |
| impl ::std::convert::From<ComputeNumCommitmentsCall> for TestCAPECalls { | |
| fn from(var: ComputeNumCommitmentsCall) -> Self { | |
| TestCAPECalls::ComputeNumCommitments(var) | |
| } | |
| } | |
| impl ::std::convert::From<ContainsBurnPrefixCall> for TestCAPECalls { | |
| fn from(var: ContainsBurnPrefixCall) -> Self { | |
| TestCAPECalls::ContainsBurnPrefix(var) | |
| } | |
| } | |
| impl ::std::convert::From<ContainsBurnRecordCall> for TestCAPECalls { | |
| fn from(var: ContainsBurnRecordCall) -> Self { | |
| TestCAPECalls::ContainsBurnRecord(var) | |
| } | |
| } | |
| impl ::std::convert::From<ContainsRootCall> for TestCAPECalls { | |
| fn from(var: ContainsRootCall) -> Self { | |
| TestCAPECalls::ContainsRoot(var) | |
| } | |
| } | |
| impl ::std::convert::From<DeployerCall> for TestCAPECalls { | |
| fn from(var: DeployerCall) -> Self { | |
| TestCAPECalls::Deployer(var) | |
| } | |
| } | |
| impl ::std::convert::From<DepositErc20Call> for TestCAPECalls { | |
| fn from(var: DepositErc20Call) -> Self { | |
| TestCAPECalls::DepositErc20(var) | |
| } | |
| } | |
| impl ::std::convert::From<DeriveRecordCommitmentCall> for TestCAPECalls { | |
| fn from(var: DeriveRecordCommitmentCall) -> Self { | |
| TestCAPECalls::DeriveRecordCommitment(var) | |
| } | |
| } | |
| impl ::std::convert::From<FaucetInitializedCall> for TestCAPECalls { | |
| fn from(var: FaucetInitializedCall) -> Self { | |
| TestCAPECalls::FaucetInitialized(var) | |
| } | |
| } | |
| impl ::std::convert::From<FaucetSetupForTestnetCall> for TestCAPECalls { | |
| fn from(var: FaucetSetupForTestnetCall) -> Self { | |
| TestCAPECalls::FaucetSetupForTestnet(var) | |
| } | |
| } | |
| impl ::std::convert::From<FillUpPendingDepositsQueueCall> for TestCAPECalls { | |
| fn from(var: FillUpPendingDepositsQueueCall) -> Self { | |
| TestCAPECalls::FillUpPendingDepositsQueue(var) | |
| } | |
| } | |
| impl ::std::convert::From<GetNumLeavesCall> for TestCAPECalls { | |
| fn from(var: GetNumLeavesCall) -> Self { | |
| TestCAPECalls::GetNumLeaves(var) | |
| } | |
| } | |
| impl ::std::convert::From<GetRootValueCall> for TestCAPECalls { | |
| fn from(var: GetRootValueCall) -> Self { | |
| TestCAPECalls::GetRootValue(var) | |
| } | |
| } | |
| impl ::std::convert::From<IsCapeAssetRegisteredCall> for TestCAPECalls { | |
| fn from(var: IsCapeAssetRegisteredCall) -> Self { | |
| TestCAPECalls::IsCapeAssetRegistered(var) | |
| } | |
| } | |
| impl ::std::convert::From<LookupCall> for TestCAPECalls { | |
| fn from(var: LookupCall) -> Self { | |
| TestCAPECalls::Lookup(var) | |
| } | |
| } | |
| impl ::std::convert::From<NativeDomesticAssetCall> for TestCAPECalls { | |
| fn from(var: NativeDomesticAssetCall) -> Self { | |
| TestCAPECalls::NativeDomesticAsset(var) | |
| } | |
| } | |
| impl ::std::convert::From<NullifiersCall> for TestCAPECalls { | |
| fn from(var: NullifiersCall) -> Self { | |
| TestCAPECalls::Nullifiers(var) | |
| } | |
| } | |
| impl ::std::convert::From<PendingDepositsCall> for TestCAPECalls { | |
| fn from(var: PendingDepositsCall) -> Self { | |
| TestCAPECalls::PendingDeposits(var) | |
| } | |
| } | |
| impl ::std::convert::From<PendingDepositsLengthCall> for TestCAPECalls { | |
| fn from(var: PendingDepositsLengthCall) -> Self { | |
| TestCAPECalls::PendingDepositsLength(var) | |
| } | |
| } | |
| impl ::std::convert::From<PublishCall> for TestCAPECalls { | |
| fn from(var: PublishCall) -> Self { | |
| TestCAPECalls::Publish(var) | |
| } | |
| } | |
| impl ::std::convert::From<SetHeightCall> for TestCAPECalls { | |
| fn from(var: SetHeightCall) -> Self { | |
| TestCAPECalls::SetHeight(var) | |
| } | |
| } | |
| impl ::std::convert::From<SetInitialRecordCommitmentsCall> for TestCAPECalls { | |
| fn from(var: SetInitialRecordCommitmentsCall) -> Self { | |
| TestCAPECalls::SetInitialRecordCommitments(var) | |
| } | |
| } | |
| impl ::std::convert::From<SponsorCapeAssetCall> for TestCAPECalls { | |
| fn from(var: SponsorCapeAssetCall) -> Self { | |
| TestCAPECalls::SponsorCapeAsset(var) | |
| } | |
| } | |
| impl ::std::convert::From<SubmitCapeBlockCall> for TestCAPECalls { | |
| fn from(var: SubmitCapeBlockCall) -> Self { | |
| TestCAPECalls::SubmitCapeBlock(var) | |
| } | |
| } | |
| impl ::std::convert::From<SubmitCapeBlockWithMemosCall> for TestCAPECalls { | |
| fn from(var: SubmitCapeBlockWithMemosCall) -> Self { | |
| TestCAPECalls::SubmitCapeBlockWithMemos(var) | |
| } | |
| } | |
| } | |
| pub use testcapetypes_mod::*; | |
| #[allow(clippy::too_many_arguments, non_camel_case_types)] | |
| pub mod testcapetypes_mod { | |
| #![allow(clippy::enum_variant_names)] | |
| #![allow(dead_code)] | |
| #![allow(clippy::type_complexity)] | |
| #![allow(unused_imports)] | |
| pub use super::__shared_types::*; | |
| use ethers::contract::{ | |
| builders::{ContractCall, Event}, | |
| Contract, Lazy, | |
| }; | |
| use ethers::core::{ | |
| abi::{Abi, Detokenize, InvalidOutputType, Token, Tokenizable}, | |
| types::*, | |
| }; | |
| use ethers::providers::Middleware; | |
| #[doc = "TestCapeTypes was auto-generated with ethers-rs Abigen. More information at: https://github.com/gakonst/ethers-rs"] | |
| use std::sync::Arc; | |
| pub static TESTCAPETYPES_ABI: ethers::contract::Lazy<ethers::core::abi::Abi> = | |
| ethers::contract::Lazy::new(|| { | |
| serde_json :: from_str ("[{\"inputs\":[{\"internalType\":\"struct AssetRegistry.AssetDefinition\",\"name\":\"def\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"code\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"struct AssetRegistry.AssetPolicy\",\"name\":\"policy\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"auditorPk\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"credPk\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"freezerPk\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"uint256\",\"name\":\"revealMap\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint128\",\"name\":\"revealThreshold\",\"type\":\"uint128\",\"components\":[]}]}]}],\"stateMutability\":\"pure\",\"type\":\"function\",\"name\":\"checkAssetDefinition\",\"outputs\":[{\"internalType\":\"struct AssetRegistry.AssetDefinition\",\"name\":\"\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"code\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"struct AssetRegistry.AssetPolicy\",\"name\":\"policy\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"auditorPk\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"credPk\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"freezerPk\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"uint256\",\"name\":\"revealMap\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint128\",\"name\":\"revealThreshold\",\"type\":\"uint128\",\"components\":[]}]}]}]},{\"inputs\":[{\"internalType\":\"struct AssetRegistry.AssetPolicy\",\"name\":\"policy\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"auditorPk\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"credPk\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"freezerPk\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"uint256\",\"name\":\"revealMap\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint128\",\"name\":\"revealThreshold\",\"type\":\"uint128\",\"components\":[]}]}],\"stateMutability\":\"pure\",\"type\":\"function\",\"name\":\"checkAssetPolicy\",\"outputs\":[{\"internalType\":\"struct AssetRegistry.AssetPolicy\",\"name\":\"\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"auditorPk\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"credPk\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"freezerPk\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"uint256\",\"name\":\"revealMap\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint128\",\"name\":\"revealThreshold\",\"type\":\"uint128\",\"components\":[]}]}]},{\"inputs\":[{\"internalType\":\"struct CAPE.AuditMemo\",\"name\":\"memo\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"ephemeralKey\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"uint256[]\",\"name\":\"data\",\"type\":\"uint256[]\",\"components\":[]}]}],\"stateMutability\":\"pure\",\"type\":\"function\",\"name\":\"checkAuditMemo\",\"outputs\":[{\"internalType\":\"struct CAPE.AuditMemo\",\"name\":\"\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"ephemeralKey\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"uint256[]\",\"name\":\"data\",\"type\":\"uint256[]\",\"components\":[]}]}]},{\"inputs\":[{\"internalType\":\"struct CAPE.BurnNote\",\"name\":\"note\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"struct CAPE.TransferNote\",\"name\":\"transferNote\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256[]\",\"name\":\"inputNullifiers\",\"type\":\"uint256[]\",\"components\":[]},{\"internalType\":\"uint256[]\",\"name\":\"outputCommitments\",\"type\":\"uint256[]\",\"components\":[]},{\"internalType\":\"struct IPlonkVerifier.PlonkProof\",\"name\":\"proof\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire0\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire1\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire2\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire3\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire4\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"prodPerm\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split0\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split1\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split2\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split3\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split4\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"zeta\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"zetaOmega\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"uint256\",\"name\":\"wireEval0\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval1\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval2\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval3\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval4\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval0\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval1\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval2\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval3\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"prodPermZetaOmegaEval\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct CAPE.AuditMemo\",\"name\":\"auditMemo\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"ephemeralKey\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"uint256[]\",\"name\":\"data\",\"type\":\"uint256[]\",\"components\":[]}]},{\"internalType\":\"struct CAPE.TransferAuxInfo\",\"name\":\"auxInfo\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"merkleRoot\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint128\",\"name\":\"fee\",\"type\":\"uint128\",\"components\":[]},{\"internalType\":\"uint64\",\"name\":\"validUntil\",\"type\":\"uint64\",\"components\":[]},{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"txnMemoVerKey\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"bytes\",\"name\":\"extraProofBoundData\",\"type\":\"bytes\",\"components\":[]}]}]},{\"internalType\":\"struct CAPE.RecordOpening\",\"name\":\"recordOpening\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint128\",\"name\":\"amount\",\"type\":\"uint128\",\"components\":[]},{\"internalType\":\"struct AssetRegistry.AssetDefinition\",\"name\":\"assetDef\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"code\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"struct AssetRegistry.AssetPolicy\",\"name\":\"policy\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"auditorPk\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"credPk\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"freezerPk\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"uint256\",\"name\":\"revealMap\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint128\",\"name\":\"revealThreshold\",\"type\":\"uint128\",\"components\":[]}]}]},{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"userAddr\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"bytes32\",\"name\":\"encKey\",\"type\":\"bytes32\",\"components\":[]},{\"internalType\":\"bool\",\"name\":\"freezeFlag\",\"type\":\"bool\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"blind\",\"type\":\"uint256\",\"components\":[]}]}]}],\"stateMutability\":\"pure\",\"type\":\"function\",\"name\":\"checkBurnNote\",\"outputs\":[{\"internalType\":\"struct CAPE.BurnNote\",\"name\":\"\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"struct CAPE.TransferNote\",\"name\":\"transferNote\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256[]\",\"name\":\"inputNullifiers\",\"type\":\"uint256[]\",\"components\":[]},{\"internalType\":\"uint256[]\",\"name\":\"outputCommitments\",\"type\":\"uint256[]\",\"components\":[]},{\"internalType\":\"struct IPlonkVerifier.PlonkProof\",\"name\":\"proof\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire0\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire1\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire2\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire3\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire4\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"prodPerm\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split0\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split1\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split2\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split3\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split4\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"zeta\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"zetaOmega\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"uint256\",\"name\":\"wireEval0\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval1\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval2\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval3\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval4\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval0\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval1\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval2\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval3\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"prodPermZetaOmegaEval\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct CAPE.AuditMemo\",\"name\":\"auditMemo\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"ephemeralKey\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"uint256[]\",\"name\":\"data\",\"type\":\"uint256[]\",\"components\":[]}]},{\"internalType\":\"struct CAPE.TransferAuxInfo\",\"name\":\"auxInfo\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"merkleRoot\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint128\",\"name\":\"fee\",\"type\":\"uint128\",\"components\":[]},{\"internalType\":\"uint64\",\"name\":\"validUntil\",\"type\":\"uint64\",\"components\":[]},{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"txnMemoVerKey\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"bytes\",\"name\":\"extraProofBoundData\",\"type\":\"bytes\",\"components\":[]}]}]},{\"internalType\":\"struct CAPE.RecordOpening\",\"name\":\"recordOpening\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint128\",\"name\":\"amount\",\"type\":\"uint128\",\"components\":[]},{\"internalType\":\"struct AssetRegistry.AssetDefinition\",\"name\":\"assetDef\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"code\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"struct AssetRegistry.AssetPolicy\",\"name\":\"policy\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"auditorPk\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"credPk\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"freezerPk\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"uint256\",\"name\":\"revealMap\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint128\",\"name\":\"revealThreshold\",\"type\":\"uint128\",\"components\":[]}]}]},{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"userAddr\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"bytes32\",\"name\":\"encKey\",\"type\":\"bytes32\",\"components\":[]},{\"internalType\":\"bool\",\"name\":\"freezeFlag\",\"type\":\"bool\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"blind\",\"type\":\"uint256\",\"components\":[]}]}]}]},{\"inputs\":[{\"internalType\":\"struct CAPE.CapeBlock\",\"name\":\"b\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"minerAddr\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"enum CAPE.NoteType[]\",\"name\":\"noteTypes\",\"type\":\"uint8[]\",\"components\":[]},{\"internalType\":\"struct CAPE.TransferNote[]\",\"name\":\"transferNotes\",\"type\":\"tuple[]\",\"components\":[{\"internalType\":\"uint256[]\",\"name\":\"inputNullifiers\",\"type\":\"uint256[]\",\"components\":[]},{\"internalType\":\"uint256[]\",\"name\":\"outputCommitments\",\"type\":\"uint256[]\",\"components\":[]},{\"internalType\":\"struct IPlonkVerifier.PlonkProof\",\"name\":\"proof\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire0\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire1\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire2\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire3\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire4\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"prodPerm\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split0\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split1\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split2\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split3\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split4\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"zeta\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"zetaOmega\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"uint256\",\"name\":\"wireEval0\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval1\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval2\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval3\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval4\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval0\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval1\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval2\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval3\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"prodPermZetaOmegaEval\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct CAPE.AuditMemo\",\"name\":\"auditMemo\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"ephemeralKey\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"uint256[]\",\"name\":\"data\",\"type\":\"uint256[]\",\"components\":[]}]},{\"internalType\":\"struct CAPE.TransferAuxInfo\",\"name\":\"auxInfo\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"merkleRoot\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint128\",\"name\":\"fee\",\"type\":\"uint128\",\"components\":[]},{\"internalType\":\"uint64\",\"name\":\"validUntil\",\"type\":\"uint64\",\"components\":[]},{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"txnMemoVerKey\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"bytes\",\"name\":\"extraProofBoundData\",\"type\":\"bytes\",\"components\":[]}]}]},{\"internalType\":\"struct CAPE.MintNote[]\",\"name\":\"mintNotes\",\"type\":\"tuple[]\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"inputNullifier\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"chgComm\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"mintComm\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint128\",\"name\":\"mintAmount\",\"type\":\"uint128\",\"components\":[]},{\"internalType\":\"struct AssetRegistry.AssetDefinition\",\"name\":\"mintAssetDef\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"code\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"struct AssetRegistry.AssetPolicy\",\"name\":\"policy\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"auditorPk\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"credPk\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"freezerPk\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"uint256\",\"name\":\"revealMap\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint128\",\"name\":\"revealThreshold\",\"type\":\"uint128\",\"components\":[]}]}]},{\"internalType\":\"uint256\",\"name\":\"mintInternalAssetCode\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"struct IPlonkVerifier.PlonkProof\",\"name\":\"proof\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire0\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire1\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire2\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire3\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire4\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"prodPerm\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split0\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split1\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split2\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split3\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split4\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"zeta\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"zetaOmega\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"uint256\",\"name\":\"wireEval0\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval1\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval2\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval3\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval4\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval0\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval1\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval2\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval3\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"prodPermZetaOmegaEval\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct CAPE.AuditMemo\",\"name\":\"auditMemo\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"ephemeralKey\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"uint256[]\",\"name\":\"data\",\"type\":\"uint256[]\",\"components\":[]}]},{\"internalType\":\"struct CAPE.MintAuxInfo\",\"name\":\"auxInfo\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"merkleRoot\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint128\",\"name\":\"fee\",\"type\":\"uint128\",\"components\":[]},{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"txnMemoVerKey\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]}]}]},{\"internalType\":\"struct CAPE.FreezeNote[]\",\"name\":\"freezeNotes\",\"type\":\"tuple[]\",\"components\":[{\"internalType\":\"uint256[]\",\"name\":\"inputNullifiers\",\"type\":\"uint256[]\",\"components\":[]},{\"internalType\":\"uint256[]\",\"name\":\"outputCommitments\",\"type\":\"uint256[]\",\"components\":[]},{\"internalType\":\"struct IPlonkVerifier.PlonkProof\",\"name\":\"proof\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire0\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire1\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire2\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire3\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire4\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"prodPerm\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split0\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split1\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split2\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split3\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split4\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"zeta\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"zetaOmega\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"uint256\",\"name\":\"wireEval0\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval1\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval2\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval3\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval4\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval0\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval1\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval2\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval3\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"prodPermZetaOmegaEval\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct CAPE.FreezeAuxInfo\",\"name\":\"auxInfo\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"merkleRoot\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint128\",\"name\":\"fee\",\"type\":\"uint128\",\"components\":[]},{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"txnMemoVerKey\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]}]}]},{\"internalType\":\"struct CAPE.BurnNote[]\",\"name\":\"burnNotes\",\"type\":\"tuple[]\",\"components\":[{\"internalType\":\"struct CAPE.TransferNote\",\"name\":\"transferNote\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256[]\",\"name\":\"inputNullifiers\",\"type\":\"uint256[]\",\"components\":[]},{\"internalType\":\"uint256[]\",\"name\":\"outputCommitments\",\"type\":\"uint256[]\",\"components\":[]},{\"internalType\":\"struct IPlonkVerifier.PlonkProof\",\"name\":\"proof\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire0\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire1\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire2\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire3\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire4\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"prodPerm\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split0\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split1\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split2\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split3\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split4\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"zeta\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"zetaOmega\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"uint256\",\"name\":\"wireEval0\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval1\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval2\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval3\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval4\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval0\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval1\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval2\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval3\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"prodPermZetaOmegaEval\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct CAPE.AuditMemo\",\"name\":\"auditMemo\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"ephemeralKey\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"uint256[]\",\"name\":\"data\",\"type\":\"uint256[]\",\"components\":[]}]},{\"internalType\":\"struct CAPE.TransferAuxInfo\",\"name\":\"auxInfo\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"merkleRoot\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint128\",\"name\":\"fee\",\"type\":\"uint128\",\"components\":[]},{\"internalType\":\"uint64\",\"name\":\"validUntil\",\"type\":\"uint64\",\"components\":[]},{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"txnMemoVerKey\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"bytes\",\"name\":\"extraProofBoundData\",\"type\":\"bytes\",\"components\":[]}]}]},{\"internalType\":\"struct CAPE.RecordOpening\",\"name\":\"recordOpening\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint128\",\"name\":\"amount\",\"type\":\"uint128\",\"components\":[]},{\"internalType\":\"struct AssetRegistry.AssetDefinition\",\"name\":\"assetDef\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"code\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"struct AssetRegistry.AssetPolicy\",\"name\":\"policy\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"auditorPk\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"credPk\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"freezerPk\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"uint256\",\"name\":\"revealMap\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint128\",\"name\":\"revealThreshold\",\"type\":\"uint128\",\"components\":[]}]}]},{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"userAddr\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"bytes32\",\"name\":\"encKey\",\"type\":\"bytes32\",\"components\":[]},{\"internalType\":\"bool\",\"name\":\"freezeFlag\",\"type\":\"bool\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"blind\",\"type\":\"uint256\",\"components\":[]}]}]}]}],\"stateMutability\":\"pure\",\"type\":\"function\",\"name\":\"checkCapeBlock\",\"outputs\":[{\"internalType\":\"struct CAPE.CapeBlock\",\"name\":\"\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"minerAddr\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"enum CAPE.NoteType[]\",\"name\":\"noteTypes\",\"type\":\"uint8[]\",\"components\":[]},{\"internalType\":\"struct CAPE.TransferNote[]\",\"name\":\"transferNotes\",\"type\":\"tuple[]\",\"components\":[{\"internalType\":\"uint256[]\",\"name\":\"inputNullifiers\",\"type\":\"uint256[]\",\"components\":[]},{\"internalType\":\"uint256[]\",\"name\":\"outputCommitments\",\"type\":\"uint256[]\",\"components\":[]},{\"internalType\":\"struct IPlonkVerifier.PlonkProof\",\"name\":\"proof\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire0\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire1\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire2\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire3\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire4\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"prodPerm\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split0\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split1\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split2\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split3\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split4\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"zeta\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"zetaOmega\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"uint256\",\"name\":\"wireEval0\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval1\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval2\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval3\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"wireEval4\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval0\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval1\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval2\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"sigmaEval3\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"prodPermZetaOmegaEval\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct CAPE.AuditMemo\",\"name\":\"auditMemo\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"ephemeralKey\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"uint256[]\",\"name\":\"data\",\"type\":\"uint256[]\",\"components\":[]}]},{\"internalType\":\"struct CAPE.TransferAuxInfo\",\"name\":\"auxInfo\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"merkleRoot\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint128\",\"name\":\"fee\",\"type\":\"uint128\",\"components\":[]},{\"internalType\":\"uint64\",\"name\":\"validUntil\",\"type\":\"uint64\",\"components\":[]},{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"txnMemoVerKey\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"bytes\",\"name\":\"extraProofBoundData\",\"type\":\"bytes\",\"components\":[]}]}]},{\"internalType\":\"struct CAPE.MintNote[]\",\"name\":\"mintNotes\",\"type\":\"tuple[]\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"inputNullifier\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"chgComm\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"mintComm\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint128\",\"name\":\"mintAmount\",\"type\":\"uint128\",\"components\":[]},{\"internalType\":\"struct AssetRegistry.AssetDefinition\",\"name\":\"mintAssetDef\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"code\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"struct AssetRegistry.AssetPolicy\",\"name\":\"policy\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"auditorPk\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"credPk\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct EdOnBN254.EdOnBN254Point\",\"name\":\"freezerPk\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"uint256\",\"name\":\"revealMap\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint128\",\"name\":\"revealThreshold\",\"type\":\"uint128\",\"components\":[]}]}]},{\"internalType\":\"uint256\",\"name\":\"mintInternalAssetCode\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"struct IPlonkVerifier.PlonkProof\",\"name\":\"proof\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire0\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire1\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire2\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire3\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"wire4\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"prodPerm\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split0\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split1\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split2\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\",\"name\":\"split3\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\",\"components\":[]}]},{\"internalType\":\"struct BN254.G1Point\" |
View raw
(Sorry about that, but we can’t show files that are this big right now.)
View raw
(Sorry about that, but we can’t show files that are this big right now.)
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment