'use strict'; const ethers = require('ethers'); const lspSmartContracts = require('@lukso/lsp-smart-contracts'); const ERC725 = require('@erc725/erc725.js'); const fetch = require('isomorphic-fetch'); const LSP3ProfileMetadataSchema = require('@erc725/erc725.js/schemas/LSP3ProfileMetadata.json'); const LSP4DigitalAssetSchema = require('@erc725/erc725.js/schemas/LSP4DigitalAsset.json'); const assert = require('assert'); function _interopDefaultCompat (e) { return e && typeof e === 'object' && 'default' in e ? e.default : e; } const ERC725__default = /*#__PURE__*/_interopDefaultCompat(ERC725); const fetch__default = /*#__PURE__*/_interopDefaultCompat(fetch); const LSP3ProfileMetadataSchema__default = /*#__PURE__*/_interopDefaultCompat(LSP3ProfileMetadataSchema); const LSP4DigitalAssetSchema__default = /*#__PURE__*/_interopDefaultCompat(LSP4DigitalAssetSchema); const assert__default = /*#__PURE__*/_interopDefaultCompat(assert); const defaultLSP3ProfileMetadata = { LSP3Profile: { name: "", description: "", links: [], avatar: [], profileImage: [], backgroundImage: [], tags: [] } }; const defaultIpfsGateway = "https://api.universalprofile.cloud/ipfs/"; const LSP23LinkedContractsFactoryAddress = "0x2300000A84D25dF63081feAa37ba6b62C4c89a30"; const upPostDeploymentModuleAddress = "0x000000000066093407b6704B89793beFfD0D8F00"; const UniversalProfileInitAddress = "0x3024D38EA2434BA6635003Dc1BDC0daB5882ED4F"; const LSP6KeyManagerInitAddress = " 0x2Fe3AeD98684E7351aD2D408A43cE09a738BF8a4"; const LSP7MintableInitAddress = "0x28B7CcdaD1E15cCbDf380c439Cc1F2EBe7f5B2d8"; const LSP8MintableInitAddress = "0xd787a2f6B14d4dcC2fb897f40b87f2Ff63a07997"; const LSP1UniversalReceiverDelegateUPAddress = "0x7870C5B8BC9572A8001C3f96f7ff59961B23500D"; var __defProp$2C = Object.defineProperty; var __defNormalProp$2C = (obj, key, value) => key in obj ? __defProp$2C(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$2C = (obj, key, value) => { __defNormalProp$2C(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$2C = [ { inputs: [ { internalType: "address", name: "initialOwner", type: "address" } ], stateMutability: "payable", type: "constructor" }, { inputs: [], name: "ERC725X_ContractDeploymentFailed", type: "error" }, { inputs: [], name: "ERC725X_CreateOperationsRequireEmptyRecipientAddress", type: "error" }, { inputs: [], name: "ERC725X_ExecuteParametersEmptyArray", type: "error" }, { inputs: [], name: "ERC725X_ExecuteParametersLengthMismatch", type: "error" }, { inputs: [ { internalType: "uint256", name: "balance", type: "uint256" }, { internalType: "uint256", name: "value", type: "uint256" } ], name: "ERC725X_InsufficientBalance", type: "error" }, { inputs: [], name: "ERC725X_MsgValueDisallowedInDelegateCall", type: "error" }, { inputs: [], name: "ERC725X_MsgValueDisallowedInStaticCall", type: "error" }, { inputs: [], name: "ERC725X_NoContractBytecodeProvided", type: "error" }, { inputs: [ { internalType: "uint256", name: "operationTypeProvided", type: "uint256" } ], name: "ERC725X_UnknownOperationType", type: "error" }, { inputs: [], name: "ERC725Y_DataKeysValuesEmptyArray", type: "error" }, { inputs: [], name: "ERC725Y_DataKeysValuesLengthMismatch", type: "error" }, { inputs: [], name: "ERC725Y_MsgValueDisallowed", type: "error" }, { inputs: [ { internalType: "address", name: "callerAddress", type: "address" } ], name: "OwnableCallerNotTheOwner", type: "error" }, { inputs: [], name: "OwnableCannotSetZeroAddressAsOwner", type: "error" }, { anonymous: false, inputs: [ { indexed: true, internalType: "uint256", name: "operationType", type: "uint256" }, { indexed: true, internalType: "address", name: "contractAddress", type: "address" }, { indexed: false, internalType: "uint256", name: "value", type: "uint256" }, { indexed: true, internalType: "bytes32", name: "salt", type: "bytes32" } ], name: "ContractCreated", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "bytes32", name: "dataKey", type: "bytes32" }, { indexed: false, internalType: "bytes", name: "dataValue", type: "bytes" } ], name: "DataChanged", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "uint256", name: "operationType", type: "uint256" }, { indexed: true, internalType: "address", name: "target", type: "address" }, { indexed: false, internalType: "uint256", name: "value", type: "uint256" }, { indexed: true, internalType: "bytes4", name: "selector", type: "bytes4" } ], name: "Executed", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "previousOwner", type: "address" }, { indexed: true, internalType: "address", name: "newOwner", type: "address" } ], name: "OwnershipTransferred", type: "event" }, { inputs: [ { internalType: "uint256", name: "operationType", type: "uint256" }, { internalType: "address", name: "target", type: "address" }, { internalType: "uint256", name: "value", type: "uint256" }, { internalType: "bytes", name: "data", type: "bytes" } ], name: "execute", outputs: [ { internalType: "bytes", name: "", type: "bytes" } ], stateMutability: "payable", type: "function" }, { inputs: [ { internalType: "uint256[]", name: "operationsType", type: "uint256[]" }, { internalType: "address[]", name: "targets", type: "address[]" }, { internalType: "uint256[]", name: "values", type: "uint256[]" }, { internalType: "bytes[]", name: "datas", type: "bytes[]" } ], name: "executeBatch", outputs: [ { internalType: "bytes[]", name: "", type: "bytes[]" } ], stateMutability: "payable", type: "function" }, { inputs: [ { internalType: "bytes32", name: "dataKey", type: "bytes32" } ], name: "getData", outputs: [ { internalType: "bytes", name: "dataValue", type: "bytes" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "bytes32[]", name: "dataKeys", type: "bytes32[]" } ], name: "getDataBatch", outputs: [ { internalType: "bytes[]", name: "dataValues", type: "bytes[]" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "owner", outputs: [ { internalType: "address", name: "", type: "address" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "renounceOwnership", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "bytes32", name: "dataKey", type: "bytes32" }, { internalType: "bytes", name: "dataValue", type: "bytes" } ], name: "setData", outputs: [], stateMutability: "payable", type: "function" }, { inputs: [ { internalType: "bytes32[]", name: "dataKeys", type: "bytes32[]" }, { internalType: "bytes[]", name: "dataValues", type: "bytes[]" } ], name: "setDataBatch", outputs: [], stateMutability: "payable", type: "function" }, { inputs: [ { internalType: "bytes4", name: "interfaceId", type: "bytes4" } ], name: "supportsInterface", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "newOwner", type: "address" } ], name: "transferOwnership", outputs: [], stateMutability: "nonpayable", type: "function" } ]; const _bytecode$O = "0x608060405260405162002cd338038062002cd3833981810160405281019062000029919062000241565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff160362000090576040517f1ad8836c00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b620000a681620000ad60201b6200061c1760201c565b5062000273565b620000bd620001ae60201b60201c565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614620001ab578073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505b50565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006200020982620001dc565b9050919050565b6200021b81620001fc565b81146200022757600080fd5b50565b6000815190506200023b8162000210565b92915050565b6000602082840312156200025a5762000259620001d7565b5b60006200026a848285016200022a565b91505092915050565b612a5080620002836000396000f3fe6080604052600436106100915760003560e01c80637f23690c116100595780637f23690c146101875780638da5cb5b146101a357806397902421146101ce578063dedff9c6146101ea578063f2fde38b1461022757610091565b806301ffc9a71461009657806331858452146100d357806344c028fe1461010357806354f6127f14610133578063715018a614610170575b600080fd5b3480156100a257600080fd5b506100bd60048036038101906100b89190611720565b610250565b6040516100ca9190611768565b60405180910390f35b6100ed60048036038101906100e89190611bc9565b610300565b6040516100fa9190611de1565b60405180910390f35b61011d60048036038101906101189190611e03565b610320565b60405161012a9190611ed0565b60405180910390f35b34801561013f57600080fd5b5061015a60048036038101906101559190611f28565b610340565b6040516101679190611ed0565b60405180910390f35b34801561017c57600080fd5b50610185610352565b005b6101a1600480360381019061019c9190611f55565b610366565b005b3480156101af57600080fd5b506101b86103b6565b6040516101c59190611fc0565b60405180910390f35b6101e860048036038101906101e3919061209e565b6103df565b005b3480156101f657600080fd5b50610211600480360381019061020c9190612116565b6104f1565b60405161021e9190611de1565b60405180910390f35b34801561023357600080fd5b5061024e6004803603810190610249919061215f565b6105a2565b005b6000637545acac60e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614806102e9575063629aa69460e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916145b806102f957506102f882610714565b5b9050919050565b606061030a610775565b610316858585856107ee565b9050949350505050565b606061032a610775565b6103368585858561098b565b9050949350505050565b606061034b82610b90565b9050919050565b61035a610775565b610364600061061c565b565b61036e610775565b600034146103a8576040517ff36ba73700000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6103b28282610c35565b5050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b6103e7610775565b60003414610421576040517ff36ba73700000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b805182511461045c576040517f3bcc897900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6000825103610497576040517f97da5f9500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60005b82518110156104ec576104e18382815181106104b9576104b861218c565b5b60200260200101518383815181106104d4576104d361218c565b5b6020026020010151610c35565b80600101905061049a565b505050565b6060815167ffffffffffffffff81111561050e5761050d611799565b5b60405190808252806020026020018201604052801561054157816020015b606081526020019060019003908161052c5790505b50905060005b825181101561059c576105738382815181106105665761056561218c565b5b6020026020010151610b90565b8282815181106105865761058561218c565b5b6020026020010181905250806001019050610547565b50919050565b6105aa610775565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603610610576040517f1ad8836c00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6106198161061c565b50565b6106246103b6565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614610711578073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505b50565b600063629aa69460e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916148061076e575061076d82610c92565b5b9050919050565b3373ffffffffffffffffffffffffffffffffffffffff166107946103b6565b73ffffffffffffffffffffffffffffffffffffffff16146107ec57336040517fbf1169c50000000000000000000000000000000000000000000000000000000081526004016107e39190611fc0565b60405180910390fd5b565b60608351855114158061081057508251845114158061080f57508151835114155b5b15610847576040517f3ff55f4d00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6000855103610882576040517fe9ad2b5f00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6000855167ffffffffffffffff81111561089f5761089e611799565b5b6040519080825280602002602001820160405280156108d257816020015b60608152602001906001900390816108bd5790505b50905060005b865181101561097e576109558782815181106108f7576108f661218c565b5b60200260200101518783815181106109125761091161218c565b5b602002602001015187848151811061092d5761092c61218c565b5b60200260200101518785815181106109485761094761218c565b5b602002602001015161098b565b8282815181106109685761096761218c565b5b60200260200101819052508060010190506108d8565b5080915050949350505050565b6060600085036109a7576109a0848484610cf3565b9050610b88565b60018503610a2657600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614610a15576040517f3041824a00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b610a1f8383610e70565b9050610b88565b60028503610aa557600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614610a94576040517f3041824a00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b610a9e8383610fe3565b9050610b88565b60038503610af85760008314610ae7576040517f72f2bc6a00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b610af184836110e3565b9050610b88565b60048503610b4b5760008314610b3a576040517f5ac8313500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b610b448483611216565b9050610b88565b846040517f7583b3bc000000000000000000000000000000000000000000000000000000008152600401610b7f91906121ca565b60405180910390fd5b949350505050565b6060600160008381526020019081526020016000208054610bb090612214565b80601f0160208091040260200160405190810160405280929190818152602001828054610bdc90612214565b8015610c295780601f10610bfe57610100808354040283529160200191610c29565b820191906000526020600020905b815481529060010190602001808311610c0c57829003601f168201915b50505050509050919050565b80600160008481526020019081526020016000209081610c5591906123f1565b50817fece574603820d07bc9b91f2a932baadf4628aabcb8afba49776529c14a6104b282604051610c869190611ed0565b60405180910390a25050565b6000637545acac60e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19161480610cec5750610ceb82611349565b5b9050919050565b606082471015610d3c5747836040517f0df9a8f8000000000000000000000000000000000000000000000000000000008152600401610d339291906124c3565b60405180910390fd5b81610d4690612511565b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19168473ffffffffffffffffffffffffffffffffffffffff1660007f4810874456b8e6487bd861375cf6abd8e1c8bb5858c8ce36a86a04dabfac199e86604051610dad91906121ca565b60405180910390a46000808573ffffffffffffffffffffffffffffffffffffffff168585604051610dde91906125b4565b60006040518083038185875af1925050503d8060008114610e1b576040519150601f19603f3d011682016040523d82523d6000602084013e610e20565b606091505b5091509150610e6582826040518060400160405280601681526020017f455243373235583a20556e6b6e6f776e204572726f72000000000000000000008152506113b3565b925050509392505050565b606082471015610eb95747836040517f0df9a8f8000000000000000000000000000000000000000000000000000000008152600401610eb09291906124c3565b60405180910390fd5b6000825103610ef4576040517fb81cd8d900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600082516020840185f09050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603610f66576040517f0b07489b00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6000801b8173ffffffffffffffffffffffffffffffffffffffff1660017fa1fb700aaee2ae4a2ff6f91ce7eba292f89c2f5488b8ec4c5c5c8150692595c387604051610fb291906121ca565b60405180910390a480604051602001610fcb9190612613565b60405160208183030381529060405291505092915050565b60606000825103611020576040517fb81cd8d900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60006110398360208551611034919061265d565b6113d5565b9050600061105684600060208751611051919061265d565b61143c565b9050600061106586848461155a565b9050828173ffffffffffffffffffffffffffffffffffffffff1660027fa1fb700aaee2ae4a2ff6f91ce7eba292f89c2f5488b8ec4c5c5c8150692595c3896040516110b091906121ca565b60405180910390a4806040516020016110c99190612613565b604051602081830303815290604052935050505092915050565b6060816110ef90612511565b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19168373ffffffffffffffffffffffffffffffffffffffff1660037f4810874456b8e6487bd861375cf6abd8e1c8bb5858c8ce36a86a04dabfac199e600060405161115791906126cc565b60405180910390a46000808473ffffffffffffffffffffffffffffffffffffffff168460405161118791906125b4565b600060405180830381855afa9150503d80600081146111c2576040519150601f19603f3d011682016040523d82523d6000602084013e6111c7565b606091505b509150915061120c82826040518060400160405280601681526020017f455243373235583a20556e6b6e6f776e204572726f72000000000000000000008152506113b3565b9250505092915050565b60608161122290612511565b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19168373ffffffffffffffffffffffffffffffffffffffff1660047f4810874456b8e6487bd861375cf6abd8e1c8bb5858c8ce36a86a04dabfac199e600060405161128a91906126cc565b60405180910390a46000808473ffffffffffffffffffffffffffffffffffffffff16846040516112ba91906125b4565b600060405180830381855af49150503d80600081146112f5576040519150601f19603f3d011682016040523d82523d6000602084013e6112fa565b606091505b509150915061133f82826040518060400160405280601681526020017f455243373235583a20556e6b6e6f776e204572726f72000000000000000000008152506113b3565b9250505092915050565b60007f01ffc9a7000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916149050919050565b606083156113c3578290506113ce565b6113cd8383611664565b5b9392505050565b60006020826113e491906126e7565b83511015611427576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161141e90612778565b60405180910390fd5b60008260208501015190508091505092915050565b606081601f8361144c91906126e7565b101561148d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611484906127e4565b60405180910390fd5b818361149991906126e7565b845110156114dc576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016114d390612850565b60405180910390fd5b60608215600081146114fd576040519150600082526020820160405261154e565b6040519150601f8416801560200281840101858101878315602002848b0101015b8183101561153b578051835260208301925060208101905061151e565b50868552601f19601f8301166040525050505b50809150509392505050565b60008347101561159f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611596906128bc565b60405180910390fd5b60008251036115e3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016115da90612928565b60405180910390fd5b8282516020840186f59050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff160361165d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161165490612994565b60405180910390fd5b9392505050565b6000825111156116775781518083602001fd5b806040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116ab91906129f8565b60405180910390fd5b6000604051905090565b600080fd5b600080fd5b60007fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b6116fd816116c8565b811461170857600080fd5b50565b60008135905061171a816116f4565b92915050565b600060208284031215611736576117356116be565b5b60006117448482850161170b565b91505092915050565b60008115159050919050565b6117628161174d565b82525050565b600060208201905061177d6000830184611759565b92915050565b600080fd5b6000601f19601f8301169050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6117d182611788565b810181811067ffffffffffffffff821117156117f0576117ef611799565b5b80604052505050565b60006118036116b4565b905061180f82826117c8565b919050565b600067ffffffffffffffff82111561182f5761182e611799565b5b602082029050602081019050919050565b600080fd5b6000819050919050565b61185881611845565b811461186357600080fd5b50565b6000813590506118758161184f565b92915050565b600061188e61188984611814565b6117f9565b905080838252602082019050602084028301858111156118b1576118b0611840565b5b835b818110156118da57806118c68882611866565b8452602084019350506020810190506118b3565b5050509392505050565b600082601f8301126118f9576118f8611783565b5b813561190984826020860161187b565b91505092915050565b600067ffffffffffffffff82111561192d5761192c611799565b5b602082029050602081019050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006119698261193e565b9050919050565b6119798161195e565b811461198457600080fd5b50565b60008135905061199681611970565b92915050565b60006119af6119aa84611912565b6117f9565b905080838252602082019050602084028301858111156119d2576119d1611840565b5b835b818110156119fb57806119e78882611987565b8452602084019350506020810190506119d4565b5050509392505050565b600082601f830112611a1a57611a19611783565b5b8135611a2a84826020860161199c565b91505092915050565b600067ffffffffffffffff821115611a4e57611a4d611799565b5b602082029050602081019050919050565b600080fd5b600067ffffffffffffffff821115611a7f57611a7e611799565b5b611a8882611788565b9050602081019050919050565b82818337600083830152505050565b6000611ab7611ab284611a64565b6117f9565b905082815260208101848484011115611ad357611ad2611a5f565b5b611ade848285611a95565b509392505050565b600082601f830112611afb57611afa611783565b5b8135611b0b848260208601611aa4565b91505092915050565b6000611b27611b2284611a33565b6117f9565b90508083825260208201905060208402830185811115611b4a57611b49611840565b5b835b81811015611b9157803567ffffffffffffffff811115611b6f57611b6e611783565b5b808601611b7c8982611ae6565b85526020850194505050602081019050611b4c565b5050509392505050565b600082601f830112611bb057611baf611783565b5b8135611bc0848260208601611b14565b91505092915050565b60008060008060808587031215611be357611be26116be565b5b600085013567ffffffffffffffff811115611c0157611c006116c3565b5b611c0d878288016118e4565b945050602085013567ffffffffffffffff811115611c2e57611c2d6116c3565b5b611c3a87828801611a05565b935050604085013567ffffffffffffffff811115611c5b57611c5a6116c3565b5b611c67878288016118e4565b925050606085013567ffffffffffffffff811115611c8857611c876116c3565b5b611c9487828801611b9b565b91505092959194509250565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b600081519050919050565b600082825260208201905092915050565b60005b83811015611d06578082015181840152602081019050611ceb565b60008484015250505050565b6000611d1d82611ccc565b611d278185611cd7565b9350611d37818560208601611ce8565b611d4081611788565b840191505092915050565b6000611d578383611d12565b905092915050565b6000602082019050919050565b6000611d7782611ca0565b611d818185611cab565b935083602082028501611d9385611cbc565b8060005b85811015611dcf5784840389528151611db08582611d4b565b9450611dbb83611d5f565b925060208a01995050600181019050611d97565b50829750879550505050505092915050565b60006020820190508181036000830152611dfb8184611d6c565b905092915050565b60008060008060808587031215611e1d57611e1c6116be565b5b6000611e2b87828801611866565b9450506020611e3c87828801611987565b9350506040611e4d87828801611866565b925050606085013567ffffffffffffffff811115611e6e57611e6d6116c3565b5b611e7a87828801611ae6565b91505092959194509250565b600082825260208201905092915050565b6000611ea282611ccc565b611eac8185611e86565b9350611ebc818560208601611ce8565b611ec581611788565b840191505092915050565b60006020820190508181036000830152611eea8184611e97565b905092915050565b6000819050919050565b611f0581611ef2565b8114611f1057600080fd5b50565b600081359050611f2281611efc565b92915050565b600060208284031215611f3e57611f3d6116be565b5b6000611f4c84828501611f13565b91505092915050565b60008060408385031215611f6c57611f6b6116be565b5b6000611f7a85828601611f13565b925050602083013567ffffffffffffffff811115611f9b57611f9a6116c3565b5b611fa785828601611ae6565b9150509250929050565b611fba8161195e565b82525050565b6000602082019050611fd56000830184611fb1565b92915050565b600067ffffffffffffffff821115611ff657611ff5611799565b5b602082029050602081019050919050565b600061201a61201584611fdb565b6117f9565b9050808382526020820190506020840283018581111561203d5761203c611840565b5b835b8181101561206657806120528882611f13565b84526020840193505060208101905061203f565b5050509392505050565b600082601f83011261208557612084611783565b5b8135612095848260208601612007565b91505092915050565b600080604083850312156120b5576120b46116be565b5b600083013567ffffffffffffffff8111156120d3576120d26116c3565b5b6120df85828601612070565b925050602083013567ffffffffffffffff811115612100576120ff6116c3565b5b61210c85828601611b9b565b9150509250929050565b60006020828403121561212c5761212b6116be565b5b600082013567ffffffffffffffff81111561214a576121496116c3565b5b61215684828501612070565b91505092915050565b600060208284031215612175576121746116be565b5b600061218384828501611987565b91505092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6121c481611845565b82525050565b60006020820190506121df60008301846121bb565b92915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b6000600282049050600182168061222c57607f821691505b60208210810361223f5761223e6121e5565b5b50919050565b60008190508160005260206000209050919050565b60006020601f8301049050919050565b600082821b905092915050565b6000600883026122a77fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8261226a565b6122b1868361226a565b95508019841693508086168417925050509392505050565b6000819050919050565b60006122ee6122e96122e484611845565b6122c9565b611845565b9050919050565b6000819050919050565b612308836122d3565b61231c612314826122f5565b848454612277565b825550505050565b600090565b612331612324565b61233c8184846122ff565b505050565b5b8181101561236057612355600082612329565b600181019050612342565b5050565b601f8211156123a55761237681612245565b61237f8461225a565b8101602085101561238e578190505b6123a261239a8561225a565b830182612341565b50505b505050565b600082821c905092915050565b60006123c8600019846008026123aa565b1980831691505092915050565b60006123e183836123b7565b9150826002028217905092915050565b6123fa82611ccc565b67ffffffffffffffff81111561241357612412611799565b5b61241d8254612214565b612428828285612364565b600060209050601f83116001811461245b5760008415612449578287015190505b61245385826123d5565b8655506124bb565b601f19841661246986612245565b60005b828110156124915784890151825560018201915060208501945060208101905061246c565b868310156124ae57848901516124aa601f8916826123b7565b8355505b6001600288020188555050505b505050505050565b60006040820190506124d860008301856121bb565b6124e560208301846121bb565b9392505050565b6000819050602082019050919050565b600061250882516116c8565b80915050919050565b600061251c82611ccc565b82612526846124ec565b9050612531816124fc565b925060048210156125715761256c7fffffffff000000000000000000000000000000000000000000000000000000008360040360080261226a565b831692505b5050919050565b600081905092915050565b600061258e82611ccc565b6125988185612578565b93506125a8818560208601611ce8565b80840191505092915050565b60006125c08284612583565b915081905092915050565b60008160601b9050919050565b60006125e3826125cb565b9050919050565b60006125f5826125d8565b9050919050565b61260d6126088261195e565b6125ea565b82525050565b600061261f82846125fc565b60148201915081905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600061266882611845565b915061267383611845565b925082820390508181111561268b5761268a61262e565b5b92915050565b6000819050919050565b60006126b66126b16126ac84612691565b6122c9565b611845565b9050919050565b6126c68161269b565b82525050565b60006020820190506126e160008301846126bd565b92915050565b60006126f282611845565b91506126fd83611845565b92508282019050808211156127155761271461262e565b5b92915050565b600082825260208201905092915050565b7f746f427974657333325f6f75744f66426f756e64730000000000000000000000600082015250565b600061276260158361271b565b915061276d8261272c565b602082019050919050565b6000602082019050818103600083015261279181612755565b9050919050565b7f736c6963655f6f766572666c6f77000000000000000000000000000000000000600082015250565b60006127ce600e8361271b565b91506127d982612798565b602082019050919050565b600060208201905081810360008301526127fd816127c1565b9050919050565b7f736c6963655f6f75744f66426f756e6473000000000000000000000000000000600082015250565b600061283a60118361271b565b915061284582612804565b602082019050919050565b600060208201905081810360008301526128698161282d565b9050919050565b7f437265617465323a20696e73756666696369656e742062616c616e6365000000600082015250565b60006128a6601d8361271b565b91506128b182612870565b602082019050919050565b600060208201905081810360008301526128d581612899565b9050919050565b7f437265617465323a2062797465636f6465206c656e677468206973207a65726f600082015250565b600061291260208361271b565b915061291d826128dc565b602082019050919050565b6000602082019050818103600083015261294181612905565b9050919050565b7f437265617465323a204661696c6564206f6e206465706c6f7900000000000000600082015250565b600061297e60198361271b565b915061298982612948565b602082019050919050565b600060208201905081810360008301526129ad81612971565b9050919050565b600081519050919050565b60006129ca826129b4565b6129d4818561271b565b93506129e4818560208601611ce8565b6129ed81611788565b840191505092915050565b60006020820190508181036000830152612a1281846129bf565b90509291505056fea2646970667358221220b341bade4be7c2fde7e0dcc05f426bc83c559388f6a967abb1d56a198c57a5e564736f6c63430008110033"; const isSuperArgs$O = (xs) => xs.length > 1; class ERC725__factory extends ethers.ContractFactory { constructor(...args) { if (isSuperArgs$O(args)) { super(...args); } else { super(_abi$2C, _bytecode$O, args[0]); } } getDeployTransaction(initialOwner, overrides) { return super.getDeployTransaction(initialOwner, overrides || {}); } deploy(initialOwner, overrides) { return super.deploy(initialOwner, overrides || {}); } connect(runner) { return super.connect(runner); } static createInterface() { return new ethers.Interface(_abi$2C); } static connect(address, runner) { return new ethers.Contract(address, _abi$2C, runner); } } __publicField$2C(ERC725__factory, "bytecode", _bytecode$O); __publicField$2C(ERC725__factory, "abi", _abi$2C); var __defProp$2B = Object.defineProperty; var __defNormalProp$2B = (obj, key, value) => key in obj ? __defProp$2B(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$2B = (obj, key, value) => { __defNormalProp$2B(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$2B = [ { inputs: [], stateMutability: "nonpayable", type: "constructor" }, { inputs: [], name: "ERC725X_ContractDeploymentFailed", type: "error" }, { inputs: [], name: "ERC725X_CreateOperationsRequireEmptyRecipientAddress", type: "error" }, { inputs: [], name: "ERC725X_ExecuteParametersEmptyArray", type: "error" }, { inputs: [], name: "ERC725X_ExecuteParametersLengthMismatch", type: "error" }, { inputs: [ { internalType: "uint256", name: "balance", type: "uint256" }, { internalType: "uint256", name: "value", type: "uint256" } ], name: "ERC725X_InsufficientBalance", type: "error" }, { inputs: [], name: "ERC725X_MsgValueDisallowedInDelegateCall", type: "error" }, { inputs: [], name: "ERC725X_MsgValueDisallowedInStaticCall", type: "error" }, { inputs: [], name: "ERC725X_NoContractBytecodeProvided", type: "error" }, { inputs: [ { internalType: "uint256", name: "operationTypeProvided", type: "uint256" } ], name: "ERC725X_UnknownOperationType", type: "error" }, { inputs: [], name: "ERC725Y_DataKeysValuesEmptyArray", type: "error" }, { inputs: [], name: "ERC725Y_DataKeysValuesLengthMismatch", type: "error" }, { inputs: [], name: "ERC725Y_MsgValueDisallowed", type: "error" }, { inputs: [ { internalType: "address", name: "callerAddress", type: "address" } ], name: "OwnableCallerNotTheOwner", type: "error" }, { inputs: [], name: "OwnableCannotSetZeroAddressAsOwner", type: "error" }, { anonymous: false, inputs: [ { indexed: true, internalType: "uint256", name: "operationType", type: "uint256" }, { indexed: true, internalType: "address", name: "contractAddress", type: "address" }, { indexed: false, internalType: "uint256", name: "value", type: "uint256" }, { indexed: true, internalType: "bytes32", name: "salt", type: "bytes32" } ], name: "ContractCreated", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "bytes32", name: "dataKey", type: "bytes32" }, { indexed: false, internalType: "bytes", name: "dataValue", type: "bytes" } ], name: "DataChanged", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "uint256", name: "operationType", type: "uint256" }, { indexed: true, internalType: "address", name: "target", type: "address" }, { indexed: false, internalType: "uint256", name: "value", type: "uint256" }, { indexed: true, internalType: "bytes4", name: "selector", type: "bytes4" } ], name: "Executed", type: "event" }, { anonymous: false, inputs: [ { indexed: false, internalType: "uint8", name: "version", type: "uint8" } ], name: "Initialized", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "previousOwner", type: "address" }, { indexed: true, internalType: "address", name: "newOwner", type: "address" } ], name: "OwnershipTransferred", type: "event" }, { inputs: [ { internalType: "uint256", name: "operationType", type: "uint256" }, { internalType: "address", name: "target", type: "address" }, { internalType: "uint256", name: "value", type: "uint256" }, { internalType: "bytes", name: "data", type: "bytes" } ], name: "execute", outputs: [ { internalType: "bytes", name: "", type: "bytes" } ], stateMutability: "payable", type: "function" }, { inputs: [ { internalType: "uint256[]", name: "operationsType", type: "uint256[]" }, { internalType: "address[]", name: "targets", type: "address[]" }, { internalType: "uint256[]", name: "values", type: "uint256[]" }, { internalType: "bytes[]", name: "datas", type: "bytes[]" } ], name: "executeBatch", outputs: [ { internalType: "bytes[]", name: "", type: "bytes[]" } ], stateMutability: "payable", type: "function" }, { inputs: [ { internalType: "bytes32", name: "dataKey", type: "bytes32" } ], name: "getData", outputs: [ { internalType: "bytes", name: "dataValue", type: "bytes" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "bytes32[]", name: "dataKeys", type: "bytes32[]" } ], name: "getDataBatch", outputs: [ { internalType: "bytes[]", name: "dataValues", type: "bytes[]" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "initialOwner", type: "address" } ], name: "initialize", outputs: [], stateMutability: "payable", type: "function" }, { inputs: [], name: "owner", outputs: [ { internalType: "address", name: "", type: "address" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "renounceOwnership", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "bytes32", name: "dataKey", type: "bytes32" }, { internalType: "bytes", name: "dataValue", type: "bytes" } ], name: "setData", outputs: [], stateMutability: "payable", type: "function" }, { inputs: [ { internalType: "bytes32[]", name: "dataKeys", type: "bytes32[]" }, { internalType: "bytes[]", name: "dataValues", type: "bytes[]" } ], name: "setDataBatch", outputs: [], stateMutability: "payable", type: "function" }, { inputs: [ { internalType: "bytes4", name: "interfaceId", type: "bytes4" } ], name: "supportsInterface", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "newOwner", type: "address" } ], name: "transferOwnership", outputs: [], stateMutability: "nonpayable", type: "function" } ]; const _bytecode$N = "0x60806040523480156200001157600080fd5b50620000226200002860201b60201c565b620001d2565b600060019054906101000a900460ff16156200007b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620000729062000175565b60405180910390fd5b60ff801660008054906101000a900460ff1660ff1614620000ec5760ff6000806101000a81548160ff021916908360ff1602179055507f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb384740249860ff604051620000e39190620001b5565b60405180910390a15b565b600082825260208201905092915050565b7f496e697469616c697a61626c653a20636f6e747261637420697320696e69746960008201527f616c697a696e6700000000000000000000000000000000000000000000000000602082015250565b60006200015d602783620000ee565b91506200016a82620000ff565b604082019050919050565b6000602082019050818103600083015262000190816200014e565b9050919050565b600060ff82169050919050565b620001af8162000197565b82525050565b6000602082019050620001cc6000830184620001a4565b92915050565b612e2580620001e26000396000f3fe60806040526004361061009c5760003560e01c80637f23690c116100645780637f23690c146101925780638da5cb5b146101ae57806397902421146101d9578063c4d66de8146101f5578063dedff9c614610211578063f2fde38b1461024e5761009c565b806301ffc9a7146100a157806331858452146100de57806344c028fe1461010e57806354f6127f1461013e578063715018a61461017b575b600080fd5b3480156100ad57600080fd5b506100c860048036038101906100c3919061196e565b610277565b6040516100d591906119b6565b60405180910390f35b6100f860048036038101906100f39190611e17565b610327565b604051610105919061202f565b60405180910390f35b61012860048036038101906101239190612051565b610347565b604051610135919061211e565b60405180910390f35b34801561014a57600080fd5b5061016560048036038101906101609190612176565b610367565b604051610172919061211e565b60405180910390f35b34801561018757600080fd5b50610190610379565b005b6101ac60048036038101906101a791906121a3565b61038d565b005b3480156101ba57600080fd5b506101c36103dd565b6040516101d0919061220e565b60405180910390f35b6101f360048036038101906101ee91906122ec565b610406565b005b61020f600480360381019061020a9190612364565b610518565b005b34801561021d57600080fd5b5061023860048036038101906102339190612391565b610658565b604051610245919061202f565b60405180910390f35b34801561025a57600080fd5b5061027560048036038101906102709190612364565b610709565b005b6000637545acac60e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19161480610310575063629aa69460e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916145b80610320575061031f82610783565b5b9050919050565b60606103316107e4565b61033d8585858561085d565b9050949350505050565b60606103516107e4565b61035d858585856109fa565b9050949350505050565b606061037282610bff565b9050919050565b6103816107e4565b61038b6000610ca4565b565b6103956107e4565b600034146103cf576040517ff36ba73700000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6103d98282610d9f565b5050565b60008060029054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b61040e6107e4565b60003414610448576040517ff36ba73700000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b8051825114610483576040517f3bcc897900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60008251036104be576040517f97da5f9500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60005b8251811015610513576105088382815181106104e0576104df6123da565b5b60200260200101518383815181106104fb576104fa6123da565b5b6020026020010151610d9f565b8060010190506104c1565b505050565b60008060019054906101000a900460ff161590508080156105495750600160008054906101000a900460ff1660ff16105b80610576575061055830610dfc565b1580156105755750600160008054906101000a900460ff1660ff16145b5b6105b5576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016105ac9061248c565b60405180910390fd5b60016000806101000a81548160ff021916908360ff16021790555080156105f2576001600060016101000a81548160ff0219169083151502179055505b6105fb82610e1f565b80156106545760008060016101000a81548160ff0219169083151502179055507f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498600160405161064b91906124fe565b60405180910390a15b5050565b6060815167ffffffffffffffff811115610675576106746119e7565b5b6040519080825280602002602001820160405280156106a857816020015b60608152602001906001900390816106935790505b50905060005b8251811015610703576106da8382815181106106cd576106cc6123da565b5b6020026020010151610bff565b8282815181106106ed576106ec6123da565b5b60200260200101819052508060010190506106ae565b50919050565b6107116107e4565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603610777576040517f1ad8836c00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b61078081610ca4565b50565b600063629aa69460e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614806107dd57506107dc82610ee0565b5b9050919050565b3373ffffffffffffffffffffffffffffffffffffffff166108036103dd565b73ffffffffffffffffffffffffffffffffffffffff161461085b57336040517fbf1169c5000000000000000000000000000000000000000000000000000000008152600401610852919061220e565b60405180910390fd5b565b60608351855114158061087f57508251845114158061087e57508151835114155b5b156108b6576040517f3ff55f4d00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60008551036108f1576040517fe9ad2b5f00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6000855167ffffffffffffffff81111561090e5761090d6119e7565b5b60405190808252806020026020018201604052801561094157816020015b606081526020019060019003908161092c5790505b50905060005b86518110156109ed576109c4878281518110610966576109656123da565b5b6020026020010151878381518110610981576109806123da565b5b602002602001015187848151811061099c5761099b6123da565b5b60200260200101518785815181106109b7576109b66123da565b5b60200260200101516109fa565b8282815181106109d7576109d66123da565b5b6020026020010181905250806001019050610947565b5080915050949350505050565b606060008503610a1657610a0f848484610f41565b9050610bf7565b60018503610a9557600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614610a84576040517f3041824a00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b610a8e83836110be565b9050610bf7565b60028503610b1457600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614610b03576040517f3041824a00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b610b0d8383611231565b9050610bf7565b60038503610b675760008314610b56576040517f72f2bc6a00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b610b608483611331565b9050610bf7565b60048503610bba5760008314610ba9576040517f5ac8313500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b610bb38483611464565b9050610bf7565b846040517f7583b3bc000000000000000000000000000000000000000000000000000000008152600401610bee9190612528565b60405180910390fd5b949350505050565b6060600160008381526020019081526020016000208054610c1f90612572565b80601f0160208091040260200160405190810160405280929190818152602001828054610c4b90612572565b8015610c985780601f10610c6d57610100808354040283529160200191610c98565b820191906000526020600020905b815481529060010190602001808311610c7b57829003601f168201915b50505050509050919050565b610cac6103dd565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614610d9c578073ffffffffffffffffffffffffffffffffffffffff16600060029054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a380600060026101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505b50565b80600160008481526020019081526020016000209081610dbf9190612745565b50817fece574603820d07bc9b91f2a932baadf4628aabcb8afba49776529c14a6104b282604051610df0919061211e565b60405180910390a25050565b6000808273ffffffffffffffffffffffffffffffffffffffff163b119050919050565b600060019054906101000a900460ff16610e6e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e6590612889565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603610ed4576040517f1ad8836c00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b610edd81610ca4565b50565b6000637545acac60e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19161480610f3a5750610f3982611597565b5b9050919050565b606082471015610f8a5747836040517f0df9a8f8000000000000000000000000000000000000000000000000000000008152600401610f819291906128a9565b60405180910390fd5b81610f94906128f7565b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19168473ffffffffffffffffffffffffffffffffffffffff1660007f4810874456b8e6487bd861375cf6abd8e1c8bb5858c8ce36a86a04dabfac199e86604051610ffb9190612528565b60405180910390a46000808573ffffffffffffffffffffffffffffffffffffffff16858560405161102c919061299a565b60006040518083038185875af1925050503d8060008114611069576040519150601f19603f3d011682016040523d82523d6000602084013e61106e565b606091505b50915091506110b382826040518060400160405280601681526020017f455243373235583a20556e6b6e6f776e204572726f7200000000000000000000815250611601565b925050509392505050565b6060824710156111075747836040517f0df9a8f80000000000000000000000000000000000000000000000000000000081526004016110fe9291906128a9565b60405180910390fd5b6000825103611142576040517fb81cd8d900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600082516020840185f09050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16036111b4576040517f0b07489b00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6000801b8173ffffffffffffffffffffffffffffffffffffffff1660017fa1fb700aaee2ae4a2ff6f91ce7eba292f89c2f5488b8ec4c5c5c8150692595c3876040516112009190612528565b60405180910390a48060405160200161121991906129f9565b60405160208183030381529060405291505092915050565b6060600082510361126e576040517fb81cd8d900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600061128783602085516112829190612a43565b611623565b905060006112a48460006020875161129f9190612a43565b61168a565b905060006112b38684846117a8565b9050828173ffffffffffffffffffffffffffffffffffffffff1660027fa1fb700aaee2ae4a2ff6f91ce7eba292f89c2f5488b8ec4c5c5c8150692595c3896040516112fe9190612528565b60405180910390a48060405160200161131791906129f9565b604051602081830303815290604052935050505092915050565b60608161133d906128f7565b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19168373ffffffffffffffffffffffffffffffffffffffff1660037f4810874456b8e6487bd861375cf6abd8e1c8bb5858c8ce36a86a04dabfac199e60006040516113a59190612ab2565b60405180910390a46000808473ffffffffffffffffffffffffffffffffffffffff16846040516113d5919061299a565b600060405180830381855afa9150503d8060008114611410576040519150601f19603f3d011682016040523d82523d6000602084013e611415565b606091505b509150915061145a82826040518060400160405280601681526020017f455243373235583a20556e6b6e6f776e204572726f7200000000000000000000815250611601565b9250505092915050565b606081611470906128f7565b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19168373ffffffffffffffffffffffffffffffffffffffff1660047f4810874456b8e6487bd861375cf6abd8e1c8bb5858c8ce36a86a04dabfac199e60006040516114d89190612ab2565b60405180910390a46000808473ffffffffffffffffffffffffffffffffffffffff1684604051611508919061299a565b600060405180830381855af49150503d8060008114611543576040519150601f19603f3d011682016040523d82523d6000602084013e611548565b606091505b509150915061158d82826040518060400160405280601681526020017f455243373235583a20556e6b6e6f776e204572726f7200000000000000000000815250611601565b9250505092915050565b60007f01ffc9a7000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916149050919050565b606083156116115782905061161c565b61161b83836118b2565b5b9392505050565b60006020826116329190612acd565b83511015611675576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161166c90612b4d565b60405180910390fd5b60008260208501015190508091505092915050565b606081601f8361169a9190612acd565b10156116db576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116d290612bb9565b60405180910390fd5b81836116e79190612acd565b8451101561172a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161172190612c25565b60405180910390fd5b606082156000811461174b576040519150600082526020820160405261179c565b6040519150601f8416801560200281840101858101878315602002848b0101015b81831015611789578051835260208301925060208101905061176c565b50868552601f19601f8301166040525050505b50809150509392505050565b6000834710156117ed576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016117e490612c91565b60405180910390fd5b6000825103611831576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161182890612cfd565b60405180910390fd5b8282516020840186f59050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16036118ab576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016118a290612d69565b60405180910390fd5b9392505050565b6000825111156118c55781518083602001fd5b806040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016118f99190612dcd565b60405180910390fd5b6000604051905090565b600080fd5b600080fd5b60007fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b61194b81611916565b811461195657600080fd5b50565b60008135905061196881611942565b92915050565b6000602082840312156119845761198361190c565b5b600061199284828501611959565b91505092915050565b60008115159050919050565b6119b08161199b565b82525050565b60006020820190506119cb60008301846119a7565b92915050565b600080fd5b6000601f19601f8301169050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b611a1f826119d6565b810181811067ffffffffffffffff82111715611a3e57611a3d6119e7565b5b80604052505050565b6000611a51611902565b9050611a5d8282611a16565b919050565b600067ffffffffffffffff821115611a7d57611a7c6119e7565b5b602082029050602081019050919050565b600080fd5b6000819050919050565b611aa681611a93565b8114611ab157600080fd5b50565b600081359050611ac381611a9d565b92915050565b6000611adc611ad784611a62565b611a47565b90508083825260208201905060208402830185811115611aff57611afe611a8e565b5b835b81811015611b285780611b148882611ab4565b845260208401935050602081019050611b01565b5050509392505050565b600082601f830112611b4757611b466119d1565b5b8135611b57848260208601611ac9565b91505092915050565b600067ffffffffffffffff821115611b7b57611b7a6119e7565b5b602082029050602081019050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000611bb782611b8c565b9050919050565b611bc781611bac565b8114611bd257600080fd5b50565b600081359050611be481611bbe565b92915050565b6000611bfd611bf884611b60565b611a47565b90508083825260208201905060208402830185811115611c2057611c1f611a8e565b5b835b81811015611c495780611c358882611bd5565b845260208401935050602081019050611c22565b5050509392505050565b600082601f830112611c6857611c676119d1565b5b8135611c78848260208601611bea565b91505092915050565b600067ffffffffffffffff821115611c9c57611c9b6119e7565b5b602082029050602081019050919050565b600080fd5b600067ffffffffffffffff821115611ccd57611ccc6119e7565b5b611cd6826119d6565b9050602081019050919050565b82818337600083830152505050565b6000611d05611d0084611cb2565b611a47565b905082815260208101848484011115611d2157611d20611cad565b5b611d2c848285611ce3565b509392505050565b600082601f830112611d4957611d486119d1565b5b8135611d59848260208601611cf2565b91505092915050565b6000611d75611d7084611c81565b611a47565b90508083825260208201905060208402830185811115611d9857611d97611a8e565b5b835b81811015611ddf57803567ffffffffffffffff811115611dbd57611dbc6119d1565b5b808601611dca8982611d34565b85526020850194505050602081019050611d9a565b5050509392505050565b600082601f830112611dfe57611dfd6119d1565b5b8135611e0e848260208601611d62565b91505092915050565b60008060008060808587031215611e3157611e3061190c565b5b600085013567ffffffffffffffff811115611e4f57611e4e611911565b5b611e5b87828801611b32565b945050602085013567ffffffffffffffff811115611e7c57611e7b611911565b5b611e8887828801611c53565b935050604085013567ffffffffffffffff811115611ea957611ea8611911565b5b611eb587828801611b32565b925050606085013567ffffffffffffffff811115611ed657611ed5611911565b5b611ee287828801611de9565b91505092959194509250565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b600081519050919050565b600082825260208201905092915050565b60005b83811015611f54578082015181840152602081019050611f39565b60008484015250505050565b6000611f6b82611f1a565b611f758185611f25565b9350611f85818560208601611f36565b611f8e816119d6565b840191505092915050565b6000611fa58383611f60565b905092915050565b6000602082019050919050565b6000611fc582611eee565b611fcf8185611ef9565b935083602082028501611fe185611f0a565b8060005b8581101561201d5784840389528151611ffe8582611f99565b945061200983611fad565b925060208a01995050600181019050611fe5565b50829750879550505050505092915050565b600060208201905081810360008301526120498184611fba565b905092915050565b6000806000806080858703121561206b5761206a61190c565b5b600061207987828801611ab4565b945050602061208a87828801611bd5565b935050604061209b87828801611ab4565b925050606085013567ffffffffffffffff8111156120bc576120bb611911565b5b6120c887828801611d34565b91505092959194509250565b600082825260208201905092915050565b60006120f082611f1a565b6120fa81856120d4565b935061210a818560208601611f36565b612113816119d6565b840191505092915050565b6000602082019050818103600083015261213881846120e5565b905092915050565b6000819050919050565b61215381612140565b811461215e57600080fd5b50565b6000813590506121708161214a565b92915050565b60006020828403121561218c5761218b61190c565b5b600061219a84828501612161565b91505092915050565b600080604083850312156121ba576121b961190c565b5b60006121c885828601612161565b925050602083013567ffffffffffffffff8111156121e9576121e8611911565b5b6121f585828601611d34565b9150509250929050565b61220881611bac565b82525050565b600060208201905061222360008301846121ff565b92915050565b600067ffffffffffffffff821115612244576122436119e7565b5b602082029050602081019050919050565b600061226861226384612229565b611a47565b9050808382526020820190506020840283018581111561228b5761228a611a8e565b5b835b818110156122b457806122a08882612161565b84526020840193505060208101905061228d565b5050509392505050565b600082601f8301126122d3576122d26119d1565b5b81356122e3848260208601612255565b91505092915050565b600080604083850312156123035761230261190c565b5b600083013567ffffffffffffffff81111561232157612320611911565b5b61232d858286016122be565b925050602083013567ffffffffffffffff81111561234e5761234d611911565b5b61235a85828601611de9565b9150509250929050565b60006020828403121561237a5761237961190c565b5b600061238884828501611bd5565b91505092915050565b6000602082840312156123a7576123a661190c565b5b600082013567ffffffffffffffff8111156123c5576123c4611911565b5b6123d1848285016122be565b91505092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600082825260208201905092915050565b7f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160008201527f647920696e697469616c697a6564000000000000000000000000000000000000602082015250565b6000612476602e83612409565b91506124818261241a565b604082019050919050565b600060208201905081810360008301526124a581612469565b9050919050565b6000819050919050565b600060ff82169050919050565b6000819050919050565b60006124e86124e36124de846124ac565b6124c3565b6124b6565b9050919050565b6124f8816124cd565b82525050565b600060208201905061251360008301846124ef565b92915050565b61252281611a93565b82525050565b600060208201905061253d6000830184612519565b92915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b6000600282049050600182168061258a57607f821691505b60208210810361259d5761259c612543565b5b50919050565b60008190508160005260206000209050919050565b60006020601f8301049050919050565b600082821b905092915050565b6000600883026126057fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff826125c8565b61260f86836125c8565b95508019841693508086168417925050509392505050565b600061264261263d61263884611a93565b6124c3565b611a93565b9050919050565b6000819050919050565b61265c83612627565b61267061266882612649565b8484546125d5565b825550505050565b600090565b612685612678565b612690818484612653565b505050565b5b818110156126b4576126a960008261267d565b600181019050612696565b5050565b601f8211156126f9576126ca816125a3565b6126d3846125b8565b810160208510156126e2578190505b6126f66126ee856125b8565b830182612695565b50505b505050565b600082821c905092915050565b600061271c600019846008026126fe565b1980831691505092915050565b6000612735838361270b565b9150826002028217905092915050565b61274e82611f1a565b67ffffffffffffffff811115612767576127666119e7565b5b6127718254612572565b61277c8282856126b8565b600060209050601f8311600181146127af576000841561279d578287015190505b6127a78582612729565b86555061280f565b601f1984166127bd866125a3565b60005b828110156127e5578489015182556001820191506020850194506020810190506127c0565b8683101561280257848901516127fe601f89168261270b565b8355505b6001600288020188555050505b505050505050565b7f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960008201527f6e697469616c697a696e67000000000000000000000000000000000000000000602082015250565b6000612873602b83612409565b915061287e82612817565b604082019050919050565b600060208201905081810360008301526128a281612866565b9050919050565b60006040820190506128be6000830185612519565b6128cb6020830184612519565b9392505050565b6000819050602082019050919050565b60006128ee8251611916565b80915050919050565b600061290282611f1a565b8261290c846128d2565b9050612917816128e2565b92506004821015612957576129527fffffffff00000000000000000000000000000000000000000000000000000000836004036008026125c8565b831692505b5050919050565b600081905092915050565b600061297482611f1a565b61297e818561295e565b935061298e818560208601611f36565b80840191505092915050565b60006129a68284612969565b915081905092915050565b60008160601b9050919050565b60006129c9826129b1565b9050919050565b60006129db826129be565b9050919050565b6129f36129ee82611bac565b6129d0565b82525050565b6000612a0582846129e2565b60148201915081905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000612a4e82611a93565b9150612a5983611a93565b9250828203905081811115612a7157612a70612a14565b5b92915050565b6000819050919050565b6000612a9c612a97612a9284612a77565b6124c3565b611a93565b9050919050565b612aac81612a81565b82525050565b6000602082019050612ac76000830184612aa3565b92915050565b6000612ad882611a93565b9150612ae383611a93565b9250828201905080821115612afb57612afa612a14565b5b92915050565b7f746f427974657333325f6f75744f66426f756e64730000000000000000000000600082015250565b6000612b37601583612409565b9150612b4282612b01565b602082019050919050565b60006020820190508181036000830152612b6681612b2a565b9050919050565b7f736c6963655f6f766572666c6f77000000000000000000000000000000000000600082015250565b6000612ba3600e83612409565b9150612bae82612b6d565b602082019050919050565b60006020820190508181036000830152612bd281612b96565b9050919050565b7f736c6963655f6f75744f66426f756e6473000000000000000000000000000000600082015250565b6000612c0f601183612409565b9150612c1a82612bd9565b602082019050919050565b60006020820190508181036000830152612c3e81612c02565b9050919050565b7f437265617465323a20696e73756666696369656e742062616c616e6365000000600082015250565b6000612c7b601d83612409565b9150612c8682612c45565b602082019050919050565b60006020820190508181036000830152612caa81612c6e565b9050919050565b7f437265617465323a2062797465636f6465206c656e677468206973207a65726f600082015250565b6000612ce7602083612409565b9150612cf282612cb1565b602082019050919050565b60006020820190508181036000830152612d1681612cda565b9050919050565b7f437265617465323a204661696c6564206f6e206465706c6f7900000000000000600082015250565b6000612d53601983612409565b9150612d5e82612d1d565b602082019050919050565b60006020820190508181036000830152612d8281612d46565b9050919050565b600081519050919050565b6000612d9f82612d89565b612da98185612409565b9350612db9818560208601611f36565b612dc2816119d6565b840191505092915050565b60006020820190508181036000830152612de78184612d94565b90509291505056fea2646970667358221220090d917aa820758a95b14594cdac1467a0777deb72ea099959369718de48329b64736f6c63430008110033"; const isSuperArgs$N = (xs) => xs.length > 1; class ERC725Init__factory extends ethers.ContractFactory { constructor(...args) { if (isSuperArgs$N(args)) { super(...args); } else { super(_abi$2B, _bytecode$N, args[0]); } } getDeployTransaction(overrides) { return super.getDeployTransaction(overrides || {}); } deploy(overrides) { return super.deploy(overrides || {}); } connect(runner) { return super.connect(runner); } static createInterface() { return new ethers.Interface(_abi$2B); } static connect(address, runner) { return new ethers.Contract(address, _abi$2B, runner); } } __publicField$2B(ERC725Init__factory, "bytecode", _bytecode$N); __publicField$2B(ERC725Init__factory, "abi", _abi$2B); var __defProp$2A = Object.defineProperty; var __defNormalProp$2A = (obj, key, value) => key in obj ? __defProp$2A(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$2A = (obj, key, value) => { __defNormalProp$2A(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$2A = [ { inputs: [ { internalType: "address", name: "initialOwner", type: "address" } ], stateMutability: "payable", type: "constructor" }, { inputs: [], name: "ERC725X_ContractDeploymentFailed", type: "error" }, { inputs: [], name: "ERC725X_CreateOperationsRequireEmptyRecipientAddress", type: "error" }, { inputs: [], name: "ERC725X_ExecuteParametersEmptyArray", type: "error" }, { inputs: [], name: "ERC725X_ExecuteParametersLengthMismatch", type: "error" }, { inputs: [ { internalType: "uint256", name: "balance", type: "uint256" }, { internalType: "uint256", name: "value", type: "uint256" } ], name: "ERC725X_InsufficientBalance", type: "error" }, { inputs: [], name: "ERC725X_MsgValueDisallowedInDelegateCall", type: "error" }, { inputs: [], name: "ERC725X_MsgValueDisallowedInStaticCall", type: "error" }, { inputs: [], name: "ERC725X_NoContractBytecodeProvided", type: "error" }, { inputs: [ { internalType: "uint256", name: "operationTypeProvided", type: "uint256" } ], name: "ERC725X_UnknownOperationType", type: "error" }, { inputs: [ { internalType: "address", name: "callerAddress", type: "address" } ], name: "OwnableCallerNotTheOwner", type: "error" }, { inputs: [], name: "OwnableCannotSetZeroAddressAsOwner", type: "error" }, { anonymous: false, inputs: [ { indexed: true, internalType: "uint256", name: "operationType", type: "uint256" }, { indexed: true, internalType: "address", name: "contractAddress", type: "address" }, { indexed: false, internalType: "uint256", name: "value", type: "uint256" }, { indexed: true, internalType: "bytes32", name: "salt", type: "bytes32" } ], name: "ContractCreated", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "uint256", name: "operationType", type: "uint256" }, { indexed: true, internalType: "address", name: "target", type: "address" }, { indexed: false, internalType: "uint256", name: "value", type: "uint256" }, { indexed: true, internalType: "bytes4", name: "selector", type: "bytes4" } ], name: "Executed", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "previousOwner", type: "address" }, { indexed: true, internalType: "address", name: "newOwner", type: "address" } ], name: "OwnershipTransferred", type: "event" }, { inputs: [ { internalType: "uint256", name: "operationType", type: "uint256" }, { internalType: "address", name: "target", type: "address" }, { internalType: "uint256", name: "value", type: "uint256" }, { internalType: "bytes", name: "data", type: "bytes" } ], name: "execute", outputs: [ { internalType: "bytes", name: "", type: "bytes" } ], stateMutability: "payable", type: "function" }, { inputs: [ { internalType: "uint256[]", name: "operationsType", type: "uint256[]" }, { internalType: "address[]", name: "targets", type: "address[]" }, { internalType: "uint256[]", name: "values", type: "uint256[]" }, { internalType: "bytes[]", name: "datas", type: "bytes[]" } ], name: "executeBatch", outputs: [ { internalType: "bytes[]", name: "", type: "bytes[]" } ], stateMutability: "payable", type: "function" }, { inputs: [], name: "owner", outputs: [ { internalType: "address", name: "", type: "address" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "renounceOwnership", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "bytes4", name: "interfaceId", type: "bytes4" } ], name: "supportsInterface", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "newOwner", type: "address" } ], name: "transferOwnership", outputs: [], stateMutability: "nonpayable", type: "function" } ]; const _bytecode$M = "0x6080604052604051620022a3380380620022a3833981810160405281019062000029919062000241565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff160362000090576040517f1ad8836c00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b620000a681620000ad60201b620002ba1760201c565b5062000273565b620000bd620001ae60201b60201c565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614620001ab578073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505b50565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006200020982620001dc565b9050919050565b6200021b81620001fc565b81146200022757600080fd5b50565b6000815190506200023b8162000210565b92915050565b6000602082840312156200025a5762000259620001d7565b5b60006200026a848285016200022a565b91505092915050565b61202080620002836000396000f3fe6080604052600436106100555760003560e01c806301ffc9a71461005a578063318584521461009757806344c028fe146100c7578063715018a6146100f75780638da5cb5b1461010e578063f2fde38b14610139575b600080fd5b34801561006657600080fd5b50610081600480360381019061007c91906111fa565b610162565b60405161008e9190611242565b60405180910390f35b6100b160048036038101906100ac91906116a3565b6101c3565b6040516100be91906118bb565b60405180910390f35b6100e160048036038101906100dc91906118dd565b6101e3565b6040516100ee91906119aa565b60405180910390f35b34801561010357600080fd5b5061010c610203565b005b34801561011a57600080fd5b50610123610217565b60405161013091906119db565b60405180910390f35b34801561014557600080fd5b50610160600480360381019061015b91906119f6565b610240565b005b6000637545acac60e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614806101bc57506101bb826103b2565b5b9050919050565b60606101cd61041c565b6101d985858585610495565b9050949350505050565b60606101ed61041c565b6101f985858585610632565b9050949350505050565b61020b61041c565b61021560006102ba565b565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b61024861041c565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16036102ae576040517f1ad8836c00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6102b7816102ba565b50565b6102c2610217565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16146103af578073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505b50565b60007f01ffc9a7000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916149050919050565b3373ffffffffffffffffffffffffffffffffffffffff1661043b610217565b73ffffffffffffffffffffffffffffffffffffffff161461049357336040517fbf1169c500000000000000000000000000000000000000000000000000000000815260040161048a91906119db565b60405180910390fd5b565b6060835185511415806104b75750825184511415806104b657508151835114155b5b156104ee576040517f3ff55f4d00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6000855103610529576040517fe9ad2b5f00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6000855167ffffffffffffffff81111561054657610545611273565b5b60405190808252806020026020018201604052801561057957816020015b60608152602001906001900390816105645790505b50905060005b8651811015610625576105fc87828151811061059e5761059d611a23565b5b60200260200101518783815181106105b9576105b8611a23565b5b60200260200101518784815181106105d4576105d3611a23565b5b60200260200101518785815181106105ef576105ee611a23565b5b6020026020010151610632565b82828151811061060f5761060e611a23565b5b602002602001018190525080600101905061057f565b5080915050949350505050565b60606000850361064e57610647848484610837565b905061082f565b600185036106cd57600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16146106bc576040517f3041824a00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6106c683836109b4565b905061082f565b6002850361074c57600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161461073b576040517f3041824a00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6107458383610b27565b905061082f565b6003850361079f576000831461078e576040517f72f2bc6a00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6107988483610c27565b905061082f565b600485036107f257600083146107e1576040517f5ac8313500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6107eb8483610d5a565b905061082f565b846040517f7583b3bc0000000000000000000000000000000000000000000000000000000081526004016108269190611a61565b60405180910390fd5b949350505050565b6060824710156108805747836040517f0df9a8f8000000000000000000000000000000000000000000000000000000008152600401610877929190611a7c565b60405180910390fd5b8161088a90611ad7565b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19168473ffffffffffffffffffffffffffffffffffffffff1660007f4810874456b8e6487bd861375cf6abd8e1c8bb5858c8ce36a86a04dabfac199e866040516108f19190611a61565b60405180910390a46000808573ffffffffffffffffffffffffffffffffffffffff1685856040516109229190611b7a565b60006040518083038185875af1925050503d806000811461095f576040519150601f19603f3d011682016040523d82523d6000602084013e610964565b606091505b50915091506109a982826040518060400160405280601681526020017f455243373235583a20556e6b6e6f776e204572726f7200000000000000000000815250610e8d565b925050509392505050565b6060824710156109fd5747836040517f0df9a8f80000000000000000000000000000000000000000000000000000000081526004016109f4929190611a7c565b60405180910390fd5b6000825103610a38576040517fb81cd8d900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600082516020840185f09050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603610aaa576040517f0b07489b00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6000801b8173ffffffffffffffffffffffffffffffffffffffff1660017fa1fb700aaee2ae4a2ff6f91ce7eba292f89c2f5488b8ec4c5c5c8150692595c387604051610af69190611a61565b60405180910390a480604051602001610b0f9190611bd9565b60405160208183030381529060405291505092915050565b60606000825103610b64576040517fb81cd8d900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6000610b7d8360208551610b789190611c23565b610eaf565b90506000610b9a84600060208751610b959190611c23565b610f16565b90506000610ba9868484611034565b9050828173ffffffffffffffffffffffffffffffffffffffff1660027fa1fb700aaee2ae4a2ff6f91ce7eba292f89c2f5488b8ec4c5c5c8150692595c389604051610bf49190611a61565b60405180910390a480604051602001610c0d9190611bd9565b604051602081830303815290604052935050505092915050565b606081610c3390611ad7565b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19168373ffffffffffffffffffffffffffffffffffffffff1660037f4810874456b8e6487bd861375cf6abd8e1c8bb5858c8ce36a86a04dabfac199e6000604051610c9b9190611c9c565b60405180910390a46000808473ffffffffffffffffffffffffffffffffffffffff1684604051610ccb9190611b7a565b600060405180830381855afa9150503d8060008114610d06576040519150601f19603f3d011682016040523d82523d6000602084013e610d0b565b606091505b5091509150610d5082826040518060400160405280601681526020017f455243373235583a20556e6b6e6f776e204572726f7200000000000000000000815250610e8d565b9250505092915050565b606081610d6690611ad7565b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19168373ffffffffffffffffffffffffffffffffffffffff1660047f4810874456b8e6487bd861375cf6abd8e1c8bb5858c8ce36a86a04dabfac199e6000604051610dce9190611c9c565b60405180910390a46000808473ffffffffffffffffffffffffffffffffffffffff1684604051610dfe9190611b7a565b600060405180830381855af49150503d8060008114610e39576040519150601f19603f3d011682016040523d82523d6000602084013e610e3e565b606091505b5091509150610e8382826040518060400160405280601681526020017f455243373235583a20556e6b6e6f776e204572726f7200000000000000000000815250610e8d565b9250505092915050565b60608315610e9d57829050610ea8565b610ea7838361113e565b5b9392505050565b6000602082610ebe9190611cb7565b83511015610f01576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ef890611d48565b60405180910390fd5b60008260208501015190508091505092915050565b606081601f83610f269190611cb7565b1015610f67576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f5e90611db4565b60405180910390fd5b8183610f739190611cb7565b84511015610fb6576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610fad90611e20565b60405180910390fd5b6060821560008114610fd75760405191506000825260208201604052611028565b6040519150601f8416801560200281840101858101878315602002848b0101015b818310156110155780518352602083019250602081019050610ff8565b50868552601f19601f8301166040525050505b50809150509392505050565b600083471015611079576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161107090611e8c565b60405180910390fd5b60008251036110bd576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110b490611ef8565b60405180910390fd5b8282516020840186f59050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603611137576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161112e90611f64565b60405180910390fd5b9392505050565b6000825111156111515781518083602001fd5b806040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111859190611fc8565b60405180910390fd5b6000604051905090565b600080fd5b600080fd5b60007fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b6111d7816111a2565b81146111e257600080fd5b50565b6000813590506111f4816111ce565b92915050565b6000602082840312156112105761120f611198565b5b600061121e848285016111e5565b91505092915050565b60008115159050919050565b61123c81611227565b82525050565b60006020820190506112576000830184611233565b92915050565b600080fd5b6000601f19601f8301169050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6112ab82611262565b810181811067ffffffffffffffff821117156112ca576112c9611273565b5b80604052505050565b60006112dd61118e565b90506112e982826112a2565b919050565b600067ffffffffffffffff82111561130957611308611273565b5b602082029050602081019050919050565b600080fd5b6000819050919050565b6113328161131f565b811461133d57600080fd5b50565b60008135905061134f81611329565b92915050565b6000611368611363846112ee565b6112d3565b9050808382526020820190506020840283018581111561138b5761138a61131a565b5b835b818110156113b457806113a08882611340565b84526020840193505060208101905061138d565b5050509392505050565b600082601f8301126113d3576113d261125d565b5b81356113e3848260208601611355565b91505092915050565b600067ffffffffffffffff82111561140757611406611273565b5b602082029050602081019050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600061144382611418565b9050919050565b61145381611438565b811461145e57600080fd5b50565b6000813590506114708161144a565b92915050565b6000611489611484846113ec565b6112d3565b905080838252602082019050602084028301858111156114ac576114ab61131a565b5b835b818110156114d557806114c18882611461565b8452602084019350506020810190506114ae565b5050509392505050565b600082601f8301126114f4576114f361125d565b5b8135611504848260208601611476565b91505092915050565b600067ffffffffffffffff82111561152857611527611273565b5b602082029050602081019050919050565b600080fd5b600067ffffffffffffffff82111561155957611558611273565b5b61156282611262565b9050602081019050919050565b82818337600083830152505050565b600061159161158c8461153e565b6112d3565b9050828152602081018484840111156115ad576115ac611539565b5b6115b884828561156f565b509392505050565b600082601f8301126115d5576115d461125d565b5b81356115e584826020860161157e565b91505092915050565b60006116016115fc8461150d565b6112d3565b905080838252602082019050602084028301858111156116245761162361131a565b5b835b8181101561166b57803567ffffffffffffffff8111156116495761164861125d565b5b80860161165689826115c0565b85526020850194505050602081019050611626565b5050509392505050565b600082601f83011261168a5761168961125d565b5b813561169a8482602086016115ee565b91505092915050565b600080600080608085870312156116bd576116bc611198565b5b600085013567ffffffffffffffff8111156116db576116da61119d565b5b6116e7878288016113be565b945050602085013567ffffffffffffffff8111156117085761170761119d565b5b611714878288016114df565b935050604085013567ffffffffffffffff8111156117355761173461119d565b5b611741878288016113be565b925050606085013567ffffffffffffffff8111156117625761176161119d565b5b61176e87828801611675565b91505092959194509250565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b600081519050919050565b600082825260208201905092915050565b60005b838110156117e05780820151818401526020810190506117c5565b60008484015250505050565b60006117f7826117a6565b61180181856117b1565b93506118118185602086016117c2565b61181a81611262565b840191505092915050565b600061183183836117ec565b905092915050565b6000602082019050919050565b60006118518261177a565b61185b8185611785565b93508360208202850161186d85611796565b8060005b858110156118a9578484038952815161188a8582611825565b945061189583611839565b925060208a01995050600181019050611871565b50829750879550505050505092915050565b600060208201905081810360008301526118d58184611846565b905092915050565b600080600080608085870312156118f7576118f6611198565b5b600061190587828801611340565b945050602061191687828801611461565b935050604061192787828801611340565b925050606085013567ffffffffffffffff8111156119485761194761119d565b5b611954878288016115c0565b91505092959194509250565b600082825260208201905092915050565b600061197c826117a6565b6119868185611960565b93506119968185602086016117c2565b61199f81611262565b840191505092915050565b600060208201905081810360008301526119c48184611971565b905092915050565b6119d581611438565b82525050565b60006020820190506119f060008301846119cc565b92915050565b600060208284031215611a0c57611a0b611198565b5b6000611a1a84828501611461565b91505092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b611a5b8161131f565b82525050565b6000602082019050611a766000830184611a52565b92915050565b6000604082019050611a916000830185611a52565b611a9e6020830184611a52565b9392505050565b6000819050602082019050919050565b6000611ac182516111a2565b80915050919050565b600082821b905092915050565b6000611ae2826117a6565b82611aec84611aa5565b9050611af781611ab5565b92506004821015611b3757611b327fffffffff0000000000000000000000000000000000000000000000000000000083600403600802611aca565b831692505b5050919050565b600081905092915050565b6000611b54826117a6565b611b5e8185611b3e565b9350611b6e8185602086016117c2565b80840191505092915050565b6000611b868284611b49565b915081905092915050565b60008160601b9050919050565b6000611ba982611b91565b9050919050565b6000611bbb82611b9e565b9050919050565b611bd3611bce82611438565b611bb0565b82525050565b6000611be58284611bc2565b60148201915081905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000611c2e8261131f565b9150611c398361131f565b9250828203905081811115611c5157611c50611bf4565b5b92915050565b6000819050919050565b6000819050919050565b6000611c86611c81611c7c84611c57565b611c61565b61131f565b9050919050565b611c9681611c6b565b82525050565b6000602082019050611cb16000830184611c8d565b92915050565b6000611cc28261131f565b9150611ccd8361131f565b9250828201905080821115611ce557611ce4611bf4565b5b92915050565b600082825260208201905092915050565b7f746f427974657333325f6f75744f66426f756e64730000000000000000000000600082015250565b6000611d32601583611ceb565b9150611d3d82611cfc565b602082019050919050565b60006020820190508181036000830152611d6181611d25565b9050919050565b7f736c6963655f6f766572666c6f77000000000000000000000000000000000000600082015250565b6000611d9e600e83611ceb565b9150611da982611d68565b602082019050919050565b60006020820190508181036000830152611dcd81611d91565b9050919050565b7f736c6963655f6f75744f66426f756e6473000000000000000000000000000000600082015250565b6000611e0a601183611ceb565b9150611e1582611dd4565b602082019050919050565b60006020820190508181036000830152611e3981611dfd565b9050919050565b7f437265617465323a20696e73756666696369656e742062616c616e6365000000600082015250565b6000611e76601d83611ceb565b9150611e8182611e40565b602082019050919050565b60006020820190508181036000830152611ea581611e69565b9050919050565b7f437265617465323a2062797465636f6465206c656e677468206973207a65726f600082015250565b6000611ee2602083611ceb565b9150611eed82611eac565b602082019050919050565b60006020820190508181036000830152611f1181611ed5565b9050919050565b7f437265617465323a204661696c6564206f6e206465706c6f7900000000000000600082015250565b6000611f4e601983611ceb565b9150611f5982611f18565b602082019050919050565b60006020820190508181036000830152611f7d81611f41565b9050919050565b600081519050919050565b6000611f9a82611f84565b611fa48185611ceb565b9350611fb48185602086016117c2565b611fbd81611262565b840191505092915050565b60006020820190508181036000830152611fe28184611f8f565b90509291505056fea2646970667358221220e0ac54ba00a0c2ae92878358eb66643af32f7b74f594ec502b46c28df6a7bcd564736f6c63430008110033"; const isSuperArgs$M = (xs) => xs.length > 1; class ERC725X__factory extends ethers.ContractFactory { constructor(...args) { if (isSuperArgs$M(args)) { super(...args); } else { super(_abi$2A, _bytecode$M, args[0]); } } getDeployTransaction(initialOwner, overrides) { return super.getDeployTransaction(initialOwner, overrides || {}); } deploy(initialOwner, overrides) { return super.deploy(initialOwner, overrides || {}); } connect(runner) { return super.connect(runner); } static createInterface() { return new ethers.Interface(_abi$2A); } static connect(address, runner) { return new ethers.Contract(address, _abi$2A, runner); } } __publicField$2A(ERC725X__factory, "bytecode", _bytecode$M); __publicField$2A(ERC725X__factory, "abi", _abi$2A); var __defProp$2z = Object.defineProperty; var __defNormalProp$2z = (obj, key, value) => key in obj ? __defProp$2z(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$2z = (obj, key, value) => { __defNormalProp$2z(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$2z = [ { inputs: [], stateMutability: "nonpayable", type: "constructor" }, { inputs: [], name: "ERC725X_ContractDeploymentFailed", type: "error" }, { inputs: [], name: "ERC725X_CreateOperationsRequireEmptyRecipientAddress", type: "error" }, { inputs: [], name: "ERC725X_ExecuteParametersEmptyArray", type: "error" }, { inputs: [], name: "ERC725X_ExecuteParametersLengthMismatch", type: "error" }, { inputs: [ { internalType: "uint256", name: "balance", type: "uint256" }, { internalType: "uint256", name: "value", type: "uint256" } ], name: "ERC725X_InsufficientBalance", type: "error" }, { inputs: [], name: "ERC725X_MsgValueDisallowedInDelegateCall", type: "error" }, { inputs: [], name: "ERC725X_MsgValueDisallowedInStaticCall", type: "error" }, { inputs: [], name: "ERC725X_NoContractBytecodeProvided", type: "error" }, { inputs: [ { internalType: "uint256", name: "operationTypeProvided", type: "uint256" } ], name: "ERC725X_UnknownOperationType", type: "error" }, { inputs: [ { internalType: "address", name: "callerAddress", type: "address" } ], name: "OwnableCallerNotTheOwner", type: "error" }, { inputs: [], name: "OwnableCannotSetZeroAddressAsOwner", type: "error" }, { anonymous: false, inputs: [ { indexed: true, internalType: "uint256", name: "operationType", type: "uint256" }, { indexed: true, internalType: "address", name: "contractAddress", type: "address" }, { indexed: false, internalType: "uint256", name: "value", type: "uint256" }, { indexed: true, internalType: "bytes32", name: "salt", type: "bytes32" } ], name: "ContractCreated", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "uint256", name: "operationType", type: "uint256" }, { indexed: true, internalType: "address", name: "target", type: "address" }, { indexed: false, internalType: "uint256", name: "value", type: "uint256" }, { indexed: true, internalType: "bytes4", name: "selector", type: "bytes4" } ], name: "Executed", type: "event" }, { anonymous: false, inputs: [ { indexed: false, internalType: "uint8", name: "version", type: "uint8" } ], name: "Initialized", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "previousOwner", type: "address" }, { indexed: true, internalType: "address", name: "newOwner", type: "address" } ], name: "OwnershipTransferred", type: "event" }, { inputs: [ { internalType: "uint256", name: "operationType", type: "uint256" }, { internalType: "address", name: "target", type: "address" }, { internalType: "uint256", name: "value", type: "uint256" }, { internalType: "bytes", name: "data", type: "bytes" } ], name: "execute", outputs: [ { internalType: "bytes", name: "", type: "bytes" } ], stateMutability: "payable", type: "function" }, { inputs: [ { internalType: "uint256[]", name: "operationsType", type: "uint256[]" }, { internalType: "address[]", name: "targets", type: "address[]" }, { internalType: "uint256[]", name: "values", type: "uint256[]" }, { internalType: "bytes[]", name: "datas", type: "bytes[]" } ], name: "executeBatch", outputs: [ { internalType: "bytes[]", name: "", type: "bytes[]" } ], stateMutability: "payable", type: "function" }, { inputs: [ { internalType: "address", name: "initialOwner", type: "address" } ], name: "initialize", outputs: [], stateMutability: "payable", type: "function" }, { inputs: [], name: "owner", outputs: [ { internalType: "address", name: "", type: "address" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "renounceOwnership", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "bytes4", name: "interfaceId", type: "bytes4" } ], name: "supportsInterface", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "newOwner", type: "address" } ], name: "transferOwnership", outputs: [], stateMutability: "nonpayable", type: "function" } ]; const _bytecode$L = "0x60806040523480156200001157600080fd5b50620000226200002860201b60201c565b620001d2565b600060019054906101000a900460ff16156200007b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620000729062000175565b60405180910390fd5b60ff801660008054906101000a900460ff1660ff1614620000ec5760ff6000806101000a81548160ff021916908360ff1602179055507f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb384740249860ff604051620000e39190620001b5565b60405180910390a15b565b600082825260208201905092915050565b7f496e697469616c697a61626c653a20636f6e747261637420697320696e69746960008201527f616c697a696e6700000000000000000000000000000000000000000000000000602082015250565b60006200015d602783620000ee565b91506200016a82620000ff565b604082019050919050565b6000602082019050818103600083015262000190816200014e565b9050919050565b600060ff82169050919050565b620001af8162000197565b82525050565b6000602082019050620001cc6000830184620001a4565b92915050565b61240580620001e26000396000f3fe6080604052600436106100705760003560e01c8063715018a61161004e578063715018a6146101125780638da5cb5b14610129578063c4d66de814610154578063f2fde38b1461017057610070565b806301ffc9a71461007557806331858452146100b257806344c028fe146100e2575b600080fd5b34801561008157600080fd5b5061009c60048036038101906100979190611458565b610199565b6040516100a991906114a0565b60405180910390f35b6100cc60048036038101906100c79190611901565b6101fa565b6040516100d99190611b19565b60405180910390f35b6100fc60048036038101906100f79190611b3b565b61021a565b6040516101099190611c08565b60405180910390f35b34801561011e57600080fd5b5061012761023a565b005b34801561013557600080fd5b5061013e61024e565b60405161014b9190611c39565b60405180910390f35b61016e60048036038101906101699190611c54565b610277565b005b34801561017c57600080fd5b5061019760048036038101906101929190611c54565b6103b7565b005b6000637545acac60e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614806101f357506101f282610431565b5b9050919050565b606061020461049b565b61021085858585610514565b9050949350505050565b606061022461049b565b610230858585856106b1565b9050949350505050565b61024261049b565b61024c60006108b6565b565b60008060029054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60008060019054906101000a900460ff161590508080156102a85750600160008054906101000a900460ff1660ff16105b806102d557506102b7306109b1565b1580156102d45750600160008054906101000a900460ff1660ff16145b5b610314576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161030b90611d04565b60405180910390fd5b60016000806101000a81548160ff021916908360ff1602179055508015610351576001600060016101000a81548160ff0219169083151502179055505b61035a826109d4565b80156103b35760008060016101000a81548160ff0219169083151502179055507f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb384740249860016040516103aa9190611d76565b60405180910390a15b5050565b6103bf61049b565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603610425576040517f1ad8836c00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b61042e816108b6565b50565b60007f01ffc9a7000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916149050919050565b3373ffffffffffffffffffffffffffffffffffffffff166104ba61024e565b73ffffffffffffffffffffffffffffffffffffffff161461051257336040517fbf1169c50000000000000000000000000000000000000000000000000000000081526004016105099190611c39565b60405180910390fd5b565b60608351855114158061053657508251845114158061053557508151835114155b5b1561056d576040517f3ff55f4d00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60008551036105a8576040517fe9ad2b5f00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6000855167ffffffffffffffff8111156105c5576105c46114d1565b5b6040519080825280602002602001820160405280156105f857816020015b60608152602001906001900390816105e35790505b50905060005b86518110156106a45761067b87828151811061061d5761061c611d91565b5b602002602001015187838151811061063857610637611d91565b5b602002602001015187848151811061065357610652611d91565b5b602002602001015187858151811061066e5761066d611d91565b5b60200260200101516106b1565b82828151811061068e5761068d611d91565b5b60200260200101819052508060010190506105fe565b5080915050949350505050565b6060600085036106cd576106c6848484610a95565b90506108ae565b6001850361074c57600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161461073b576040517f3041824a00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6107458383610c12565b90506108ae565b600285036107cb57600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16146107ba576040517f3041824a00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6107c48383610d85565b90506108ae565b6003850361081e576000831461080d576040517f72f2bc6a00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6108178483610e85565b90506108ae565b600485036108715760008314610860576040517f5ac8313500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b61086a8483610fb8565b90506108ae565b846040517f7583b3bc0000000000000000000000000000000000000000000000000000000081526004016108a59190611dcf565b60405180910390fd5b949350505050565b6108be61024e565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16146109ae578073ffffffffffffffffffffffffffffffffffffffff16600060029054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a380600060026101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505b50565b6000808273ffffffffffffffffffffffffffffffffffffffff163b119050919050565b600060019054906101000a900460ff16610a23576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a1a90611e5c565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603610a89576040517f1ad8836c00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b610a92816108b6565b50565b606082471015610ade5747836040517f0df9a8f8000000000000000000000000000000000000000000000000000000008152600401610ad5929190611e7c565b60405180910390fd5b81610ae890611ed7565b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19168473ffffffffffffffffffffffffffffffffffffffff1660007f4810874456b8e6487bd861375cf6abd8e1c8bb5858c8ce36a86a04dabfac199e86604051610b4f9190611dcf565b60405180910390a46000808573ffffffffffffffffffffffffffffffffffffffff168585604051610b809190611f7a565b60006040518083038185875af1925050503d8060008114610bbd576040519150601f19603f3d011682016040523d82523d6000602084013e610bc2565b606091505b5091509150610c0782826040518060400160405280601681526020017f455243373235583a20556e6b6e6f776e204572726f72000000000000000000008152506110eb565b925050509392505050565b606082471015610c5b5747836040517f0df9a8f8000000000000000000000000000000000000000000000000000000008152600401610c52929190611e7c565b60405180910390fd5b6000825103610c96576040517fb81cd8d900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600082516020840185f09050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603610d08576040517f0b07489b00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6000801b8173ffffffffffffffffffffffffffffffffffffffff1660017fa1fb700aaee2ae4a2ff6f91ce7eba292f89c2f5488b8ec4c5c5c8150692595c387604051610d549190611dcf565b60405180910390a480604051602001610d6d9190611fd9565b60405160208183030381529060405291505092915050565b60606000825103610dc2576040517fb81cd8d900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6000610ddb8360208551610dd69190612023565b61110d565b90506000610df884600060208751610df39190612023565b611174565b90506000610e07868484611292565b9050828173ffffffffffffffffffffffffffffffffffffffff1660027fa1fb700aaee2ae4a2ff6f91ce7eba292f89c2f5488b8ec4c5c5c8150692595c389604051610e529190611dcf565b60405180910390a480604051602001610e6b9190611fd9565b604051602081830303815290604052935050505092915050565b606081610e9190611ed7565b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19168373ffffffffffffffffffffffffffffffffffffffff1660037f4810874456b8e6487bd861375cf6abd8e1c8bb5858c8ce36a86a04dabfac199e6000604051610ef99190612092565b60405180910390a46000808473ffffffffffffffffffffffffffffffffffffffff1684604051610f299190611f7a565b600060405180830381855afa9150503d8060008114610f64576040519150601f19603f3d011682016040523d82523d6000602084013e610f69565b606091505b5091509150610fae82826040518060400160405280601681526020017f455243373235583a20556e6b6e6f776e204572726f72000000000000000000008152506110eb565b9250505092915050565b606081610fc490611ed7565b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19168373ffffffffffffffffffffffffffffffffffffffff1660047f4810874456b8e6487bd861375cf6abd8e1c8bb5858c8ce36a86a04dabfac199e600060405161102c9190612092565b60405180910390a46000808473ffffffffffffffffffffffffffffffffffffffff168460405161105c9190611f7a565b600060405180830381855af49150503d8060008114611097576040519150601f19603f3d011682016040523d82523d6000602084013e61109c565b606091505b50915091506110e182826040518060400160405280601681526020017f455243373235583a20556e6b6e6f776e204572726f72000000000000000000008152506110eb565b9250505092915050565b606083156110fb57829050611106565b611105838361139c565b5b9392505050565b600060208261111c91906120ad565b8351101561115f576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111569061212d565b60405180910390fd5b60008260208501015190508091505092915050565b606081601f8361118491906120ad565b10156111c5576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111bc90612199565b60405180910390fd5b81836111d191906120ad565b84511015611214576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161120b90612205565b60405180910390fd5b60608215600081146112355760405191506000825260208201604052611286565b6040519150601f8416801560200281840101858101878315602002848b0101015b818310156112735780518352602083019250602081019050611256565b50868552601f19601f8301166040525050505b50809150509392505050565b6000834710156112d7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112ce90612271565b60405180910390fd5b600082510361131b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611312906122dd565b60405180910390fd5b8282516020840186f59050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603611395576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161138c90612349565b60405180910390fd5b9392505050565b6000825111156113af5781518083602001fd5b806040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113e391906123ad565b60405180910390fd5b6000604051905090565b600080fd5b600080fd5b60007fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b61143581611400565b811461144057600080fd5b50565b6000813590506114528161142c565b92915050565b60006020828403121561146e5761146d6113f6565b5b600061147c84828501611443565b91505092915050565b60008115159050919050565b61149a81611485565b82525050565b60006020820190506114b56000830184611491565b92915050565b600080fd5b6000601f19601f8301169050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b611509826114c0565b810181811067ffffffffffffffff82111715611528576115276114d1565b5b80604052505050565b600061153b6113ec565b90506115478282611500565b919050565b600067ffffffffffffffff821115611567576115666114d1565b5b602082029050602081019050919050565b600080fd5b6000819050919050565b6115908161157d565b811461159b57600080fd5b50565b6000813590506115ad81611587565b92915050565b60006115c66115c18461154c565b611531565b905080838252602082019050602084028301858111156115e9576115e8611578565b5b835b8181101561161257806115fe888261159e565b8452602084019350506020810190506115eb565b5050509392505050565b600082601f830112611631576116306114bb565b5b81356116418482602086016115b3565b91505092915050565b600067ffffffffffffffff821115611665576116646114d1565b5b602082029050602081019050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006116a182611676565b9050919050565b6116b181611696565b81146116bc57600080fd5b50565b6000813590506116ce816116a8565b92915050565b60006116e76116e28461164a565b611531565b9050808382526020820190506020840283018581111561170a57611709611578565b5b835b81811015611733578061171f88826116bf565b84526020840193505060208101905061170c565b5050509392505050565b600082601f830112611752576117516114bb565b5b81356117628482602086016116d4565b91505092915050565b600067ffffffffffffffff821115611786576117856114d1565b5b602082029050602081019050919050565b600080fd5b600067ffffffffffffffff8211156117b7576117b66114d1565b5b6117c0826114c0565b9050602081019050919050565b82818337600083830152505050565b60006117ef6117ea8461179c565b611531565b90508281526020810184848401111561180b5761180a611797565b5b6118168482856117cd565b509392505050565b600082601f830112611833576118326114bb565b5b81356118438482602086016117dc565b91505092915050565b600061185f61185a8461176b565b611531565b9050808382526020820190506020840283018581111561188257611881611578565b5b835b818110156118c957803567ffffffffffffffff8111156118a7576118a66114bb565b5b8086016118b4898261181e565b85526020850194505050602081019050611884565b5050509392505050565b600082601f8301126118e8576118e76114bb565b5b81356118f884826020860161184c565b91505092915050565b6000806000806080858703121561191b5761191a6113f6565b5b600085013567ffffffffffffffff811115611939576119386113fb565b5b6119458782880161161c565b945050602085013567ffffffffffffffff811115611966576119656113fb565b5b6119728782880161173d565b935050604085013567ffffffffffffffff811115611993576119926113fb565b5b61199f8782880161161c565b925050606085013567ffffffffffffffff8111156119c0576119bf6113fb565b5b6119cc878288016118d3565b91505092959194509250565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b600081519050919050565b600082825260208201905092915050565b60005b83811015611a3e578082015181840152602081019050611a23565b60008484015250505050565b6000611a5582611a04565b611a5f8185611a0f565b9350611a6f818560208601611a20565b611a78816114c0565b840191505092915050565b6000611a8f8383611a4a565b905092915050565b6000602082019050919050565b6000611aaf826119d8565b611ab981856119e3565b935083602082028501611acb856119f4565b8060005b85811015611b075784840389528151611ae88582611a83565b9450611af383611a97565b925060208a01995050600181019050611acf565b50829750879550505050505092915050565b60006020820190508181036000830152611b338184611aa4565b905092915050565b60008060008060808587031215611b5557611b546113f6565b5b6000611b638782880161159e565b9450506020611b74878288016116bf565b9350506040611b858782880161159e565b925050606085013567ffffffffffffffff811115611ba657611ba56113fb565b5b611bb28782880161181e565b91505092959194509250565b600082825260208201905092915050565b6000611bda82611a04565b611be48185611bbe565b9350611bf4818560208601611a20565b611bfd816114c0565b840191505092915050565b60006020820190508181036000830152611c228184611bcf565b905092915050565b611c3381611696565b82525050565b6000602082019050611c4e6000830184611c2a565b92915050565b600060208284031215611c6a57611c696113f6565b5b6000611c78848285016116bf565b91505092915050565b600082825260208201905092915050565b7f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160008201527f647920696e697469616c697a6564000000000000000000000000000000000000602082015250565b6000611cee602e83611c81565b9150611cf982611c92565b604082019050919050565b60006020820190508181036000830152611d1d81611ce1565b9050919050565b6000819050919050565b600060ff82169050919050565b6000819050919050565b6000611d60611d5b611d5684611d24565b611d3b565b611d2e565b9050919050565b611d7081611d45565b82525050565b6000602082019050611d8b6000830184611d67565b92915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b611dc98161157d565b82525050565b6000602082019050611de46000830184611dc0565b92915050565b7f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960008201527f6e697469616c697a696e67000000000000000000000000000000000000000000602082015250565b6000611e46602b83611c81565b9150611e5182611dea565b604082019050919050565b60006020820190508181036000830152611e7581611e39565b9050919050565b6000604082019050611e916000830185611dc0565b611e9e6020830184611dc0565b9392505050565b6000819050602082019050919050565b6000611ec18251611400565b80915050919050565b600082821b905092915050565b6000611ee282611a04565b82611eec84611ea5565b9050611ef781611eb5565b92506004821015611f3757611f327fffffffff0000000000000000000000000000000000000000000000000000000083600403600802611eca565b831692505b5050919050565b600081905092915050565b6000611f5482611a04565b611f5e8185611f3e565b9350611f6e818560208601611a20565b80840191505092915050565b6000611f868284611f49565b915081905092915050565b60008160601b9050919050565b6000611fa982611f91565b9050919050565b6000611fbb82611f9e565b9050919050565b611fd3611fce82611696565b611fb0565b82525050565b6000611fe58284611fc2565b60148201915081905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600061202e8261157d565b91506120398361157d565b925082820390508181111561205157612050611ff4565b5b92915050565b6000819050919050565b600061207c61207761207284612057565b611d3b565b61157d565b9050919050565b61208c81612061565b82525050565b60006020820190506120a76000830184612083565b92915050565b60006120b88261157d565b91506120c38361157d565b92508282019050808211156120db576120da611ff4565b5b92915050565b7f746f427974657333325f6f75744f66426f756e64730000000000000000000000600082015250565b6000612117601583611c81565b9150612122826120e1565b602082019050919050565b600060208201905081810360008301526121468161210a565b9050919050565b7f736c6963655f6f766572666c6f77000000000000000000000000000000000000600082015250565b6000612183600e83611c81565b915061218e8261214d565b602082019050919050565b600060208201905081810360008301526121b281612176565b9050919050565b7f736c6963655f6f75744f66426f756e6473000000000000000000000000000000600082015250565b60006121ef601183611c81565b91506121fa826121b9565b602082019050919050565b6000602082019050818103600083015261221e816121e2565b9050919050565b7f437265617465323a20696e73756666696369656e742062616c616e6365000000600082015250565b600061225b601d83611c81565b915061226682612225565b602082019050919050565b6000602082019050818103600083015261228a8161224e565b9050919050565b7f437265617465323a2062797465636f6465206c656e677468206973207a65726f600082015250565b60006122c7602083611c81565b91506122d282612291565b602082019050919050565b600060208201905081810360008301526122f6816122ba565b9050919050565b7f437265617465323a204661696c6564206f6e206465706c6f7900000000000000600082015250565b6000612333601983611c81565b915061233e826122fd565b602082019050919050565b6000602082019050818103600083015261236281612326565b9050919050565b600081519050919050565b600061237f82612369565b6123898185611c81565b9350612399818560208601611a20565b6123a2816114c0565b840191505092915050565b600060208201905081810360008301526123c78184612374565b90509291505056fea26469706673582212208d833cfc1f6c436e99e9466473284e37ecb89af06af760cf739dbf730f7a448864736f6c63430008110033"; const isSuperArgs$L = (xs) => xs.length > 1; class ERC725XInit__factory extends ethers.ContractFactory { constructor(...args) { if (isSuperArgs$L(args)) { super(...args); } else { super(_abi$2z, _bytecode$L, args[0]); } } getDeployTransaction(overrides) { return super.getDeployTransaction(overrides || {}); } deploy(overrides) { return super.deploy(overrides || {}); } connect(runner) { return super.connect(runner); } static createInterface() { return new ethers.Interface(_abi$2z); } static connect(address, runner) { return new ethers.Contract(address, _abi$2z, runner); } } __publicField$2z(ERC725XInit__factory, "bytecode", _bytecode$L); __publicField$2z(ERC725XInit__factory, "abi", _abi$2z); var __defProp$2y = Object.defineProperty; var __defNormalProp$2y = (obj, key, value) => key in obj ? __defProp$2y(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$2y = (obj, key, value) => { __defNormalProp$2y(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$2y = [ { inputs: [ { internalType: "address", name: "initialOwner", type: "address" } ], stateMutability: "payable", type: "constructor" }, { inputs: [], name: "ERC725Y_DataKeysValuesEmptyArray", type: "error" }, { inputs: [], name: "ERC725Y_DataKeysValuesLengthMismatch", type: "error" }, { inputs: [], name: "ERC725Y_MsgValueDisallowed", type: "error" }, { inputs: [ { internalType: "address", name: "callerAddress", type: "address" } ], name: "OwnableCallerNotTheOwner", type: "error" }, { inputs: [], name: "OwnableCannotSetZeroAddressAsOwner", type: "error" }, { anonymous: false, inputs: [ { indexed: true, internalType: "bytes32", name: "dataKey", type: "bytes32" }, { indexed: false, internalType: "bytes", name: "dataValue", type: "bytes" } ], name: "DataChanged", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "previousOwner", type: "address" }, { indexed: true, internalType: "address", name: "newOwner", type: "address" } ], name: "OwnershipTransferred", type: "event" }, { inputs: [ { internalType: "bytes32", name: "dataKey", type: "bytes32" } ], name: "getData", outputs: [ { internalType: "bytes", name: "dataValue", type: "bytes" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "bytes32[]", name: "dataKeys", type: "bytes32[]" } ], name: "getDataBatch", outputs: [ { internalType: "bytes[]", name: "dataValues", type: "bytes[]" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "owner", outputs: [ { internalType: "address", name: "", type: "address" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "renounceOwnership", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "bytes32", name: "dataKey", type: "bytes32" }, { internalType: "bytes", name: "dataValue", type: "bytes" } ], name: "setData", outputs: [], stateMutability: "payable", type: "function" }, { inputs: [ { internalType: "bytes32[]", name: "dataKeys", type: "bytes32[]" }, { internalType: "bytes[]", name: "dataValues", type: "bytes[]" } ], name: "setDataBatch", outputs: [], stateMutability: "payable", type: "function" }, { inputs: [ { internalType: "bytes4", name: "interfaceId", type: "bytes4" } ], name: "supportsInterface", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "newOwner", type: "address" } ], name: "transferOwnership", outputs: [], stateMutability: "nonpayable", type: "function" } ]; const _bytecode$K = "0x60806040526040516200158638038062001586833981810160405281019062000029919062000241565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff160362000090576040517f1ad8836c00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b620000a681620000ad60201b620005171760201c565b5062000273565b620000bd620001ae60201b60201c565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614620001ab578073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505b50565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006200020982620001dc565b9050919050565b6200021b81620001fc565b81146200022757600080fd5b50565b6000815190506200023b8162000210565b92915050565b6000602082840312156200025a5762000259620001d7565b5b60006200026a848285016200022a565b91505092915050565b61130380620002836000396000f3fe60806040526004361061007b5760003560e01c80638da5cb5b1161004e5780638da5cb5b1461012d5780639790242114610158578063dedff9c614610174578063f2fde38b146101b15761007b565b806301ffc9a71461008057806354f6127f146100bd578063715018a6146100fa5780637f23690c14610111575b600080fd5b34801561008c57600080fd5b506100a760048036038101906100a29190610860565b6101da565b6040516100b491906108a8565b60405180910390f35b3480156100c957600080fd5b506100e460048036038101906100df91906108f9565b61023b565b6040516100f191906109b6565b60405180910390f35b34801561010657600080fd5b5061010f61024d565b005b61012b60048036038101906101269190610b0d565b610261565b005b34801561013957600080fd5b506101426102b1565b60405161014f9190610baa565b60405180910390f35b610172600480360381019061016d9190610d6e565b6102da565b005b34801561018057600080fd5b5061019b60048036038101906101969190610de6565b6103ec565b6040516101a89190610f3b565b60405180910390f35b3480156101bd57600080fd5b506101d860048036038101906101d39190610f89565b61049d565b005b600063629aa69460e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916148061023457506102338261060f565b5b9050919050565b606061024682610679565b9050919050565b61025561071e565b61025f6000610517565b565b61026961071e565b600034146102a3576040517ff36ba73700000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6102ad8282610797565b5050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b6102e261071e565b6000341461031c576040517ff36ba73700000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b8051825114610357576040517f3bcc897900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6000825103610392576040517f97da5f9500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60005b82518110156103e7576103dc8382815181106103b4576103b3610fb6565b5b60200260200101518383815181106103cf576103ce610fb6565b5b6020026020010151610797565b806001019050610395565b505050565b6060815167ffffffffffffffff811115610409576104086109e2565b5b60405190808252806020026020018201604052801561043c57816020015b60608152602001906001900390816104275790505b50905060005b82518110156104975761046e83828151811061046157610460610fb6565b5b6020026020010151610679565b82828151811061048157610480610fb6565b5b6020026020010181905250806001019050610442565b50919050565b6104a561071e565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff160361050b576040517f1ad8836c00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b61051481610517565b50565b61051f6102b1565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161461060c578073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505b50565b60007f01ffc9a7000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916149050919050565b606060016000838152602001908152602001600020805461069990611014565b80601f01602080910402602001604051908101604052809291908181526020018280546106c590611014565b80156107125780601f106106e757610100808354040283529160200191610712565b820191906000526020600020905b8154815290600101906020018083116106f557829003601f168201915b50505050509050919050565b3373ffffffffffffffffffffffffffffffffffffffff1661073d6102b1565b73ffffffffffffffffffffffffffffffffffffffff161461079557336040517fbf1169c500000000000000000000000000000000000000000000000000000000815260040161078c9190610baa565b60405180910390fd5b565b806001600084815260200190815260200160002090816107b791906111fb565b50817fece574603820d07bc9b91f2a932baadf4628aabcb8afba49776529c14a6104b2826040516107e891906109b6565b60405180910390a25050565b6000604051905090565b600080fd5b600080fd5b60007fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b61083d81610808565b811461084857600080fd5b50565b60008135905061085a81610834565b92915050565b600060208284031215610876576108756107fe565b5b60006108848482850161084b565b91505092915050565b60008115159050919050565b6108a28161088d565b82525050565b60006020820190506108bd6000830184610899565b92915050565b6000819050919050565b6108d6816108c3565b81146108e157600080fd5b50565b6000813590506108f3816108cd565b92915050565b60006020828403121561090f5761090e6107fe565b5b600061091d848285016108e4565b91505092915050565b600081519050919050565b600082825260208201905092915050565b60005b83811015610960578082015181840152602081019050610945565b60008484015250505050565b6000601f19601f8301169050919050565b600061098882610926565b6109928185610931565b93506109a2818560208601610942565b6109ab8161096c565b840191505092915050565b600060208201905081810360008301526109d0818461097d565b905092915050565b600080fd5b600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b610a1a8261096c565b810181811067ffffffffffffffff82111715610a3957610a386109e2565b5b80604052505050565b6000610a4c6107f4565b9050610a588282610a11565b919050565b600067ffffffffffffffff821115610a7857610a776109e2565b5b610a818261096c565b9050602081019050919050565b82818337600083830152505050565b6000610ab0610aab84610a5d565b610a42565b905082815260208101848484011115610acc57610acb6109dd565b5b610ad7848285610a8e565b509392505050565b600082601f830112610af457610af36109d8565b5b8135610b04848260208601610a9d565b91505092915050565b60008060408385031215610b2457610b236107fe565b5b6000610b32858286016108e4565b925050602083013567ffffffffffffffff811115610b5357610b52610803565b5b610b5f85828601610adf565b9150509250929050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000610b9482610b69565b9050919050565b610ba481610b89565b82525050565b6000602082019050610bbf6000830184610b9b565b92915050565b600067ffffffffffffffff821115610be057610bdf6109e2565b5b602082029050602081019050919050565b600080fd5b6000610c09610c0484610bc5565b610a42565b90508083825260208201905060208402830185811115610c2c57610c2b610bf1565b5b835b81811015610c555780610c4188826108e4565b845260208401935050602081019050610c2e565b5050509392505050565b600082601f830112610c7457610c736109d8565b5b8135610c84848260208601610bf6565b91505092915050565b600067ffffffffffffffff821115610ca857610ca76109e2565b5b602082029050602081019050919050565b6000610ccc610cc784610c8d565b610a42565b90508083825260208201905060208402830185811115610cef57610cee610bf1565b5b835b81811015610d3657803567ffffffffffffffff811115610d1457610d136109d8565b5b808601610d218982610adf565b85526020850194505050602081019050610cf1565b5050509392505050565b600082601f830112610d5557610d546109d8565b5b8135610d65848260208601610cb9565b91505092915050565b60008060408385031215610d8557610d846107fe565b5b600083013567ffffffffffffffff811115610da357610da2610803565b5b610daf85828601610c5f565b925050602083013567ffffffffffffffff811115610dd057610dcf610803565b5b610ddc85828601610d40565b9150509250929050565b600060208284031215610dfc57610dfb6107fe565b5b600082013567ffffffffffffffff811115610e1a57610e19610803565b5b610e2684828501610c5f565b91505092915050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b600082825260208201905092915050565b6000610e7782610926565b610e818185610e5b565b9350610e91818560208601610942565b610e9a8161096c565b840191505092915050565b6000610eb18383610e6c565b905092915050565b6000602082019050919050565b6000610ed182610e2f565b610edb8185610e3a565b935083602082028501610eed85610e4b565b8060005b85811015610f295784840389528151610f0a8582610ea5565b9450610f1583610eb9565b925060208a01995050600181019050610ef1565b50829750879550505050505092915050565b60006020820190508181036000830152610f558184610ec6565b905092915050565b610f6681610b89565b8114610f7157600080fd5b50565b600081359050610f8381610f5d565b92915050565b600060208284031215610f9f57610f9e6107fe565b5b6000610fad84828501610f74565b91505092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b6000600282049050600182168061102c57607f821691505b60208210810361103f5761103e610fe5565b5b50919050565b60008190508160005260206000209050919050565b60006020601f8301049050919050565b600082821b905092915050565b6000600883026110a77fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8261106a565b6110b1868361106a565b95508019841693508086168417925050509392505050565b6000819050919050565b6000819050919050565b60006110f86110f36110ee846110c9565b6110d3565b6110c9565b9050919050565b6000819050919050565b611112836110dd565b61112661111e826110ff565b848454611077565b825550505050565b600090565b61113b61112e565b611146818484611109565b505050565b5b8181101561116a5761115f600082611133565b60018101905061114c565b5050565b601f8211156111af5761118081611045565b6111898461105a565b81016020851015611198578190505b6111ac6111a48561105a565b83018261114b565b50505b505050565b600082821c905092915050565b60006111d2600019846008026111b4565b1980831691505092915050565b60006111eb83836111c1565b9150826002028217905092915050565b61120482610926565b67ffffffffffffffff81111561121d5761121c6109e2565b5b6112278254611014565b61123282828561116e565b600060209050601f8311600181146112655760008415611253578287015190505b61125d85826111df565b8655506112c5565b601f19841661127386611045565b60005b8281101561129b57848901518255600182019150602085019450602081019050611276565b868310156112b857848901516112b4601f8916826111c1565b8355505b6001600288020188555050505b50505050505056fea26469706673582212209c4e0b1c4c27ebaebe9aec6ff8b2f16fbfbd49b0cae2171ba190d595aecf43c864736f6c63430008110033"; const isSuperArgs$K = (xs) => xs.length > 1; class ERC725Y__factory extends ethers.ContractFactory { constructor(...args) { if (isSuperArgs$K(args)) { super(...args); } else { super(_abi$2y, _bytecode$K, args[0]); } } getDeployTransaction(initialOwner, overrides) { return super.getDeployTransaction(initialOwner, overrides || {}); } deploy(initialOwner, overrides) { return super.deploy(initialOwner, overrides || {}); } connect(runner) { return super.connect(runner); } static createInterface() { return new ethers.Interface(_abi$2y); } static connect(address, runner) { return new ethers.Contract(address, _abi$2y, runner); } } __publicField$2y(ERC725Y__factory, "bytecode", _bytecode$K); __publicField$2y(ERC725Y__factory, "abi", _abi$2y); var __defProp$2x = Object.defineProperty; var __defNormalProp$2x = (obj, key, value) => key in obj ? __defProp$2x(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$2x = (obj, key, value) => { __defNormalProp$2x(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$2x = [ { inputs: [], stateMutability: "nonpayable", type: "constructor" }, { inputs: [], name: "ERC725Y_DataKeysValuesEmptyArray", type: "error" }, { inputs: [], name: "ERC725Y_DataKeysValuesLengthMismatch", type: "error" }, { inputs: [], name: "ERC725Y_MsgValueDisallowed", type: "error" }, { inputs: [ { internalType: "address", name: "callerAddress", type: "address" } ], name: "OwnableCallerNotTheOwner", type: "error" }, { inputs: [], name: "OwnableCannotSetZeroAddressAsOwner", type: "error" }, { anonymous: false, inputs: [ { indexed: true, internalType: "bytes32", name: "dataKey", type: "bytes32" }, { indexed: false, internalType: "bytes", name: "dataValue", type: "bytes" } ], name: "DataChanged", type: "event" }, { anonymous: false, inputs: [ { indexed: false, internalType: "uint8", name: "version", type: "uint8" } ], name: "Initialized", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "previousOwner", type: "address" }, { indexed: true, internalType: "address", name: "newOwner", type: "address" } ], name: "OwnershipTransferred", type: "event" }, { inputs: [ { internalType: "bytes32", name: "dataKey", type: "bytes32" } ], name: "getData", outputs: [ { internalType: "bytes", name: "dataValue", type: "bytes" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "bytes32[]", name: "dataKeys", type: "bytes32[]" } ], name: "getDataBatch", outputs: [ { internalType: "bytes[]", name: "dataValues", type: "bytes[]" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "initialOwner", type: "address" } ], name: "initialize", outputs: [], stateMutability: "payable", type: "function" }, { inputs: [], name: "owner", outputs: [ { internalType: "address", name: "", type: "address" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "renounceOwnership", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "bytes32", name: "dataKey", type: "bytes32" }, { internalType: "bytes", name: "dataValue", type: "bytes" } ], name: "setData", outputs: [], stateMutability: "payable", type: "function" }, { inputs: [ { internalType: "bytes32[]", name: "dataKeys", type: "bytes32[]" }, { internalType: "bytes[]", name: "dataValues", type: "bytes[]" } ], name: "setDataBatch", outputs: [], stateMutability: "payable", type: "function" }, { inputs: [ { internalType: "bytes4", name: "interfaceId", type: "bytes4" } ], name: "supportsInterface", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "newOwner", type: "address" } ], name: "transferOwnership", outputs: [], stateMutability: "nonpayable", type: "function" } ]; const _bytecode$J = "0x60806040523480156200001157600080fd5b50620000226200002860201b60201c565b620001d2565b600060019054906101000a900460ff16156200007b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620000729062000175565b60405180910390fd5b60ff801660008054906101000a900460ff1660ff1614620000ec5760ff6000806101000a81548160ff021916908360ff1602179055507f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb384740249860ff604051620000e39190620001b5565b60405180910390a15b565b600082825260208201905092915050565b7f496e697469616c697a61626c653a20636f6e747261637420697320696e69746960008201527f616c697a696e6700000000000000000000000000000000000000000000000000602082015250565b60006200015d602783620000ee565b91506200016a82620000ff565b604082019050919050565b6000602082019050818103600083015262000190816200014e565b9050919050565b600060ff82169050919050565b620001af8162000197565b82525050565b6000602082019050620001cc6000830184620001a4565b92915050565b6116e980620001e26000396000f3fe6080604052600436106100865760003560e01c80638da5cb5b116100595780638da5cb5b146101385780639790242114610163578063c4d66de81461017f578063dedff9c61461019b578063f2fde38b146101d857610086565b806301ffc9a71461008b57806354f6127f146100c8578063715018a6146101055780637f23690c1461011c575b600080fd5b34801561009757600080fd5b506100b260048036038101906100ad9190610aae565b610201565b6040516100bf9190610af6565b60405180910390f35b3480156100d457600080fd5b506100ef60048036038101906100ea9190610b47565b610262565b6040516100fc9190610c04565b60405180910390f35b34801561011157600080fd5b5061011a610274565b005b61013660048036038101906101319190610d5b565b610288565b005b34801561014457600080fd5b5061014d6102d8565b60405161015a9190610df8565b60405180910390f35b61017d60048036038101906101789190610fbc565b610301565b005b61019960048036038101906101949190611060565b610413565b005b3480156101a757600080fd5b506101c260048036038101906101bd919061108d565b610553565b6040516101cf91906111e2565b60405180910390f35b3480156101e457600080fd5b506101ff60048036038101906101fa9190611060565b610604565b005b600063629aa69460e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916148061025b575061025a8261067e565b5b9050919050565b606061026d826106e8565b9050919050565b61027c61078d565b6102866000610806565b565b61029061078d565b600034146102ca576040517ff36ba73700000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6102d48282610901565b5050565b60008060029054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b61030961078d565b60003414610343576040517ff36ba73700000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b805182511461037e576040517f3bcc897900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60008251036103b9576040517f97da5f9500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60005b825181101561040e576104038382815181106103db576103da611204565b5b60200260200101518383815181106103f6576103f5611204565b5b6020026020010151610901565b8060010190506103bc565b505050565b60008060019054906101000a900460ff161590508080156104445750600160008054906101000a900460ff1660ff16105b8061047157506104533061095e565b1580156104705750600160008054906101000a900460ff1660ff16145b5b6104b0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016104a7906112b6565b60405180910390fd5b60016000806101000a81548160ff021916908360ff16021790555080156104ed576001600060016101000a81548160ff0219169083151502179055505b6104f682610981565b801561054f5760008060016101000a81548160ff0219169083151502179055507f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb384740249860016040516105469190611328565b60405180910390a15b5050565b6060815167ffffffffffffffff8111156105705761056f610c30565b5b6040519080825280602002602001820160405280156105a357816020015b606081526020019060019003908161058e5790505b50905060005b82518110156105fe576105d58382815181106105c8576105c7611204565b5b60200260200101516106e8565b8282815181106105e8576105e7611204565b5b60200260200101819052508060010190506105a9565b50919050565b61060c61078d565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603610672576040517f1ad8836c00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b61067b81610806565b50565b60007f01ffc9a7000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916149050919050565b606060016000838152602001908152602001600020805461070890611372565b80601f016020809104026020016040519081016040528092919081815260200182805461073490611372565b80156107815780601f1061075657610100808354040283529160200191610781565b820191906000526020600020905b81548152906001019060200180831161076457829003601f168201915b50505050509050919050565b3373ffffffffffffffffffffffffffffffffffffffff166107ac6102d8565b73ffffffffffffffffffffffffffffffffffffffff161461080457336040517fbf1169c50000000000000000000000000000000000000000000000000000000081526004016107fb9190610df8565b60405180910390fd5b565b61080e6102d8565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16146108fe578073ffffffffffffffffffffffffffffffffffffffff16600060029054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a380600060026101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505b50565b80600160008481526020019081526020016000209081610921919061154f565b50817fece574603820d07bc9b91f2a932baadf4628aabcb8afba49776529c14a6104b2826040516109529190610c04565b60405180910390a25050565b6000808273ffffffffffffffffffffffffffffffffffffffff163b119050919050565b600060019054906101000a900460ff166109d0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016109c790611693565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603610a36576040517f1ad8836c00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b610a3f81610806565b50565b6000604051905090565b600080fd5b600080fd5b60007fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b610a8b81610a56565b8114610a9657600080fd5b50565b600081359050610aa881610a82565b92915050565b600060208284031215610ac457610ac3610a4c565b5b6000610ad284828501610a99565b91505092915050565b60008115159050919050565b610af081610adb565b82525050565b6000602082019050610b0b6000830184610ae7565b92915050565b6000819050919050565b610b2481610b11565b8114610b2f57600080fd5b50565b600081359050610b4181610b1b565b92915050565b600060208284031215610b5d57610b5c610a4c565b5b6000610b6b84828501610b32565b91505092915050565b600081519050919050565b600082825260208201905092915050565b60005b83811015610bae578082015181840152602081019050610b93565b60008484015250505050565b6000601f19601f8301169050919050565b6000610bd682610b74565b610be08185610b7f565b9350610bf0818560208601610b90565b610bf981610bba565b840191505092915050565b60006020820190508181036000830152610c1e8184610bcb565b905092915050565b600080fd5b600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b610c6882610bba565b810181811067ffffffffffffffff82111715610c8757610c86610c30565b5b80604052505050565b6000610c9a610a42565b9050610ca68282610c5f565b919050565b600067ffffffffffffffff821115610cc657610cc5610c30565b5b610ccf82610bba565b9050602081019050919050565b82818337600083830152505050565b6000610cfe610cf984610cab565b610c90565b905082815260208101848484011115610d1a57610d19610c2b565b5b610d25848285610cdc565b509392505050565b600082601f830112610d4257610d41610c26565b5b8135610d52848260208601610ceb565b91505092915050565b60008060408385031215610d7257610d71610a4c565b5b6000610d8085828601610b32565b925050602083013567ffffffffffffffff811115610da157610da0610a51565b5b610dad85828601610d2d565b9150509250929050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000610de282610db7565b9050919050565b610df281610dd7565b82525050565b6000602082019050610e0d6000830184610de9565b92915050565b600067ffffffffffffffff821115610e2e57610e2d610c30565b5b602082029050602081019050919050565b600080fd5b6000610e57610e5284610e13565b610c90565b90508083825260208201905060208402830185811115610e7a57610e79610e3f565b5b835b81811015610ea35780610e8f8882610b32565b845260208401935050602081019050610e7c565b5050509392505050565b600082601f830112610ec257610ec1610c26565b5b8135610ed2848260208601610e44565b91505092915050565b600067ffffffffffffffff821115610ef657610ef5610c30565b5b602082029050602081019050919050565b6000610f1a610f1584610edb565b610c90565b90508083825260208201905060208402830185811115610f3d57610f3c610e3f565b5b835b81811015610f8457803567ffffffffffffffff811115610f6257610f61610c26565b5b808601610f6f8982610d2d565b85526020850194505050602081019050610f3f565b5050509392505050565b600082601f830112610fa357610fa2610c26565b5b8135610fb3848260208601610f07565b91505092915050565b60008060408385031215610fd357610fd2610a4c565b5b600083013567ffffffffffffffff811115610ff157610ff0610a51565b5b610ffd85828601610ead565b925050602083013567ffffffffffffffff81111561101e5761101d610a51565b5b61102a85828601610f8e565b9150509250929050565b61103d81610dd7565b811461104857600080fd5b50565b60008135905061105a81611034565b92915050565b60006020828403121561107657611075610a4c565b5b60006110848482850161104b565b91505092915050565b6000602082840312156110a3576110a2610a4c565b5b600082013567ffffffffffffffff8111156110c1576110c0610a51565b5b6110cd84828501610ead565b91505092915050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b600082825260208201905092915050565b600061111e82610b74565b6111288185611102565b9350611138818560208601610b90565b61114181610bba565b840191505092915050565b60006111588383611113565b905092915050565b6000602082019050919050565b6000611178826110d6565b61118281856110e1565b935083602082028501611194856110f2565b8060005b858110156111d057848403895281516111b1858261114c565b94506111bc83611160565b925060208a01995050600181019050611198565b50829750879550505050505092915050565b600060208201905081810360008301526111fc818461116d565b905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600082825260208201905092915050565b7f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160008201527f647920696e697469616c697a6564000000000000000000000000000000000000602082015250565b60006112a0602e83611233565b91506112ab82611244565b604082019050919050565b600060208201905081810360008301526112cf81611293565b9050919050565b6000819050919050565b600060ff82169050919050565b6000819050919050565b600061131261130d611308846112d6565b6112ed565b6112e0565b9050919050565b611322816112f7565b82525050565b600060208201905061133d6000830184611319565b92915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b6000600282049050600182168061138a57607f821691505b60208210810361139d5761139c611343565b5b50919050565b60008190508160005260206000209050919050565b60006020601f8301049050919050565b600082821b905092915050565b6000600883026114057fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff826113c8565b61140f86836113c8565b95508019841693508086168417925050509392505050565b6000819050919050565b600061144c61144761144284611427565b6112ed565b611427565b9050919050565b6000819050919050565b61146683611431565b61147a61147282611453565b8484546113d5565b825550505050565b600090565b61148f611482565b61149a81848461145d565b505050565b5b818110156114be576114b3600082611487565b6001810190506114a0565b5050565b601f821115611503576114d4816113a3565b6114dd846113b8565b810160208510156114ec578190505b6115006114f8856113b8565b83018261149f565b50505b505050565b600082821c905092915050565b600061152660001984600802611508565b1980831691505092915050565b600061153f8383611515565b9150826002028217905092915050565b61155882610b74565b67ffffffffffffffff81111561157157611570610c30565b5b61157b8254611372565b6115868282856114c2565b600060209050601f8311600181146115b957600084156115a7578287015190505b6115b18582611533565b865550611619565b601f1984166115c7866113a3565b60005b828110156115ef578489015182556001820191506020850194506020810190506115ca565b8683101561160c5784890151611608601f891682611515565b8355505b6001600288020188555050505b505050505050565b7f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960008201527f6e697469616c697a696e67000000000000000000000000000000000000000000602082015250565b600061167d602b83611233565b915061168882611621565b604082019050919050565b600060208201905081810360008301526116ac81611670565b905091905056fea2646970667358221220a149ed846d68c5d9c23bd9fcd77e6c9bc41ebd6362459ecc1df6e48ef6f9e09764736f6c63430008110033"; const isSuperArgs$J = (xs) => xs.length > 1; class ERC725YInit__factory extends ethers.ContractFactory { constructor(...args) { if (isSuperArgs$J(args)) { super(...args); } else { super(_abi$2x, _bytecode$J, args[0]); } } getDeployTransaction(overrides) { return super.getDeployTransaction(overrides || {}); } deploy(overrides) { return super.deploy(overrides || {}); } connect(runner) { return super.connect(runner); } static createInterface() { return new ethers.Interface(_abi$2x); } static connect(address, runner) { return new ethers.Contract(address, _abi$2x, runner); } } __publicField$2x(ERC725YInit__factory, "bytecode", _bytecode$J); __publicField$2x(ERC725YInit__factory, "abi", _abi$2x); const index$5 = { __proto__: null, ERC725Init__factory: ERC725Init__factory, ERC725XInit__factory: ERC725XInit__factory, ERC725X__factory: ERC725X__factory, ERC725YInit__factory: ERC725YInit__factory, ERC725Y__factory: ERC725Y__factory, ERC725__factory: ERC725__factory }; const index$4 = { __proto__: null, ERC725Init__factory: ERC725Init__factory, ERC725XInit__factory: ERC725XInit__factory, ERC725X__factory: ERC725X__factory, ERC725YInit__factory: ERC725YInit__factory, ERC725Y__factory: ERC725Y__factory, ERC725__factory: ERC725__factory, factories: index$5 }; async function getErc725yContract(erc725y, signer) { if (!ethers.isAddress(erc725y) && !ethers.isAddressable(erc725y)) { throw new Error( `The parameter \`erc725y\` is not a valid address nor a valid contract instance of \`ERC725Y\`. Value: '${erc725y}'` ); } let erc725yContract; if (ethers.isAddress(erc725y)) { erc725yContract = ERC725Y__factory.connect(erc725y, signer); } else if (signer) { erc725yContract = erc725y.connect(signer); } else { erc725yContract = erc725y; } try { const result = await erc725yContract.supportsInterface(lspSmartContracts.INTERFACE_IDS.ERC725Y); if (!result) { throw new Error("Contract does not support 'ERC725Y'."); } } catch (errorMessage) { throw new Error(errorMessage); } return erc725yContract; } var __defProp$2w = Object.defineProperty; var __defNormalProp$2w = (obj, key, value) => key in obj ? __defProp$2w(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$2w = (obj, key, value) => { __defNormalProp$2w(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$2w = [ { anonymous: false, inputs: [ { indexed: true, internalType: "bytes32", name: "role", type: "bytes32" }, { indexed: true, internalType: "bytes32", name: "previousAdminRole", type: "bytes32" }, { indexed: true, internalType: "bytes32", name: "newAdminRole", type: "bytes32" } ], name: "RoleAdminChanged", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "bytes32", name: "role", type: "bytes32" }, { indexed: true, internalType: "address", name: "account", type: "address" }, { indexed: true, internalType: "address", name: "sender", type: "address" } ], name: "RoleGranted", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "bytes32", name: "role", type: "bytes32" }, { indexed: true, internalType: "address", name: "account", type: "address" }, { indexed: true, internalType: "address", name: "sender", type: "address" } ], name: "RoleRevoked", type: "event" }, { inputs: [], name: "DEFAULT_ADMIN_ROLE", outputs: [ { internalType: "bytes32", name: "", type: "bytes32" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "bytes32", name: "role", type: "bytes32" } ], name: "getRoleAdmin", outputs: [ { internalType: "bytes32", name: "", type: "bytes32" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "bytes32", name: "role", type: "bytes32" }, { internalType: "address", name: "account", type: "address" } ], name: "grantRole", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "bytes32", name: "role", type: "bytes32" }, { internalType: "address", name: "account", type: "address" } ], name: "hasRole", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "bytes32", name: "role", type: "bytes32" }, { internalType: "address", name: "account", type: "address" } ], name: "renounceRole", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "bytes32", name: "role", type: "bytes32" }, { internalType: "address", name: "account", type: "address" } ], name: "revokeRole", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "bytes4", name: "interfaceId", type: "bytes4" } ], name: "supportsInterface", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" } ]; class AccessControl__factory { static createInterface() { return new ethers.Interface(_abi$2w); } static connect(address, runner) { return new ethers.Contract(address, _abi$2w, runner); } } __publicField$2w(AccessControl__factory, "abi", _abi$2w); var __defProp$2v = Object.defineProperty; var __defNormalProp$2v = (obj, key, value) => key in obj ? __defProp$2v(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$2v = (obj, key, value) => { __defNormalProp$2v(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$2v = [ { anonymous: false, inputs: [ { indexed: true, internalType: "bytes32", name: "role", type: "bytes32" }, { indexed: true, internalType: "bytes32", name: "previousAdminRole", type: "bytes32" }, { indexed: true, internalType: "bytes32", name: "newAdminRole", type: "bytes32" } ], name: "RoleAdminChanged", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "bytes32", name: "role", type: "bytes32" }, { indexed: true, internalType: "address", name: "account", type: "address" }, { indexed: true, internalType: "address", name: "sender", type: "address" } ], name: "RoleGranted", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "bytes32", name: "role", type: "bytes32" }, { indexed: true, internalType: "address", name: "account", type: "address" }, { indexed: true, internalType: "address", name: "sender", type: "address" } ], name: "RoleRevoked", type: "event" }, { inputs: [], name: "CROSSCHAIN_ALIAS", outputs: [ { internalType: "bytes32", name: "", type: "bytes32" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "DEFAULT_ADMIN_ROLE", outputs: [ { internalType: "bytes32", name: "", type: "bytes32" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "bytes32", name: "role", type: "bytes32" } ], name: "getRoleAdmin", outputs: [ { internalType: "bytes32", name: "", type: "bytes32" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "bytes32", name: "role", type: "bytes32" }, { internalType: "address", name: "account", type: "address" } ], name: "grantRole", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "bytes32", name: "role", type: "bytes32" }, { internalType: "address", name: "account", type: "address" } ], name: "hasRole", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "bytes32", name: "role", type: "bytes32" }, { internalType: "address", name: "account", type: "address" } ], name: "renounceRole", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "bytes32", name: "role", type: "bytes32" }, { internalType: "address", name: "account", type: "address" } ], name: "revokeRole", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "bytes4", name: "interfaceId", type: "bytes4" } ], name: "supportsInterface", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" } ]; class AccessControlCrossChain__factory { static createInterface() { return new ethers.Interface(_abi$2v); } static connect(address, runner) { return new ethers.Contract( address, _abi$2v, runner ); } } __publicField$2v(AccessControlCrossChain__factory, "abi", _abi$2v); var __defProp$2u = Object.defineProperty; var __defNormalProp$2u = (obj, key, value) => key in obj ? __defProp$2u(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$2u = (obj, key, value) => { __defNormalProp$2u(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$2u = [ { anonymous: false, inputs: [], name: "DefaultAdminDelayChangeCanceled", type: "event" }, { anonymous: false, inputs: [ { indexed: false, internalType: "uint48", name: "newDelay", type: "uint48" }, { indexed: false, internalType: "uint48", name: "effectSchedule", type: "uint48" } ], name: "DefaultAdminDelayChangeScheduled", type: "event" }, { anonymous: false, inputs: [], name: "DefaultAdminTransferCanceled", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "newAdmin", type: "address" }, { indexed: false, internalType: "uint48", name: "acceptSchedule", type: "uint48" } ], name: "DefaultAdminTransferScheduled", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "bytes32", name: "role", type: "bytes32" }, { indexed: true, internalType: "bytes32", name: "previousAdminRole", type: "bytes32" }, { indexed: true, internalType: "bytes32", name: "newAdminRole", type: "bytes32" } ], name: "RoleAdminChanged", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "bytes32", name: "role", type: "bytes32" }, { indexed: true, internalType: "address", name: "account", type: "address" }, { indexed: true, internalType: "address", name: "sender", type: "address" } ], name: "RoleGranted", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "bytes32", name: "role", type: "bytes32" }, { indexed: true, internalType: "address", name: "account", type: "address" }, { indexed: true, internalType: "address", name: "sender", type: "address" } ], name: "RoleRevoked", type: "event" }, { inputs: [], name: "DEFAULT_ADMIN_ROLE", outputs: [ { internalType: "bytes32", name: "", type: "bytes32" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "acceptDefaultAdminTransfer", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "newAdmin", type: "address" } ], name: "beginDefaultAdminTransfer", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [], name: "cancelDefaultAdminTransfer", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "uint48", name: "newDelay", type: "uint48" } ], name: "changeDefaultAdminDelay", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [], name: "defaultAdmin", outputs: [ { internalType: "address", name: "", type: "address" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "defaultAdminDelay", outputs: [ { internalType: "uint48", name: "", type: "uint48" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "defaultAdminDelayIncreaseWait", outputs: [ { internalType: "uint48", name: "", type: "uint48" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "bytes32", name: "role", type: "bytes32" } ], name: "getRoleAdmin", outputs: [ { internalType: "bytes32", name: "", type: "bytes32" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "bytes32", name: "role", type: "bytes32" }, { internalType: "address", name: "account", type: "address" } ], name: "grantRole", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "bytes32", name: "role", type: "bytes32" }, { internalType: "address", name: "account", type: "address" } ], name: "hasRole", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "owner", outputs: [ { internalType: "address", name: "", type: "address" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "pendingDefaultAdmin", outputs: [ { internalType: "address", name: "newAdmin", type: "address" }, { internalType: "uint48", name: "schedule", type: "uint48" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "pendingDefaultAdminDelay", outputs: [ { internalType: "uint48", name: "newDelay", type: "uint48" }, { internalType: "uint48", name: "schedule", type: "uint48" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "bytes32", name: "role", type: "bytes32" }, { internalType: "address", name: "account", type: "address" } ], name: "renounceRole", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "bytes32", name: "role", type: "bytes32" }, { internalType: "address", name: "account", type: "address" } ], name: "revokeRole", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [], name: "rollbackDefaultAdminDelay", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "bytes4", name: "interfaceId", type: "bytes4" } ], name: "supportsInterface", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" } ]; class AccessControlDefaultAdminRules__factory { static createInterface() { return new ethers.Interface(_abi$2u); } static connect(address, runner) { return new ethers.Contract( address, _abi$2u, runner ); } } __publicField$2u(AccessControlDefaultAdminRules__factory, "abi", _abi$2u); var __defProp$2t = Object.defineProperty; var __defNormalProp$2t = (obj, key, value) => key in obj ? __defProp$2t(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$2t = (obj, key, value) => { __defNormalProp$2t(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$2t = [ { anonymous: false, inputs: [ { indexed: true, internalType: "bytes32", name: "role", type: "bytes32" }, { indexed: true, internalType: "bytes32", name: "previousAdminRole", type: "bytes32" }, { indexed: true, internalType: "bytes32", name: "newAdminRole", type: "bytes32" } ], name: "RoleAdminChanged", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "bytes32", name: "role", type: "bytes32" }, { indexed: true, internalType: "address", name: "account", type: "address" }, { indexed: true, internalType: "address", name: "sender", type: "address" } ], name: "RoleGranted", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "bytes32", name: "role", type: "bytes32" }, { indexed: true, internalType: "address", name: "account", type: "address" }, { indexed: true, internalType: "address", name: "sender", type: "address" } ], name: "RoleRevoked", type: "event" }, { inputs: [], name: "DEFAULT_ADMIN_ROLE", outputs: [ { internalType: "bytes32", name: "", type: "bytes32" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "bytes32", name: "role", type: "bytes32" } ], name: "getRoleAdmin", outputs: [ { internalType: "bytes32", name: "", type: "bytes32" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "bytes32", name: "role", type: "bytes32" }, { internalType: "uint256", name: "index", type: "uint256" } ], name: "getRoleMember", outputs: [ { internalType: "address", name: "", type: "address" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "bytes32", name: "role", type: "bytes32" } ], name: "getRoleMemberCount", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "bytes32", name: "role", type: "bytes32" }, { internalType: "address", name: "account", type: "address" } ], name: "grantRole", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "bytes32", name: "role", type: "bytes32" }, { internalType: "address", name: "account", type: "address" } ], name: "hasRole", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "bytes32", name: "role", type: "bytes32" }, { internalType: "address", name: "account", type: "address" } ], name: "renounceRole", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "bytes32", name: "role", type: "bytes32" }, { internalType: "address", name: "account", type: "address" } ], name: "revokeRole", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "bytes4", name: "interfaceId", type: "bytes4" } ], name: "supportsInterface", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" } ]; class AccessControlEnumerable__factory { static createInterface() { return new ethers.Interface(_abi$2t); } static connect(address, runner) { return new ethers.Contract( address, _abi$2t, runner ); } } __publicField$2t(AccessControlEnumerable__factory, "abi", _abi$2t); var __defProp$2s = Object.defineProperty; var __defNormalProp$2s = (obj, key, value) => key in obj ? __defProp$2s(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$2s = (obj, key, value) => { __defNormalProp$2s(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$2s = [ { inputs: [ { internalType: "address", name: "beacon", type: "address" }, { internalType: "bytes", name: "data", type: "bytes" } ], stateMutability: "payable", type: "constructor" }, { anonymous: false, inputs: [ { indexed: false, internalType: "address", name: "previousAdmin", type: "address" }, { indexed: false, internalType: "address", name: "newAdmin", type: "address" } ], name: "AdminChanged", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "beacon", type: "address" } ], name: "BeaconUpgraded", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "implementation", type: "address" } ], name: "Upgraded", type: "event" }, { stateMutability: "payable", type: "fallback" }, { stateMutability: "payable", type: "receive" } ]; const _bytecode$I = "0x608060405260405161091438038061091483398101604081905261002291610463565b61002e82826000610035565b505061058d565b61003e83610100565b6040516001600160a01b038416907f1cf3b03a6cf19fa2baba4df148e9dcabedea7f8a5c07840e207e5c089be95d3e90600090a260008251118061007f5750805b156100fb576100f9836001600160a01b0316635c60da1b6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156100c5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906100e99190610523565b836102a360201b6100291760201c565b505b505050565b610113816102cf60201b6100551760201c565b6101725760405162461bcd60e51b815260206004820152602560248201527f455243313936373a206e657720626561636f6e206973206e6f74206120636f6e6044820152641d1c9858dd60da1b60648201526084015b60405180910390fd5b6101e6816001600160a01b0316635c60da1b6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156101b3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101d79190610523565b6102cf60201b6100551760201c565b61024b5760405162461bcd60e51b815260206004820152603060248201527f455243313936373a20626561636f6e20696d706c656d656e746174696f6e206960448201526f1cc81b9bdd08184818dbdb9d1c9858dd60821b6064820152608401610169565b806102827fa3f0ad74e5423aebfd80d3ef4346578335a9a72aeaee59ff6cb3582b35133d5060001b6102de60201b6100641760201c565b80546001600160a01b0319166001600160a01b039290921691909117905550565b60606102c883836040518060600160405280602781526020016108ed602791396102e1565b9392505050565b6001600160a01b03163b151590565b90565b6060600080856001600160a01b0316856040516102fe919061053e565b600060405180830381855af49150503d8060008114610339576040519150601f19603f3d011682016040523d82523d6000602084013e61033e565b606091505b5090925090506103508683838761035a565b9695505050505050565b606083156103c95782516000036103c2576001600160a01b0385163b6103c25760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401610169565b50816103d3565b6103d383836103db565b949350505050565b8151156103eb5781518083602001fd5b8060405162461bcd60e51b8152600401610169919061055a565b80516001600160a01b038116811461041c57600080fd5b919050565b634e487b7160e01b600052604160045260246000fd5b60005b8381101561045257818101518382015260200161043a565b838111156100f95750506000910152565b6000806040838503121561047657600080fd5b61047f83610405565b60208401519092506001600160401b038082111561049c57600080fd5b818501915085601f8301126104b057600080fd5b8151818111156104c2576104c2610421565b604051601f8201601f19908116603f011681019083821181831017156104ea576104ea610421565b8160405282815288602084870101111561050357600080fd5b610514836020830160208801610437565b80955050505050509250929050565b60006020828403121561053557600080fd5b6102c882610405565b60008251610550818460208701610437565b9190910192915050565b6020815260008251806020840152610579816040850160208701610437565b601f01601f19169190910160400192915050565b6103518061059c6000396000f3fe60806040523661001357610011610017565b005b6100115b610027610022610067565b610100565b565b606061004e83836040518060600160405280602781526020016102f560279139610124565b9392505050565b6001600160a01b03163b151590565b90565b600061009a7fa3f0ad74e5423aebfd80d3ef4346578335a9a72aeaee59ff6cb3582b35133d50546001600160a01b031690565b6001600160a01b0316635c60da1b6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156100d7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906100fb919061024c565b905090565b3660008037600080366000845af43d6000803e80801561011f573d6000f35b3d6000fd5b6060600080856001600160a01b03168560405161014191906102a5565b600060405180830381855af49150503d806000811461017c576040519150601f19603f3d011682016040523d82523d6000602084013e610181565b606091505b50915091506101928683838761019c565b9695505050505050565b60608315610210578251600003610209576001600160a01b0385163b6102095760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e747261637400000060448201526064015b60405180910390fd5b508161021a565b61021a8383610222565b949350505050565b8151156102325781518083602001fd5b8060405162461bcd60e51b815260040161020091906102c1565b60006020828403121561025e57600080fd5b81516001600160a01b038116811461004e57600080fd5b60005b83811015610290578181015183820152602001610278565b8381111561029f576000848401525b50505050565b600082516102b7818460208701610275565b9190910192915050565b60208152600082518060208401526102e0816040850160208701610275565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a2646970667358221220e1837ee2a5e3e46daae239d8e33725bdb2ac92b33d5244f5ae7544f9e9658be064736f6c634300080d0033416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564"; const isSuperArgs$I = (xs) => xs.length > 1; class BeaconProxy__factory extends ethers.ContractFactory { constructor(...args) { if (isSuperArgs$I(args)) { super(...args); } else { super(_abi$2s, _bytecode$I, args[0]); } } getDeployTransaction(beacon, data, overrides) { return super.getDeployTransaction(beacon, data, overrides || {}); } deploy(beacon, data, overrides) { return super.deploy(beacon, data, overrides || {}); } connect(runner) { return super.connect(runner); } static createInterface() { return new ethers.Interface(_abi$2s); } static connect(address, runner) { return new ethers.Contract(address, _abi$2s, runner); } } __publicField$2s(BeaconProxy__factory, "bytecode", _bytecode$I); __publicField$2s(BeaconProxy__factory, "abi", _abi$2s); var __defProp$2r = Object.defineProperty; var __defNormalProp$2r = (obj, key, value) => key in obj ? __defProp$2r(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$2r = (obj, key, value) => { __defNormalProp$2r(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$2r = [ { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "payee", type: "address" }, { indexed: false, internalType: "uint256", name: "weiAmount", type: "uint256" } ], name: "Deposited", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "previousOwner", type: "address" }, { indexed: true, internalType: "address", name: "newOwner", type: "address" } ], name: "OwnershipTransferred", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "payee", type: "address" }, { indexed: false, internalType: "uint256", name: "weiAmount", type: "uint256" } ], name: "Withdrawn", type: "event" }, { inputs: [ { internalType: "address", name: "payee", type: "address" } ], name: "deposit", outputs: [], stateMutability: "payable", type: "function" }, { inputs: [ { internalType: "address", name: "payee", type: "address" } ], name: "depositsOf", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "owner", outputs: [ { internalType: "address", name: "", type: "address" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "renounceOwnership", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "newOwner", type: "address" } ], name: "transferOwnership", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address payable", name: "payee", type: "address" } ], name: "withdraw", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "payee", type: "address" } ], name: "withdrawalAllowed", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" } ]; class ConditionalEscrow__factory { static createInterface() { return new ethers.Interface(_abi$2r); } static connect(address, runner) { return new ethers.Contract(address, _abi$2r, runner); } } __publicField$2r(ConditionalEscrow__factory, "abi", _abi$2r); var __defProp$2q = Object.defineProperty; var __defNormalProp$2q = (obj, key, value) => key in obj ? __defProp$2q(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$2q = (obj, key, value) => { __defNormalProp$2q(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$2q = [ { inputs: [ { internalType: "address", name: "bridge", type: "address" } ], stateMutability: "nonpayable", type: "constructor" } ]; const _bytecode$H = "0x60a0604052348015600f57600080fd5b5060405160bc38038060bc833981016040819052602a91603a565b6001600160a01b03166080526068565b600060208284031215604b57600080fd5b81516001600160a01b0381168114606157600080fd5b9392505050565b608051603f607d60003960005050603f6000f3fe6080604052600080fdfea2646970667358221220d3427256f2cc3966b4327f0cdded16f31ea2ff6a19d775d665ac0029b652013b64736f6c634300080d0033"; const isSuperArgs$H = (xs) => xs.length > 1; class CrossChainEnabledAMB__factory extends ethers.ContractFactory { constructor(...args) { if (isSuperArgs$H(args)) { super(...args); } else { super(_abi$2q, _bytecode$H, args[0]); } } getDeployTransaction(bridge, overrides) { return super.getDeployTransaction(bridge, overrides || {}); } deploy(bridge, overrides) { return super.deploy(bridge, overrides || {}); } connect(runner) { return super.connect(runner); } static createInterface() { return new ethers.Interface(_abi$2q); } static connect(address, runner) { return new ethers.Contract( address, _abi$2q, runner ); } } __publicField$2q(CrossChainEnabledAMB__factory, "bytecode", _bytecode$H); __publicField$2q(CrossChainEnabledAMB__factory, "abi", _abi$2q); var __defProp$2p = Object.defineProperty; var __defNormalProp$2p = (obj, key, value) => key in obj ? __defProp$2p(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$2p = (obj, key, value) => { __defNormalProp$2p(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$2p = [ { inputs: [], name: "NotCrossChainCall", type: "error" }, { inputs: [ { internalType: "uint256", name: "", type: "uint256" }, { internalType: "address", name: "rootMessageSender", type: "address" }, { internalType: "bytes", name: "data", type: "bytes" } ], name: "processMessageFromRoot", outputs: [], stateMutability: "nonpayable", type: "function" } ]; class CrossChainEnabledPolygonChild__factory { static createInterface() { return new ethers.Interface(_abi$2p); } static connect(address, runner) { return new ethers.Contract( address, _abi$2p, runner ); } } __publicField$2p(CrossChainEnabledPolygonChild__factory, "abi", _abi$2p); var __defProp$2o = Object.defineProperty; var __defNormalProp$2o = (obj, key, value) => key in obj ? __defProp$2o(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$2o = (obj, key, value) => { __defNormalProp$2o(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$2o = [ { inputs: [], name: "Empty", type: "error" }, { inputs: [], name: "OutOfBounds", type: "error" } ]; const _bytecode$G = "0x60566037600b82828239805160001a607314602a57634e487b7160e01b600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea2646970667358221220810d96be5927e34adabd6068f9ce6b4ad1f4b37b56f64e58e90015980790a52a64736f6c634300080d0033"; const isSuperArgs$G = (xs) => xs.length > 1; class DoubleEndedQueue__factory extends ethers.ContractFactory { constructor(...args) { if (isSuperArgs$G(args)) { super(...args); } else { super(_abi$2o, _bytecode$G, args[0]); } } getDeployTransaction(overrides) { return super.getDeployTransaction(overrides || {}); } deploy(overrides) { return super.deploy(overrides || {}); } connect(runner) { return super.connect(runner); } static createInterface() { return new ethers.Interface(_abi$2o); } static connect(address, runner) { return new ethers.Contract(address, _abi$2o, runner); } } __publicField$2o(DoubleEndedQueue__factory, "bytecode", _bytecode$G); __publicField$2o(DoubleEndedQueue__factory, "abi", _abi$2o); var __defProp$2n = Object.defineProperty; var __defNormalProp$2n = (obj, key, value) => key in obj ? __defProp$2n(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$2n = (obj, key, value) => { __defNormalProp$2n(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$2n = [ { inputs: [], name: "InvalidShortString", type: "error" }, { inputs: [ { internalType: "string", name: "str", type: "string" } ], name: "StringTooLong", type: "error" }, { anonymous: false, inputs: [], name: "EIP712DomainChanged", type: "event" }, { inputs: [], name: "eip712Domain", outputs: [ { internalType: "bytes1", name: "fields", type: "bytes1" }, { internalType: "string", name: "name", type: "string" }, { internalType: "string", name: "version", type: "string" }, { internalType: "uint256", name: "chainId", type: "uint256" }, { internalType: "address", name: "verifyingContract", type: "address" }, { internalType: "bytes32", name: "salt", type: "bytes32" }, { internalType: "uint256[]", name: "extensions", type: "uint256[]" } ], stateMutability: "view", type: "function" } ]; class EIP712__factory { static createInterface() { return new ethers.Interface(_abi$2n); } static connect(address, runner) { return new ethers.Contract(address, _abi$2n, runner); } } __publicField$2n(EIP712__factory, "abi", _abi$2n); var __defProp$2m = Object.defineProperty; var __defNormalProp$2m = (obj, key, value) => key in obj ? __defProp$2m(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$2m = (obj, key, value) => { __defNormalProp$2m(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$2m = [ { inputs: [ { internalType: "string", name: "uri_", type: "string" } ], stateMutability: "nonpayable", type: "constructor" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "account", type: "address" }, { indexed: true, internalType: "address", name: "operator", type: "address" }, { indexed: false, internalType: "bool", name: "approved", type: "bool" } ], name: "ApprovalForAll", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "operator", type: "address" }, { indexed: true, internalType: "address", name: "from", type: "address" }, { indexed: true, internalType: "address", name: "to", type: "address" }, { indexed: false, internalType: "uint256[]", name: "ids", type: "uint256[]" }, { indexed: false, internalType: "uint256[]", name: "values", type: "uint256[]" } ], name: "TransferBatch", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "operator", type: "address" }, { indexed: true, internalType: "address", name: "from", type: "address" }, { indexed: true, internalType: "address", name: "to", type: "address" }, { indexed: false, internalType: "uint256", name: "id", type: "uint256" }, { indexed: false, internalType: "uint256", name: "value", type: "uint256" } ], name: "TransferSingle", type: "event" }, { anonymous: false, inputs: [ { indexed: false, internalType: "string", name: "value", type: "string" }, { indexed: true, internalType: "uint256", name: "id", type: "uint256" } ], name: "URI", type: "event" }, { inputs: [ { internalType: "address", name: "account", type: "address" }, { internalType: "uint256", name: "id", type: "uint256" } ], name: "balanceOf", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address[]", name: "accounts", type: "address[]" }, { internalType: "uint256[]", name: "ids", type: "uint256[]" } ], name: "balanceOfBatch", outputs: [ { internalType: "uint256[]", name: "", type: "uint256[]" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "account", type: "address" }, { internalType: "address", name: "operator", type: "address" } ], name: "isApprovedForAll", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "from", type: "address" }, { internalType: "address", name: "to", type: "address" }, { internalType: "uint256[]", name: "ids", type: "uint256[]" }, { internalType: "uint256[]", name: "amounts", type: "uint256[]" }, { internalType: "bytes", name: "data", type: "bytes" } ], name: "safeBatchTransferFrom", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "from", type: "address" }, { internalType: "address", name: "to", type: "address" }, { internalType: "uint256", name: "id", type: "uint256" }, { internalType: "uint256", name: "amount", type: "uint256" }, { internalType: "bytes", name: "data", type: "bytes" } ], name: "safeTransferFrom", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "operator", type: "address" }, { internalType: "bool", name: "approved", type: "bool" } ], name: "setApprovalForAll", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "bytes4", name: "interfaceId", type: "bytes4" } ], name: "supportsInterface", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "uint256", name: "", type: "uint256" } ], name: "uri", outputs: [ { internalType: "string", name: "", type: "string" } ], stateMutability: "view", type: "function" } ]; const _bytecode$F = "0x60806040523480156200001157600080fd5b50604051620015cb380380620015cb83398101604081905262000034916200011b565b6200003f8162000046565b5062000233565b80516200005b9060029060208401906200005f565b5050565b8280546200006d90620001f7565b90600052602060002090601f016020900481019282620000915760008555620000dc565b82601f10620000ac57805160ff1916838001178555620000dc565b82800160010185558215620000dc579182015b82811115620000dc578251825591602001919060010190620000bf565b50620000ea929150620000ee565b5090565b5b80821115620000ea5760008155600101620000ef565b634e487b7160e01b600052604160045260246000fd5b600060208083850312156200012f57600080fd5b82516001600160401b03808211156200014757600080fd5b818501915085601f8301126200015c57600080fd5b81518181111562000171576200017162000105565b604051601f8201601f19908116603f011681019083821181831017156200019c576200019c62000105565b816040528281528886848701011115620001b557600080fd5b600093505b82841015620001d95784840186015181850187015292850192620001ba565b82841115620001eb5760008684830101525b98975050505050505050565b600181811c908216806200020c57607f821691505b6020821081036200022d57634e487b7160e01b600052602260045260246000fd5b50919050565b61138880620002436000396000f3fe608060405234801561001057600080fd5b50600436106100875760003560e01c80634e1273f41161005b5780634e1273f41461010a578063a22cb4651461012a578063e985e9c51461013d578063f242432a1461017957600080fd5b8062fdd58e1461008c57806301ffc9a7146100b25780630e89341c146100d55780632eb2c2d6146100f5575b600080fd5b61009f61009a366004610b3f565b61018c565b6040519081526020015b60405180910390f35b6100c56100c0366004610b82565b610222565b60405190151581526020016100a9565b6100e86100e3366004610ba6565b610274565b6040516100a99190610c0c565b610108610103366004610d6b565b610308565b005b61011d610118366004610e15565b610354565b6040516100a99190610f1b565b610108610138366004610f2e565b61047e565b6100c561014b366004610f6a565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205460ff1690565b610108610187366004610f9d565b61048d565b60006001600160a01b0383166101fc5760405162461bcd60e51b815260206004820152602a60248201527f455243313135353a2061646472657373207a65726f206973206e6f742061207660448201526930b634b21037bbb732b960b11b60648201526084015b60405180910390fd5b506000908152602081815260408083206001600160a01b03949094168352929052205490565b60006001600160e01b03198216636cdb3d1360e11b148061025357506001600160e01b031982166303a24d0760e21b145b8061026e57506301ffc9a760e01b6001600160e01b03198316145b92915050565b60606002805461028390611002565b80601f01602080910402602001604051908101604052809291908181526020018280546102af90611002565b80156102fc5780601f106102d1576101008083540402835291602001916102fc565b820191906000526020600020905b8154815290600101906020018083116102df57829003601f168201915b50505050509050919050565b6001600160a01b0385163314806103245750610324853361014b565b6103405760405162461bcd60e51b81526004016101f39061103c565b61034d85858585856104d2565b5050505050565b606081518351146103b95760405162461bcd60e51b815260206004820152602960248201527f455243313135353a206163636f756e747320616e6420696473206c656e677468604482015268040dad2e6dac2e8c6d60bb1b60648201526084016101f3565b6000835167ffffffffffffffff8111156103d5576103d5610c1f565b6040519080825280602002602001820160405280156103fe578160200160208202803683370190505b50905060005b8451811015610476576104498582815181106104225761042261108a565b602002602001015185838151811061043c5761043c61108a565b602002602001015161018c565b82828151811061045b5761045b61108a565b602090810291909101015261046f816110b6565b9050610404565b509392505050565b6104893383836106af565b5050565b6001600160a01b0385163314806104a957506104a9853361014b565b6104c55760405162461bcd60e51b81526004016101f39061103c565b61034d858585858561078f565b81518351146105345760405162461bcd60e51b815260206004820152602860248201527f455243313135353a2069647320616e6420616d6f756e7473206c656e677468206044820152670dad2e6dac2e8c6d60c31b60648201526084016101f3565b6001600160a01b03841661055a5760405162461bcd60e51b81526004016101f3906110cf565b3360005b845181101561064157600085828151811061057b5761057b61108a565b6020026020010151905060008583815181106105995761059961108a565b602090810291909101810151600084815280835260408082206001600160a01b038e1683529093529190912054909150818110156105e95760405162461bcd60e51b81526004016101f390611114565b6000838152602081815260408083206001600160a01b038e8116855292528083208585039055908b1682528120805484929061062690849061115e565b925050819055505050508061063a906110b6565b905061055e565b50846001600160a01b0316866001600160a01b0316826001600160a01b03167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8787604051610691929190611176565b60405180910390a46106a78187878787876108b9565b505050505050565b816001600160a01b0316836001600160a01b0316036107225760405162461bcd60e51b815260206004820152602960248201527f455243313135353a2073657474696e6720617070726f76616c20737461747573604482015268103337b91039b2b63360b91b60648201526084016101f3565b6001600160a01b03838116600081815260016020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a3505050565b6001600160a01b0384166107b55760405162461bcd60e51b81526004016101f3906110cf565b3360006107c185610a1d565b905060006107ce85610a1d565b90506000868152602081815260408083206001600160a01b038c168452909152902054858110156108115760405162461bcd60e51b81526004016101f390611114565b6000878152602081815260408083206001600160a01b038d8116855292528083208985039055908a1682528120805488929061084e90849061115e565b909155505060408051888152602081018890526001600160a01b03808b16928c821692918816917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a46108ae848a8a8a8a8a610a68565b505050505050505050565b6001600160a01b0384163b156106a75760405163bc197c8160e01b81526001600160a01b0385169063bc197c81906108fd90899089908890889088906004016111a4565b6020604051808303816000875af1925050508015610938575060408051601f3d908101601f1916820190925261093591810190611202565b60015b6109e45761094461121f565b806308c379a00361097d575061095861123b565b80610963575061097f565b8060405162461bcd60e51b81526004016101f39190610c0c565b505b60405162461bcd60e51b815260206004820152603460248201527f455243313135353a207472616e7366657220746f206e6f6e2d455243313135356044820152732932b1b2b4bb32b91034b6b83632b6b2b73a32b960611b60648201526084016101f3565b6001600160e01b0319811663bc197c8160e01b14610a145760405162461bcd60e51b81526004016101f3906112c5565b50505050505050565b60408051600180825281830190925260609160009190602080830190803683370190505090508281600081518110610a5757610a5761108a565b602090810291909101015292915050565b6001600160a01b0384163b156106a75760405163f23a6e6160e01b81526001600160a01b0385169063f23a6e6190610aac908990899088908890889060040161130d565b6020604051808303816000875af1925050508015610ae7575060408051601f3d908101601f19168201909252610ae491810190611202565b60015b610af35761094461121f565b6001600160e01b0319811663f23a6e6160e01b14610a145760405162461bcd60e51b81526004016101f3906112c5565b80356001600160a01b0381168114610b3a57600080fd5b919050565b60008060408385031215610b5257600080fd5b610b5b83610b23565b946020939093013593505050565b6001600160e01b031981168114610b7f57600080fd5b50565b600060208284031215610b9457600080fd5b8135610b9f81610b69565b9392505050565b600060208284031215610bb857600080fd5b5035919050565b6000815180845260005b81811015610be557602081850181015186830182015201610bc9565b81811115610bf7576000602083870101525b50601f01601f19169290920160200192915050565b602081526000610b9f6020830184610bbf565b634e487b7160e01b600052604160045260246000fd5b601f8201601f1916810167ffffffffffffffff81118282101715610c5b57610c5b610c1f565b6040525050565b600067ffffffffffffffff821115610c7c57610c7c610c1f565b5060051b60200190565b600082601f830112610c9757600080fd5b81356020610ca482610c62565b604051610cb18282610c35565b83815260059390931b8501820192828101915086841115610cd157600080fd5b8286015b84811015610cec5780358352918301918301610cd5565b509695505050505050565b600082601f830112610d0857600080fd5b813567ffffffffffffffff811115610d2257610d22610c1f565b604051610d39601f8301601f191660200182610c35565b818152846020838601011115610d4e57600080fd5b816020850160208301376000918101602001919091529392505050565b600080600080600060a08688031215610d8357600080fd5b610d8c86610b23565b9450610d9a60208701610b23565b9350604086013567ffffffffffffffff80821115610db757600080fd5b610dc389838a01610c86565b94506060880135915080821115610dd957600080fd5b610de589838a01610c86565b93506080880135915080821115610dfb57600080fd5b50610e0888828901610cf7565b9150509295509295909350565b60008060408385031215610e2857600080fd5b823567ffffffffffffffff80821115610e4057600080fd5b818501915085601f830112610e5457600080fd5b81356020610e6182610c62565b604051610e6e8282610c35565b83815260059390931b8501820192828101915089841115610e8e57600080fd5b948201945b83861015610eb357610ea486610b23565b82529482019490820190610e93565b96505086013592505080821115610ec957600080fd5b50610ed685828601610c86565b9150509250929050565b600081518084526020808501945080840160005b83811015610f1057815187529582019590820190600101610ef4565b509495945050505050565b602081526000610b9f6020830184610ee0565b60008060408385031215610f4157600080fd5b610f4a83610b23565b915060208301358015158114610f5f57600080fd5b809150509250929050565b60008060408385031215610f7d57600080fd5b610f8683610b23565b9150610f9460208401610b23565b90509250929050565b600080600080600060a08688031215610fb557600080fd5b610fbe86610b23565b9450610fcc60208701610b23565b93506040860135925060608601359150608086013567ffffffffffffffff811115610ff657600080fd5b610e0888828901610cf7565b600181811c9082168061101657607f821691505b60208210810361103657634e487b7160e01b600052602260045260246000fd5b50919050565b6020808252602e908201527f455243313135353a2063616c6c6572206973206e6f7420746f6b656e206f776e60408201526d195c881bdc88185c1c1c9bdd995960921b606082015260800190565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b6000600182016110c8576110c86110a0565b5060010190565b60208082526025908201527f455243313135353a207472616e7366657220746f20746865207a65726f206164604082015264647265737360d81b606082015260800190565b6020808252602a908201527f455243313135353a20696e73756666696369656e742062616c616e636520666f60408201526939103a3930b739b332b960b11b606082015260800190565b60008219821115611171576111716110a0565b500190565b6040815260006111896040830185610ee0565b828103602084015261119b8185610ee0565b95945050505050565b6001600160a01b0386811682528516602082015260a0604082018190526000906111d090830186610ee0565b82810360608401526111e28186610ee0565b905082810360808401526111f68185610bbf565b98975050505050505050565b60006020828403121561121457600080fd5b8151610b9f81610b69565b600060033d11156112385760046000803e5060005160e01c5b90565b600060443d10156112495790565b6040516003193d81016004833e81513d67ffffffffffffffff816024840111818411171561127957505050505090565b82850191508151818111156112915750505050505090565b843d87010160208285010111156112ab5750505050505090565b6112ba60208286010187610c35565b509095945050505050565b60208082526028908201527f455243313135353a204552433131353552656365697665722072656a656374656040820152676420746f6b656e7360c01b606082015260800190565b6001600160a01b03868116825285166020820152604081018490526060810183905260a06080820181905260009061134790830184610bbf565b97965050505050505056fea2646970667358221220a690293c88d6344935ce74699232e93a05c2c54bc9e019a4c16e196e6916539864736f6c634300080d0033"; const isSuperArgs$F = (xs) => xs.length > 1; class ERC1155__factory extends ethers.ContractFactory { constructor(...args) { if (isSuperArgs$F(args)) { super(...args); } else { super(_abi$2m, _bytecode$F, args[0]); } } getDeployTransaction(uri_, overrides) { return super.getDeployTransaction(uri_, overrides || {}); } deploy(uri_, overrides) { return super.deploy(uri_, overrides || {}); } connect(runner) { return super.connect(runner); } static createInterface() { return new ethers.Interface(_abi$2m); } static connect(address, runner) { return new ethers.Contract(address, _abi$2m, runner); } } __publicField$2m(ERC1155__factory, "bytecode", _bytecode$F); __publicField$2m(ERC1155__factory, "abi", _abi$2m); var __defProp$2l = Object.defineProperty; var __defNormalProp$2l = (obj, key, value) => key in obj ? __defProp$2l(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$2l = (obj, key, value) => { __defNormalProp$2l(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$2l = [ { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "account", type: "address" }, { indexed: true, internalType: "address", name: "operator", type: "address" }, { indexed: false, internalType: "bool", name: "approved", type: "bool" } ], name: "ApprovalForAll", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "operator", type: "address" }, { indexed: true, internalType: "address", name: "from", type: "address" }, { indexed: true, internalType: "address", name: "to", type: "address" }, { indexed: false, internalType: "uint256[]", name: "ids", type: "uint256[]" }, { indexed: false, internalType: "uint256[]", name: "values", type: "uint256[]" } ], name: "TransferBatch", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "operator", type: "address" }, { indexed: true, internalType: "address", name: "from", type: "address" }, { indexed: true, internalType: "address", name: "to", type: "address" }, { indexed: false, internalType: "uint256", name: "id", type: "uint256" }, { indexed: false, internalType: "uint256", name: "value", type: "uint256" } ], name: "TransferSingle", type: "event" }, { anonymous: false, inputs: [ { indexed: false, internalType: "string", name: "value", type: "string" }, { indexed: true, internalType: "uint256", name: "id", type: "uint256" } ], name: "URI", type: "event" }, { inputs: [ { internalType: "address", name: "account", type: "address" }, { internalType: "uint256", name: "id", type: "uint256" } ], name: "balanceOf", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address[]", name: "accounts", type: "address[]" }, { internalType: "uint256[]", name: "ids", type: "uint256[]" } ], name: "balanceOfBatch", outputs: [ { internalType: "uint256[]", name: "", type: "uint256[]" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "account", type: "address" }, { internalType: "uint256", name: "id", type: "uint256" }, { internalType: "uint256", name: "value", type: "uint256" } ], name: "burn", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "account", type: "address" }, { internalType: "uint256[]", name: "ids", type: "uint256[]" }, { internalType: "uint256[]", name: "values", type: "uint256[]" } ], name: "burnBatch", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "account", type: "address" }, { internalType: "address", name: "operator", type: "address" } ], name: "isApprovedForAll", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "from", type: "address" }, { internalType: "address", name: "to", type: "address" }, { internalType: "uint256[]", name: "ids", type: "uint256[]" }, { internalType: "uint256[]", name: "amounts", type: "uint256[]" }, { internalType: "bytes", name: "data", type: "bytes" } ], name: "safeBatchTransferFrom", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "from", type: "address" }, { internalType: "address", name: "to", type: "address" }, { internalType: "uint256", name: "id", type: "uint256" }, { internalType: "uint256", name: "amount", type: "uint256" }, { internalType: "bytes", name: "data", type: "bytes" } ], name: "safeTransferFrom", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "operator", type: "address" }, { internalType: "bool", name: "approved", type: "bool" } ], name: "setApprovalForAll", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "bytes4", name: "interfaceId", type: "bytes4" } ], name: "supportsInterface", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "uint256", name: "", type: "uint256" } ], name: "uri", outputs: [ { internalType: "string", name: "", type: "string" } ], stateMutability: "view", type: "function" } ]; class ERC1155Burnable__factory { static createInterface() { return new ethers.Interface(_abi$2l); } static connect(address, runner) { return new ethers.Contract(address, _abi$2l, runner); } } __publicField$2l(ERC1155Burnable__factory, "abi", _abi$2l); var __defProp$2k = Object.defineProperty; var __defNormalProp$2k = (obj, key, value) => key in obj ? __defProp$2k(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$2k = (obj, key, value) => { __defNormalProp$2k(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$2k = [ { inputs: [ { internalType: "address", name: "", type: "address" }, { internalType: "address", name: "", type: "address" }, { internalType: "uint256[]", name: "", type: "uint256[]" }, { internalType: "uint256[]", name: "", type: "uint256[]" }, { internalType: "bytes", name: "", type: "bytes" } ], name: "onERC1155BatchReceived", outputs: [ { internalType: "bytes4", name: "", type: "bytes4" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "", type: "address" }, { internalType: "address", name: "", type: "address" }, { internalType: "uint256", name: "", type: "uint256" }, { internalType: "uint256", name: "", type: "uint256" }, { internalType: "bytes", name: "", type: "bytes" } ], name: "onERC1155Received", outputs: [ { internalType: "bytes4", name: "", type: "bytes4" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "bytes4", name: "interfaceId", type: "bytes4" } ], name: "supportsInterface", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" } ]; const _bytecode$E = "0x608060405234801561001057600080fd5b506103c5806100206000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c806301ffc9a714610046578063bc197c811461006e578063f23a6e61146100a6575b600080fd5b6100596100543660046100fc565b6100c5565b60405190151581526020015b60405180910390f35b61008d61007c366004610280565b63bc197c8160e01b95945050505050565b6040516001600160e01b03199091168152602001610065565b61008d6100b436600461032a565b63f23a6e6160e01b95945050505050565b60006001600160e01b03198216630271189760e51b14806100f657506301ffc9a760e01b6001600160e01b03198316145b92915050565b60006020828403121561010e57600080fd5b81356001600160e01b03198116811461012657600080fd5b9392505050565b80356001600160a01b038116811461014457600080fd5b919050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f1916810167ffffffffffffffff8111828210171561018857610188610149565b604052919050565b600082601f8301126101a157600080fd5b8135602067ffffffffffffffff8211156101bd576101bd610149565b8160051b6101cc82820161015f565b92835284810182019282810190878511156101e657600080fd5b83870192505b84831015610205578235825291830191908301906101ec565b979650505050505050565b600082601f83011261022157600080fd5b813567ffffffffffffffff81111561023b5761023b610149565b61024e601f8201601f191660200161015f565b81815284602083860101111561026357600080fd5b816020850160208301376000918101602001919091529392505050565b600080600080600060a0868803121561029857600080fd5b6102a18661012d565b94506102af6020870161012d565b9350604086013567ffffffffffffffff808211156102cc57600080fd5b6102d889838a01610190565b945060608801359150808211156102ee57600080fd5b6102fa89838a01610190565b9350608088013591508082111561031057600080fd5b5061031d88828901610210565b9150509295509295909350565b600080600080600060a0868803121561034257600080fd5b61034b8661012d565b94506103596020870161012d565b93506040860135925060608601359150608086013567ffffffffffffffff81111561038357600080fd5b61031d8882890161021056fea26469706673582212209e59a98cec3bcfd01c6cf17362bae2a8fe30630fad8342f10ae79d6ad274689d64736f6c634300080d0033"; const isSuperArgs$E = (xs) => xs.length > 1; class ERC1155Holder__factory extends ethers.ContractFactory { constructor(...args) { if (isSuperArgs$E(args)) { super(...args); } else { super(_abi$2k, _bytecode$E, args[0]); } } getDeployTransaction(overrides) { return super.getDeployTransaction(overrides || {}); } deploy(overrides) { return super.deploy(overrides || {}); } connect(runner) { return super.connect(runner); } static createInterface() { return new ethers.Interface(_abi$2k); } static connect(address, runner) { return new ethers.Contract(address, _abi$2k, runner); } } __publicField$2k(ERC1155Holder__factory, "bytecode", _bytecode$E); __publicField$2k(ERC1155Holder__factory, "abi", _abi$2k); var __defProp$2j = Object.defineProperty; var __defNormalProp$2j = (obj, key, value) => key in obj ? __defProp$2j(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$2j = (obj, key, value) => { __defNormalProp$2j(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$2j = [ { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "account", type: "address" }, { indexed: true, internalType: "address", name: "operator", type: "address" }, { indexed: false, internalType: "bool", name: "approved", type: "bool" } ], name: "ApprovalForAll", type: "event" }, { anonymous: false, inputs: [ { indexed: false, internalType: "address", name: "account", type: "address" } ], name: "Paused", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "operator", type: "address" }, { indexed: true, internalType: "address", name: "from", type: "address" }, { indexed: true, internalType: "address", name: "to", type: "address" }, { indexed: false, internalType: "uint256[]", name: "ids", type: "uint256[]" }, { indexed: false, internalType: "uint256[]", name: "values", type: "uint256[]" } ], name: "TransferBatch", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "operator", type: "address" }, { indexed: true, internalType: "address", name: "from", type: "address" }, { indexed: true, internalType: "address", name: "to", type: "address" }, { indexed: false, internalType: "uint256", name: "id", type: "uint256" }, { indexed: false, internalType: "uint256", name: "value", type: "uint256" } ], name: "TransferSingle", type: "event" }, { anonymous: false, inputs: [ { indexed: false, internalType: "string", name: "value", type: "string" }, { indexed: true, internalType: "uint256", name: "id", type: "uint256" } ], name: "URI", type: "event" }, { anonymous: false, inputs: [ { indexed: false, internalType: "address", name: "account", type: "address" } ], name: "Unpaused", type: "event" }, { inputs: [ { internalType: "address", name: "account", type: "address" }, { internalType: "uint256", name: "id", type: "uint256" } ], name: "balanceOf", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address[]", name: "accounts", type: "address[]" }, { internalType: "uint256[]", name: "ids", type: "uint256[]" } ], name: "balanceOfBatch", outputs: [ { internalType: "uint256[]", name: "", type: "uint256[]" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "account", type: "address" }, { internalType: "address", name: "operator", type: "address" } ], name: "isApprovedForAll", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "paused", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "from", type: "address" }, { internalType: "address", name: "to", type: "address" }, { internalType: "uint256[]", name: "ids", type: "uint256[]" }, { internalType: "uint256[]", name: "amounts", type: "uint256[]" }, { internalType: "bytes", name: "data", type: "bytes" } ], name: "safeBatchTransferFrom", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "from", type: "address" }, { internalType: "address", name: "to", type: "address" }, { internalType: "uint256", name: "id", type: "uint256" }, { internalType: "uint256", name: "amount", type: "uint256" }, { internalType: "bytes", name: "data", type: "bytes" } ], name: "safeTransferFrom", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "operator", type: "address" }, { internalType: "bool", name: "approved", type: "bool" } ], name: "setApprovalForAll", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "bytes4", name: "interfaceId", type: "bytes4" } ], name: "supportsInterface", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "uint256", name: "", type: "uint256" } ], name: "uri", outputs: [ { internalType: "string", name: "", type: "string" } ], stateMutability: "view", type: "function" } ]; class ERC1155Pausable__factory { static createInterface() { return new ethers.Interface(_abi$2j); } static connect(address, runner) { return new ethers.Contract(address, _abi$2j, runner); } } __publicField$2j(ERC1155Pausable__factory, "abi", _abi$2j); var __defProp$2i = Object.defineProperty; var __defNormalProp$2i = (obj, key, value) => key in obj ? __defProp$2i(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$2i = (obj, key, value) => { __defNormalProp$2i(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$2i = [ { inputs: [ { internalType: "string", name: "uri", type: "string" } ], stateMutability: "nonpayable", type: "constructor" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "account", type: "address" }, { indexed: true, internalType: "address", name: "operator", type: "address" }, { indexed: false, internalType: "bool", name: "approved", type: "bool" } ], name: "ApprovalForAll", type: "event" }, { anonymous: false, inputs: [ { indexed: false, internalType: "address", name: "account", type: "address" } ], name: "Paused", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "bytes32", name: "role", type: "bytes32" }, { indexed: true, internalType: "bytes32", name: "previousAdminRole", type: "bytes32" }, { indexed: true, internalType: "bytes32", name: "newAdminRole", type: "bytes32" } ], name: "RoleAdminChanged", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "bytes32", name: "role", type: "bytes32" }, { indexed: true, internalType: "address", name: "account", type: "address" }, { indexed: true, internalType: "address", name: "sender", type: "address" } ], name: "RoleGranted", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "bytes32", name: "role", type: "bytes32" }, { indexed: true, internalType: "address", name: "account", type: "address" }, { indexed: true, internalType: "address", name: "sender", type: "address" } ], name: "RoleRevoked", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "operator", type: "address" }, { indexed: true, internalType: "address", name: "from", type: "address" }, { indexed: true, internalType: "address", name: "to", type: "address" }, { indexed: false, internalType: "uint256[]", name: "ids", type: "uint256[]" }, { indexed: false, internalType: "uint256[]", name: "values", type: "uint256[]" } ], name: "TransferBatch", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "operator", type: "address" }, { indexed: true, internalType: "address", name: "from", type: "address" }, { indexed: true, internalType: "address", name: "to", type: "address" }, { indexed: false, internalType: "uint256", name: "id", type: "uint256" }, { indexed: false, internalType: "uint256", name: "value", type: "uint256" } ], name: "TransferSingle", type: "event" }, { anonymous: false, inputs: [ { indexed: false, internalType: "string", name: "value", type: "string" }, { indexed: true, internalType: "uint256", name: "id", type: "uint256" } ], name: "URI", type: "event" }, { anonymous: false, inputs: [ { indexed: false, internalType: "address", name: "account", type: "address" } ], name: "Unpaused", type: "event" }, { inputs: [], name: "DEFAULT_ADMIN_ROLE", outputs: [ { internalType: "bytes32", name: "", type: "bytes32" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "MINTER_ROLE", outputs: [ { internalType: "bytes32", name: "", type: "bytes32" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "PAUSER_ROLE", outputs: [ { internalType: "bytes32", name: "", type: "bytes32" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "account", type: "address" }, { internalType: "uint256", name: "id", type: "uint256" } ], name: "balanceOf", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address[]", name: "accounts", type: "address[]" }, { internalType: "uint256[]", name: "ids", type: "uint256[]" } ], name: "balanceOfBatch", outputs: [ { internalType: "uint256[]", name: "", type: "uint256[]" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "account", type: "address" }, { internalType: "uint256", name: "id", type: "uint256" }, { internalType: "uint256", name: "value", type: "uint256" } ], name: "burn", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "account", type: "address" }, { internalType: "uint256[]", name: "ids", type: "uint256[]" }, { internalType: "uint256[]", name: "values", type: "uint256[]" } ], name: "burnBatch", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "bytes32", name: "role", type: "bytes32" } ], name: "getRoleAdmin", outputs: [ { internalType: "bytes32", name: "", type: "bytes32" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "bytes32", name: "role", type: "bytes32" }, { internalType: "uint256", name: "index", type: "uint256" } ], name: "getRoleMember", outputs: [ { internalType: "address", name: "", type: "address" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "bytes32", name: "role", type: "bytes32" } ], name: "getRoleMemberCount", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "bytes32", name: "role", type: "bytes32" }, { internalType: "address", name: "account", type: "address" } ], name: "grantRole", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "bytes32", name: "role", type: "bytes32" }, { internalType: "address", name: "account", type: "address" } ], name: "hasRole", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "account", type: "address" }, { internalType: "address", name: "operator", type: "address" } ], name: "isApprovedForAll", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "to", type: "address" }, { internalType: "uint256", name: "id", type: "uint256" }, { internalType: "uint256", name: "amount", type: "uint256" }, { internalType: "bytes", name: "data", type: "bytes" } ], name: "mint", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "to", type: "address" }, { internalType: "uint256[]", name: "ids", type: "uint256[]" }, { internalType: "uint256[]", name: "amounts", type: "uint256[]" }, { internalType: "bytes", name: "data", type: "bytes" } ], name: "mintBatch", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [], name: "pause", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [], name: "paused", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "bytes32", name: "role", type: "bytes32" }, { internalType: "address", name: "account", type: "address" } ], name: "renounceRole", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "bytes32", name: "role", type: "bytes32" }, { internalType: "address", name: "account", type: "address" } ], name: "revokeRole", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "from", type: "address" }, { internalType: "address", name: "to", type: "address" }, { internalType: "uint256[]", name: "ids", type: "uint256[]" }, { internalType: "uint256[]", name: "amounts", type: "uint256[]" }, { internalType: "bytes", name: "data", type: "bytes" } ], name: "safeBatchTransferFrom", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "from", type: "address" }, { internalType: "address", name: "to", type: "address" }, { internalType: "uint256", name: "id", type: "uint256" }, { internalType: "uint256", name: "amount", type: "uint256" }, { internalType: "bytes", name: "data", type: "bytes" } ], name: "safeTransferFrom", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "operator", type: "address" }, { internalType: "bool", name: "approved", type: "bool" } ], name: "setApprovalForAll", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "bytes4", name: "interfaceId", type: "bytes4" } ], name: "supportsInterface", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "unpause", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "uint256", name: "", type: "uint256" } ], name: "uri", outputs: [ { internalType: "string", name: "", type: "string" } ], stateMutability: "view", type: "function" } ]; const _bytecode$D = "0x60806040523480156200001157600080fd5b5060405162002d6138038062002d618339810160408190526200003491620002e7565b806200004081620000b7565b506005805460ff1916905562000058600033620000d0565b620000847f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a633620000d0565b620000b07f65d7a28e3265b37a6474929f336521b332c1681b933f6cb9f3376673440d862a33620000d0565b50620003ff565b8051620000cc9060049060208401906200022b565b5050565b620000cc8282620000ed82826200011960201b62000a871760201c565b60008281526001602090815260409091206200011491839062000b0b620001b9821b17901c565b505050565b6000828152602081815260408083206001600160a01b038516845290915290205460ff16620000cc576000828152602081815260408083206001600160a01b03851684529091529020805460ff19166001179055620001753390565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b6000620001d0836001600160a01b038416620001d9565b90505b92915050565b60008181526001830160205260408120546200022257508154600181810184556000848152602080822090930184905584548482528286019093526040902091909155620001d3565b506000620001d3565b8280546200023990620003c3565b90600052602060002090601f0160209004810192826200025d5760008555620002a8565b82601f106200027857805160ff1916838001178555620002a8565b82800160010185558215620002a8579182015b82811115620002a85782518255916020019190600101906200028b565b50620002b6929150620002ba565b5090565b5b80821115620002b65760008155600101620002bb565b634e487b7160e01b600052604160045260246000fd5b60006020808385031215620002fb57600080fd5b82516001600160401b03808211156200031357600080fd5b818501915085601f8301126200032857600080fd5b8151818111156200033d576200033d620002d1565b604051601f8201601f19908116603f01168101908382118183101715620003685762000368620002d1565b8160405282815288868487010111156200038157600080fd5b600093505b82841015620003a5578484018601518185018701529285019262000386565b82841115620003b75760008684830101525b98975050505050505050565b600181811c90821680620003d857607f821691505b602082108103620003f957634e487b7160e01b600052602260045260246000fd5b50919050565b612952806200040f6000396000f3fe608060405234801561001057600080fd5b50600436106101725760003560e01c8063731133e9116100de578063ca15c87311610097578063e63ab1e911610071578063e63ab1e914610358578063e985e9c51461037f578063f242432a146103bb578063f5298aca146103ce57600080fd5b8063ca15c8731461030b578063d53913931461031e578063d547741f1461034557600080fd5b8063731133e9146102975780638456cb59146102aa5780639010d07c146102b257806391d14854146102dd578063a217fddf146102f0578063a22cb465146102f857600080fd5b80632f2ff15d116101305780632f2ff15d1461022b57806336568abe1461023e5780633f4ba83a146102515780634e1273f4146102595780635c975abb146102795780636b20c4541461028457600080fd5b8062fdd58e1461017757806301ffc9a71461019d5780630e89341c146101c05780631f7fdffa146101e0578063248a9ca3146101f55780632eb2c2d614610218575b600080fd5b61018a610185366004611ce9565b6103e1565b6040519081526020015b60405180910390f35b6101b06101ab366004611d29565b61047c565b6040519015158152602001610194565b6101d36101ce366004611d46565b610487565b6040516101949190611db7565b6101f36101ee366004611f16565b61051b565b005b61018a610203366004611d46565b60009081526020819052604090206001015490565b6101f3610226366004611faf565b610573565b6101f3610239366004612059565b6105bf565b6101f361024c366004612059565b6105e9565b6101f3610667565b61026c610267366004612085565b61070d565b604051610194919061218b565b60055460ff166101b0565b6101f361029236600461219e565b610837565b6101f36102a5366004612212565b61087a565b6101f36108cc565b6102c56102c0366004612267565b610970565b6040516001600160a01b039091168152602001610194565b6101b06102eb366004612059565b61098f565b61018a600081565b6101f3610306366004612289565b6109b8565b61018a610319366004611d46565b6109c3565b61018a7f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a681565b6101f3610353366004612059565b6109da565b61018a7f65d7a28e3265b37a6474929f336521b332c1681b933f6cb9f3376673440d862a81565b6101b061038d3660046122c5565b6001600160a01b03918216600090815260036020908152604080832093909416825291909152205460ff1690565b6101f36103c93660046122ef565b6109ff565b6101f36103dc366004612354565b610a44565b60006001600160a01b0383166104515760405162461bcd60e51b815260206004820152602a60248201527f455243313135353a2061646472657373207a65726f206973206e6f742061207660448201526930b634b21037bbb732b960b11b60648201526084015b60405180910390fd5b5060008181526002602090815260408083206001600160a01b03861684529091529020545b92915050565b600061047682610b20565b60606004805461049690612387565b80601f01602080910402602001604051908101604052809291908181526020018280546104c290612387565b801561050f5780601f106104e45761010080835404028352916020019161050f565b820191906000526020600020905b8154815290600101906020018083116104f257829003601f168201915b50505050509050919050565b6105457f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a63361098f565b6105615760405162461bcd60e51b8152600401610448906123c1565b61056d84848484610b60565b50505050565b6001600160a01b03851633148061058f575061058f853361038d565b6105ab5760405162461bcd60e51b81526004016104489061241e565b6105b88585858585610cbb565b5050505050565b6000828152602081905260409020600101546105da81610e68565b6105e48383610e75565b505050565b6001600160a01b03811633146106595760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b6064820152608401610448565b6106638282610e97565b5050565b6106917f65d7a28e3265b37a6474929f336521b332c1681b933f6cb9f3376673440d862a3361098f565b6107035760405162461bcd60e51b815260206004820152603b60248201527f455243313135355072657365744d696e7465725061757365723a206d7573742060448201527f686176652070617573657220726f6c6520746f20756e706175736500000000006064820152608401610448565b61070b610eb9565b565b606081518351146107725760405162461bcd60e51b815260206004820152602960248201527f455243313135353a206163636f756e747320616e6420696473206c656e677468604482015268040dad2e6dac2e8c6d60bb1b6064820152608401610448565b6000835167ffffffffffffffff81111561078e5761078e611dca565b6040519080825280602002602001820160405280156107b7578160200160208202803683370190505b50905060005b845181101561082f576108028582815181106107db576107db61246c565b60200260200101518583815181106107f5576107f561246c565b60200260200101516103e1565b8282815181106108145761081461246c565b602090810291909101015261082881612498565b90506107bd565b509392505050565b6001600160a01b0383163314806108535750610853833361038d565b61086f5760405162461bcd60e51b81526004016104489061241e565b6105e4838383610f0b565b6108a47f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a63361098f565b6108c05760405162461bcd60e51b8152600401610448906123c1565b61056d848484846110aa565b6108f67f65d7a28e3265b37a6474929f336521b332c1681b933f6cb9f3376673440d862a3361098f565b6109685760405162461bcd60e51b815260206004820152603960248201527f455243313135355072657365744d696e7465725061757365723a206d7573742060448201527f686176652070617573657220726f6c6520746f207061757365000000000000006064820152608401610448565b61070b611195565b600082815260016020526040812061098890836111d2565b9392505050565b6000918252602082815260408084206001600160a01b0393909316845291905290205460ff1690565b6106633383836111de565b6000818152600160205260408120610476906112be565b6000828152602081905260409020600101546109f581610e68565b6105e48383610e97565b6001600160a01b038516331480610a1b5750610a1b853361038d565b610a375760405162461bcd60e51b81526004016104489061241e565b6105b885858585856112c8565b6001600160a01b038316331480610a605750610a60833361038d565b610a7c5760405162461bcd60e51b81526004016104489061241e565b6105e4838383611404565b610a91828261098f565b610663576000828152602081815260408083206001600160a01b03851684529091529020805460ff19166001179055610ac73390565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b6000610988836001600160a01b038416611520565b60006001600160e01b03198216636cdb3d1360e11b1480610b5157506001600160e01b031982166303a24d0760e21b145b8061047657506104768261156f565b6001600160a01b038416610b865760405162461bcd60e51b8152600401610448906124b1565b8151835114610ba75760405162461bcd60e51b8152600401610448906124f2565b33610bb781600087878787611594565b60005b8451811015610c5357838181518110610bd557610bd561246c565b602002602001015160026000878481518110610bf357610bf361246c565b602002602001015181526020019081526020016000206000886001600160a01b03166001600160a01b031681526020019081526020016000206000828254610c3b919061253a565b90915550819050610c4b81612498565b915050610bba565b50846001600160a01b031660006001600160a01b0316826001600160a01b03167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8787604051610ca4929190612552565b60405180910390a46105b8816000878787876115a2565b8151835114610cdc5760405162461bcd60e51b8152600401610448906124f2565b6001600160a01b038416610d025760405162461bcd60e51b815260040161044890612580565b33610d11818787878787611594565b60005b8451811015610dfa576000858281518110610d3157610d3161246c565b602002602001015190506000858381518110610d4f57610d4f61246c565b60209081029190910181015160008481526002835260408082206001600160a01b038e168352909352919091205490915081811015610da05760405162461bcd60e51b8152600401610448906125c5565b60008381526002602090815260408083206001600160a01b038e8116855292528083208585039055908b16825281208054849290610ddf90849061253a565b9250508190555050505080610df390612498565b9050610d14565b50846001600160a01b0316866001600160a01b0316826001600160a01b03167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8787604051610e4a929190612552565b60405180910390a4610e608187878787876115a2565b505050505050565b610e7281336116fd565b50565b610e7f8282610a87565b60008281526001602052604090206105e49082610b0b565b610ea18282611756565b60008281526001602052604090206105e490826117bb565b610ec16117d0565b6005805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa335b6040516001600160a01b03909116815260200160405180910390a1565b6001600160a01b038316610f315760405162461bcd60e51b81526004016104489061260f565b8051825114610f525760405162461bcd60e51b8152600401610448906124f2565b6000339050610f7581856000868660405180602001604052806000815250611594565b60005b835181101561103d576000848281518110610f9557610f9561246c565b602002602001015190506000848381518110610fb357610fb361246c565b60209081029190910181015160008481526002835260408082206001600160a01b038c1683529093529190912054909150818110156110045760405162461bcd60e51b815260040161044890612652565b60009283526002602090815260408085206001600160a01b038b168652909152909220910390558061103581612498565b915050610f78565b5060006001600160a01b0316846001600160a01b0316826001600160a01b03167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb868660405161108e929190612552565b60405180910390a460408051602081019091526000905261056d565b6001600160a01b0384166110d05760405162461bcd60e51b8152600401610448906124b1565b3360006110dc85611819565b905060006110e985611819565b90506110fa83600089858589611594565b60008681526002602090815260408083206001600160a01b038b1684529091528120805487929061112c90849061253a565b909155505060408051878152602081018790526001600160a01b03808a1692600092918716917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a461118c83600089898989611864565b50505050505050565b61119d61191f565b6005805460ff191660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258610eee3390565b60006109888383611965565b816001600160a01b0316836001600160a01b0316036112515760405162461bcd60e51b815260206004820152602960248201527f455243313135353a2073657474696e6720617070726f76616c20737461747573604482015268103337b91039b2b63360b91b6064820152608401610448565b6001600160a01b03838116600081815260036020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a3505050565b6000610476825490565b6001600160a01b0384166112ee5760405162461bcd60e51b815260040161044890612580565b3360006112fa85611819565b9050600061130785611819565b9050611317838989858589611594565b60008681526002602090815260408083206001600160a01b038c1684529091529020548581101561135a5760405162461bcd60e51b8152600401610448906125c5565b60008781526002602090815260408083206001600160a01b038d8116855292528083208985039055908a1682528120805488929061139990849061253a565b909155505060408051888152602081018890526001600160a01b03808b16928c821692918816917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a46113f9848a8a8a8a8a611864565b505050505050505050565b6001600160a01b03831661142a5760405162461bcd60e51b81526004016104489061260f565b33600061143684611819565b9050600061144384611819565b905061146383876000858560405180602001604052806000815250611594565b60008581526002602090815260408083206001600160a01b038a168452909152902054848110156114a65760405162461bcd60e51b815260040161044890612652565b60008681526002602090815260408083206001600160a01b038b81168086529184528285208a8703905582518b81529384018a90529092908816917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a460408051602081019091526000905261118c565b600081815260018301602052604081205461156757508154600181810184556000848152602080822090930184905584548482528286019093526040902091909155610476565b506000610476565b60006001600160e01b03198216635a05180f60e01b148061047657506104768261198f565b610e608686868686866119c4565b6001600160a01b0384163b15610e605760405163bc197c8160e01b81526001600160a01b0385169063bc197c81906115e69089908990889088908890600401612696565b6020604051808303816000875af1925050508015611621575060408051601f3d908101601f1916820190925261161e918101906126f4565b60015b6116cd5761162d612711565b806308c379a003611666575061164161272d565b8061164c5750611668565b8060405162461bcd60e51b81526004016104489190611db7565b505b60405162461bcd60e51b815260206004820152603460248201527f455243313135353a207472616e7366657220746f206e6f6e2d455243313135356044820152732932b1b2b4bb32b91034b6b83632b6b2b73a32b960611b6064820152608401610448565b6001600160e01b0319811663bc197c8160e01b1461118c5760405162461bcd60e51b8152600401610448906127b7565b611707828261098f565b6106635761171481611a2c565b61171f836020611a3e565b6040516020016117309291906127ff565b60408051601f198184030181529082905262461bcd60e51b825261044891600401611db7565b611760828261098f565b15610663576000828152602081815260408083206001600160a01b0385168085529252808320805460ff1916905551339285917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a45050565b6000610988836001600160a01b038416611bda565b60055460ff1661070b5760405162461bcd60e51b815260206004820152601460248201527314185d5cd8589b194e881b9bdd081c185d5cd95960621b6044820152606401610448565b604080516001808252818301909252606091600091906020808301908036833701905050905082816000815181106118535761185361246c565b602090810291909101015292915050565b6001600160a01b0384163b15610e605760405163f23a6e6160e01b81526001600160a01b0385169063f23a6e61906118a89089908990889088908890600401612874565b6020604051808303816000875af19250505080156118e3575060408051601f3d908101601f191682019092526118e0918101906126f4565b60015b6118ef5761162d612711565b6001600160e01b0319811663f23a6e6160e01b1461118c5760405162461bcd60e51b8152600401610448906127b7565b60055460ff161561070b5760405162461bcd60e51b815260206004820152601060248201526f14185d5cd8589b194e881c185d5cd95960821b6044820152606401610448565b600082600001828154811061197c5761197c61246c565b9060005260206000200154905092915050565b60006001600160e01b03198216637965db0b60e01b148061047657506301ffc9a760e01b6001600160e01b0319831614610476565b60055460ff1615610e605760405162461bcd60e51b815260206004820152602c60248201527f455243313135355061757361626c653a20746f6b656e207472616e736665722060448201526b1dda1a5b19481c185d5cd95960a21b6064820152608401610448565b60606104766001600160a01b03831660145b60606000611a4d8360026128b9565b611a5890600261253a565b67ffffffffffffffff811115611a7057611a70611dca565b6040519080825280601f01601f191660200182016040528015611a9a576020820181803683370190505b509050600360fc1b81600081518110611ab557611ab561246c565b60200101906001600160f81b031916908160001a905350600f60fb1b81600181518110611ae457611ae461246c565b60200101906001600160f81b031916908160001a9053506000611b088460026128b9565b611b1390600161253a565b90505b6001811115611b8b576f181899199a1a9b1b9c1cb0b131b232b360811b85600f1660108110611b4757611b4761246c565b1a60f81b828281518110611b5d57611b5d61246c565b60200101906001600160f81b031916908160001a90535060049490941c93611b84816128d8565b9050611b16565b5083156109885760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152606401610448565b60008181526001830160205260408120548015611cc3576000611bfe6001836128ef565b8554909150600090611c12906001906128ef565b9050818114611c77576000866000018281548110611c3257611c3261246c565b9060005260206000200154905080876000018481548110611c5557611c5561246c565b6000918252602080832090910192909255918252600188019052604090208390555b8554869080611c8857611c88612906565b600190038181906000526020600020016000905590558560010160008681526020019081526020016000206000905560019350505050610476565b6000915050610476565b80356001600160a01b0381168114611ce457600080fd5b919050565b60008060408385031215611cfc57600080fd5b611d0583611ccd565b946020939093013593505050565b6001600160e01b031981168114610e7257600080fd5b600060208284031215611d3b57600080fd5b813561098881611d13565b600060208284031215611d5857600080fd5b5035919050565b60005b83811015611d7a578181015183820152602001611d62565b8381111561056d5750506000910152565b60008151808452611da3816020860160208601611d5f565b601f01601f19169290920160200192915050565b6020815260006109886020830184611d8b565b634e487b7160e01b600052604160045260246000fd5b601f8201601f1916810167ffffffffffffffff81118282101715611e0657611e06611dca565b6040525050565b600067ffffffffffffffff821115611e2757611e27611dca565b5060051b60200190565b600082601f830112611e4257600080fd5b81356020611e4f82611e0d565b604051611e5c8282611de0565b83815260059390931b8501820192828101915086841115611e7c57600080fd5b8286015b84811015611e975780358352918301918301611e80565b509695505050505050565b600082601f830112611eb357600080fd5b813567ffffffffffffffff811115611ecd57611ecd611dca565b604051611ee4601f8301601f191660200182611de0565b818152846020838601011115611ef957600080fd5b816020850160208301376000918101602001919091529392505050565b60008060008060808587031215611f2c57600080fd5b611f3585611ccd565b9350602085013567ffffffffffffffff80821115611f5257600080fd5b611f5e88838901611e31565b94506040870135915080821115611f7457600080fd5b611f8088838901611e31565b93506060870135915080821115611f9657600080fd5b50611fa387828801611ea2565b91505092959194509250565b600080600080600060a08688031215611fc757600080fd5b611fd086611ccd565b9450611fde60208701611ccd565b9350604086013567ffffffffffffffff80821115611ffb57600080fd5b61200789838a01611e31565b9450606088013591508082111561201d57600080fd5b61202989838a01611e31565b9350608088013591508082111561203f57600080fd5b5061204c88828901611ea2565b9150509295509295909350565b6000806040838503121561206c57600080fd5b8235915061207c60208401611ccd565b90509250929050565b6000806040838503121561209857600080fd5b823567ffffffffffffffff808211156120b057600080fd5b818501915085601f8301126120c457600080fd5b813560206120d182611e0d565b6040516120de8282611de0565b83815260059390931b85018201928281019150898411156120fe57600080fd5b948201945b838610156121235761211486611ccd565b82529482019490820190612103565b9650508601359250508082111561213957600080fd5b5061214685828601611e31565b9150509250929050565b600081518084526020808501945080840160005b8381101561218057815187529582019590820190600101612164565b509495945050505050565b6020815260006109886020830184612150565b6000806000606084860312156121b357600080fd5b6121bc84611ccd565b9250602084013567ffffffffffffffff808211156121d957600080fd5b6121e587838801611e31565b935060408601359150808211156121fb57600080fd5b5061220886828701611e31565b9150509250925092565b6000806000806080858703121561222857600080fd5b61223185611ccd565b93506020850135925060408501359150606085013567ffffffffffffffff81111561225b57600080fd5b611fa387828801611ea2565b6000806040838503121561227a57600080fd5b50508035926020909101359150565b6000806040838503121561229c57600080fd5b6122a583611ccd565b9150602083013580151581146122ba57600080fd5b809150509250929050565b600080604083850312156122d857600080fd5b6122e183611ccd565b915061207c60208401611ccd565b600080600080600060a0868803121561230757600080fd5b61231086611ccd565b945061231e60208701611ccd565b93506040860135925060608601359150608086013567ffffffffffffffff81111561234857600080fd5b61204c88828901611ea2565b60008060006060848603121561236957600080fd5b61237284611ccd565b95602085013595506040909401359392505050565b600181811c9082168061239b57607f821691505b6020821081036123bb57634e487b7160e01b600052602260045260246000fd5b50919050565b60208082526038908201527f455243313135355072657365744d696e7465725061757365723a206d7573742060408201527f68617665206d696e74657220726f6c6520746f206d696e740000000000000000606082015260800190565b6020808252602e908201527f455243313135353a2063616c6c6572206973206e6f7420746f6b656e206f776e60408201526d195c881bdc88185c1c1c9bdd995960921b606082015260800190565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b6000600182016124aa576124aa612482565b5060010190565b60208082526021908201527f455243313135353a206d696e7420746f20746865207a65726f206164647265736040820152607360f81b606082015260800190565b60208082526028908201527f455243313135353a2069647320616e6420616d6f756e7473206c656e677468206040820152670dad2e6dac2e8c6d60c31b606082015260800190565b6000821982111561254d5761254d612482565b500190565b6040815260006125656040830185612150565b82810360208401526125778185612150565b95945050505050565b60208082526025908201527f455243313135353a207472616e7366657220746f20746865207a65726f206164604082015264647265737360d81b606082015260800190565b6020808252602a908201527f455243313135353a20696e73756666696369656e742062616c616e636520666f60408201526939103a3930b739b332b960b11b606082015260800190565b60208082526023908201527f455243313135353a206275726e2066726f6d20746865207a65726f206164647260408201526265737360e81b606082015260800190565b60208082526024908201527f455243313135353a206275726e20616d6f756e7420657863656564732062616c604082015263616e636560e01b606082015260800190565b6001600160a01b0386811682528516602082015260a0604082018190526000906126c290830186612150565b82810360608401526126d48186612150565b905082810360808401526126e88185611d8b565b98975050505050505050565b60006020828403121561270657600080fd5b815161098881611d13565b600060033d111561272a5760046000803e5060005160e01c5b90565b600060443d101561273b5790565b6040516003193d81016004833e81513d67ffffffffffffffff816024840111818411171561276b57505050505090565b82850191508151818111156127835750505050505090565b843d870101602082850101111561279d5750505050505090565b6127ac60208286010187611de0565b509095945050505050565b60208082526028908201527f455243313135353a204552433131353552656365697665722072656a656374656040820152676420746f6b656e7360c01b606082015260800190565b7f416363657373436f6e74726f6c3a206163636f756e7420000000000000000000815260008351612837816017850160208801611d5f565b7001034b99036b4b9b9b4b733903937b6329607d1b6017918401918201528351612868816028840160208801611d5f565b01602801949350505050565b6001600160a01b03868116825285166020820152604081018490526060810183905260a0608082018190526000906128ae90830184611d8b565b979650505050505050565b60008160001904831182151516156128d3576128d3612482565b500290565b6000816128e7576128e7612482565b506000190190565b60008282101561290157612901612482565b500390565b634e487b7160e01b600052603160045260246000fdfea2646970667358221220a8fa700831137222bbcc05df6f069d5761be110db6c1f18400e9a87dcc5a5f7864736f6c634300080d0033"; const isSuperArgs$D = (xs) => xs.length > 1; class ERC1155PresetMinterPauser__factory extends ethers.ContractFactory { constructor(...args) { if (isSuperArgs$D(args)) { super(...args); } else { super(_abi$2i, _bytecode$D, args[0]); } } getDeployTransaction(uri, overrides) { return super.getDeployTransaction(uri, overrides || {}); } deploy(uri, overrides) { return super.deploy(uri, overrides || {}); } connect(runner) { return super.connect(runner); } static createInterface() { return new ethers.Interface(_abi$2i); } static connect(address, runner) { return new ethers.Contract( address, _abi$2i, runner ); } } __publicField$2i(ERC1155PresetMinterPauser__factory, "bytecode", _bytecode$D); __publicField$2i(ERC1155PresetMinterPauser__factory, "abi", _abi$2i); var __defProp$2h = Object.defineProperty; var __defNormalProp$2h = (obj, key, value) => key in obj ? __defProp$2h(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$2h = (obj, key, value) => { __defNormalProp$2h(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$2h = [ { inputs: [ { internalType: "address", name: "operator", type: "address" }, { internalType: "address", name: "from", type: "address" }, { internalType: "uint256[]", name: "ids", type: "uint256[]" }, { internalType: "uint256[]", name: "values", type: "uint256[]" }, { internalType: "bytes", name: "data", type: "bytes" } ], name: "onERC1155BatchReceived", outputs: [ { internalType: "bytes4", name: "", type: "bytes4" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "operator", type: "address" }, { internalType: "address", name: "from", type: "address" }, { internalType: "uint256", name: "id", type: "uint256" }, { internalType: "uint256", name: "value", type: "uint256" }, { internalType: "bytes", name: "data", type: "bytes" } ], name: "onERC1155Received", outputs: [ { internalType: "bytes4", name: "", type: "bytes4" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "bytes4", name: "interfaceId", type: "bytes4" } ], name: "supportsInterface", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" } ]; class ERC1155Receiver__factory { static createInterface() { return new ethers.Interface(_abi$2h); } static connect(address, runner) { return new ethers.Contract(address, _abi$2h, runner); } } __publicField$2h(ERC1155Receiver__factory, "abi", _abi$2h); var __defProp$2g = Object.defineProperty; var __defNormalProp$2g = (obj, key, value) => key in obj ? __defProp$2g(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$2g = (obj, key, value) => { __defNormalProp$2g(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$2g = [ { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "account", type: "address" }, { indexed: true, internalType: "address", name: "operator", type: "address" }, { indexed: false, internalType: "bool", name: "approved", type: "bool" } ], name: "ApprovalForAll", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "operator", type: "address" }, { indexed: true, internalType: "address", name: "from", type: "address" }, { indexed: true, internalType: "address", name: "to", type: "address" }, { indexed: false, internalType: "uint256[]", name: "ids", type: "uint256[]" }, { indexed: false, internalType: "uint256[]", name: "values", type: "uint256[]" } ], name: "TransferBatch", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "operator", type: "address" }, { indexed: true, internalType: "address", name: "from", type: "address" }, { indexed: true, internalType: "address", name: "to", type: "address" }, { indexed: false, internalType: "uint256", name: "id", type: "uint256" }, { indexed: false, internalType: "uint256", name: "value", type: "uint256" } ], name: "TransferSingle", type: "event" }, { anonymous: false, inputs: [ { indexed: false, internalType: "string", name: "value", type: "string" }, { indexed: true, internalType: "uint256", name: "id", type: "uint256" } ], name: "URI", type: "event" }, { inputs: [ { internalType: "address", name: "account", type: "address" }, { internalType: "uint256", name: "id", type: "uint256" } ], name: "balanceOf", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address[]", name: "accounts", type: "address[]" }, { internalType: "uint256[]", name: "ids", type: "uint256[]" } ], name: "balanceOfBatch", outputs: [ { internalType: "uint256[]", name: "", type: "uint256[]" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "uint256", name: "id", type: "uint256" } ], name: "exists", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "account", type: "address" }, { internalType: "address", name: "operator", type: "address" } ], name: "isApprovedForAll", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "from", type: "address" }, { internalType: "address", name: "to", type: "address" }, { internalType: "uint256[]", name: "ids", type: "uint256[]" }, { internalType: "uint256[]", name: "amounts", type: "uint256[]" }, { internalType: "bytes", name: "data", type: "bytes" } ], name: "safeBatchTransferFrom", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "from", type: "address" }, { internalType: "address", name: "to", type: "address" }, { internalType: "uint256", name: "id", type: "uint256" }, { internalType: "uint256", name: "amount", type: "uint256" }, { internalType: "bytes", name: "data", type: "bytes" } ], name: "safeTransferFrom", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "operator", type: "address" }, { internalType: "bool", name: "approved", type: "bool" } ], name: "setApprovalForAll", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "bytes4", name: "interfaceId", type: "bytes4" } ], name: "supportsInterface", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "uint256", name: "id", type: "uint256" } ], name: "totalSupply", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "uint256", name: "", type: "uint256" } ], name: "uri", outputs: [ { internalType: "string", name: "", type: "string" } ], stateMutability: "view", type: "function" } ]; class ERC1155Supply__factory { static createInterface() { return new ethers.Interface(_abi$2g); } static connect(address, runner) { return new ethers.Contract(address, _abi$2g, runner); } } __publicField$2g(ERC1155Supply__factory, "abi", _abi$2g); var __defProp$2f = Object.defineProperty; var __defNormalProp$2f = (obj, key, value) => key in obj ? __defProp$2f(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$2f = (obj, key, value) => { __defNormalProp$2f(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$2f = [ { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "account", type: "address" }, { indexed: true, internalType: "address", name: "operator", type: "address" }, { indexed: false, internalType: "bool", name: "approved", type: "bool" } ], name: "ApprovalForAll", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "operator", type: "address" }, { indexed: true, internalType: "address", name: "from", type: "address" }, { indexed: true, internalType: "address", name: "to", type: "address" }, { indexed: false, internalType: "uint256[]", name: "ids", type: "uint256[]" }, { indexed: false, internalType: "uint256[]", name: "values", type: "uint256[]" } ], name: "TransferBatch", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "operator", type: "address" }, { indexed: true, internalType: "address", name: "from", type: "address" }, { indexed: true, internalType: "address", name: "to", type: "address" }, { indexed: false, internalType: "uint256", name: "id", type: "uint256" }, { indexed: false, internalType: "uint256", name: "value", type: "uint256" } ], name: "TransferSingle", type: "event" }, { anonymous: false, inputs: [ { indexed: false, internalType: "string", name: "value", type: "string" }, { indexed: true, internalType: "uint256", name: "id", type: "uint256" } ], name: "URI", type: "event" }, { inputs: [ { internalType: "address", name: "account", type: "address" }, { internalType: "uint256", name: "id", type: "uint256" } ], name: "balanceOf", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address[]", name: "accounts", type: "address[]" }, { internalType: "uint256[]", name: "ids", type: "uint256[]" } ], name: "balanceOfBatch", outputs: [ { internalType: "uint256[]", name: "", type: "uint256[]" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "account", type: "address" }, { internalType: "address", name: "operator", type: "address" } ], name: "isApprovedForAll", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "from", type: "address" }, { internalType: "address", name: "to", type: "address" }, { internalType: "uint256[]", name: "ids", type: "uint256[]" }, { internalType: "uint256[]", name: "amounts", type: "uint256[]" }, { internalType: "bytes", name: "data", type: "bytes" } ], name: "safeBatchTransferFrom", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "from", type: "address" }, { internalType: "address", name: "to", type: "address" }, { internalType: "uint256", name: "id", type: "uint256" }, { internalType: "uint256", name: "amount", type: "uint256" }, { internalType: "bytes", name: "data", type: "bytes" } ], name: "safeTransferFrom", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "operator", type: "address" }, { internalType: "bool", name: "approved", type: "bool" } ], name: "setApprovalForAll", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "bytes4", name: "interfaceId", type: "bytes4" } ], name: "supportsInterface", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "uint256", name: "tokenId", type: "uint256" } ], name: "uri", outputs: [ { internalType: "string", name: "", type: "string" } ], stateMutability: "view", type: "function" } ]; class ERC1155URIStorage__factory { static createInterface() { return new ethers.Interface(_abi$2f); } static connect(address, runner) { return new ethers.Contract(address, _abi$2f, runner); } } __publicField$2f(ERC1155URIStorage__factory, "abi", _abi$2f); var __defProp$2e = Object.defineProperty; var __defNormalProp$2e = (obj, key, value) => key in obj ? __defProp$2e(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$2e = (obj, key, value) => { __defNormalProp$2e(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$2e = [ { inputs: [ { internalType: "bytes4", name: "interfaceId", type: "bytes4" } ], name: "supportsInterface", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" } ]; class ERC165__factory { static createInterface() { return new ethers.Interface(_abi$2e); } static connect(address, runner) { return new ethers.Contract(address, _abi$2e, runner); } } __publicField$2e(ERC165__factory, "abi", _abi$2e); var __defProp$2d = Object.defineProperty; var __defNormalProp$2d = (obj, key, value) => key in obj ? __defProp$2d(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$2d = (obj, key, value) => { __defNormalProp$2d(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$2d = [ { inputs: [ { internalType: "bytes4", name: "interfaceId", type: "bytes4" } ], name: "supportsInterface", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" } ]; class ERC165Storage__factory { static createInterface() { return new ethers.Interface(_abi$2d); } static connect(address, runner) { return new ethers.Contract(address, _abi$2d, runner); } } __publicField$2d(ERC165Storage__factory, "abi", _abi$2d); var __defProp$2c = Object.defineProperty; var __defNormalProp$2c = (obj, key, value) => key in obj ? __defProp$2c(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$2c = (obj, key, value) => { __defNormalProp$2c(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$2c = [ { inputs: [ { internalType: "bytes32", name: "interfaceHash", type: "bytes32" }, { internalType: "address", name: "account", type: "address" } ], name: "canImplementInterfaceForAddress", outputs: [ { internalType: "bytes32", name: "", type: "bytes32" } ], stateMutability: "view", type: "function" } ]; const _bytecode$C = "0x608060405234801561001057600080fd5b50610114806100206000396000f3fe6080604052348015600f57600080fd5b506004361060285760003560e01c8063249cb3fa14602d575b600080fd5b603c603836600460a4565b604e565b60405190815260200160405180910390f35b6000828152602081815260408083206001600160a01b038516845290915281205460ff16607b576000609d565b7fa2ef4600d742022d532d4747cb3547474667d6f13804902513b2ec01c848f4b45b9392505050565b6000806040838503121560b657600080fd5b8235915060208301356001600160a01b038116811460d357600080fd5b80915050925092905056fea2646970667358221220a5979d2eef8916fee729d245f887d0acab4fec8979c537f4d26331a22797461964736f6c634300080d0033"; const isSuperArgs$C = (xs) => xs.length > 1; class ERC1820Implementer__factory extends ethers.ContractFactory { constructor(...args) { if (isSuperArgs$C(args)) { super(...args); } else { super(_abi$2c, _bytecode$C, args[0]); } } getDeployTransaction(overrides) { return super.getDeployTransaction(overrides || {}); } deploy(overrides) { return super.deploy(overrides || {}); } connect(runner) { return super.connect(runner); } static createInterface() { return new ethers.Interface(_abi$2c); } static connect(address, runner) { return new ethers.Contract(address, _abi$2c, runner); } } __publicField$2c(ERC1820Implementer__factory, "bytecode", _bytecode$C); __publicField$2c(ERC1820Implementer__factory, "abi", _abi$2c); var __defProp$2b = Object.defineProperty; var __defNormalProp$2b = (obj, key, value) => key in obj ? __defProp$2b(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$2b = (obj, key, value) => { __defNormalProp$2b(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$2b = [ { inputs: [ { internalType: "address", name: "_logic", type: "address" }, { internalType: "bytes", name: "_data", type: "bytes" } ], stateMutability: "payable", type: "constructor" }, { anonymous: false, inputs: [ { indexed: false, internalType: "address", name: "previousAdmin", type: "address" }, { indexed: false, internalType: "address", name: "newAdmin", type: "address" } ], name: "AdminChanged", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "beacon", type: "address" } ], name: "BeaconUpgraded", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "implementation", type: "address" } ], name: "Upgraded", type: "event" }, { stateMutability: "payable", type: "fallback" }, { stateMutability: "payable", type: "receive" } ]; const _bytecode$B = "0x608060405260405161073b38038061073b83398101604081905261002291610321565b61002e82826000610035565b505061043e565b61003e8361006b565b60008251118061004b5750805b156100665761006483836100ab60201b6100291760201c565b505b505050565b610074816100d7565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b60606100d08383604051806060016040528060278152602001610714602791396101a9565b9392505050565b6100ea8161022260201b6100551760201c565b6101515760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b60648201526084015b60405180910390fd5b806101887f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc60001b61023160201b6100641760201c565b80546001600160a01b0319166001600160a01b039290921691909117905550565b6060600080856001600160a01b0316856040516101c691906103ef565b600060405180830381855af49150503d8060008114610201576040519150601f19603f3d011682016040523d82523d6000602084013e610206565b606091505b50909250905061021886838387610234565b9695505050505050565b6001600160a01b03163b151590565b90565b606083156102a357825160000361029c576001600160a01b0385163b61029c5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401610148565b50816102ad565b6102ad83836102b5565b949350505050565b8151156102c55781518083602001fd5b8060405162461bcd60e51b8152600401610148919061040b565b634e487b7160e01b600052604160045260246000fd5b60005b838110156103105781810151838201526020016102f8565b838111156100645750506000910152565b6000806040838503121561033457600080fd5b82516001600160a01b038116811461034b57600080fd5b60208401519092506001600160401b038082111561036857600080fd5b818501915085601f83011261037c57600080fd5b81518181111561038e5761038e6102df565b604051601f8201601f19908116603f011681019083821181831017156103b6576103b66102df565b816040528281528860208487010111156103cf57600080fd5b6103e08360208301602088016102f5565b80955050505050509250929050565b600082516104018184602087016102f5565b9190910192915050565b602081526000825180602084015261042a8160408501602087016102f5565b601f01601f19169190910160400192915050565b6102c78061044d6000396000f3fe60806040523661001357610011610017565b005b6100115b610027610022610067565b61009f565b565b606061004e838360405180606001604052806027815260200161026b602791396100c3565b9392505050565b6001600160a01b03163b151590565b90565b600061009a7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc546001600160a01b031690565b905090565b3660008037600080366000845af43d6000803e8080156100be573d6000f35b3d6000fd5b6060600080856001600160a01b0316856040516100e0919061021b565b600060405180830381855af49150503d806000811461011b576040519150601f19603f3d011682016040523d82523d6000602084013e610120565b606091505b50915091506101318683838761013b565b9695505050505050565b606083156101af5782516000036101a8576001600160a01b0385163b6101a85760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e747261637400000060448201526064015b60405180910390fd5b50816101b9565b6101b983836101c1565b949350505050565b8151156101d15781518083602001fd5b8060405162461bcd60e51b815260040161019f9190610237565b60005b838110156102065781810151838201526020016101ee565b83811115610215576000848401525b50505050565b6000825161022d8184602087016101eb565b9190910192915050565b60208152600082518060208401526102568160408501602087016101eb565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122076c43ef7e83f3f5d4e9f67a47bb741a482d559078b0eb91b700166478c77577664736f6c634300080d0033416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564"; const isSuperArgs$B = (xs) => xs.length > 1; class ERC1967Proxy__factory extends ethers.ContractFactory { constructor(...args) { if (isSuperArgs$B(args)) { super(...args); } else { super(_abi$2b, _bytecode$B, args[0]); } } getDeployTransaction(_logic, _data, overrides) { return super.getDeployTransaction(_logic, _data, overrides || {}); } deploy(_logic, _data, overrides) { return super.deploy(_logic, _data, overrides || {}); } connect(runner) { return super.connect(runner); } static createInterface() { return new ethers.Interface(_abi$2b); } static connect(address, runner) { return new ethers.Contract(address, _abi$2b, runner); } } __publicField$2b(ERC1967Proxy__factory, "bytecode", _bytecode$B); __publicField$2b(ERC1967Proxy__factory, "abi", _abi$2b); var __defProp$2a = Object.defineProperty; var __defNormalProp$2a = (obj, key, value) => key in obj ? __defProp$2a(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$2a = (obj, key, value) => { __defNormalProp$2a(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$2a = [ { anonymous: false, inputs: [ { indexed: false, internalType: "address", name: "previousAdmin", type: "address" }, { indexed: false, internalType: "address", name: "newAdmin", type: "address" } ], name: "AdminChanged", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "beacon", type: "address" } ], name: "BeaconUpgraded", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "implementation", type: "address" } ], name: "Upgraded", type: "event" } ]; class ERC1967Upgrade__factory { static createInterface() { return new ethers.Interface(_abi$2a); } static connect(address, runner) { return new ethers.Contract(address, _abi$2a, runner); } } __publicField$2a(ERC1967Upgrade__factory, "abi", _abi$2a); var __defProp$29 = Object.defineProperty; var __defNormalProp$29 = (obj, key, value) => key in obj ? __defProp$29(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$29 = (obj, key, value) => { __defNormalProp$29(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$29 = [ { inputs: [ { internalType: "string", name: "name_", type: "string" }, { internalType: "string", name: "symbol_", type: "string" } ], stateMutability: "nonpayable", type: "constructor" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "owner", type: "address" }, { indexed: true, internalType: "address", name: "spender", type: "address" }, { indexed: false, internalType: "uint256", name: "value", type: "uint256" } ], name: "Approval", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "from", type: "address" }, { indexed: true, internalType: "address", name: "to", type: "address" }, { indexed: false, internalType: "uint256", name: "value", type: "uint256" } ], name: "Transfer", type: "event" }, { inputs: [ { internalType: "address", name: "owner", type: "address" }, { internalType: "address", name: "spender", type: "address" } ], name: "allowance", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "spender", type: "address" }, { internalType: "uint256", name: "amount", type: "uint256" } ], name: "approve", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "account", type: "address" } ], name: "balanceOf", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "decimals", outputs: [ { internalType: "uint8", name: "", type: "uint8" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "spender", type: "address" }, { internalType: "uint256", name: "subtractedValue", type: "uint256" } ], name: "decreaseAllowance", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "spender", type: "address" }, { internalType: "uint256", name: "addedValue", type: "uint256" } ], name: "increaseAllowance", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [], name: "name", outputs: [ { internalType: "string", name: "", type: "string" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "symbol", outputs: [ { internalType: "string", name: "", type: "string" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "totalSupply", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "to", type: "address" }, { internalType: "uint256", name: "amount", type: "uint256" } ], name: "transfer", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "from", type: "address" }, { internalType: "address", name: "to", type: "address" }, { internalType: "uint256", name: "amount", type: "uint256" } ], name: "transferFrom", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "nonpayable", type: "function" } ]; const _bytecode$A = "0x60806040523480156200001157600080fd5b5060405162000aed38038062000aed8339810160408190526200003491620001db565b81516200004990600390602085019062000068565b5080516200005f90600490602084019062000068565b50505062000281565b828054620000769062000245565b90600052602060002090601f0160209004810192826200009a5760008555620000e5565b82601f10620000b557805160ff1916838001178555620000e5565b82800160010185558215620000e5579182015b82811115620000e5578251825591602001919060010190620000c8565b50620000f3929150620000f7565b5090565b5b80821115620000f35760008155600101620000f8565b634e487b7160e01b600052604160045260246000fd5b600082601f8301126200013657600080fd5b81516001600160401b03808211156200015357620001536200010e565b604051601f8301601f19908116603f011681019082821181831017156200017e576200017e6200010e565b816040528381526020925086838588010111156200019b57600080fd5b600091505b83821015620001bf5785820183015181830184015290820190620001a0565b83821115620001d15760008385830101525b9695505050505050565b60008060408385031215620001ef57600080fd5b82516001600160401b03808211156200020757600080fd5b620002158683870162000124565b935060208501519150808211156200022c57600080fd5b506200023b8582860162000124565b9150509250929050565b600181811c908216806200025a57607f821691505b6020821081036200027b57634e487b7160e01b600052602260045260246000fd5b50919050565b61085c80620002916000396000f3fe608060405234801561001057600080fd5b50600436106100a95760003560e01c80633950935111610071578063395093511461012357806370a082311461013657806395d89b411461015f578063a457c2d714610167578063a9059cbb1461017a578063dd62ed3e1461018d57600080fd5b806306fdde03146100ae578063095ea7b3146100cc57806318160ddd146100ef57806323b872dd14610101578063313ce56714610114575b600080fd5b6100b66101a0565b6040516100c3919061069a565b60405180910390f35b6100df6100da36600461070b565b610232565b60405190151581526020016100c3565b6002545b6040519081526020016100c3565b6100df61010f366004610735565b61024a565b604051601281526020016100c3565b6100df61013136600461070b565b61026e565b6100f3610144366004610771565b6001600160a01b031660009081526020819052604090205490565b6100b6610290565b6100df61017536600461070b565b61029f565b6100df61018836600461070b565b61031f565b6100f361019b366004610793565b61032d565b6060600380546101af906107c6565b80601f01602080910402602001604051908101604052809291908181526020018280546101db906107c6565b80156102285780601f106101fd57610100808354040283529160200191610228565b820191906000526020600020905b81548152906001019060200180831161020b57829003601f168201915b5050505050905090565b600033610240818585610358565b5060019392505050565b60003361025885828561047c565b6102638585856104f6565b506001949350505050565b600033610240818585610281838361032d565b61028b9190610800565b610358565b6060600480546101af906107c6565b600033816102ad828661032d565b9050838110156103125760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b60648201526084015b60405180910390fd5b6102638286868403610358565b6000336102408185856104f6565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b6001600160a01b0383166103ba5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610309565b6001600160a01b03821661041b5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610309565b6001600160a01b0383811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6000610488848461032d565b905060001981146104f057818110156104e35760405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e63650000006044820152606401610309565b6104f08484848403610358565b50505050565b6001600160a01b03831661055a5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610309565b6001600160a01b0382166105bc5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610309565b6001600160a01b038316600090815260208190526040902054818110156106345760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b6064820152608401610309565b6001600160a01b03848116600081815260208181526040808320878703905593871680835291849020805487019055925185815290927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a36104f0565b600060208083528351808285015260005b818110156106c7578581018301518582016040015282016106ab565b818111156106d9576000604083870101525b50601f01601f1916929092016040019392505050565b80356001600160a01b038116811461070657600080fd5b919050565b6000806040838503121561071e57600080fd5b610727836106ef565b946020939093013593505050565b60008060006060848603121561074a57600080fd5b610753846106ef565b9250610761602085016106ef565b9150604084013590509250925092565b60006020828403121561078357600080fd5b61078c826106ef565b9392505050565b600080604083850312156107a657600080fd5b6107af836106ef565b91506107bd602084016106ef565b90509250929050565b600181811c908216806107da57607f821691505b6020821081036107fa57634e487b7160e01b600052602260045260246000fd5b50919050565b6000821982111561082157634e487b7160e01b600052601160045260246000fd5b50019056fea2646970667358221220e7dc257596a973556752e9db5f465b21aad78d068ae819d0395e1f99a95065a964736f6c634300080d0033"; const isSuperArgs$A = (xs) => xs.length > 1; class ERC20__factory extends ethers.ContractFactory { constructor(...args) { if (isSuperArgs$A(args)) { super(...args); } else { super(_abi$29, _bytecode$A, args[0]); } } getDeployTransaction(name_, symbol_, overrides) { return super.getDeployTransaction(name_, symbol_, overrides || {}); } deploy(name_, symbol_, overrides) { return super.deploy(name_, symbol_, overrides || {}); } connect(runner) { return super.connect(runner); } static createInterface() { return new ethers.Interface(_abi$29); } static connect(address, runner) { return new ethers.Contract(address, _abi$29, runner); } } __publicField$29(ERC20__factory, "bytecode", _bytecode$A); __publicField$29(ERC20__factory, "abi", _abi$29); var __defProp$28 = Object.defineProperty; var __defNormalProp$28 = (obj, key, value) => key in obj ? __defProp$28(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$28 = (obj, key, value) => { __defNormalProp$28(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$28 = [ { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "owner", type: "address" }, { indexed: true, internalType: "address", name: "spender", type: "address" }, { indexed: false, internalType: "uint256", name: "value", type: "uint256" } ], name: "Approval", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "from", type: "address" }, { indexed: true, internalType: "address", name: "to", type: "address" }, { indexed: false, internalType: "uint256", name: "value", type: "uint256" } ], name: "Transfer", type: "event" }, { inputs: [ { internalType: "address", name: "owner", type: "address" }, { internalType: "address", name: "spender", type: "address" } ], name: "allowance", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "spender", type: "address" }, { internalType: "uint256", name: "amount", type: "uint256" } ], name: "approve", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "account", type: "address" } ], name: "balanceOf", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "uint256", name: "amount", type: "uint256" } ], name: "burn", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "account", type: "address" }, { internalType: "uint256", name: "amount", type: "uint256" } ], name: "burnFrom", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [], name: "decimals", outputs: [ { internalType: "uint8", name: "", type: "uint8" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "spender", type: "address" }, { internalType: "uint256", name: "subtractedValue", type: "uint256" } ], name: "decreaseAllowance", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "spender", type: "address" }, { internalType: "uint256", name: "addedValue", type: "uint256" } ], name: "increaseAllowance", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [], name: "name", outputs: [ { internalType: "string", name: "", type: "string" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "symbol", outputs: [ { internalType: "string", name: "", type: "string" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "totalSupply", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "to", type: "address" }, { internalType: "uint256", name: "amount", type: "uint256" } ], name: "transfer", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "from", type: "address" }, { internalType: "address", name: "to", type: "address" }, { internalType: "uint256", name: "amount", type: "uint256" } ], name: "transferFrom", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "nonpayable", type: "function" } ]; class ERC20Burnable__factory { static createInterface() { return new ethers.Interface(_abi$28); } static connect(address, runner) { return new ethers.Contract(address, _abi$28, runner); } } __publicField$28(ERC20Burnable__factory, "abi", _abi$28); var __defProp$27 = Object.defineProperty; var __defNormalProp$27 = (obj, key, value) => key in obj ? __defProp$27(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$27 = (obj, key, value) => { __defNormalProp$27(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$27 = [ { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "owner", type: "address" }, { indexed: true, internalType: "address", name: "spender", type: "address" }, { indexed: false, internalType: "uint256", name: "value", type: "uint256" } ], name: "Approval", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "from", type: "address" }, { indexed: true, internalType: "address", name: "to", type: "address" }, { indexed: false, internalType: "uint256", name: "value", type: "uint256" } ], name: "Transfer", type: "event" }, { inputs: [ { internalType: "address", name: "owner", type: "address" }, { internalType: "address", name: "spender", type: "address" } ], name: "allowance", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "spender", type: "address" }, { internalType: "uint256", name: "amount", type: "uint256" } ], name: "approve", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "account", type: "address" } ], name: "balanceOf", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "cap", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "decimals", outputs: [ { internalType: "uint8", name: "", type: "uint8" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "spender", type: "address" }, { internalType: "uint256", name: "subtractedValue", type: "uint256" } ], name: "decreaseAllowance", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "spender", type: "address" }, { internalType: "uint256", name: "addedValue", type: "uint256" } ], name: "increaseAllowance", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [], name: "name", outputs: [ { internalType: "string", name: "", type: "string" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "symbol", outputs: [ { internalType: "string", name: "", type: "string" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "totalSupply", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "to", type: "address" }, { internalType: "uint256", name: "amount", type: "uint256" } ], name: "transfer", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "from", type: "address" }, { internalType: "address", name: "to", type: "address" }, { internalType: "uint256", name: "amount", type: "uint256" } ], name: "transferFrom", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "nonpayable", type: "function" } ]; class ERC20Capped__factory { static createInterface() { return new ethers.Interface(_abi$27); } static connect(address, runner) { return new ethers.Contract(address, _abi$27, runner); } } __publicField$27(ERC20Capped__factory, "abi", _abi$27); var __defProp$26 = Object.defineProperty; var __defNormalProp$26 = (obj, key, value) => key in obj ? __defProp$26(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$26 = (obj, key, value) => { __defNormalProp$26(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$26 = [ { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "owner", type: "address" }, { indexed: true, internalType: "address", name: "spender", type: "address" }, { indexed: false, internalType: "uint256", name: "value", type: "uint256" } ], name: "Approval", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "from", type: "address" }, { indexed: true, internalType: "address", name: "to", type: "address" }, { indexed: false, internalType: "uint256", name: "value", type: "uint256" } ], name: "Transfer", type: "event" }, { inputs: [ { internalType: "address", name: "owner", type: "address" }, { internalType: "address", name: "spender", type: "address" } ], name: "allowance", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "spender", type: "address" }, { internalType: "uint256", name: "amount", type: "uint256" } ], name: "approve", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "account", type: "address" } ], name: "balanceOf", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "decimals", outputs: [ { internalType: "uint8", name: "", type: "uint8" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "spender", type: "address" }, { internalType: "uint256", name: "subtractedValue", type: "uint256" } ], name: "decreaseAllowance", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "token", type: "address" }, { internalType: "uint256", name: "amount", type: "uint256" } ], name: "flashFee", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "contract IERC3156FlashBorrower", name: "receiver", type: "address" }, { internalType: "address", name: "token", type: "address" }, { internalType: "uint256", name: "amount", type: "uint256" }, { internalType: "bytes", name: "data", type: "bytes" } ], name: "flashLoan", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "spender", type: "address" }, { internalType: "uint256", name: "addedValue", type: "uint256" } ], name: "increaseAllowance", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "token", type: "address" } ], name: "maxFlashLoan", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "name", outputs: [ { internalType: "string", name: "", type: "string" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "symbol", outputs: [ { internalType: "string", name: "", type: "string" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "totalSupply", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "to", type: "address" }, { internalType: "uint256", name: "amount", type: "uint256" } ], name: "transfer", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "from", type: "address" }, { internalType: "address", name: "to", type: "address" }, { internalType: "uint256", name: "amount", type: "uint256" } ], name: "transferFrom", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "nonpayable", type: "function" } ]; class ERC20FlashMint__factory { static createInterface() { return new ethers.Interface(_abi$26); } static connect(address, runner) { return new ethers.Contract(address, _abi$26, runner); } } __publicField$26(ERC20FlashMint__factory, "abi", _abi$26); var __defProp$25 = Object.defineProperty; var __defNormalProp$25 = (obj, key, value) => key in obj ? __defProp$25(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$25 = (obj, key, value) => { __defNormalProp$25(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$25 = [ { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "owner", type: "address" }, { indexed: true, internalType: "address", name: "spender", type: "address" }, { indexed: false, internalType: "uint256", name: "value", type: "uint256" } ], name: "Approval", type: "event" }, { anonymous: false, inputs: [ { indexed: false, internalType: "address", name: "account", type: "address" } ], name: "Paused", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "from", type: "address" }, { indexed: true, internalType: "address", name: "to", type: "address" }, { indexed: false, internalType: "uint256", name: "value", type: "uint256" } ], name: "Transfer", type: "event" }, { anonymous: false, inputs: [ { indexed: false, internalType: "address", name: "account", type: "address" } ], name: "Unpaused", type: "event" }, { inputs: [ { internalType: "address", name: "owner", type: "address" }, { internalType: "address", name: "spender", type: "address" } ], name: "allowance", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "spender", type: "address" }, { internalType: "uint256", name: "amount", type: "uint256" } ], name: "approve", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "account", type: "address" } ], name: "balanceOf", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "decimals", outputs: [ { internalType: "uint8", name: "", type: "uint8" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "spender", type: "address" }, { internalType: "uint256", name: "subtractedValue", type: "uint256" } ], name: "decreaseAllowance", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "spender", type: "address" }, { internalType: "uint256", name: "addedValue", type: "uint256" } ], name: "increaseAllowance", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [], name: "name", outputs: [ { internalType: "string", name: "", type: "string" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "paused", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "symbol", outputs: [ { internalType: "string", name: "", type: "string" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "totalSupply", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "to", type: "address" }, { internalType: "uint256", name: "amount", type: "uint256" } ], name: "transfer", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "from", type: "address" }, { internalType: "address", name: "to", type: "address" }, { internalType: "uint256", name: "amount", type: "uint256" } ], name: "transferFrom", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "nonpayable", type: "function" } ]; class ERC20Pausable__factory { static createInterface() { return new ethers.Interface(_abi$25); } static connect(address, runner) { return new ethers.Contract(address, _abi$25, runner); } } __publicField$25(ERC20Pausable__factory, "abi", _abi$25); var __defProp$24 = Object.defineProperty; var __defNormalProp$24 = (obj, key, value) => key in obj ? __defProp$24(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$24 = (obj, key, value) => { __defNormalProp$24(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$24 = [ { inputs: [], name: "InvalidShortString", type: "error" }, { inputs: [ { internalType: "string", name: "str", type: "string" } ], name: "StringTooLong", type: "error" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "owner", type: "address" }, { indexed: true, internalType: "address", name: "spender", type: "address" }, { indexed: false, internalType: "uint256", name: "value", type: "uint256" } ], name: "Approval", type: "event" }, { anonymous: false, inputs: [], name: "EIP712DomainChanged", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "from", type: "address" }, { indexed: true, internalType: "address", name: "to", type: "address" }, { indexed: false, internalType: "uint256", name: "value", type: "uint256" } ], name: "Transfer", type: "event" }, { inputs: [], name: "DOMAIN_SEPARATOR", outputs: [ { internalType: "bytes32", name: "", type: "bytes32" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "owner", type: "address" }, { internalType: "address", name: "spender", type: "address" } ], name: "allowance", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "spender", type: "address" }, { internalType: "uint256", name: "amount", type: "uint256" } ], name: "approve", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "account", type: "address" } ], name: "balanceOf", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "decimals", outputs: [ { internalType: "uint8", name: "", type: "uint8" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "spender", type: "address" }, { internalType: "uint256", name: "subtractedValue", type: "uint256" } ], name: "decreaseAllowance", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [], name: "eip712Domain", outputs: [ { internalType: "bytes1", name: "fields", type: "bytes1" }, { internalType: "string", name: "name", type: "string" }, { internalType: "string", name: "version", type: "string" }, { internalType: "uint256", name: "chainId", type: "uint256" }, { internalType: "address", name: "verifyingContract", type: "address" }, { internalType: "bytes32", name: "salt", type: "bytes32" }, { internalType: "uint256[]", name: "extensions", type: "uint256[]" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "spender", type: "address" }, { internalType: "uint256", name: "addedValue", type: "uint256" } ], name: "increaseAllowance", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [], name: "name", outputs: [ { internalType: "string", name: "", type: "string" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "owner", type: "address" } ], name: "nonces", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "owner", type: "address" }, { internalType: "address", name: "spender", type: "address" }, { internalType: "uint256", name: "value", type: "uint256" }, { internalType: "uint256", name: "deadline", type: "uint256" }, { internalType: "uint8", name: "v", type: "uint8" }, { internalType: "bytes32", name: "r", type: "bytes32" }, { internalType: "bytes32", name: "s", type: "bytes32" } ], name: "permit", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [], name: "symbol", outputs: [ { internalType: "string", name: "", type: "string" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "totalSupply", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "to", type: "address" }, { internalType: "uint256", name: "amount", type: "uint256" } ], name: "transfer", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "from", type: "address" }, { internalType: "address", name: "to", type: "address" }, { internalType: "uint256", name: "amount", type: "uint256" } ], name: "transferFrom", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "nonpayable", type: "function" } ]; class ERC20Permit__factory { static createInterface() { return new ethers.Interface(_abi$24); } static connect(address, runner) { return new ethers.Contract(address, _abi$24, runner); } } __publicField$24(ERC20Permit__factory, "abi", _abi$24); var __defProp$23 = Object.defineProperty; var __defNormalProp$23 = (obj, key, value) => key in obj ? __defProp$23(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$23 = (obj, key, value) => { __defNormalProp$23(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$23 = [ { inputs: [ { internalType: "string", name: "name", type: "string" }, { internalType: "string", name: "symbol", type: "string" }, { internalType: "uint256", name: "initialSupply", type: "uint256" }, { internalType: "address", name: "owner", type: "address" } ], stateMutability: "nonpayable", type: "constructor" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "owner", type: "address" }, { indexed: true, internalType: "address", name: "spender", type: "address" }, { indexed: false, internalType: "uint256", name: "value", type: "uint256" } ], name: "Approval", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "from", type: "address" }, { indexed: true, internalType: "address", name: "to", type: "address" }, { indexed: false, internalType: "uint256", name: "value", type: "uint256" } ], name: "Transfer", type: "event" }, { inputs: [ { internalType: "address", name: "owner", type: "address" }, { internalType: "address", name: "spender", type: "address" } ], name: "allowance", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "spender", type: "address" }, { internalType: "uint256", name: "amount", type: "uint256" } ], name: "approve", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "account", type: "address" } ], name: "balanceOf", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "uint256", name: "amount", type: "uint256" } ], name: "burn", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "account", type: "address" }, { internalType: "uint256", name: "amount", type: "uint256" } ], name: "burnFrom", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [], name: "decimals", outputs: [ { internalType: "uint8", name: "", type: "uint8" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "spender", type: "address" }, { internalType: "uint256", name: "subtractedValue", type: "uint256" } ], name: "decreaseAllowance", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "spender", type: "address" }, { internalType: "uint256", name: "addedValue", type: "uint256" } ], name: "increaseAllowance", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [], name: "name", outputs: [ { internalType: "string", name: "", type: "string" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "symbol", outputs: [ { internalType: "string", name: "", type: "string" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "totalSupply", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "to", type: "address" }, { internalType: "uint256", name: "amount", type: "uint256" } ], name: "transfer", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "from", type: "address" }, { internalType: "address", name: "to", type: "address" }, { internalType: "uint256", name: "amount", type: "uint256" } ], name: "transferFrom", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "nonpayable", type: "function" } ]; const _bytecode$z = "0x60806040523480156200001157600080fd5b5060405162000dd738038062000dd78339810160408190526200003491620002bb565b8351849084906200004d90600390602085019062000148565b5080516200006390600490602084019062000148565b5050506200007881836200008260201b60201c565b50505050620003b3565b6001600160a01b038216620000dd5760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015260640160405180910390fd5b8060026000828254620000f1919062000350565b90915550506001600160a01b038216600081815260208181526040808320805486019055518481527fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35050565b828054620001569062000377565b90600052602060002090601f0160209004810192826200017a5760008555620001c5565b82601f106200019557805160ff1916838001178555620001c5565b82800160010185558215620001c5579182015b82811115620001c5578251825591602001919060010190620001a8565b50620001d3929150620001d7565b5090565b5b80821115620001d35760008155600101620001d8565b634e487b7160e01b600052604160045260246000fd5b600082601f8301126200021657600080fd5b81516001600160401b0380821115620002335762000233620001ee565b604051601f8301601f19908116603f011681019082821181831017156200025e576200025e620001ee565b816040528381526020925086838588010111156200027b57600080fd5b600091505b838210156200029f578582018301518183018401529082019062000280565b83821115620002b15760008385830101525b9695505050505050565b60008060008060808587031215620002d257600080fd5b84516001600160401b0380821115620002ea57600080fd5b620002f88883890162000204565b955060208701519150808211156200030f57600080fd5b506200031e8782880162000204565b60408701516060880151919550935090506001600160a01b03811681146200034557600080fd5b939692955090935050565b600082198211156200037257634e487b7160e01b600052601160045260246000fd5b500190565b600181811c908216806200038c57607f821691505b602082108103620003ad57634e487b7160e01b600052602260045260246000fd5b50919050565b610a1480620003c36000396000f3fe608060405234801561001057600080fd5b50600436106100cf5760003560e01c806342966c681161008c57806395d89b411161006657806395d89b41146101ad578063a457c2d7146101b5578063a9059cbb146101c8578063dd62ed3e146101db57600080fd5b806342966c681461015c57806370a082311461017157806379cc67901461019a57600080fd5b806306fdde03146100d4578063095ea7b3146100f257806318160ddd1461011557806323b872dd14610127578063313ce5671461013a5780633950935114610149575b600080fd5b6100dc6101ee565b6040516100e99190610839565b60405180910390f35b6101056101003660046108aa565b610280565b60405190151581526020016100e9565b6002545b6040519081526020016100e9565b6101056101353660046108d4565b610298565b604051601281526020016100e9565b6101056101573660046108aa565b6102bc565b61016f61016a366004610910565b6102de565b005b61011961017f366004610929565b6001600160a01b031660009081526020819052604090205490565b61016f6101a83660046108aa565b6102eb565b6100dc610304565b6101056101c33660046108aa565b610313565b6101056101d63660046108aa565b610393565b6101196101e936600461094b565b6103a1565b6060600380546101fd9061097e565b80601f01602080910402602001604051908101604052809291908181526020018280546102299061097e565b80156102765780601f1061024b57610100808354040283529160200191610276565b820191906000526020600020905b81548152906001019060200180831161025957829003601f168201915b5050505050905090565b60003361028e8185856103cc565b5060019392505050565b6000336102a68582856104f1565b6102b185858561056b565b506001949350505050565b60003361028e8185856102cf83836103a1565b6102d991906109b8565b6103cc565b6102e8338261070f565b50565b6102f68233836104f1565b610300828261070f565b5050565b6060600480546101fd9061097e565b6000338161032182866103a1565b9050838110156103865760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b60648201526084015b60405180910390fd5b6102b182868684036103cc565b60003361028e81858561056b565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b6001600160a01b03831661042e5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b606482015260840161037d565b6001600160a01b03821661048f5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b606482015260840161037d565b6001600160a01b0383811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a3505050565b60006104fd84846103a1565b9050600019811461056557818110156105585760405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e6365000000604482015260640161037d565b61056584848484036103cc565b50505050565b6001600160a01b0383166105cf5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b606482015260840161037d565b6001600160a01b0382166106315760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b606482015260840161037d565b6001600160a01b038316600090815260208190526040902054818110156106a95760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b606482015260840161037d565b6001600160a01b03848116600081815260208181526040808320878703905593871680835291849020805487019055925185815290927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a3610565565b6001600160a01b03821661076f5760405162461bcd60e51b815260206004820152602160248201527f45524332303a206275726e2066726f6d20746865207a65726f206164647265736044820152607360f81b606482015260840161037d565b6001600160a01b038216600090815260208190526040902054818110156107e35760405162461bcd60e51b815260206004820152602260248201527f45524332303a206275726e20616d6f756e7420657863656564732062616c616e604482015261636560f01b606482015260840161037d565b6001600160a01b0383166000818152602081815260408083208686039055600280548790039055518581529192917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91016104e4565b600060208083528351808285015260005b818110156108665785810183015185820160400152820161084a565b81811115610878576000604083870101525b50601f01601f1916929092016040019392505050565b80356001600160a01b03811681146108a557600080fd5b919050565b600080604083850312156108bd57600080fd5b6108c68361088e565b946020939093013593505050565b6000806000606084860312156108e957600080fd5b6108f28461088e565b92506109006020850161088e565b9150604084013590509250925092565b60006020828403121561092257600080fd5b5035919050565b60006020828403121561093b57600080fd5b6109448261088e565b9392505050565b6000806040838503121561095e57600080fd5b6109678361088e565b91506109756020840161088e565b90509250929050565b600181811c9082168061099257607f821691505b6020821081036109b257634e487b7160e01b600052602260045260246000fd5b50919050565b600082198211156109d957634e487b7160e01b600052601160045260246000fd5b50019056fea2646970667358221220425144f5df3cf3550ee4191ed0afa4538ae90c257bcb6a46cba7ffb43eb4e29164736f6c634300080d0033"; const isSuperArgs$z = (xs) => xs.length > 1; class ERC20PresetFixedSupply__factory extends ethers.ContractFactory { constructor(...args) { if (isSuperArgs$z(args)) { super(...args); } else { super(_abi$23, _bytecode$z, args[0]); } } getDeployTransaction(name, symbol, initialSupply, owner, overrides) { return super.getDeployTransaction( name, symbol, initialSupply, owner, overrides || {} ); } deploy(name, symbol, initialSupply, owner, overrides) { return super.deploy( name, symbol, initialSupply, owner, overrides || {} ); } connect(runner) { return super.connect(runner); } static createInterface() { return new ethers.Interface(_abi$23); } static connect(address, runner) { return new ethers.Contract( address, _abi$23, runner ); } } __publicField$23(ERC20PresetFixedSupply__factory, "bytecode", _bytecode$z); __publicField$23(ERC20PresetFixedSupply__factory, "abi", _abi$23); var __defProp$22 = Object.defineProperty; var __defNormalProp$22 = (obj, key, value) => key in obj ? __defProp$22(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$22 = (obj, key, value) => { __defNormalProp$22(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$22 = [ { inputs: [ { internalType: "string", name: "name", type: "string" }, { internalType: "string", name: "symbol", type: "string" } ], stateMutability: "nonpayable", type: "constructor" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "owner", type: "address" }, { indexed: true, internalType: "address", name: "spender", type: "address" }, { indexed: false, internalType: "uint256", name: "value", type: "uint256" } ], name: "Approval", type: "event" }, { anonymous: false, inputs: [ { indexed: false, internalType: "address", name: "account", type: "address" } ], name: "Paused", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "bytes32", name: "role", type: "bytes32" }, { indexed: true, internalType: "bytes32", name: "previousAdminRole", type: "bytes32" }, { indexed: true, internalType: "bytes32", name: "newAdminRole", type: "bytes32" } ], name: "RoleAdminChanged", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "bytes32", name: "role", type: "bytes32" }, { indexed: true, internalType: "address", name: "account", type: "address" }, { indexed: true, internalType: "address", name: "sender", type: "address" } ], name: "RoleGranted", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "bytes32", name: "role", type: "bytes32" }, { indexed: true, internalType: "address", name: "account", type: "address" }, { indexed: true, internalType: "address", name: "sender", type: "address" } ], name: "RoleRevoked", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "from", type: "address" }, { indexed: true, internalType: "address", name: "to", type: "address" }, { indexed: false, internalType: "uint256", name: "value", type: "uint256" } ], name: "Transfer", type: "event" }, { anonymous: false, inputs: [ { indexed: false, internalType: "address", name: "account", type: "address" } ], name: "Unpaused", type: "event" }, { inputs: [], name: "DEFAULT_ADMIN_ROLE", outputs: [ { internalType: "bytes32", name: "", type: "bytes32" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "MINTER_ROLE", outputs: [ { internalType: "bytes32", name: "", type: "bytes32" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "PAUSER_ROLE", outputs: [ { internalType: "bytes32", name: "", type: "bytes32" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "owner", type: "address" }, { internalType: "address", name: "spender", type: "address" } ], name: "allowance", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "spender", type: "address" }, { internalType: "uint256", name: "amount", type: "uint256" } ], name: "approve", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "account", type: "address" } ], name: "balanceOf", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "uint256", name: "amount", type: "uint256" } ], name: "burn", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "account", type: "address" }, { internalType: "uint256", name: "amount", type: "uint256" } ], name: "burnFrom", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [], name: "decimals", outputs: [ { internalType: "uint8", name: "", type: "uint8" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "spender", type: "address" }, { internalType: "uint256", name: "subtractedValue", type: "uint256" } ], name: "decreaseAllowance", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "bytes32", name: "role", type: "bytes32" } ], name: "getRoleAdmin", outputs: [ { internalType: "bytes32", name: "", type: "bytes32" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "bytes32", name: "role", type: "bytes32" }, { internalType: "uint256", name: "index", type: "uint256" } ], name: "getRoleMember", outputs: [ { internalType: "address", name: "", type: "address" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "bytes32", name: "role", type: "bytes32" } ], name: "getRoleMemberCount", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "bytes32", name: "role", type: "bytes32" }, { internalType: "address", name: "account", type: "address" } ], name: "grantRole", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "bytes32", name: "role", type: "bytes32" }, { internalType: "address", name: "account", type: "address" } ], name: "hasRole", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "spender", type: "address" }, { internalType: "uint256", name: "addedValue", type: "uint256" } ], name: "increaseAllowance", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "to", type: "address" }, { internalType: "uint256", name: "amount", type: "uint256" } ], name: "mint", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [], name: "name", outputs: [ { internalType: "string", name: "", type: "string" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "pause", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [], name: "paused", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "bytes32", name: "role", type: "bytes32" }, { internalType: "address", name: "account", type: "address" } ], name: "renounceRole", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "bytes32", name: "role", type: "bytes32" }, { internalType: "address", name: "account", type: "address" } ], name: "revokeRole", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "bytes4", name: "interfaceId", type: "bytes4" } ], name: "supportsInterface", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "symbol", outputs: [ { internalType: "string", name: "", type: "string" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "totalSupply", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "to", type: "address" }, { internalType: "uint256", name: "amount", type: "uint256" } ], name: "transfer", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "from", type: "address" }, { internalType: "address", name: "to", type: "address" }, { internalType: "uint256", name: "amount", type: "uint256" } ], name: "transferFrom", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [], name: "unpause", outputs: [], stateMutability: "nonpayable", type: "function" } ]; const _bytecode$y = "0x60806040523480156200001157600080fd5b5060405162001d1038038062001d108339810160408190526200003491620003b5565b8151829082906200004d90600590602085019062000242565b5080516200006390600690602084019062000242565b50506007805460ff19169055506200007d600033620000dd565b620000a97f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a633620000dd565b620000d57f65d7a28e3265b37a6474929f336521b332c1681b933f6cb9f3376673440d862a33620000dd565b50506200045b565b620000e98282620000ed565b5050565b6200010482826200013060201b6200093d1760201c565b60008281526001602090815260409091206200012b918390620009c1620001d0821b17901c565b505050565b6000828152602081815260408083206001600160a01b038516845290915290205460ff16620000e9576000828152602081815260408083206001600160a01b03851684529091529020805460ff191660011790556200018c3390565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b6000620001e7836001600160a01b038416620001f0565b90505b92915050565b60008181526001830160205260408120546200023957508154600181810184556000848152602080822090930184905584548482528286019093526040902091909155620001ea565b506000620001ea565b82805462000250906200041f565b90600052602060002090601f016020900481019282620002745760008555620002bf565b82601f106200028f57805160ff1916838001178555620002bf565b82800160010185558215620002bf579182015b82811115620002bf578251825591602001919060010190620002a2565b50620002cd929150620002d1565b5090565b5b80821115620002cd5760008155600101620002d2565b634e487b7160e01b600052604160045260246000fd5b600082601f8301126200031057600080fd5b81516001600160401b03808211156200032d576200032d620002e8565b604051601f8301601f19908116603f01168101908282118183101715620003585762000358620002e8565b816040528381526020925086838588010111156200037557600080fd5b600091505b838210156200039957858201830151818301840152908201906200037a565b83821115620003ab5760008385830101525b9695505050505050565b60008060408385031215620003c957600080fd5b82516001600160401b0380821115620003e157600080fd5b620003ef86838701620002fe565b935060208501519150808211156200040657600080fd5b506200041585828601620002fe565b9150509250929050565b600181811c908216806200043457607f821691505b6020821081036200045557634e487b7160e01b600052602260045260246000fd5b50919050565b6118a5806200046b6000396000f3fe608060405234801561001057600080fd5b50600436106101c45760003560e01c806370a08231116100f9578063a457c2d711610097578063d539139311610071578063d5391393146103af578063d547741f146103d6578063dd62ed3e146103e9578063e63ab1e9146103fc57600080fd5b8063a457c2d714610376578063a9059cbb14610389578063ca15c8731461039c57600080fd5b80639010d07c116100d35780639010d07c1461032857806391d148541461035357806395d89b4114610366578063a217fddf1461036e57600080fd5b806370a08231146102e457806379cc67901461030d5780638456cb591461032057600080fd5b8063313ce567116101665780633f4ba83a116101405780633f4ba83a146102ab57806340c10f19146102b357806342966c68146102c65780635c975abb146102d957600080fd5b8063313ce5671461027657806336568abe14610285578063395093511461029857600080fd5b806318160ddd116101a257806318160ddd1461021957806323b872dd1461022b578063248a9ca31461023e5780632f2ff15d1461026157600080fd5b806301ffc9a7146101c957806306fdde03146101f1578063095ea7b314610206575b600080fd5b6101dc6101d736600461154c565b610423565b60405190151581526020015b60405180910390f35b6101f961044e565b6040516101e891906115a2565b6101dc6102143660046115f1565b6104e0565b6004545b6040519081526020016101e8565b6101dc61023936600461161b565b6104f8565b61021d61024c366004611657565b60009081526020819052604090206001015490565b61027461026f366004611670565b61051c565b005b604051601281526020016101e8565b610274610293366004611670565b610546565b6101dc6102a63660046115f1565b6105c9565b6102746105eb565b6102746102c13660046115f1565b610691565b6102746102d4366004611657565b610730565b60075460ff166101dc565b61021d6102f236600461169c565b6001600160a01b031660009081526002602052604090205490565b61027461031b3660046115f1565b61073d565b610274610752565b61033b6103363660046116b7565b6107f6565b6040516001600160a01b0390911681526020016101e8565b6101dc610361366004611670565b610815565b6101f961083e565b61021d600081565b6101dc6103843660046115f1565b61084d565b6101dc6103973660046115f1565b6108c8565b61021d6103aa366004611657565b6108d6565b61021d7f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a681565b6102746103e4366004611670565b6108ed565b61021d6103f73660046116d9565b610912565b61021d7f65d7a28e3265b37a6474929f336521b332c1681b933f6cb9f3376673440d862a81565b60006001600160e01b03198216635a05180f60e01b14806104485750610448826109d6565b92915050565b60606005805461045d90611703565b80601f016020809104026020016040519081016040528092919081815260200182805461048990611703565b80156104d65780601f106104ab576101008083540402835291602001916104d6565b820191906000526020600020905b8154815290600101906020018083116104b957829003601f168201915b5050505050905090565b6000336104ee818585610a0b565b5060019392505050565b600033610506858285610b2f565b610511858585610ba9565b506001949350505050565b60008281526020819052604090206001015461053781610d5f565b6105418383610d69565b505050565b6001600160a01b03811633146105bb5760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b60648201526084015b60405180910390fd5b6105c58282610d8b565b5050565b6000336104ee8185856105dc8383610912565b6105e69190611753565b610a0b565b6106157f65d7a28e3265b37a6474929f336521b332c1681b933f6cb9f3376673440d862a33610815565b6106875760405162461bcd60e51b815260206004820152603960248201527f45524332305072657365744d696e7465725061757365723a206d75737420686160448201527f76652070617573657220726f6c6520746f20756e70617573650000000000000060648201526084016105b2565b61068f610dad565b565b6106bb7f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a633610815565b6107265760405162461bcd60e51b815260206004820152603660248201527f45524332305072657365744d696e7465725061757365723a206d7573742068616044820152751d99481b5a5b9d195c881c9bdb19481d1bc81b5a5b9d60521b60648201526084016105b2565b6105c58282610dff565b61073a3382610ecc565b50565b610748823383610b2f565b6105c58282610ecc565b61077c7f65d7a28e3265b37a6474929f336521b332c1681b933f6cb9f3376673440d862a33610815565b6107ee5760405162461bcd60e51b815260206004820152603760248201527f45524332305072657365744d696e7465725061757365723a206d75737420686160448201527f76652070617573657220726f6c6520746f20706175736500000000000000000060648201526084016105b2565b61068f61100c565b600082815260016020526040812061080e9083611049565b9392505050565b6000918252602082815260408084206001600160a01b0393909316845291905290205460ff1690565b60606006805461045d90611703565b6000338161085b8286610912565b9050838110156108bb5760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b60648201526084016105b2565b6105118286868403610a0b565b6000336104ee818585610ba9565b600081815260016020526040812061044890611055565b60008281526020819052604090206001015461090881610d5f565b6105418383610d8b565b6001600160a01b03918216600090815260036020908152604080832093909416825291909152205490565b6109478282610815565b6105c5576000828152602081815260408083206001600160a01b03851684529091529020805460ff1916600117905561097d3390565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b600061080e836001600160a01b03841661105f565b60006001600160e01b03198216637965db0b60e01b148061044857506301ffc9a760e01b6001600160e01b0319831614610448565b6001600160a01b038316610a6d5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016105b2565b6001600160a01b038216610ace5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016105b2565b6001600160a01b0383811660008181526003602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6000610b3b8484610912565b90506000198114610ba35781811015610b965760405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e636500000060448201526064016105b2565b610ba38484848403610a0b565b50505050565b6001600160a01b038316610c0d5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016105b2565b6001600160a01b038216610c6f5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016105b2565b610c7a8383836110ae565b6001600160a01b03831660009081526002602052604090205481811015610cf25760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b60648201526084016105b2565b6001600160a01b0380851660008181526002602052604080822086860390559286168082529083902080548601905591517fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610d529086815260200190565b60405180910390a3610ba3565b61073a81336110b9565b610d73828261093d565b600082815260016020526040902061054190826109c1565b610d958282611112565b60008281526001602052604090206105419082611177565b610db561118c565b6007805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa335b6040516001600160a01b03909116815260200160405180910390a1565b6001600160a01b038216610e555760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f20616464726573730060448201526064016105b2565b610e61600083836110ae565b8060046000828254610e739190611753565b90915550506001600160a01b0382166000818152600260209081526040808320805486019055518481527fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35050565b6001600160a01b038216610f2c5760405162461bcd60e51b815260206004820152602160248201527f45524332303a206275726e2066726f6d20746865207a65726f206164647265736044820152607360f81b60648201526084016105b2565b610f38826000836110ae565b6001600160a01b03821660009081526002602052604090205481811015610fac5760405162461bcd60e51b815260206004820152602260248201527f45524332303a206275726e20616d6f756e7420657863656564732062616c616e604482015261636560f01b60648201526084016105b2565b6001600160a01b03831660008181526002602090815260408083208686039055600480548790039055518581529192917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a3505050565b6110146111d5565b6007805460ff191660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258610de23390565b600061080e838361121b565b6000610448825490565b60008181526001830160205260408120546110a657508154600181810184556000848152602080822090930184905584548482528286019093526040902091909155610448565b506000610448565b610541838383611245565b6110c38282610815565b6105c5576110d0816112ab565b6110db8360206112bd565b6040516020016110ec92919061176b565b60408051601f198184030181529082905262461bcd60e51b82526105b2916004016115a2565b61111c8282610815565b156105c5576000828152602081815260408083206001600160a01b0385168085529252808320805460ff1916905551339285917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a45050565b600061080e836001600160a01b038416611459565b60075460ff1661068f5760405162461bcd60e51b815260206004820152601460248201527314185d5cd8589b194e881b9bdd081c185d5cd95960621b60448201526064016105b2565b60075460ff161561068f5760405162461bcd60e51b815260206004820152601060248201526f14185d5cd8589b194e881c185d5cd95960821b60448201526064016105b2565b6000826000018281548110611232576112326117e0565b9060005260206000200154905092915050565b60075460ff16156105415760405162461bcd60e51b815260206004820152602a60248201527f45524332305061757361626c653a20746f6b656e207472616e736665722077686044820152691a5b19481c185d5cd95960b21b60648201526084016105b2565b60606104486001600160a01b03831660145b606060006112cc8360026117f6565b6112d7906002611753565b67ffffffffffffffff8111156112ef576112ef611815565b6040519080825280601f01601f191660200182016040528015611319576020820181803683370190505b509050600360fc1b81600081518110611334576113346117e0565b60200101906001600160f81b031916908160001a905350600f60fb1b81600181518110611363576113636117e0565b60200101906001600160f81b031916908160001a90535060006113878460026117f6565b611392906001611753565b90505b600181111561140a576f181899199a1a9b1b9c1cb0b131b232b360811b85600f16601081106113c6576113c66117e0565b1a60f81b8282815181106113dc576113dc6117e0565b60200101906001600160f81b031916908160001a90535060049490941c936114038161182b565b9050611395565b50831561080e5760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e7460448201526064016105b2565b6000818152600183016020526040812054801561154257600061147d600183611842565b855490915060009061149190600190611842565b90508181146114f65760008660000182815481106114b1576114b16117e0565b90600052602060002001549050808760000184815481106114d4576114d46117e0565b6000918252602080832090910192909255918252600188019052604090208390555b855486908061150757611507611859565b600190038181906000526020600020016000905590558560010160008681526020019081526020016000206000905560019350505050610448565b6000915050610448565b60006020828403121561155e57600080fd5b81356001600160e01b03198116811461080e57600080fd5b60005b83811015611591578181015183820152602001611579565b83811115610ba35750506000910152565b60208152600082518060208401526115c1816040850160208701611576565b601f01601f19169190910160400192915050565b80356001600160a01b03811681146115ec57600080fd5b919050565b6000806040838503121561160457600080fd5b61160d836115d5565b946020939093013593505050565b60008060006060848603121561163057600080fd5b611639846115d5565b9250611647602085016115d5565b9150604084013590509250925092565b60006020828403121561166957600080fd5b5035919050565b6000806040838503121561168357600080fd5b82359150611693602084016115d5565b90509250929050565b6000602082840312156116ae57600080fd5b61080e826115d5565b600080604083850312156116ca57600080fd5b50508035926020909101359150565b600080604083850312156116ec57600080fd5b6116f5836115d5565b9150611693602084016115d5565b600181811c9082168061171757607f821691505b60208210810361173757634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052601160045260246000fd5b600082198211156117665761176661173d565b500190565b7f416363657373436f6e74726f6c3a206163636f756e74200000000000000000008152600083516117a3816017850160208801611576565b7001034b99036b4b9b9b4b733903937b6329607d1b60179184019182015283516117d4816028840160208801611576565b01602801949350505050565b634e487b7160e01b600052603260045260246000fd5b60008160001904831182151516156118105761181061173d565b500290565b634e487b7160e01b600052604160045260246000fd5b60008161183a5761183a61173d565b506000190190565b6000828210156118545761185461173d565b500390565b634e487b7160e01b600052603160045260246000fdfea26469706673582212203555e31cce90e73428bd55d1113c2e0b9b5a9d364695f4eed684cee3a00098e664736f6c634300080d0033"; const isSuperArgs$y = (xs) => xs.length > 1; class ERC20PresetMinterPauser__factory extends ethers.ContractFactory { constructor(...args) { if (isSuperArgs$y(args)) { super(...args); } else { super(_abi$22, _bytecode$y, args[0]); } } getDeployTransaction(name, symbol, overrides) { return super.getDeployTransaction(name, symbol, overrides || {}); } deploy(name, symbol, overrides) { return super.deploy(name, symbol, overrides || {}); } connect(runner) { return super.connect(runner); } static createInterface() { return new ethers.Interface(_abi$22); } static connect(address, runner) { return new ethers.Contract( address, _abi$22, runner ); } } __publicField$22(ERC20PresetMinterPauser__factory, "bytecode", _bytecode$y); __publicField$22(ERC20PresetMinterPauser__factory, "abi", _abi$22); var __defProp$21 = Object.defineProperty; var __defNormalProp$21 = (obj, key, value) => key in obj ? __defProp$21(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$21 = (obj, key, value) => { __defNormalProp$21(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$21 = [ { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "owner", type: "address" }, { indexed: true, internalType: "address", name: "spender", type: "address" }, { indexed: false, internalType: "uint256", name: "value", type: "uint256" } ], name: "Approval", type: "event" }, { anonymous: false, inputs: [ { indexed: false, internalType: "uint256", name: "id", type: "uint256" } ], name: "Snapshot", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "from", type: "address" }, { indexed: true, internalType: "address", name: "to", type: "address" }, { indexed: false, internalType: "uint256", name: "value", type: "uint256" } ], name: "Transfer", type: "event" }, { inputs: [ { internalType: "address", name: "owner", type: "address" }, { internalType: "address", name: "spender", type: "address" } ], name: "allowance", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "spender", type: "address" }, { internalType: "uint256", name: "amount", type: "uint256" } ], name: "approve", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "account", type: "address" } ], name: "balanceOf", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "account", type: "address" }, { internalType: "uint256", name: "snapshotId", type: "uint256" } ], name: "balanceOfAt", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "decimals", outputs: [ { internalType: "uint8", name: "", type: "uint8" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "spender", type: "address" }, { internalType: "uint256", name: "subtractedValue", type: "uint256" } ], name: "decreaseAllowance", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "spender", type: "address" }, { internalType: "uint256", name: "addedValue", type: "uint256" } ], name: "increaseAllowance", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [], name: "name", outputs: [ { internalType: "string", name: "", type: "string" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "symbol", outputs: [ { internalType: "string", name: "", type: "string" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "totalSupply", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "uint256", name: "snapshotId", type: "uint256" } ], name: "totalSupplyAt", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "to", type: "address" }, { internalType: "uint256", name: "amount", type: "uint256" } ], name: "transfer", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "from", type: "address" }, { internalType: "address", name: "to", type: "address" }, { internalType: "uint256", name: "amount", type: "uint256" } ], name: "transferFrom", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "nonpayable", type: "function" } ]; class ERC20Snapshot__factory { static createInterface() { return new ethers.Interface(_abi$21); } static connect(address, runner) { return new ethers.Contract(address, _abi$21, runner); } } __publicField$21(ERC20Snapshot__factory, "abi", _abi$21); var __defProp$20 = Object.defineProperty; var __defNormalProp$20 = (obj, key, value) => key in obj ? __defProp$20(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$20 = (obj, key, value) => { __defNormalProp$20(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$20 = [ { inputs: [], name: "InvalidShortString", type: "error" }, { inputs: [ { internalType: "string", name: "str", type: "string" } ], name: "StringTooLong", type: "error" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "owner", type: "address" }, { indexed: true, internalType: "address", name: "spender", type: "address" }, { indexed: false, internalType: "uint256", name: "value", type: "uint256" } ], name: "Approval", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "delegator", type: "address" }, { indexed: true, internalType: "address", name: "fromDelegate", type: "address" }, { indexed: true, internalType: "address", name: "toDelegate", type: "address" } ], name: "DelegateChanged", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "delegate", type: "address" }, { indexed: false, internalType: "uint256", name: "previousBalance", type: "uint256" }, { indexed: false, internalType: "uint256", name: "newBalance", type: "uint256" } ], name: "DelegateVotesChanged", type: "event" }, { anonymous: false, inputs: [], name: "EIP712DomainChanged", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "from", type: "address" }, { indexed: true, internalType: "address", name: "to", type: "address" }, { indexed: false, internalType: "uint256", name: "value", type: "uint256" } ], name: "Transfer", type: "event" }, { inputs: [], name: "CLOCK_MODE", outputs: [ { internalType: "string", name: "", type: "string" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "DOMAIN_SEPARATOR", outputs: [ { internalType: "bytes32", name: "", type: "bytes32" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "owner", type: "address" }, { internalType: "address", name: "spender", type: "address" } ], name: "allowance", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "spender", type: "address" }, { internalType: "uint256", name: "amount", type: "uint256" } ], name: "approve", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "account", type: "address" } ], name: "balanceOf", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "account", type: "address" }, { internalType: "uint32", name: "pos", type: "uint32" } ], name: "checkpoints", outputs: [ { components: [ { internalType: "uint32", name: "fromBlock", type: "uint32" }, { internalType: "uint224", name: "votes", type: "uint224" } ], internalType: "struct ERC20Votes.Checkpoint", name: "", type: "tuple" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "clock", outputs: [ { internalType: "uint48", name: "", type: "uint48" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "decimals", outputs: [ { internalType: "uint8", name: "", type: "uint8" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "spender", type: "address" }, { internalType: "uint256", name: "subtractedValue", type: "uint256" } ], name: "decreaseAllowance", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "delegatee", type: "address" } ], name: "delegate", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "delegatee", type: "address" }, { internalType: "uint256", name: "nonce", type: "uint256" }, { internalType: "uint256", name: "expiry", type: "uint256" }, { internalType: "uint8", name: "v", type: "uint8" }, { internalType: "bytes32", name: "r", type: "bytes32" }, { internalType: "bytes32", name: "s", type: "bytes32" } ], name: "delegateBySig", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "account", type: "address" } ], name: "delegates", outputs: [ { internalType: "address", name: "", type: "address" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "eip712Domain", outputs: [ { internalType: "bytes1", name: "fields", type: "bytes1" }, { internalType: "string", name: "name", type: "string" }, { internalType: "string", name: "version", type: "string" }, { internalType: "uint256", name: "chainId", type: "uint256" }, { internalType: "address", name: "verifyingContract", type: "address" }, { internalType: "bytes32", name: "salt", type: "bytes32" }, { internalType: "uint256[]", name: "extensions", type: "uint256[]" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "uint256", name: "timepoint", type: "uint256" } ], name: "getPastTotalSupply", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "account", type: "address" }, { internalType: "uint256", name: "timepoint", type: "uint256" } ], name: "getPastVotes", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "account", type: "address" } ], name: "getVotes", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "spender", type: "address" }, { internalType: "uint256", name: "addedValue", type: "uint256" } ], name: "increaseAllowance", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [], name: "name", outputs: [ { internalType: "string", name: "", type: "string" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "owner", type: "address" } ], name: "nonces", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "account", type: "address" } ], name: "numCheckpoints", outputs: [ { internalType: "uint32", name: "", type: "uint32" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "owner", type: "address" }, { internalType: "address", name: "spender", type: "address" }, { internalType: "uint256", name: "value", type: "uint256" }, { internalType: "uint256", name: "deadline", type: "uint256" }, { internalType: "uint8", name: "v", type: "uint8" }, { internalType: "bytes32", name: "r", type: "bytes32" }, { internalType: "bytes32", name: "s", type: "bytes32" } ], name: "permit", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [], name: "symbol", outputs: [ { internalType: "string", name: "", type: "string" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "totalSupply", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "to", type: "address" }, { internalType: "uint256", name: "amount", type: "uint256" } ], name: "transfer", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "from", type: "address" }, { internalType: "address", name: "to", type: "address" }, { internalType: "uint256", name: "amount", type: "uint256" } ], name: "transferFrom", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "nonpayable", type: "function" } ]; class ERC20Votes__factory { static createInterface() { return new ethers.Interface(_abi$20); } static connect(address, runner) { return new ethers.Contract(address, _abi$20, runner); } } __publicField$20(ERC20Votes__factory, "abi", _abi$20); var __defProp$1$ = Object.defineProperty; var __defNormalProp$1$ = (obj, key, value) => key in obj ? __defProp$1$(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$1$ = (obj, key, value) => { __defNormalProp$1$(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$1$ = [ { inputs: [], name: "InvalidShortString", type: "error" }, { inputs: [ { internalType: "string", name: "str", type: "string" } ], name: "StringTooLong", type: "error" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "owner", type: "address" }, { indexed: true, internalType: "address", name: "spender", type: "address" }, { indexed: false, internalType: "uint256", name: "value", type: "uint256" } ], name: "Approval", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "delegator", type: "address" }, { indexed: true, internalType: "address", name: "fromDelegate", type: "address" }, { indexed: true, internalType: "address", name: "toDelegate", type: "address" } ], name: "DelegateChanged", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "delegate", type: "address" }, { indexed: false, internalType: "uint256", name: "previousBalance", type: "uint256" }, { indexed: false, internalType: "uint256", name: "newBalance", type: "uint256" } ], name: "DelegateVotesChanged", type: "event" }, { anonymous: false, inputs: [], name: "EIP712DomainChanged", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "from", type: "address" }, { indexed: true, internalType: "address", name: "to", type: "address" }, { indexed: false, internalType: "uint256", name: "value", type: "uint256" } ], name: "Transfer", type: "event" }, { inputs: [], name: "CLOCK_MODE", outputs: [ { internalType: "string", name: "", type: "string" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "DOMAIN_SEPARATOR", outputs: [ { internalType: "bytes32", name: "", type: "bytes32" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "owner", type: "address" }, { internalType: "address", name: "spender", type: "address" } ], name: "allowance", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "spender", type: "address" }, { internalType: "uint256", name: "amount", type: "uint256" } ], name: "approve", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "account", type: "address" } ], name: "balanceOf", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "account", type: "address" }, { internalType: "uint32", name: "pos", type: "uint32" } ], name: "checkpoints", outputs: [ { components: [ { internalType: "uint32", name: "fromBlock", type: "uint32" }, { internalType: "uint224", name: "votes", type: "uint224" } ], internalType: "struct ERC20Votes.Checkpoint", name: "", type: "tuple" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "clock", outputs: [ { internalType: "uint48", name: "", type: "uint48" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "decimals", outputs: [ { internalType: "uint8", name: "", type: "uint8" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "spender", type: "address" }, { internalType: "uint256", name: "subtractedValue", type: "uint256" } ], name: "decreaseAllowance", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "delegatee", type: "address" } ], name: "delegate", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "delegatee", type: "address" }, { internalType: "uint256", name: "nonce", type: "uint256" }, { internalType: "uint256", name: "expiry", type: "uint256" }, { internalType: "uint8", name: "v", type: "uint8" }, { internalType: "bytes32", name: "r", type: "bytes32" }, { internalType: "bytes32", name: "s", type: "bytes32" } ], name: "delegateBySig", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "account", type: "address" } ], name: "delegates", outputs: [ { internalType: "address", name: "", type: "address" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "eip712Domain", outputs: [ { internalType: "bytes1", name: "fields", type: "bytes1" }, { internalType: "string", name: "name", type: "string" }, { internalType: "string", name: "version", type: "string" }, { internalType: "uint256", name: "chainId", type: "uint256" }, { internalType: "address", name: "verifyingContract", type: "address" }, { internalType: "bytes32", name: "salt", type: "bytes32" }, { internalType: "uint256[]", name: "extensions", type: "uint256[]" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "account", type: "address" } ], name: "getCurrentVotes", outputs: [ { internalType: "uint96", name: "", type: "uint96" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "uint256", name: "timepoint", type: "uint256" } ], name: "getPastTotalSupply", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "account", type: "address" }, { internalType: "uint256", name: "timepoint", type: "uint256" } ], name: "getPastVotes", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "account", type: "address" }, { internalType: "uint256", name: "blockNumber", type: "uint256" } ], name: "getPriorVotes", outputs: [ { internalType: "uint96", name: "", type: "uint96" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "account", type: "address" } ], name: "getVotes", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "spender", type: "address" }, { internalType: "uint256", name: "addedValue", type: "uint256" } ], name: "increaseAllowance", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [], name: "name", outputs: [ { internalType: "string", name: "", type: "string" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "owner", type: "address" } ], name: "nonces", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "account", type: "address" } ], name: "numCheckpoints", outputs: [ { internalType: "uint32", name: "", type: "uint32" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "owner", type: "address" }, { internalType: "address", name: "spender", type: "address" }, { internalType: "uint256", name: "value", type: "uint256" }, { internalType: "uint256", name: "deadline", type: "uint256" }, { internalType: "uint8", name: "v", type: "uint8" }, { internalType: "bytes32", name: "r", type: "bytes32" }, { internalType: "bytes32", name: "s", type: "bytes32" } ], name: "permit", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [], name: "symbol", outputs: [ { internalType: "string", name: "", type: "string" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "totalSupply", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "to", type: "address" }, { internalType: "uint256", name: "amount", type: "uint256" } ], name: "transfer", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "from", type: "address" }, { internalType: "address", name: "to", type: "address" }, { internalType: "uint256", name: "amount", type: "uint256" } ], name: "transferFrom", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "nonpayable", type: "function" } ]; class ERC20VotesComp__factory { static createInterface() { return new ethers.Interface(_abi$1$); } static connect(address, runner) { return new ethers.Contract(address, _abi$1$, runner); } } __publicField$1$(ERC20VotesComp__factory, "abi", _abi$1$); var __defProp$1_ = Object.defineProperty; var __defNormalProp$1_ = (obj, key, value) => key in obj ? __defProp$1_(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$1_ = (obj, key, value) => { __defNormalProp$1_(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$1_ = [ { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "owner", type: "address" }, { indexed: true, internalType: "address", name: "spender", type: "address" }, { indexed: false, internalType: "uint256", name: "value", type: "uint256" } ], name: "Approval", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "from", type: "address" }, { indexed: true, internalType: "address", name: "to", type: "address" }, { indexed: false, internalType: "uint256", name: "value", type: "uint256" } ], name: "Transfer", type: "event" }, { inputs: [ { internalType: "address", name: "owner", type: "address" }, { internalType: "address", name: "spender", type: "address" } ], name: "allowance", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "spender", type: "address" }, { internalType: "uint256", name: "amount", type: "uint256" } ], name: "approve", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "account", type: "address" } ], name: "balanceOf", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "decimals", outputs: [ { internalType: "uint8", name: "", type: "uint8" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "spender", type: "address" }, { internalType: "uint256", name: "subtractedValue", type: "uint256" } ], name: "decreaseAllowance", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "account", type: "address" }, { internalType: "uint256", name: "amount", type: "uint256" } ], name: "depositFor", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "spender", type: "address" }, { internalType: "uint256", name: "addedValue", type: "uint256" } ], name: "increaseAllowance", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [], name: "name", outputs: [ { internalType: "string", name: "", type: "string" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "symbol", outputs: [ { internalType: "string", name: "", type: "string" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "totalSupply", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "to", type: "address" }, { internalType: "uint256", name: "amount", type: "uint256" } ], name: "transfer", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "from", type: "address" }, { internalType: "address", name: "to", type: "address" }, { internalType: "uint256", name: "amount", type: "uint256" } ], name: "transferFrom", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [], name: "underlying", outputs: [ { internalType: "contract IERC20", name: "", type: "address" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "account", type: "address" }, { internalType: "uint256", name: "amount", type: "uint256" } ], name: "withdrawTo", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "nonpayable", type: "function" } ]; class ERC20Wrapper__factory { static createInterface() { return new ethers.Interface(_abi$1_); } static connect(address, runner) { return new ethers.Contract(address, _abi$1_, runner); } } __publicField$1_(ERC20Wrapper__factory, "abi", _abi$1_); var __defProp$1Z = Object.defineProperty; var __defNormalProp$1Z = (obj, key, value) => key in obj ? __defProp$1Z(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$1Z = (obj, key, value) => { __defNormalProp$1Z(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$1Z = [ { inputs: [ { internalType: "address", name: "forwarder", type: "address" } ], name: "isTrustedForwarder", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" } ]; class ERC2771Context__factory { static createInterface() { return new ethers.Interface(_abi$1Z); } static connect(address, runner) { return new ethers.Contract(address, _abi$1Z, runner); } } __publicField$1Z(ERC2771Context__factory, "abi", _abi$1Z); var __defProp$1Y = Object.defineProperty; var __defNormalProp$1Y = (obj, key, value) => key in obj ? __defProp$1Y(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$1Y = (obj, key, value) => { __defNormalProp$1Y(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$1Y = [ { inputs: [ { internalType: "uint256", name: "tokenId", type: "uint256" }, { internalType: "uint256", name: "salePrice", type: "uint256" } ], name: "royaltyInfo", outputs: [ { internalType: "address", name: "", type: "address" }, { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "bytes4", name: "interfaceId", type: "bytes4" } ], name: "supportsInterface", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" } ]; class ERC2981__factory { static createInterface() { return new ethers.Interface(_abi$1Y); } static connect(address, runner) { return new ethers.Contract(address, _abi$1Y, runner); } } __publicField$1Y(ERC2981__factory, "abi", _abi$1Y); var __defProp$1X = Object.defineProperty; var __defNormalProp$1X = (obj, key, value) => key in obj ? __defProp$1X(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$1X = (obj, key, value) => { __defNormalProp$1X(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$1X = [ { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "owner", type: "address" }, { indexed: true, internalType: "address", name: "spender", type: "address" }, { indexed: false, internalType: "uint256", name: "value", type: "uint256" } ], name: "Approval", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "sender", type: "address" }, { indexed: true, internalType: "address", name: "owner", type: "address" }, { indexed: false, internalType: "uint256", name: "assets", type: "uint256" }, { indexed: false, internalType: "uint256", name: "shares", type: "uint256" } ], name: "Deposit", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "from", type: "address" }, { indexed: true, internalType: "address", name: "to", type: "address" }, { indexed: false, internalType: "uint256", name: "value", type: "uint256" } ], name: "Transfer", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "sender", type: "address" }, { indexed: true, internalType: "address", name: "receiver", type: "address" }, { indexed: true, internalType: "address", name: "owner", type: "address" }, { indexed: false, internalType: "uint256", name: "assets", type: "uint256" }, { indexed: false, internalType: "uint256", name: "shares", type: "uint256" } ], name: "Withdraw", type: "event" }, { inputs: [ { internalType: "address", name: "owner", type: "address" }, { internalType: "address", name: "spender", type: "address" } ], name: "allowance", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "spender", type: "address" }, { internalType: "uint256", name: "amount", type: "uint256" } ], name: "approve", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [], name: "asset", outputs: [ { internalType: "address", name: "", type: "address" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "account", type: "address" } ], name: "balanceOf", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "uint256", name: "shares", type: "uint256" } ], name: "convertToAssets", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "uint256", name: "assets", type: "uint256" } ], name: "convertToShares", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "decimals", outputs: [ { internalType: "uint8", name: "", type: "uint8" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "spender", type: "address" }, { internalType: "uint256", name: "subtractedValue", type: "uint256" } ], name: "decreaseAllowance", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "uint256", name: "assets", type: "uint256" }, { internalType: "address", name: "receiver", type: "address" } ], name: "deposit", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "spender", type: "address" }, { internalType: "uint256", name: "addedValue", type: "uint256" } ], name: "increaseAllowance", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "", type: "address" } ], name: "maxDeposit", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "", type: "address" } ], name: "maxMint", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "owner", type: "address" } ], name: "maxRedeem", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "owner", type: "address" } ], name: "maxWithdraw", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "uint256", name: "shares", type: "uint256" }, { internalType: "address", name: "receiver", type: "address" } ], name: "mint", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [], name: "name", outputs: [ { internalType: "string", name: "", type: "string" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "uint256", name: "assets", type: "uint256" } ], name: "previewDeposit", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "uint256", name: "shares", type: "uint256" } ], name: "previewMint", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "uint256", name: "shares", type: "uint256" } ], name: "previewRedeem", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "uint256", name: "assets", type: "uint256" } ], name: "previewWithdraw", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "uint256", name: "shares", type: "uint256" }, { internalType: "address", name: "receiver", type: "address" }, { internalType: "address", name: "owner", type: "address" } ], name: "redeem", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [], name: "symbol", outputs: [ { internalType: "string", name: "", type: "string" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "totalAssets", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "totalSupply", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "to", type: "address" }, { internalType: "uint256", name: "amount", type: "uint256" } ], name: "transfer", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "from", type: "address" }, { internalType: "address", name: "to", type: "address" }, { internalType: "uint256", name: "amount", type: "uint256" } ], name: "transferFrom", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "uint256", name: "assets", type: "uint256" }, { internalType: "address", name: "receiver", type: "address" }, { internalType: "address", name: "owner", type: "address" } ], name: "withdraw", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "nonpayable", type: "function" } ]; class ERC4626__factory { static createInterface() { return new ethers.Interface(_abi$1X); } static connect(address, runner) { return new ethers.Contract(address, _abi$1X, runner); } } __publicField$1X(ERC4626__factory, "abi", _abi$1X); var __defProp$1W = Object.defineProperty; var __defNormalProp$1W = (obj, key, value) => key in obj ? __defProp$1W(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$1W = (obj, key, value) => { __defNormalProp$1W(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$1W = [ { inputs: [ { internalType: "string", name: "name_", type: "string" }, { internalType: "string", name: "symbol_", type: "string" } ], stateMutability: "nonpayable", type: "constructor" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "owner", type: "address" }, { indexed: true, internalType: "address", name: "approved", type: "address" }, { indexed: true, internalType: "uint256", name: "tokenId", type: "uint256" } ], name: "Approval", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "owner", type: "address" }, { indexed: true, internalType: "address", name: "operator", type: "address" }, { indexed: false, internalType: "bool", name: "approved", type: "bool" } ], name: "ApprovalForAll", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "from", type: "address" }, { indexed: true, internalType: "address", name: "to", type: "address" }, { indexed: true, internalType: "uint256", name: "tokenId", type: "uint256" } ], name: "Transfer", type: "event" }, { inputs: [ { internalType: "address", name: "to", type: "address" }, { internalType: "uint256", name: "tokenId", type: "uint256" } ], name: "approve", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "owner", type: "address" } ], name: "balanceOf", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "uint256", name: "tokenId", type: "uint256" } ], name: "getApproved", outputs: [ { internalType: "address", name: "", type: "address" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "owner", type: "address" }, { internalType: "address", name: "operator", type: "address" } ], name: "isApprovedForAll", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "name", outputs: [ { internalType: "string", name: "", type: "string" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "uint256", name: "tokenId", type: "uint256" } ], name: "ownerOf", outputs: [ { internalType: "address", name: "", type: "address" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "from", type: "address" }, { internalType: "address", name: "to", type: "address" }, { internalType: "uint256", name: "tokenId", type: "uint256" } ], name: "safeTransferFrom", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "from", type: "address" }, { internalType: "address", name: "to", type: "address" }, { internalType: "uint256", name: "tokenId", type: "uint256" }, { internalType: "bytes", name: "data", type: "bytes" } ], name: "safeTransferFrom", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "operator", type: "address" }, { internalType: "bool", name: "approved", type: "bool" } ], name: "setApprovalForAll", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "bytes4", name: "interfaceId", type: "bytes4" } ], name: "supportsInterface", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "symbol", outputs: [ { internalType: "string", name: "", type: "string" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "uint256", name: "tokenId", type: "uint256" } ], name: "tokenURI", outputs: [ { internalType: "string", name: "", type: "string" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "from", type: "address" }, { internalType: "address", name: "to", type: "address" }, { internalType: "uint256", name: "tokenId", type: "uint256" } ], name: "transferFrom", outputs: [], stateMutability: "nonpayable", type: "function" } ]; const _bytecode$x = "0x60806040523480156200001157600080fd5b506040516200138c3803806200138c8339810160408190526200003491620001db565b81516200004990600090602085019062000068565b5080516200005f90600190602084019062000068565b50505062000281565b828054620000769062000245565b90600052602060002090601f0160209004810192826200009a5760008555620000e5565b82601f10620000b557805160ff1916838001178555620000e5565b82800160010185558215620000e5579182015b82811115620000e5578251825591602001919060010190620000c8565b50620000f3929150620000f7565b5090565b5b80821115620000f35760008155600101620000f8565b634e487b7160e01b600052604160045260246000fd5b600082601f8301126200013657600080fd5b81516001600160401b03808211156200015357620001536200010e565b604051601f8301601f19908116603f011681019082821181831017156200017e576200017e6200010e565b816040528381526020925086838588010111156200019b57600080fd5b600091505b83821015620001bf5785820183015181830184015290820190620001a0565b83821115620001d15760008385830101525b9695505050505050565b60008060408385031215620001ef57600080fd5b82516001600160401b03808211156200020757600080fd5b620002158683870162000124565b935060208501519150808211156200022c57600080fd5b506200023b8582860162000124565b9150509250929050565b600181811c908216806200025a57607f821691505b6020821081036200027b57634e487b7160e01b600052602260045260246000fd5b50919050565b6110fb80620002916000396000f3fe608060405234801561001057600080fd5b50600436106100cf5760003560e01c80636352211e1161008c578063a22cb46511610066578063a22cb465146101b3578063b88d4fde146101c6578063c87b56dd146101d9578063e985e9c5146101ec57600080fd5b80636352211e1461017757806370a082311461018a57806395d89b41146101ab57600080fd5b806301ffc9a7146100d457806306fdde03146100fc578063081812fc14610111578063095ea7b31461013c57806323b872dd1461015157806342842e0e14610164575b600080fd5b6100e76100e2366004610c7f565b610228565b60405190151581526020015b60405180910390f35b61010461027a565b6040516100f39190610cf4565b61012461011f366004610d07565b61030c565b6040516001600160a01b0390911681526020016100f3565b61014f61014a366004610d3c565b610333565b005b61014f61015f366004610d66565b61044d565b61014f610172366004610d66565b61047e565b610124610185366004610d07565b610499565b61019d610198366004610da2565b6104f9565b6040519081526020016100f3565b61010461057f565b61014f6101c1366004610dbd565b61058e565b61014f6101d4366004610e0f565b61059d565b6101046101e7366004610d07565b6105d5565b6100e76101fa366004610eeb565b6001600160a01b03918216600090815260056020908152604080832093909416825291909152205460ff1690565b60006001600160e01b031982166380ac58cd60e01b148061025957506001600160e01b03198216635b5e139f60e01b145b8061027457506301ffc9a760e01b6001600160e01b03198316145b92915050565b60606000805461028990610f1e565b80601f01602080910402602001604051908101604052809291908181526020018280546102b590610f1e565b80156103025780601f106102d757610100808354040283529160200191610302565b820191906000526020600020905b8154815290600101906020018083116102e557829003601f168201915b5050505050905090565b600061031782610649565b506000908152600460205260409020546001600160a01b031690565b600061033e82610499565b9050806001600160a01b0316836001600160a01b0316036103b05760405162461bcd60e51b815260206004820152602160248201527f4552433732313a20617070726f76616c20746f2063757272656e74206f776e656044820152603960f91b60648201526084015b60405180910390fd5b336001600160a01b03821614806103cc57506103cc81336101fa565b61043e5760405162461bcd60e51b815260206004820152603d60248201527f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60448201527f6b656e206f776e6572206f7220617070726f76656420666f7220616c6c00000060648201526084016103a7565b61044883836106ab565b505050565b6104573382610719565b6104735760405162461bcd60e51b81526004016103a790610f58565b610448838383610798565b6104488383836040518060200160405280600081525061059d565b6000818152600260205260408120546001600160a01b0316806102745760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b60448201526064016103a7565b60006001600160a01b0382166105635760405162461bcd60e51b815260206004820152602960248201527f4552433732313a2061646472657373207a65726f206973206e6f7420612076616044820152683634b21037bbb732b960b91b60648201526084016103a7565b506001600160a01b031660009081526003602052604090205490565b60606001805461028990610f1e565b6105993383836108fc565b5050565b6105a73383610719565b6105c35760405162461bcd60e51b81526004016103a790610f58565b6105cf848484846109ca565b50505050565b60606105e082610649565b60006105f760408051602081019091526000815290565b905060008151116106175760405180602001604052806000815250610642565b80610621846109fd565b604051602001610632929190610fa5565b6040516020818303038152906040525b9392505050565b6000818152600260205260409020546001600160a01b03166106a85760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b60448201526064016103a7565b50565b600081815260046020526040902080546001600160a01b0319166001600160a01b03841690811790915581906106e082610499565b6001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b60008061072583610499565b9050806001600160a01b0316846001600160a01b0316148061076c57506001600160a01b0380821660009081526005602090815260408083209388168352929052205460ff165b806107905750836001600160a01b03166107858461030c565b6001600160a01b0316145b949350505050565b826001600160a01b03166107ab82610499565b6001600160a01b0316146107d15760405162461bcd60e51b81526004016103a790610fd4565b6001600160a01b0382166108335760405162461bcd60e51b8152602060048201526024808201527f4552433732313a207472616e7366657220746f20746865207a65726f206164646044820152637265737360e01b60648201526084016103a7565b826001600160a01b031661084682610499565b6001600160a01b03161461086c5760405162461bcd60e51b81526004016103a790610fd4565b600081815260046020908152604080832080546001600160a01b03199081169091556001600160a01b0387811680865260038552838620805460001901905590871680865283862080546001019055868652600290945282852080549092168417909155905184937fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b816001600160a01b0316836001600160a01b03160361095d5760405162461bcd60e51b815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c65720000000000000060448201526064016103a7565b6001600160a01b03838116600081815260056020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a3505050565b6109d5848484610798565b6109e184848484610a90565b6105cf5760405162461bcd60e51b81526004016103a790611019565b60606000610a0a83610b91565b600101905060008167ffffffffffffffff811115610a2a57610a2a610df9565b6040519080825280601f01601f191660200182016040528015610a54576020820181803683370190505b5090508181016020015b600019016f181899199a1a9b1b9c1cb0b131b232b360811b600a86061a8153600a8504945084610a5e57509392505050565b60006001600160a01b0384163b15610b8657604051630a85bd0160e11b81526001600160a01b0385169063150b7a0290610ad490339089908890889060040161106b565b6020604051808303816000875af1925050508015610b0f575060408051601f3d908101601f19168201909252610b0c918101906110a8565b60015b610b6c573d808015610b3d576040519150601f19603f3d011682016040523d82523d6000602084013e610b42565b606091505b508051600003610b645760405162461bcd60e51b81526004016103a790611019565b805181602001fd5b6001600160e01b031916630a85bd0160e11b149050610790565b506001949350505050565b60008072184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b8310610bd05772184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b830492506040015b6d04ee2d6d415b85acef81000000008310610bfc576d04ee2d6d415b85acef8100000000830492506020015b662386f26fc100008310610c1a57662386f26fc10000830492506010015b6305f5e1008310610c32576305f5e100830492506008015b6127108310610c4657612710830492506004015b60648310610c58576064830492506002015b600a83106102745760010192915050565b6001600160e01b0319811681146106a857600080fd5b600060208284031215610c9157600080fd5b813561064281610c69565b60005b83811015610cb7578181015183820152602001610c9f565b838111156105cf5750506000910152565b60008151808452610ce0816020860160208601610c9c565b601f01601f19169290920160200192915050565b6020815260006106426020830184610cc8565b600060208284031215610d1957600080fd5b5035919050565b80356001600160a01b0381168114610d3757600080fd5b919050565b60008060408385031215610d4f57600080fd5b610d5883610d20565b946020939093013593505050565b600080600060608486031215610d7b57600080fd5b610d8484610d20565b9250610d9260208501610d20565b9150604084013590509250925092565b600060208284031215610db457600080fd5b61064282610d20565b60008060408385031215610dd057600080fd5b610dd983610d20565b915060208301358015158114610dee57600080fd5b809150509250929050565b634e487b7160e01b600052604160045260246000fd5b60008060008060808587031215610e2557600080fd5b610e2e85610d20565b9350610e3c60208601610d20565b925060408501359150606085013567ffffffffffffffff80821115610e6057600080fd5b818701915087601f830112610e7457600080fd5b813581811115610e8657610e86610df9565b604051601f8201601f19908116603f01168101908382118183101715610eae57610eae610df9565b816040528281528a6020848701011115610ec757600080fd5b82602086016020830137600060208483010152809550505050505092959194509250565b60008060408385031215610efe57600080fd5b610f0783610d20565b9150610f1560208401610d20565b90509250929050565b600181811c90821680610f3257607f821691505b602082108103610f5257634e487b7160e01b600052602260045260246000fd5b50919050565b6020808252602d908201527f4552433732313a2063616c6c6572206973206e6f7420746f6b656e206f776e6560408201526c1c881bdc88185c1c1c9bdd9959609a1b606082015260800190565b60008351610fb7818460208801610c9c565b835190830190610fcb818360208801610c9c565b01949350505050565b60208082526025908201527f4552433732313a207472616e736665722066726f6d20696e636f72726563742060408201526437bbb732b960d91b606082015260800190565b60208082526032908201527f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560408201527131b2b4bb32b91034b6b83632b6b2b73a32b960711b606082015260800190565b6001600160a01b038581168252841660208201526040810183905260806060820181905260009061109e90830184610cc8565b9695505050505050565b6000602082840312156110ba57600080fd5b815161064281610c6956fea2646970667358221220656215cd1c770b1c0ef26b32de6dec1d6fd90e95d8c1190aff80f7b572dca52664736f6c634300080d0033"; const isSuperArgs$x = (xs) => xs.length > 1; class ERC721__factory extends ethers.ContractFactory { constructor(...args) { if (isSuperArgs$x(args)) { super(...args); } else { super(_abi$1W, _bytecode$x, args[0]); } } getDeployTransaction(name_, symbol_, overrides) { return super.getDeployTransaction(name_, symbol_, overrides || {}); } deploy(name_, symbol_, overrides) { return super.deploy(name_, symbol_, overrides || {}); } connect(runner) { return super.connect(runner); } static createInterface() { return new ethers.Interface(_abi$1W); } static connect(address, runner) { return new ethers.Contract(address, _abi$1W, runner); } } __publicField$1W(ERC721__factory, "bytecode", _bytecode$x); __publicField$1W(ERC721__factory, "abi", _abi$1W); var __defProp$1V = Object.defineProperty; var __defNormalProp$1V = (obj, key, value) => key in obj ? __defProp$1V(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$1V = (obj, key, value) => { __defNormalProp$1V(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$1V = [ { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "owner", type: "address" }, { indexed: true, internalType: "address", name: "approved", type: "address" }, { indexed: true, internalType: "uint256", name: "tokenId", type: "uint256" } ], name: "Approval", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "owner", type: "address" }, { indexed: true, internalType: "address", name: "operator", type: "address" }, { indexed: false, internalType: "bool", name: "approved", type: "bool" } ], name: "ApprovalForAll", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "from", type: "address" }, { indexed: true, internalType: "address", name: "to", type: "address" }, { indexed: true, internalType: "uint256", name: "tokenId", type: "uint256" } ], name: "Transfer", type: "event" }, { inputs: [ { internalType: "address", name: "to", type: "address" }, { internalType: "uint256", name: "tokenId", type: "uint256" } ], name: "approve", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "owner", type: "address" } ], name: "balanceOf", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "uint256", name: "tokenId", type: "uint256" } ], name: "burn", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "uint256", name: "tokenId", type: "uint256" } ], name: "getApproved", outputs: [ { internalType: "address", name: "", type: "address" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "owner", type: "address" }, { internalType: "address", name: "operator", type: "address" } ], name: "isApprovedForAll", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "name", outputs: [ { internalType: "string", name: "", type: "string" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "uint256", name: "tokenId", type: "uint256" } ], name: "ownerOf", outputs: [ { internalType: "address", name: "", type: "address" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "from", type: "address" }, { internalType: "address", name: "to", type: "address" }, { internalType: "uint256", name: "tokenId", type: "uint256" } ], name: "safeTransferFrom", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "from", type: "address" }, { internalType: "address", name: "to", type: "address" }, { internalType: "uint256", name: "tokenId", type: "uint256" }, { internalType: "bytes", name: "data", type: "bytes" } ], name: "safeTransferFrom", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "operator", type: "address" }, { internalType: "bool", name: "approved", type: "bool" } ], name: "setApprovalForAll", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "bytes4", name: "interfaceId", type: "bytes4" } ], name: "supportsInterface", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "symbol", outputs: [ { internalType: "string", name: "", type: "string" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "uint256", name: "tokenId", type: "uint256" } ], name: "tokenURI", outputs: [ { internalType: "string", name: "", type: "string" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "from", type: "address" }, { internalType: "address", name: "to", type: "address" }, { internalType: "uint256", name: "tokenId", type: "uint256" } ], name: "transferFrom", outputs: [], stateMutability: "nonpayable", type: "function" } ]; class ERC721Burnable__factory { static createInterface() { return new ethers.Interface(_abi$1V); } static connect(address, runner) { return new ethers.Contract(address, _abi$1V, runner); } } __publicField$1V(ERC721Burnable__factory, "abi", _abi$1V); var __defProp$1U = Object.defineProperty; var __defNormalProp$1U = (obj, key, value) => key in obj ? __defProp$1U(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$1U = (obj, key, value) => { __defNormalProp$1U(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$1U = [ { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "owner", type: "address" }, { indexed: true, internalType: "address", name: "approved", type: "address" }, { indexed: true, internalType: "uint256", name: "tokenId", type: "uint256" } ], name: "Approval", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "owner", type: "address" }, { indexed: true, internalType: "address", name: "operator", type: "address" }, { indexed: false, internalType: "bool", name: "approved", type: "bool" } ], name: "ApprovalForAll", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "uint256", name: "fromTokenId", type: "uint256" }, { indexed: false, internalType: "uint256", name: "toTokenId", type: "uint256" }, { indexed: true, internalType: "address", name: "fromAddress", type: "address" }, { indexed: true, internalType: "address", name: "toAddress", type: "address" } ], name: "ConsecutiveTransfer", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "from", type: "address" }, { indexed: true, internalType: "address", name: "to", type: "address" }, { indexed: true, internalType: "uint256", name: "tokenId", type: "uint256" } ], name: "Transfer", type: "event" }, { inputs: [ { internalType: "address", name: "to", type: "address" }, { internalType: "uint256", name: "tokenId", type: "uint256" } ], name: "approve", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "owner", type: "address" } ], name: "balanceOf", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "uint256", name: "tokenId", type: "uint256" } ], name: "getApproved", outputs: [ { internalType: "address", name: "", type: "address" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "owner", type: "address" }, { internalType: "address", name: "operator", type: "address" } ], name: "isApprovedForAll", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "name", outputs: [ { internalType: "string", name: "", type: "string" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "uint256", name: "tokenId", type: "uint256" } ], name: "ownerOf", outputs: [ { internalType: "address", name: "", type: "address" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "from", type: "address" }, { internalType: "address", name: "to", type: "address" }, { internalType: "uint256", name: "tokenId", type: "uint256" } ], name: "safeTransferFrom", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "from", type: "address" }, { internalType: "address", name: "to", type: "address" }, { internalType: "uint256", name: "tokenId", type: "uint256" }, { internalType: "bytes", name: "data", type: "bytes" } ], name: "safeTransferFrom", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "operator", type: "address" }, { internalType: "bool", name: "approved", type: "bool" } ], name: "setApprovalForAll", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "bytes4", name: "interfaceId", type: "bytes4" } ], name: "supportsInterface", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "symbol", outputs: [ { internalType: "string", name: "", type: "string" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "uint256", name: "tokenId", type: "uint256" } ], name: "tokenURI", outputs: [ { internalType: "string", name: "", type: "string" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "from", type: "address" }, { internalType: "address", name: "to", type: "address" }, { internalType: "uint256", name: "tokenId", type: "uint256" } ], name: "transferFrom", outputs: [], stateMutability: "nonpayable", type: "function" } ]; class ERC721Consecutive__factory { static createInterface() { return new ethers.Interface(_abi$1U); } static connect(address, runner) { return new ethers.Contract(address, _abi$1U, runner); } } __publicField$1U(ERC721Consecutive__factory, "abi", _abi$1U); var __defProp$1T = Object.defineProperty; var __defNormalProp$1T = (obj, key, value) => key in obj ? __defProp$1T(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$1T = (obj, key, value) => { __defNormalProp$1T(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$1T = [ { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "owner", type: "address" }, { indexed: true, internalType: "address", name: "approved", type: "address" }, { indexed: true, internalType: "uint256", name: "tokenId", type: "uint256" } ], name: "Approval", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "owner", type: "address" }, { indexed: true, internalType: "address", name: "operator", type: "address" }, { indexed: false, internalType: "bool", name: "approved", type: "bool" } ], name: "ApprovalForAll", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "from", type: "address" }, { indexed: true, internalType: "address", name: "to", type: "address" }, { indexed: true, internalType: "uint256", name: "tokenId", type: "uint256" } ], name: "Transfer", type: "event" }, { inputs: [ { internalType: "address", name: "to", type: "address" }, { internalType: "uint256", name: "tokenId", type: "uint256" } ], name: "approve", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "owner", type: "address" } ], name: "balanceOf", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "uint256", name: "tokenId", type: "uint256" } ], name: "getApproved", outputs: [ { internalType: "address", name: "", type: "address" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "owner", type: "address" }, { internalType: "address", name: "operator", type: "address" } ], name: "isApprovedForAll", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "name", outputs: [ { internalType: "string", name: "", type: "string" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "uint256", name: "tokenId", type: "uint256" } ], name: "ownerOf", outputs: [ { internalType: "address", name: "", type: "address" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "from", type: "address" }, { internalType: "address", name: "to", type: "address" }, { internalType: "uint256", name: "tokenId", type: "uint256" } ], name: "safeTransferFrom", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "from", type: "address" }, { internalType: "address", name: "to", type: "address" }, { internalType: "uint256", name: "tokenId", type: "uint256" }, { internalType: "bytes", name: "data", type: "bytes" } ], name: "safeTransferFrom", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "operator", type: "address" }, { internalType: "bool", name: "approved", type: "bool" } ], name: "setApprovalForAll", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "bytes4", name: "interfaceId", type: "bytes4" } ], name: "supportsInterface", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "symbol", outputs: [ { internalType: "string", name: "", type: "string" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "uint256", name: "index", type: "uint256" } ], name: "tokenByIndex", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "owner", type: "address" }, { internalType: "uint256", name: "index", type: "uint256" } ], name: "tokenOfOwnerByIndex", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "uint256", name: "tokenId", type: "uint256" } ], name: "tokenURI", outputs: [ { internalType: "string", name: "", type: "string" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "totalSupply", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "from", type: "address" }, { internalType: "address", name: "to", type: "address" }, { internalType: "uint256", name: "tokenId", type: "uint256" } ], name: "transferFrom", outputs: [], stateMutability: "nonpayable", type: "function" } ]; class ERC721Enumerable__factory { static createInterface() { return new ethers.Interface(_abi$1T); } static connect(address, runner) { return new ethers.Contract(address, _abi$1T, runner); } } __publicField$1T(ERC721Enumerable__factory, "abi", _abi$1T); var __defProp$1S = Object.defineProperty; var __defNormalProp$1S = (obj, key, value) => key in obj ? __defProp$1S(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$1S = (obj, key, value) => { __defNormalProp$1S(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$1S = [ { inputs: [ { internalType: "address", name: "", type: "address" }, { internalType: "address", name: "", type: "address" }, { internalType: "uint256", name: "", type: "uint256" }, { internalType: "bytes", name: "", type: "bytes" } ], name: "onERC721Received", outputs: [ { internalType: "bytes4", name: "", type: "bytes4" } ], stateMutability: "nonpayable", type: "function" } ]; const _bytecode$w = "0x608060405234801561001057600080fd5b506101af806100206000396000f3fe608060405234801561001057600080fd5b506004361061002b5760003560e01c8063150b7a0214610030575b600080fd5b61004e61003e36600461009d565b630a85bd0160e11b949350505050565b6040516001600160e01b0319909116815260200160405180910390f35b80356001600160a01b038116811461008257600080fd5b919050565b634e487b7160e01b600052604160045260246000fd5b600080600080608085870312156100b357600080fd5b6100bc8561006b565b93506100ca6020860161006b565b925060408501359150606085013567ffffffffffffffff808211156100ee57600080fd5b818701915087601f83011261010257600080fd5b81358181111561011457610114610087565b604051601f8201601f19908116603f0116810190838211818310171561013c5761013c610087565b816040528281528a602084870101111561015557600080fd5b8260208601602083013760006020848301015280955050505050509295919450925056fea2646970667358221220937e7e7aca3ed2e03266b2dc995300bf04e0f158dc015502d750404e0329305d64736f6c634300080d0033"; const isSuperArgs$w = (xs) => xs.length > 1; class ERC721Holder__factory extends ethers.ContractFactory { constructor(...args) { if (isSuperArgs$w(args)) { super(...args); } else { super(_abi$1S, _bytecode$w, args[0]); } } getDeployTransaction(overrides) { return super.getDeployTransaction(overrides || {}); } deploy(overrides) { return super.deploy(overrides || {}); } connect(runner) { return super.connect(runner); } static createInterface() { return new ethers.Interface(_abi$1S); } static connect(address, runner) { return new ethers.Contract(address, _abi$1S, runner); } } __publicField$1S(ERC721Holder__factory, "bytecode", _bytecode$w); __publicField$1S(ERC721Holder__factory, "abi", _abi$1S); var __defProp$1R = Object.defineProperty; var __defNormalProp$1R = (obj, key, value) => key in obj ? __defProp$1R(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$1R = (obj, key, value) => { __defNormalProp$1R(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$1R = [ { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "owner", type: "address" }, { indexed: true, internalType: "address", name: "approved", type: "address" }, { indexed: true, internalType: "uint256", name: "tokenId", type: "uint256" } ], name: "Approval", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "owner", type: "address" }, { indexed: true, internalType: "address", name: "operator", type: "address" }, { indexed: false, internalType: "bool", name: "approved", type: "bool" } ], name: "ApprovalForAll", type: "event" }, { anonymous: false, inputs: [ { indexed: false, internalType: "address", name: "account", type: "address" } ], name: "Paused", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "from", type: "address" }, { indexed: true, internalType: "address", name: "to", type: "address" }, { indexed: true, internalType: "uint256", name: "tokenId", type: "uint256" } ], name: "Transfer", type: "event" }, { anonymous: false, inputs: [ { indexed: false, internalType: "address", name: "account", type: "address" } ], name: "Unpaused", type: "event" }, { inputs: [ { internalType: "address", name: "to", type: "address" }, { internalType: "uint256", name: "tokenId", type: "uint256" } ], name: "approve", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "owner", type: "address" } ], name: "balanceOf", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "uint256", name: "tokenId", type: "uint256" } ], name: "getApproved", outputs: [ { internalType: "address", name: "", type: "address" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "owner", type: "address" }, { internalType: "address", name: "operator", type: "address" } ], name: "isApprovedForAll", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "name", outputs: [ { internalType: "string", name: "", type: "string" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "uint256", name: "tokenId", type: "uint256" } ], name: "ownerOf", outputs: [ { internalType: "address", name: "", type: "address" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "paused", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "from", type: "address" }, { internalType: "address", name: "to", type: "address" }, { internalType: "uint256", name: "tokenId", type: "uint256" } ], name: "safeTransferFrom", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "from", type: "address" }, { internalType: "address", name: "to", type: "address" }, { internalType: "uint256", name: "tokenId", type: "uint256" }, { internalType: "bytes", name: "data", type: "bytes" } ], name: "safeTransferFrom", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "operator", type: "address" }, { internalType: "bool", name: "approved", type: "bool" } ], name: "setApprovalForAll", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "bytes4", name: "interfaceId", type: "bytes4" } ], name: "supportsInterface", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "symbol", outputs: [ { internalType: "string", name: "", type: "string" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "uint256", name: "tokenId", type: "uint256" } ], name: "tokenURI", outputs: [ { internalType: "string", name: "", type: "string" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "from", type: "address" }, { internalType: "address", name: "to", type: "address" }, { internalType: "uint256", name: "tokenId", type: "uint256" } ], name: "transferFrom", outputs: [], stateMutability: "nonpayable", type: "function" } ]; class ERC721Pausable__factory { static createInterface() { return new ethers.Interface(_abi$1R); } static connect(address, runner) { return new ethers.Contract(address, _abi$1R, runner); } } __publicField$1R(ERC721Pausable__factory, "abi", _abi$1R); var __defProp$1Q = Object.defineProperty; var __defNormalProp$1Q = (obj, key, value) => key in obj ? __defProp$1Q(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$1Q = (obj, key, value) => { __defNormalProp$1Q(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$1Q = [ { inputs: [ { internalType: "string", name: "name", type: "string" }, { internalType: "string", name: "symbol", type: "string" }, { internalType: "string", name: "baseTokenURI", type: "string" } ], stateMutability: "nonpayable", type: "constructor" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "owner", type: "address" }, { indexed: true, internalType: "address", name: "approved", type: "address" }, { indexed: true, internalType: "uint256", name: "tokenId", type: "uint256" } ], name: "Approval", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "owner", type: "address" }, { indexed: true, internalType: "address", name: "operator", type: "address" }, { indexed: false, internalType: "bool", name: "approved", type: "bool" } ], name: "ApprovalForAll", type: "event" }, { anonymous: false, inputs: [ { indexed: false, internalType: "address", name: "account", type: "address" } ], name: "Paused", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "bytes32", name: "role", type: "bytes32" }, { indexed: true, internalType: "bytes32", name: "previousAdminRole", type: "bytes32" }, { indexed: true, internalType: "bytes32", name: "newAdminRole", type: "bytes32" } ], name: "RoleAdminChanged", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "bytes32", name: "role", type: "bytes32" }, { indexed: true, internalType: "address", name: "account", type: "address" }, { indexed: true, internalType: "address", name: "sender", type: "address" } ], name: "RoleGranted", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "bytes32", name: "role", type: "bytes32" }, { indexed: true, internalType: "address", name: "account", type: "address" }, { indexed: true, internalType: "address", name: "sender", type: "address" } ], name: "RoleRevoked", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "from", type: "address" }, { indexed: true, internalType: "address", name: "to", type: "address" }, { indexed: true, internalType: "uint256", name: "tokenId", type: "uint256" } ], name: "Transfer", type: "event" }, { anonymous: false, inputs: [ { indexed: false, internalType: "address", name: "account", type: "address" } ], name: "Unpaused", type: "event" }, { inputs: [], name: "DEFAULT_ADMIN_ROLE", outputs: [ { internalType: "bytes32", name: "", type: "bytes32" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "MINTER_ROLE", outputs: [ { internalType: "bytes32", name: "", type: "bytes32" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "PAUSER_ROLE", outputs: [ { internalType: "bytes32", name: "", type: "bytes32" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "to", type: "address" }, { internalType: "uint256", name: "tokenId", type: "uint256" } ], name: "approve", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "owner", type: "address" } ], name: "balanceOf", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "uint256", name: "tokenId", type: "uint256" } ], name: "burn", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "uint256", name: "tokenId", type: "uint256" } ], name: "getApproved", outputs: [ { internalType: "address", name: "", type: "address" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "bytes32", name: "role", type: "bytes32" } ], name: "getRoleAdmin", outputs: [ { internalType: "bytes32", name: "", type: "bytes32" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "bytes32", name: "role", type: "bytes32" }, { internalType: "uint256", name: "index", type: "uint256" } ], name: "getRoleMember", outputs: [ { internalType: "address", name: "", type: "address" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "bytes32", name: "role", type: "bytes32" } ], name: "getRoleMemberCount", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "bytes32", name: "role", type: "bytes32" }, { internalType: "address", name: "account", type: "address" } ], name: "grantRole", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "bytes32", name: "role", type: "bytes32" }, { internalType: "address", name: "account", type: "address" } ], name: "hasRole", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "owner", type: "address" }, { internalType: "address", name: "operator", type: "address" } ], name: "isApprovedForAll", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "to", type: "address" } ], name: "mint", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [], name: "name", outputs: [ { internalType: "string", name: "", type: "string" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "uint256", name: "tokenId", type: "uint256" } ], name: "ownerOf", outputs: [ { internalType: "address", name: "", type: "address" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "pause", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [], name: "paused", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "bytes32", name: "role", type: "bytes32" }, { internalType: "address", name: "account", type: "address" } ], name: "renounceRole", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "bytes32", name: "role", type: "bytes32" }, { internalType: "address", name: "account", type: "address" } ], name: "revokeRole", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "from", type: "address" }, { internalType: "address", name: "to", type: "address" }, { internalType: "uint256", name: "tokenId", type: "uint256" } ], name: "safeTransferFrom", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "from", type: "address" }, { internalType: "address", name: "to", type: "address" }, { internalType: "uint256", name: "tokenId", type: "uint256" }, { internalType: "bytes", name: "data", type: "bytes" } ], name: "safeTransferFrom", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "operator", type: "address" }, { internalType: "bool", name: "approved", type: "bool" } ], name: "setApprovalForAll", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "bytes4", name: "interfaceId", type: "bytes4" } ], name: "supportsInterface", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "symbol", outputs: [ { internalType: "string", name: "", type: "string" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "uint256", name: "index", type: "uint256" } ], name: "tokenByIndex", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "owner", type: "address" }, { internalType: "uint256", name: "index", type: "uint256" } ], name: "tokenOfOwnerByIndex", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "uint256", name: "tokenId", type: "uint256" } ], name: "tokenURI", outputs: [ { internalType: "string", name: "", type: "string" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "totalSupply", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "from", type: "address" }, { internalType: "address", name: "to", type: "address" }, { internalType: "uint256", name: "tokenId", type: "uint256" } ], name: "transferFrom", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [], name: "unpause", outputs: [], stateMutability: "nonpayable", type: "function" } ]; const _bytecode$v = "0x60806040523480156200001157600080fd5b5060405162002a0738038062002a078339810160408190526200003491620003cc565b8251839083906200004d90600290602085019062000259565b5080516200006390600390602084019062000259565b5050600c805460ff191690555080516200008590600e90602084019062000259565b5062000093600033620000f4565b620000bf7f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a633620000f4565b620000eb7f65d7a28e3265b37a6474929f336521b332c1681b933f6cb9f3376673440d862a33620000f4565b50505062000499565b62000100828262000104565b5050565b6200011b82826200014760201b62000cec1760201c565b60008281526001602090815260409091206200014291839062000d70620001e7821b17901c565b505050565b6000828152602081815260408083206001600160a01b038516845290915290205460ff1662000100576000828152602081815260408083206001600160a01b03851684529091529020805460ff19166001179055620001a33390565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b6000620001fe836001600160a01b03841662000207565b90505b92915050565b6000818152600183016020526040812054620002505750815460018181018455600084815260208082209093018490558454848252828601909352604090209190915562000201565b50600062000201565b82805462000267906200045d565b90600052602060002090601f0160209004810192826200028b5760008555620002d6565b82601f10620002a657805160ff1916838001178555620002d6565b82800160010185558215620002d6579182015b82811115620002d6578251825591602001919060010190620002b9565b50620002e4929150620002e8565b5090565b5b80821115620002e45760008155600101620002e9565b634e487b7160e01b600052604160045260246000fd5b600082601f8301126200032757600080fd5b81516001600160401b0380821115620003445762000344620002ff565b604051601f8301601f19908116603f011681019082821181831017156200036f576200036f620002ff565b816040528381526020925086838588010111156200038c57600080fd5b600091505b83821015620003b0578582018301518183018401529082019062000391565b83821115620003c25760008385830101525b9695505050505050565b600080600060608486031215620003e257600080fd5b83516001600160401b0380821115620003fa57600080fd5b620004088783880162000315565b945060208601519150808211156200041f57600080fd5b6200042d8783880162000315565b935060408601519150808211156200044457600080fd5b50620004538682870162000315565b9150509250925092565b600181811c908216806200047257607f821691505b6020821081036200049357634e487b7160e01b600052602260045260246000fd5b50919050565b61255e80620004a96000396000f3fe608060405234801561001057600080fd5b50600436106101e55760003560e01c80636352211e1161010f578063a22cb465116100a2578063d539139311610071578063d5391393146103f7578063d547741f1461041e578063e63ab1e914610431578063e985e9c51461045857600080fd5b8063a22cb465146103ab578063b88d4fde146103be578063c87b56dd146103d1578063ca15c873146103e457600080fd5b80639010d07c116100de5780639010d07c1461037557806391d148541461038857806395d89b411461039b578063a217fddf146103a357600080fd5b80636352211e146103345780636a6278421461034757806370a082311461035a5780638456cb591461036d57600080fd5b80632f2ff15d1161018757806342842e0e1161015657806342842e0e146102f057806342966c68146103035780634f6ccce7146103165780635c975abb1461032957600080fd5b80632f2ff15d146102af5780632f745c59146102c257806336568abe146102d55780633f4ba83a146102e857600080fd5b8063095ea7b3116101c3578063095ea7b31461025257806318160ddd1461026757806323b872dd14610279578063248a9ca31461028c57600080fd5b806301ffc9a7146101ea57806306fdde0314610212578063081812fc14610227575b600080fd5b6101fd6101f8366004611f81565b610494565b60405190151581526020015b60405180910390f35b61021a6104a5565b6040516102099190611ff6565b61023a610235366004612009565b610537565b6040516001600160a01b039091168152602001610209565b61026561026036600461203e565b61055e565b005b600a545b604051908152602001610209565b610265610287366004612068565b610678565b61026b61029a366004612009565b60009081526020819052604090206001015490565b6102656102bd3660046120a4565b6106aa565b61026b6102d036600461203e565b6106cf565b6102656102e33660046120a4565b610765565b6102656107e3565b6102656102fe366004612068565b61088b565b610265610311366004612009565b6108a6565b61026b610324366004612009565b6108d7565b600c5460ff166101fd565b61023a610342366004612009565b61096a565b6102656103553660046120d0565b6109ca565b61026b6103683660046120d0565b610a86565b610265610b0c565b61023a6103833660046120eb565b610bb0565b6101fd6103963660046120a4565b610bcf565b61021a610bf8565b61026b600081565b6102656103b936600461210d565b610c07565b6102656103cc36600461215f565b610c12565b61021a6103df366004612009565b610c4a565b61026b6103f2366004612009565b610cb0565b61026b7f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a681565b61026561042c3660046120a4565b610cc7565b61026b7f65d7a28e3265b37a6474929f336521b332c1681b933f6cb9f3376673440d862a81565b6101fd61046636600461223b565b6001600160a01b03918216600090815260076020908152604080832093909416825291909152205460ff1690565b600061049f82610d85565b92915050565b6060600280546104b490612265565b80601f01602080910402602001604051908101604052809291908181526020018280546104e090612265565b801561052d5780601f106105025761010080835404028352916020019161052d565b820191906000526020600020905b81548152906001019060200180831161051057829003601f168201915b5050505050905090565b600061054282610daa565b506000908152600660205260409020546001600160a01b031690565b60006105698261096a565b9050806001600160a01b0316836001600160a01b0316036105db5760405162461bcd60e51b815260206004820152602160248201527f4552433732313a20617070726f76616c20746f2063757272656e74206f776e656044820152603960f91b60648201526084015b60405180910390fd5b336001600160a01b03821614806105f757506105f78133610466565b6106695760405162461bcd60e51b815260206004820152603d60248201527f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60448201527f6b656e206f776e6572206f7220617070726f76656420666f7220616c6c00000060648201526084016105d2565b6106738383610e09565b505050565b610683335b82610e77565b61069f5760405162461bcd60e51b81526004016105d29061229f565b610673838383610ef6565b6000828152602081905260409020600101546106c581611067565b6106738383611071565b60006106da83610a86565b821061073c5760405162461bcd60e51b815260206004820152602b60248201527f455243373231456e756d657261626c653a206f776e657220696e646578206f7560448201526a74206f6620626f756e647360a81b60648201526084016105d2565b506001600160a01b03919091166000908152600860209081526040808320938352929052205490565b6001600160a01b03811633146107d55760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b60648201526084016105d2565b6107df8282611093565b5050565b61080d7f65d7a28e3265b37a6474929f336521b332c1681b933f6cb9f3376673440d862a33610bcf565b610881576040805162461bcd60e51b81526020600482015260248101919091527f4552433732315072657365744d696e7465725061757365724175746f49643a2060448201527f6d75737420686176652070617573657220726f6c6520746f20756e706175736560648201526084016105d2565b6108896110b5565b565b61067383838360405180602001604052806000815250610c12565b6108af3361067d565b6108cb5760405162461bcd60e51b81526004016105d29061229f565b6108d481611107565b50565b60006108e2600a5490565b82106109455760405162461bcd60e51b815260206004820152602c60248201527f455243373231456e756d657261626c653a20676c6f62616c20696e646578206f60448201526b7574206f6620626f756e647360a01b60648201526084016105d2565b600a8281548110610958576109586122ec565b90600052602060002001549050919050565b6000818152600460205260408120546001600160a01b03168061049f5760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b60448201526064016105d2565b6109f47f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a633610bcf565b610a665760405162461bcd60e51b815260206004820152603d60248201527f4552433732315072657365744d696e7465725061757365724175746f49643a2060448201527f6d7573742068617665206d696e74657220726f6c6520746f206d696e7400000060648201526084016105d2565b610a7881610a73600d5490565b6111aa565b6108d4600d80546001019055565b60006001600160a01b038216610af05760405162461bcd60e51b815260206004820152602960248201527f4552433732313a2061646472657373207a65726f206973206e6f7420612076616044820152683634b21037bbb732b960b91b60648201526084016105d2565b506001600160a01b031660009081526005602052604090205490565b610b367f65d7a28e3265b37a6474929f336521b332c1681b933f6cb9f3376673440d862a33610bcf565b610ba85760405162461bcd60e51b815260206004820152603e60248201527f4552433732315072657365744d696e7465725061757365724175746f49643a2060448201527f6d75737420686176652070617573657220726f6c6520746f207061757365000060648201526084016105d2565b610889611343565b6000828152600160205260408120610bc89083611380565b9392505050565b6000918252602082815260408084206001600160a01b0393909316845291905290205460ff1690565b6060600380546104b490612265565b6107df33838361138c565b610c1c3383610e77565b610c385760405162461bcd60e51b81526004016105d29061229f565b610c448484848461145a565b50505050565b6060610c5582610daa565b6000610c5f61148d565b90506000815111610c7f5760405180602001604052806000815250610bc8565b80610c898461149c565b604051602001610c9a929190612302565b6040516020818303038152906040529392505050565b600081815260016020526040812061049f9061152f565b600082815260208190526040902060010154610ce281611067565b6106738383611093565b610cf68282610bcf565b6107df576000828152602081815260408083206001600160a01b03851684529091529020805460ff19166001179055610d2c3390565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b6000610bc8836001600160a01b038416611539565b60006001600160e01b0319821663780e9d6360e01b148061049f575061049f82611588565b6000818152600460205260409020546001600160a01b03166108d45760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b60448201526064016105d2565b600081815260066020526040902080546001600160a01b0319166001600160a01b0384169081179091558190610e3e8261096a565b6001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b600080610e838361096a565b9050806001600160a01b0316846001600160a01b03161480610eca57506001600160a01b0380821660009081526007602090815260408083209388168352929052205460ff165b80610eee5750836001600160a01b0316610ee384610537565b6001600160a01b0316145b949350505050565b826001600160a01b0316610f098261096a565b6001600160a01b031614610f2f5760405162461bcd60e51b81526004016105d290612331565b6001600160a01b038216610f915760405162461bcd60e51b8152602060048201526024808201527f4552433732313a207472616e7366657220746f20746865207a65726f206164646044820152637265737360e01b60648201526084016105d2565b610f9e83838360016115c8565b826001600160a01b0316610fb18261096a565b6001600160a01b031614610fd75760405162461bcd60e51b81526004016105d290612331565b600081815260066020908152604080832080546001600160a01b03199081169091556001600160a01b0387811680865260058552838620805460001901905590871680865283862080546001019055868652600490945282852080549092168417909155905184937fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b6108d481336115d4565b61107b8282610cec565b60008281526001602052604090206106739082610d70565b61109d828261162d565b60008281526001602052604090206106739082611692565b6110bd6116a7565b600c805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa335b6040516001600160a01b03909116815260200160405180910390a1565b60006111128261096a565b90506111228160008460016115c8565b61112b8261096a565b600083815260066020908152604080832080546001600160a01b03199081169091556001600160a01b0385168085526005845282852080546000190190558785526004909352818420805490911690555192935084927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908390a45050565b6001600160a01b0382166112005760405162461bcd60e51b815260206004820181905260248201527f4552433732313a206d696e7420746f20746865207a65726f206164647265737360448201526064016105d2565b6000818152600460205260409020546001600160a01b0316156112655760405162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e7465640000000060448201526064016105d2565b6112736000838360016115c8565b6000818152600460205260409020546001600160a01b0316156112d85760405162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e7465640000000060448201526064016105d2565b6001600160a01b038216600081815260056020908152604080832080546001019055848352600490915280822080546001600160a01b0319168417905551839291907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908290a45050565b61134b6116f0565b600c805460ff191660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a2586110ea3390565b6000610bc88383611736565b816001600160a01b0316836001600160a01b0316036113ed5760405162461bcd60e51b815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c65720000000000000060448201526064016105d2565b6001600160a01b03838116600081815260076020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a3505050565b611465848484610ef6565b61147184848484611760565b610c445760405162461bcd60e51b81526004016105d290612376565b6060600e80546104b490612265565b606060006114a983611861565b600101905060008167ffffffffffffffff8111156114c9576114c9612149565b6040519080825280601f01601f1916602001820160405280156114f3576020820181803683370190505b5090508181016020015b600019016f181899199a1a9b1b9c1cb0b131b232b360811b600a86061a8153600a85049450846114fd57509392505050565b600061049f825490565b60008181526001830160205260408120546115805750815460018181018455600084815260208082209093018490558454848252828601909352604090209190915561049f565b50600061049f565b60006001600160e01b031982166380ac58cd60e01b14806115b957506001600160e01b03198216635b5e139f60e01b145b8061049f575061049f82611939565b610c448484848461195e565b6115de8282610bcf565b6107df576115eb816119d1565b6115f68360206119e3565b6040516020016116079291906123c8565b60408051601f198184030181529082905262461bcd60e51b82526105d291600401611ff6565b6116378282610bcf565b156107df576000828152602081815260408083206001600160a01b0385168085529252808320805460ff1916905551339285917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a45050565b6000610bc8836001600160a01b038416611b7f565b600c5460ff166108895760405162461bcd60e51b815260206004820152601460248201527314185d5cd8589b194e881b9bdd081c185d5cd95960621b60448201526064016105d2565b600c5460ff16156108895760405162461bcd60e51b815260206004820152601060248201526f14185d5cd8589b194e881c185d5cd95960821b60448201526064016105d2565b600082600001828154811061174d5761174d6122ec565b9060005260206000200154905092915050565b60006001600160a01b0384163b1561185657604051630a85bd0160e11b81526001600160a01b0385169063150b7a02906117a490339089908890889060040161243d565b6020604051808303816000875af19250505080156117df575060408051601f3d908101601f191682019092526117dc9181019061247a565b60015b61183c573d80801561180d576040519150601f19603f3d011682016040523d82523d6000602084013e611812565b606091505b5080516000036118345760405162461bcd60e51b81526004016105d290612376565b805181602001fd5b6001600160e01b031916630a85bd0160e11b149050610eee565b506001949350505050565b60008072184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b83106118a05772184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b830492506040015b6d04ee2d6d415b85acef810000000083106118cc576d04ee2d6d415b85acef8100000000830492506020015b662386f26fc1000083106118ea57662386f26fc10000830492506010015b6305f5e1008310611902576305f5e100830492506008015b612710831061191657612710830492506004015b60648310611928576064830492506002015b600a831061049f5760010192915050565b60006001600160e01b03198216635a05180f60e01b148061049f575061049f82611c72565b61196a84848484611ca7565b600c5460ff1615610c445760405162461bcd60e51b815260206004820152602b60248201527f4552433732315061757361626c653a20746f6b656e207472616e73666572207760448201526a1a1a5b19481c185d5cd95960aa1b60648201526084016105d2565b606061049f6001600160a01b03831660145b606060006119f28360026124ad565b6119fd9060026124cc565b67ffffffffffffffff811115611a1557611a15612149565b6040519080825280601f01601f191660200182016040528015611a3f576020820181803683370190505b509050600360fc1b81600081518110611a5a57611a5a6122ec565b60200101906001600160f81b031916908160001a905350600f60fb1b81600181518110611a8957611a896122ec565b60200101906001600160f81b031916908160001a9053506000611aad8460026124ad565b611ab89060016124cc565b90505b6001811115611b30576f181899199a1a9b1b9c1cb0b131b232b360811b85600f1660108110611aec57611aec6122ec565b1a60f81b828281518110611b0257611b026122ec565b60200101906001600160f81b031916908160001a90535060049490941c93611b29816124e4565b9050611abb565b508315610bc85760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e7460448201526064016105d2565b60008181526001830160205260408120548015611c68576000611ba36001836124fb565b8554909150600090611bb7906001906124fb565b9050818114611c1c576000866000018281548110611bd757611bd76122ec565b9060005260206000200154905080876000018481548110611bfa57611bfa6122ec565b6000918252602080832090910192909255918252600188019052604090208390555b8554869080611c2d57611c2d612512565b60019003818190600052602060002001600090559055856001016000868152602001908152602001600020600090556001935050505061049f565b600091505061049f565b60006001600160e01b03198216637965db0b60e01b148061049f57506301ffc9a760e01b6001600160e01b031983161461049f565b6001811115611d165760405162461bcd60e51b815260206004820152603560248201527f455243373231456e756d657261626c653a20636f6e7365637574697665207472604482015274185b9cd9995c9cc81b9bdd081cdd5c1c1bdc9d1959605a1b60648201526084016105d2565b816001600160a01b038516611d7257611d6d81600a80546000838152600b60205260408120829055600182018355919091527fc65a7bb8d6351c1cf70c95a316cc6a92839c986682d98bc35f958f4883f9d2a80155565b611d95565b836001600160a01b0316856001600160a01b031614611d9557611d958582611ddb565b6001600160a01b038416611db157611dac81611e78565b611dd4565b846001600160a01b0316846001600160a01b031614611dd457611dd48482611f27565b5050505050565b60006001611de884610a86565b611df291906124fb565b600083815260096020526040902054909150808214611e45576001600160a01b03841660009081526008602090815260408083208584528252808320548484528184208190558352600990915290208190555b5060009182526009602090815260408084208490556001600160a01b039094168352600881528383209183525290812055565b600a54600090611e8a906001906124fb565b6000838152600b6020526040812054600a8054939450909284908110611eb257611eb26122ec565b9060005260206000200154905080600a8381548110611ed357611ed36122ec565b6000918252602080832090910192909255828152600b9091526040808220849055858252812055600a805480611f0b57611f0b612512565b6001900381819060005260206000200160009055905550505050565b6000611f3283610a86565b6001600160a01b039093166000908152600860209081526040808320868452825280832085905593825260099052919091209190915550565b6001600160e01b0319811681146108d457600080fd5b600060208284031215611f9357600080fd5b8135610bc881611f6b565b60005b83811015611fb9578181015183820152602001611fa1565b83811115610c445750506000910152565b60008151808452611fe2816020860160208601611f9e565b601f01601f19169290920160200192915050565b602081526000610bc86020830184611fca565b60006020828403121561201b57600080fd5b5035919050565b80356001600160a01b038116811461203957600080fd5b919050565b6000806040838503121561205157600080fd5b61205a83612022565b946020939093013593505050565b60008060006060848603121561207d57600080fd5b61208684612022565b925061209460208501612022565b9150604084013590509250925092565b600080604083850312156120b757600080fd5b823591506120c760208401612022565b90509250929050565b6000602082840312156120e257600080fd5b610bc882612022565b600080604083850312156120fe57600080fd5b50508035926020909101359150565b6000806040838503121561212057600080fd5b61212983612022565b91506020830135801515811461213e57600080fd5b809150509250929050565b634e487b7160e01b600052604160045260246000fd5b6000806000806080858703121561217557600080fd5b61217e85612022565b935061218c60208601612022565b925060408501359150606085013567ffffffffffffffff808211156121b057600080fd5b818701915087601f8301126121c457600080fd5b8135818111156121d6576121d6612149565b604051601f8201601f19908116603f011681019083821181831017156121fe576121fe612149565b816040528281528a602084870101111561221757600080fd5b82602086016020830137600060208483010152809550505050505092959194509250565b6000806040838503121561224e57600080fd5b61225783612022565b91506120c760208401612022565b600181811c9082168061227957607f821691505b60208210810361229957634e487b7160e01b600052602260045260246000fd5b50919050565b6020808252602d908201527f4552433732313a2063616c6c6572206973206e6f7420746f6b656e206f776e6560408201526c1c881bdc88185c1c1c9bdd9959609a1b606082015260800190565b634e487b7160e01b600052603260045260246000fd5b60008351612314818460208801611f9e565b835190830190612328818360208801611f9e565b01949350505050565b60208082526025908201527f4552433732313a207472616e736665722066726f6d20696e636f72726563742060408201526437bbb732b960d91b606082015260800190565b60208082526032908201527f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560408201527131b2b4bb32b91034b6b83632b6b2b73a32b960711b606082015260800190565b7f416363657373436f6e74726f6c3a206163636f756e7420000000000000000000815260008351612400816017850160208801611f9e565b7001034b99036b4b9b9b4b733903937b6329607d1b6017918401918201528351612431816028840160208801611f9e565b01602801949350505050565b6001600160a01b038581168252841660208201526040810183905260806060820181905260009061247090830184611fca565b9695505050505050565b60006020828403121561248c57600080fd5b8151610bc881611f6b565b634e487b7160e01b600052601160045260246000fd5b60008160001904831182151516156124c7576124c7612497565b500290565b600082198211156124df576124df612497565b500190565b6000816124f3576124f3612497565b506000190190565b60008282101561250d5761250d612497565b500390565b634e487b7160e01b600052603160045260246000fdfea2646970667358221220cfd1973198752b9be878ad342b8a8e9977281479b917a502ada04e82f396427464736f6c634300080d0033"; const isSuperArgs$v = (xs) => xs.length > 1; class ERC721PresetMinterPauserAutoId__factory extends ethers.ContractFactory { constructor(...args) { if (isSuperArgs$v(args)) { super(...args); } else { super(_abi$1Q, _bytecode$v, args[0]); } } getDeployTransaction(name, symbol, baseTokenURI, overrides) { return super.getDeployTransaction( name, symbol, baseTokenURI, overrides || {} ); } deploy(name, symbol, baseTokenURI, overrides) { return super.deploy(name, symbol, baseTokenURI, overrides || {}); } connect(runner) { return super.connect(runner); } static createInterface() { return new ethers.Interface(_abi$1Q); } static connect(address, runner) { return new ethers.Contract( address, _abi$1Q, runner ); } } __publicField$1Q(ERC721PresetMinterPauserAutoId__factory, "bytecode", _bytecode$v); __publicField$1Q(ERC721PresetMinterPauserAutoId__factory, "abi", _abi$1Q); var __defProp$1P = Object.defineProperty; var __defNormalProp$1P = (obj, key, value) => key in obj ? __defProp$1P(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$1P = (obj, key, value) => { __defNormalProp$1P(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$1P = [ { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "owner", type: "address" }, { indexed: true, internalType: "address", name: "approved", type: "address" }, { indexed: true, internalType: "uint256", name: "tokenId", type: "uint256" } ], name: "Approval", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "owner", type: "address" }, { indexed: true, internalType: "address", name: "operator", type: "address" }, { indexed: false, internalType: "bool", name: "approved", type: "bool" } ], name: "ApprovalForAll", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "from", type: "address" }, { indexed: true, internalType: "address", name: "to", type: "address" }, { indexed: true, internalType: "uint256", name: "tokenId", type: "uint256" } ], name: "Transfer", type: "event" }, { inputs: [ { internalType: "address", name: "to", type: "address" }, { internalType: "uint256", name: "tokenId", type: "uint256" } ], name: "approve", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "owner", type: "address" } ], name: "balanceOf", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "uint256", name: "tokenId", type: "uint256" } ], name: "getApproved", outputs: [ { internalType: "address", name: "", type: "address" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "owner", type: "address" }, { internalType: "address", name: "operator", type: "address" } ], name: "isApprovedForAll", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "name", outputs: [ { internalType: "string", name: "", type: "string" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "uint256", name: "tokenId", type: "uint256" } ], name: "ownerOf", outputs: [ { internalType: "address", name: "", type: "address" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "uint256", name: "tokenId", type: "uint256" }, { internalType: "uint256", name: "salePrice", type: "uint256" } ], name: "royaltyInfo", outputs: [ { internalType: "address", name: "", type: "address" }, { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "from", type: "address" }, { internalType: "address", name: "to", type: "address" }, { internalType: "uint256", name: "tokenId", type: "uint256" } ], name: "safeTransferFrom", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "from", type: "address" }, { internalType: "address", name: "to", type: "address" }, { internalType: "uint256", name: "tokenId", type: "uint256" }, { internalType: "bytes", name: "data", type: "bytes" } ], name: "safeTransferFrom", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "operator", type: "address" }, { internalType: "bool", name: "approved", type: "bool" } ], name: "setApprovalForAll", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "bytes4", name: "interfaceId", type: "bytes4" } ], name: "supportsInterface", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "symbol", outputs: [ { internalType: "string", name: "", type: "string" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "uint256", name: "tokenId", type: "uint256" } ], name: "tokenURI", outputs: [ { internalType: "string", name: "", type: "string" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "from", type: "address" }, { internalType: "address", name: "to", type: "address" }, { internalType: "uint256", name: "tokenId", type: "uint256" } ], name: "transferFrom", outputs: [], stateMutability: "nonpayable", type: "function" } ]; class ERC721Royalty__factory { static createInterface() { return new ethers.Interface(_abi$1P); } static connect(address, runner) { return new ethers.Contract(address, _abi$1P, runner); } } __publicField$1P(ERC721Royalty__factory, "abi", _abi$1P); var __defProp$1O = Object.defineProperty; var __defNormalProp$1O = (obj, key, value) => key in obj ? __defProp$1O(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$1O = (obj, key, value) => { __defNormalProp$1O(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$1O = [ { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "owner", type: "address" }, { indexed: true, internalType: "address", name: "approved", type: "address" }, { indexed: true, internalType: "uint256", name: "tokenId", type: "uint256" } ], name: "Approval", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "owner", type: "address" }, { indexed: true, internalType: "address", name: "operator", type: "address" }, { indexed: false, internalType: "bool", name: "approved", type: "bool" } ], name: "ApprovalForAll", type: "event" }, { anonymous: false, inputs: [ { indexed: false, internalType: "uint256", name: "_fromTokenId", type: "uint256" }, { indexed: false, internalType: "uint256", name: "_toTokenId", type: "uint256" } ], name: "BatchMetadataUpdate", type: "event" }, { anonymous: false, inputs: [ { indexed: false, internalType: "uint256", name: "_tokenId", type: "uint256" } ], name: "MetadataUpdate", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "from", type: "address" }, { indexed: true, internalType: "address", name: "to", type: "address" }, { indexed: true, internalType: "uint256", name: "tokenId", type: "uint256" } ], name: "Transfer", type: "event" }, { inputs: [ { internalType: "address", name: "to", type: "address" }, { internalType: "uint256", name: "tokenId", type: "uint256" } ], name: "approve", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "owner", type: "address" } ], name: "balanceOf", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "uint256", name: "tokenId", type: "uint256" } ], name: "getApproved", outputs: [ { internalType: "address", name: "", type: "address" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "owner", type: "address" }, { internalType: "address", name: "operator", type: "address" } ], name: "isApprovedForAll", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "name", outputs: [ { internalType: "string", name: "", type: "string" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "uint256", name: "tokenId", type: "uint256" } ], name: "ownerOf", outputs: [ { internalType: "address", name: "", type: "address" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "from", type: "address" }, { internalType: "address", name: "to", type: "address" }, { internalType: "uint256", name: "tokenId", type: "uint256" } ], name: "safeTransferFrom", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "from", type: "address" }, { internalType: "address", name: "to", type: "address" }, { internalType: "uint256", name: "tokenId", type: "uint256" }, { internalType: "bytes", name: "data", type: "bytes" } ], name: "safeTransferFrom", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "operator", type: "address" }, { internalType: "bool", name: "approved", type: "bool" } ], name: "setApprovalForAll", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "bytes4", name: "interfaceId", type: "bytes4" } ], name: "supportsInterface", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "symbol", outputs: [ { internalType: "string", name: "", type: "string" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "uint256", name: "tokenId", type: "uint256" } ], name: "tokenURI", outputs: [ { internalType: "string", name: "", type: "string" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "from", type: "address" }, { internalType: "address", name: "to", type: "address" }, { internalType: "uint256", name: "tokenId", type: "uint256" } ], name: "transferFrom", outputs: [], stateMutability: "nonpayable", type: "function" } ]; class ERC721URIStorage__factory { static createInterface() { return new ethers.Interface(_abi$1O); } static connect(address, runner) { return new ethers.Contract(address, _abi$1O, runner); } } __publicField$1O(ERC721URIStorage__factory, "abi", _abi$1O); var __defProp$1N = Object.defineProperty; var __defNormalProp$1N = (obj, key, value) => key in obj ? __defProp$1N(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$1N = (obj, key, value) => { __defNormalProp$1N(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$1N = [ { inputs: [], name: "InvalidShortString", type: "error" }, { inputs: [ { internalType: "string", name: "str", type: "string" } ], name: "StringTooLong", type: "error" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "owner", type: "address" }, { indexed: true, internalType: "address", name: "approved", type: "address" }, { indexed: true, internalType: "uint256", name: "tokenId", type: "uint256" } ], name: "Approval", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "owner", type: "address" }, { indexed: true, internalType: "address", name: "operator", type: "address" }, { indexed: false, internalType: "bool", name: "approved", type: "bool" } ], name: "ApprovalForAll", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "delegator", type: "address" }, { indexed: true, internalType: "address", name: "fromDelegate", type: "address" }, { indexed: true, internalType: "address", name: "toDelegate", type: "address" } ], name: "DelegateChanged", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "delegate", type: "address" }, { indexed: false, internalType: "uint256", name: "previousBalance", type: "uint256" }, { indexed: false, internalType: "uint256", name: "newBalance", type: "uint256" } ], name: "DelegateVotesChanged", type: "event" }, { anonymous: false, inputs: [], name: "EIP712DomainChanged", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "from", type: "address" }, { indexed: true, internalType: "address", name: "to", type: "address" }, { indexed: true, internalType: "uint256", name: "tokenId", type: "uint256" } ], name: "Transfer", type: "event" }, { inputs: [], name: "CLOCK_MODE", outputs: [ { internalType: "string", name: "", type: "string" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "DOMAIN_SEPARATOR", outputs: [ { internalType: "bytes32", name: "", type: "bytes32" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "to", type: "address" }, { internalType: "uint256", name: "tokenId", type: "uint256" } ], name: "approve", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "owner", type: "address" } ], name: "balanceOf", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "clock", outputs: [ { internalType: "uint48", name: "", type: "uint48" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "delegatee", type: "address" } ], name: "delegate", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "delegatee", type: "address" }, { internalType: "uint256", name: "nonce", type: "uint256" }, { internalType: "uint256", name: "expiry", type: "uint256" }, { internalType: "uint8", name: "v", type: "uint8" }, { internalType: "bytes32", name: "r", type: "bytes32" }, { internalType: "bytes32", name: "s", type: "bytes32" } ], name: "delegateBySig", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "account", type: "address" } ], name: "delegates", outputs: [ { internalType: "address", name: "", type: "address" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "eip712Domain", outputs: [ { internalType: "bytes1", name: "fields", type: "bytes1" }, { internalType: "string", name: "name", type: "string" }, { internalType: "string", name: "version", type: "string" }, { internalType: "uint256", name: "chainId", type: "uint256" }, { internalType: "address", name: "verifyingContract", type: "address" }, { internalType: "bytes32", name: "salt", type: "bytes32" }, { internalType: "uint256[]", name: "extensions", type: "uint256[]" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "uint256", name: "tokenId", type: "uint256" } ], name: "getApproved", outputs: [ { internalType: "address", name: "", type: "address" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "uint256", name: "timepoint", type: "uint256" } ], name: "getPastTotalSupply", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "account", type: "address" }, { internalType: "uint256", name: "timepoint", type: "uint256" } ], name: "getPastVotes", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "account", type: "address" } ], name: "getVotes", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "owner", type: "address" }, { internalType: "address", name: "operator", type: "address" } ], name: "isApprovedForAll", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "name", outputs: [ { internalType: "string", name: "", type: "string" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "owner", type: "address" } ], name: "nonces", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "uint256", name: "tokenId", type: "uint256" } ], name: "ownerOf", outputs: [ { internalType: "address", name: "", type: "address" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "from", type: "address" }, { internalType: "address", name: "to", type: "address" }, { internalType: "uint256", name: "tokenId", type: "uint256" } ], name: "safeTransferFrom", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "from", type: "address" }, { internalType: "address", name: "to", type: "address" }, { internalType: "uint256", name: "tokenId", type: "uint256" }, { internalType: "bytes", name: "data", type: "bytes" } ], name: "safeTransferFrom", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "operator", type: "address" }, { internalType: "bool", name: "approved", type: "bool" } ], name: "setApprovalForAll", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "bytes4", name: "interfaceId", type: "bytes4" } ], name: "supportsInterface", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "symbol", outputs: [ { internalType: "string", name: "", type: "string" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "uint256", name: "tokenId", type: "uint256" } ], name: "tokenURI", outputs: [ { internalType: "string", name: "", type: "string" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "from", type: "address" }, { internalType: "address", name: "to", type: "address" }, { internalType: "uint256", name: "tokenId", type: "uint256" } ], name: "transferFrom", outputs: [], stateMutability: "nonpayable", type: "function" } ]; class ERC721Votes__factory { static createInterface() { return new ethers.Interface(_abi$1N); } static connect(address, runner) { return new ethers.Contract(address, _abi$1N, runner); } } __publicField$1N(ERC721Votes__factory, "abi", _abi$1N); var __defProp$1M = Object.defineProperty; var __defNormalProp$1M = (obj, key, value) => key in obj ? __defProp$1M(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$1M = (obj, key, value) => { __defNormalProp$1M(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$1M = [ { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "owner", type: "address" }, { indexed: true, internalType: "address", name: "approved", type: "address" }, { indexed: true, internalType: "uint256", name: "tokenId", type: "uint256" } ], name: "Approval", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "owner", type: "address" }, { indexed: true, internalType: "address", name: "operator", type: "address" }, { indexed: false, internalType: "bool", name: "approved", type: "bool" } ], name: "ApprovalForAll", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "from", type: "address" }, { indexed: true, internalType: "address", name: "to", type: "address" }, { indexed: true, internalType: "uint256", name: "tokenId", type: "uint256" } ], name: "Transfer", type: "event" }, { inputs: [ { internalType: "address", name: "to", type: "address" }, { internalType: "uint256", name: "tokenId", type: "uint256" } ], name: "approve", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "owner", type: "address" } ], name: "balanceOf", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "account", type: "address" }, { internalType: "uint256[]", name: "tokenIds", type: "uint256[]" } ], name: "depositFor", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "uint256", name: "tokenId", type: "uint256" } ], name: "getApproved", outputs: [ { internalType: "address", name: "", type: "address" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "owner", type: "address" }, { internalType: "address", name: "operator", type: "address" } ], name: "isApprovedForAll", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "name", outputs: [ { internalType: "string", name: "", type: "string" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "", type: "address" }, { internalType: "address", name: "from", type: "address" }, { internalType: "uint256", name: "tokenId", type: "uint256" }, { internalType: "bytes", name: "", type: "bytes" } ], name: "onERC721Received", outputs: [ { internalType: "bytes4", name: "", type: "bytes4" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "uint256", name: "tokenId", type: "uint256" } ], name: "ownerOf", outputs: [ { internalType: "address", name: "", type: "address" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "from", type: "address" }, { internalType: "address", name: "to", type: "address" }, { internalType: "uint256", name: "tokenId", type: "uint256" } ], name: "safeTransferFrom", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "from", type: "address" }, { internalType: "address", name: "to", type: "address" }, { internalType: "uint256", name: "tokenId", type: "uint256" }, { internalType: "bytes", name: "data", type: "bytes" } ], name: "safeTransferFrom", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "operator", type: "address" }, { internalType: "bool", name: "approved", type: "bool" } ], name: "setApprovalForAll", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "bytes4", name: "interfaceId", type: "bytes4" } ], name: "supportsInterface", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "symbol", outputs: [ { internalType: "string", name: "", type: "string" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "uint256", name: "tokenId", type: "uint256" } ], name: "tokenURI", outputs: [ { internalType: "string", name: "", type: "string" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "from", type: "address" }, { internalType: "address", name: "to", type: "address" }, { internalType: "uint256", name: "tokenId", type: "uint256" } ], name: "transferFrom", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [], name: "underlying", outputs: [ { internalType: "contract IERC721", name: "", type: "address" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "account", type: "address" }, { internalType: "uint256[]", name: "tokenIds", type: "uint256[]" } ], name: "withdrawTo", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "nonpayable", type: "function" } ]; class ERC721Wrapper__factory { static createInterface() { return new ethers.Interface(_abi$1M); } static connect(address, runner) { return new ethers.Contract(address, _abi$1M, runner); } } __publicField$1M(ERC721Wrapper__factory, "abi", _abi$1M); var __defProp$1L = Object.defineProperty; var __defNormalProp$1L = (obj, key, value) => key in obj ? __defProp$1L(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$1L = (obj, key, value) => { __defNormalProp$1L(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$1L = [ { inputs: [ { internalType: "string", name: "name_", type: "string" }, { internalType: "string", name: "symbol_", type: "string" }, { internalType: "address[]", name: "defaultOperators_", type: "address[]" } ], stateMutability: "nonpayable", type: "constructor" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "owner", type: "address" }, { indexed: true, internalType: "address", name: "spender", type: "address" }, { indexed: false, internalType: "uint256", name: "value", type: "uint256" } ], name: "Approval", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "operator", type: "address" }, { indexed: true, internalType: "address", name: "tokenHolder", type: "address" } ], name: "AuthorizedOperator", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "operator", type: "address" }, { indexed: true, internalType: "address", name: "from", type: "address" }, { indexed: false, internalType: "uint256", name: "amount", type: "uint256" }, { indexed: false, internalType: "bytes", name: "data", type: "bytes" }, { indexed: false, internalType: "bytes", name: "operatorData", type: "bytes" } ], name: "Burned", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "operator", type: "address" }, { indexed: true, internalType: "address", name: "to", type: "address" }, { indexed: false, internalType: "uint256", name: "amount", type: "uint256" }, { indexed: false, internalType: "bytes", name: "data", type: "bytes" }, { indexed: false, internalType: "bytes", name: "operatorData", type: "bytes" } ], name: "Minted", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "operator", type: "address" }, { indexed: true, internalType: "address", name: "tokenHolder", type: "address" } ], name: "RevokedOperator", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "operator", type: "address" }, { indexed: true, internalType: "address", name: "from", type: "address" }, { indexed: true, internalType: "address", name: "to", type: "address" }, { indexed: false, internalType: "uint256", name: "amount", type: "uint256" }, { indexed: false, internalType: "bytes", name: "data", type: "bytes" }, { indexed: false, internalType: "bytes", name: "operatorData", type: "bytes" } ], name: "Sent", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "from", type: "address" }, { indexed: true, internalType: "address", name: "to", type: "address" }, { indexed: false, internalType: "uint256", name: "value", type: "uint256" } ], name: "Transfer", type: "event" }, { inputs: [ { internalType: "address", name: "holder", type: "address" }, { internalType: "address", name: "spender", type: "address" } ], name: "allowance", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "spender", type: "address" }, { internalType: "uint256", name: "value", type: "uint256" } ], name: "approve", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "operator", type: "address" } ], name: "authorizeOperator", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "tokenHolder", type: "address" } ], name: "balanceOf", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "uint256", name: "amount", type: "uint256" }, { internalType: "bytes", name: "data", type: "bytes" } ], name: "burn", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [], name: "decimals", outputs: [ { internalType: "uint8", name: "", type: "uint8" } ], stateMutability: "pure", type: "function" }, { inputs: [], name: "defaultOperators", outputs: [ { internalType: "address[]", name: "", type: "address[]" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "granularity", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "operator", type: "address" }, { internalType: "address", name: "tokenHolder", type: "address" } ], name: "isOperatorFor", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "name", outputs: [ { internalType: "string", name: "", type: "string" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "account", type: "address" }, { internalType: "uint256", name: "amount", type: "uint256" }, { internalType: "bytes", name: "data", type: "bytes" }, { internalType: "bytes", name: "operatorData", type: "bytes" } ], name: "operatorBurn", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "sender", type: "address" }, { internalType: "address", name: "recipient", type: "address" }, { internalType: "uint256", name: "amount", type: "uint256" }, { internalType: "bytes", name: "data", type: "bytes" }, { internalType: "bytes", name: "operatorData", type: "bytes" } ], name: "operatorSend", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "operator", type: "address" } ], name: "revokeOperator", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "recipient", type: "address" }, { internalType: "uint256", name: "amount", type: "uint256" }, { internalType: "bytes", name: "data", type: "bytes" } ], name: "send", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [], name: "symbol", outputs: [ { internalType: "string", name: "", type: "string" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "totalSupply", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "recipient", type: "address" }, { internalType: "uint256", name: "amount", type: "uint256" } ], name: "transfer", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "holder", type: "address" }, { internalType: "address", name: "recipient", type: "address" }, { internalType: "uint256", name: "amount", type: "uint256" } ], name: "transferFrom", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "nonpayable", type: "function" } ]; const _bytecode$u = "0x60806040523480156200001157600080fd5b5060405162001bab38038062001bab8339810160408190526200003491620003f1565b82516200004990600290602086019062000215565b5081516200005f90600390602085019062000215565b50805162000075906004906020840190620002a4565b5060005b8151811015620000e5576001600560008484815181106200009e576200009e62000508565b6020908102919091018101516001600160a01b03168252810191909152604001600020805460ff191691151591909117905580620000dc816200051e565b91505062000079565b506040516329965a1d60e01b815230600482018190527fac7fbab5f54a3ca8194167523c6753bfeb96a445279294b6125b68cce217705460248301526044820152731820a4b7618bde71dce8cdc73aab6c95905fad24906329965a1d90606401600060405180830381600087803b1580156200016057600080fd5b505af115801562000175573d6000803e3d6000fd5b50506040516329965a1d60e01b815230600482018190527faea199e31a596269b42cdafd93407f14436db6e4cad65417994c2eb37381e05a60248301526044820152731820a4b7618bde71dce8cdc73aab6c95905fad2492506329965a1d9150606401600060405180830381600087803b158015620001f357600080fd5b505af115801562000208573d6000803e3d6000fd5b5050505050505062000582565b828054620002239062000546565b90600052602060002090601f01602090048101928262000247576000855562000292565b82601f106200026257805160ff191683800117855562000292565b8280016001018555821562000292579182015b828111156200029257825182559160200191906001019062000275565b50620002a0929150620002fc565b5090565b82805482825590600052602060002090810192821562000292579160200282015b828111156200029257825182546001600160a01b0319166001600160a01b03909116178255602090920191600190910190620002c5565b5b80821115620002a05760008155600101620002fd565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b038111828210171562000354576200035462000313565b604052919050565b600082601f8301126200036e57600080fd5b81516001600160401b038111156200038a576200038a62000313565b6020620003a0601f8301601f1916820162000329565b8281528582848701011115620003b557600080fd5b60005b83811015620003d5578581018301518282018401528201620003b8565b83811115620003e75760008385840101525b5095945050505050565b6000806000606084860312156200040757600080fd5b83516001600160401b03808211156200041f57600080fd5b6200042d878388016200035c565b94506020915081860151818111156200044557600080fd5b62000453888289016200035c565b9450506040860151818111156200046957600080fd5b8601601f810188136200047b57600080fd5b80518281111562000490576200049062000313565b8060051b9250620004a384840162000329565b818152928201840192848101908a851115620004be57600080fd5b928501925b84841015620004f857835192506001600160a01b0383168314620004e75760008081fd5b8282529285019290850190620004c3565b8096505050505050509250925092565b634e487b7160e01b600052603260045260246000fd5b6000600182016200053f57634e487b7160e01b600052601160045260246000fd5b5060010190565b600181811c908216806200055b57607f821691505b6020821081036200057c57634e487b7160e01b600052602260045260246000fd5b50919050565b61161980620005926000396000f3fe608060405234801561001057600080fd5b50600436106101165760003560e01c8063959b8c3f116100a2578063d95b637111610071578063d95b63711461022b578063dd62ed3e1461023e578063fad8b32a14610277578063fc673c4f1461028a578063fe9d93031461029d57600080fd5b8063959b8c3f146101ea57806395d89b41146101fd5780639bd9bbc614610205578063a9059cbb1461021857600080fd5b806323b872dd116100e957806323b872dd14610183578063313ce56714610196578063556f0dc7146101a557806362ad1b83146101ac57806370a08231146101c157600080fd5b806306e485381461011b57806306fdde0314610139578063095ea7b31461014e57806318160ddd14610171575b600080fd5b6101236102b0565b604051610130919061108e565b60405180910390f35b610141610312565b6040516101309190611128565b61016161015c366004611153565b61039b565b6040519015158152602001610130565b6001545b604051908152602001610130565b61016161019136600461117f565b6103b3565b60405160128152602001610130565b6001610175565b6101bf6101ba366004611263565b6103f9565b005b6101756101cf3660046112f6565b6001600160a01b031660009081526020819052604090205490565b6101bf6101f83660046112f6565b61043e565b61014161055b565b6101bf610213366004611313565b61056a565b610161610226366004611153565b61058d565b61016161023936600461136c565b6105c5565b61017561024c36600461136c565b6001600160a01b03918216600090815260086020908152604080832093909416825291909152205490565b6101bf6102853660046112f6565b610667565b6101bf6102983660046113a5565b610782565b6101bf6102ab366004611425565b6107ba565b6060600480548060200260200160405190810160405280929190818152602001828054801561030857602002820191906000526020600020905b81546001600160a01b031681526001909101906020018083116102ea575b5050505050905090565b6060600280546103219061146c565b80601f016020809104026020016040519081016040528092919081815260200182805461034d9061146c565b80156103085780601f1061036f57610100808354040283529160200191610308565b820191906000526020600020905b81548152906001019060200180831161037d57509395945050505050565b6000336103a98185856107d9565b5060019392505050565b6000336103c1858285610900565b6103ee8585856040518060200160405280600081525060405180602001604052806000815250600061098c565b506001949350505050565b61040333866105c5565b6104285760405162461bcd60e51b815260040161041f906114a6565b60405180910390fd5b6104378585858585600161098c565b5050505050565b6001600160a01b03811633036104a25760405162461bcd60e51b8152602060048201526024808201527f4552433737373a20617574686f72697a696e672073656c66206173206f70657260448201526330ba37b960e11b606482015260840161041f565b6001600160a01b03811660009081526005602052604090205460ff16156104f3573360009081526007602090815260408083206001600160a01b03851684529091529020805460ff19169055610522565b3360009081526006602090815260408083206001600160a01b03851684529091529020805460ff191660011790555b60405133906001600160a01b038316907ff4caeb2d6ca8932a215a353d0703c326ec2d81fc68170f320eb2ab49e9df61f990600090a350565b6060600380546103219061146c565b6105883384848460405180602001604052806000815250600161098c565b505050565b60006105bc3384846040518060200160405280600081525060405180602001604052806000815250600061098c565b50600192915050565b6000816001600160a01b0316836001600160a01b0316148061063057506001600160a01b03831660009081526005602052604090205460ff16801561063057506001600160a01b0380831660009081526007602090815260408083209387168352929052205460ff16155b8061066057506001600160a01b0380831660009081526006602090815260408083209387168352929052205460ff165b9392505050565b336001600160a01b038216036106c95760405162461bcd60e51b815260206004820152602160248201527f4552433737373a207265766f6b696e672073656c66206173206f70657261746f6044820152603960f91b606482015260840161041f565b6001600160a01b03811660009081526005602052604090205460ff161561071d573360009081526007602090815260408083206001600160a01b03851684529091529020805460ff19166001179055610749565b3360009081526006602090815260408083206001600160a01b03851684529091529020805460ff191690555b60405133906001600160a01b038316907f50546e66e5f44d728365dc3908c63bc5cfeeab470722c1677e3073a6ac294aa190600090a350565b61078c33856105c5565b6107a85760405162461bcd60e51b815260040161041f906114a6565b6107b484848484610a88565b50505050565b6107d533838360405180602001604052806000815250610a88565b5050565b6001600160a01b03831661083d5760405162461bcd60e51b815260206004820152602560248201527f4552433737373a20617070726f76652066726f6d20746865207a65726f206164604482015264647265737360d81b606482015260840161041f565b6001600160a01b03821661089f5760405162461bcd60e51b815260206004820152602360248201527f4552433737373a20617070726f766520746f20746865207a65726f206164647260448201526265737360e81b606482015260840161041f565b6001600160a01b0383811660008181526008602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b0383811660009081526008602090815260408083209386168352929052205460001981146107b4578181101561097f5760405162461bcd60e51b815260206004820152601e60248201527f4552433737373a20696e73756666696369656e7420616c6c6f77616e63650000604482015260640161041f565b6107b484848484036107d9565b6001600160a01b0386166109f15760405162461bcd60e51b815260206004820152602660248201527f4552433737373a207472616e736665722066726f6d20746865207a65726f206160448201526564647265737360d01b606482015260840161041f565b6001600160a01b038516610a535760405162461bcd60e51b8152602060048201526024808201527f4552433737373a207472616e7366657220746f20746865207a65726f206164646044820152637265737360e01b606482015260840161041f565b33610a62818888888888610c3c565b610a70818888888888610d63565b610a7f81888888888888610ec9565b50505050505050565b6001600160a01b038416610ae95760405162461bcd60e51b815260206004820152602260248201527f4552433737373a206275726e2066726f6d20746865207a65726f206164647265604482015261737360f01b606482015260840161041f565b33610af981866000878787610c3c565b6001600160a01b03851660009081526020819052604090205484811015610b6e5760405162461bcd60e51b815260206004820152602360248201527f4552433737373a206275726e20616d6f756e7420657863656564732062616c616044820152626e636560e81b606482015260840161041f565b6001600160a01b0386166000908152602081905260408120868303905560018054879290610b9d908490611508565b92505081905550856001600160a01b0316826001600160a01b03167fa78a9be3a7b862d26933ad85fb11d80ef66b8f972d7cbba06621d583943a4098878787604051610beb9392919061151f565b60405180910390a36040518581526000906001600160a01b038816907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a3505050505050565b60405163555ddc6560e11b81526001600160a01b03861660048201527f29ddb589b1fb5fc7cf394961c1adf5f8c6454761adf795e67fe149f658abe8956024820152600090731820a4b7618bde71dce8cdc73aab6c95905fad249063aabbb8ca90604401602060405180830381865afa158015610cbd573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ce19190611554565b90506001600160a01b03811615610a7f57604051633ad5cbc160e11b81526001600160a01b038216906375ab978290610d28908a908a908a908a908a908a90600401611571565b600060405180830381600087803b158015610d4257600080fd5b505af1158015610d56573d6000803e3d6000fd5b5050505050505050505050565b6001600160a01b03851660009081526020819052604090205483811015610ddc5760405162461bcd60e51b815260206004820152602760248201527f4552433737373a207472616e7366657220616d6f756e7420657863656564732060448201526662616c616e636560c81b606482015260840161041f565b6001600160a01b03808716600090815260208190526040808220878503905591871681529081208054869290610e139084906115cb565b92505081905550846001600160a01b0316866001600160a01b0316886001600160a01b03167f06b541ddaa720db2b10a4d0cdac39b8d360425fc073085fac19bc82614677987878787604051610e6b9392919061151f565b60405180910390a4846001600160a01b0316866001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef86604051610eb891815260200190565b60405180910390a350505050505050565b60405163555ddc6560e11b81526001600160a01b03861660048201527fb281fc8c12954d22544db45de3159a39272895b169a852b314f9cc762e44c53b6024820152600090731820a4b7618bde71dce8cdc73aab6c95905fad249063aabbb8ca90604401602060405180830381865afa158015610f4a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f6e9190611554565b90506001600160a01b03811615610fea576040516223de2960e01b81526001600160a01b038216906223de2990610fb3908b908b908b908b908b908b90600401611571565b600060405180830381600087803b158015610fcd57600080fd5b505af1158015610fe1573d6000803e3d6000fd5b50505050611084565b8115611084576001600160a01b0386163b156110845760405162461bcd60e51b815260206004820152604d60248201527f4552433737373a20746f6b656e20726563697069656e7420636f6e747261637460448201527f20686173206e6f20696d706c656d656e74657220666f7220455243373737546f60648201526c1ad95b9cd49958da5c1a595b9d609a1b608482015260a40161041f565b5050505050505050565b6020808252825182820181905260009190848201906040850190845b818110156110cf5783516001600160a01b0316835292840192918401916001016110aa565b50909695505050505050565b6000815180845260005b81811015611101576020818501810151868301820152016110e5565b81811115611113576000602083870101525b50601f01601f19169290920160200192915050565b60208152600061066060208301846110db565b6001600160a01b038116811461115057600080fd5b50565b6000806040838503121561116657600080fd5b82356111718161113b565b946020939093013593505050565b60008060006060848603121561119457600080fd5b833561119f8161113b565b925060208401356111af8161113b565b929592945050506040919091013590565b634e487b7160e01b600052604160045260246000fd5b600082601f8301126111e757600080fd5b813567ffffffffffffffff80821115611202576112026111c0565b604051601f8301601f19908116603f0116810190828211818310171561122a5761122a6111c0565b8160405283815286602085880101111561124357600080fd5b836020870160208301376000602085830101528094505050505092915050565b600080600080600060a0868803121561127b57600080fd5b85356112868161113b565b945060208601356112968161113b565b935060408601359250606086013567ffffffffffffffff808211156112ba57600080fd5b6112c689838a016111d6565b935060808801359150808211156112dc57600080fd5b506112e9888289016111d6565b9150509295509295909350565b60006020828403121561130857600080fd5b81356106608161113b565b60008060006060848603121561132857600080fd5b83356113338161113b565b925060208401359150604084013567ffffffffffffffff81111561135657600080fd5b611362868287016111d6565b9150509250925092565b6000806040838503121561137f57600080fd5b823561138a8161113b565b9150602083013561139a8161113b565b809150509250929050565b600080600080608085870312156113bb57600080fd5b84356113c68161113b565b935060208501359250604085013567ffffffffffffffff808211156113ea57600080fd5b6113f6888389016111d6565b9350606087013591508082111561140c57600080fd5b50611419878288016111d6565b91505092959194509250565b6000806040838503121561143857600080fd5b82359150602083013567ffffffffffffffff81111561145657600080fd5b611462858286016111d6565b9150509250929050565b600181811c9082168061148057607f821691505b6020821081036114a057634e487b7160e01b600052602260045260246000fd5b50919050565b6020808252602c908201527f4552433737373a2063616c6c6572206973206e6f7420616e206f70657261746f60408201526b39103337b9103437b63232b960a11b606082015260800190565b634e487b7160e01b600052601160045260246000fd5b60008282101561151a5761151a6114f2565b500390565b83815260606020820152600061153860608301856110db565b828103604084015261154a81856110db565b9695505050505050565b60006020828403121561156657600080fd5b81516106608161113b565b6001600160a01b0387811682528681166020830152851660408201526060810184905260c0608082018190526000906115ac908301856110db565b82810360a08401526115be81856110db565b9998505050505050505050565b600082198211156115de576115de6114f2565b50019056fea2646970667358221220e8e83af7037b5721e0219069b713e3de74b2f8745d1abe6f8409b94bbad4c1b064736f6c634300080d0033"; const isSuperArgs$u = (xs) => xs.length > 1; class ERC777__factory extends ethers.ContractFactory { constructor(...args) { if (isSuperArgs$u(args)) { super(...args); } else { super(_abi$1L, _bytecode$u, args[0]); } } getDeployTransaction(name_, symbol_, defaultOperators_, overrides) { return super.getDeployTransaction( name_, symbol_, defaultOperators_, overrides || {} ); } deploy(name_, symbol_, defaultOperators_, overrides) { return super.deploy( name_, symbol_, defaultOperators_, overrides || {} ); } connect(runner) { return super.connect(runner); } static createInterface() { return new ethers.Interface(_abi$1L); } static connect(address, runner) { return new ethers.Contract(address, _abi$1L, runner); } } __publicField$1L(ERC777__factory, "bytecode", _bytecode$u); __publicField$1L(ERC777__factory, "abi", _abi$1L); var __defProp$1K = Object.defineProperty; var __defNormalProp$1K = (obj, key, value) => key in obj ? __defProp$1K(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$1K = (obj, key, value) => { __defNormalProp$1K(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$1K = [ { inputs: [ { internalType: "string", name: "name", type: "string" }, { internalType: "string", name: "symbol", type: "string" }, { internalType: "address[]", name: "defaultOperators", type: "address[]" }, { internalType: "uint256", name: "initialSupply", type: "uint256" }, { internalType: "address", name: "owner", type: "address" } ], stateMutability: "nonpayable", type: "constructor" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "owner", type: "address" }, { indexed: true, internalType: "address", name: "spender", type: "address" }, { indexed: false, internalType: "uint256", name: "value", type: "uint256" } ], name: "Approval", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "operator", type: "address" }, { indexed: true, internalType: "address", name: "tokenHolder", type: "address" } ], name: "AuthorizedOperator", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "operator", type: "address" }, { indexed: true, internalType: "address", name: "from", type: "address" }, { indexed: false, internalType: "uint256", name: "amount", type: "uint256" }, { indexed: false, internalType: "bytes", name: "data", type: "bytes" }, { indexed: false, internalType: "bytes", name: "operatorData", type: "bytes" } ], name: "Burned", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "operator", type: "address" }, { indexed: true, internalType: "address", name: "to", type: "address" }, { indexed: false, internalType: "uint256", name: "amount", type: "uint256" }, { indexed: false, internalType: "bytes", name: "data", type: "bytes" }, { indexed: false, internalType: "bytes", name: "operatorData", type: "bytes" } ], name: "Minted", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "operator", type: "address" }, { indexed: true, internalType: "address", name: "tokenHolder", type: "address" } ], name: "RevokedOperator", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "operator", type: "address" }, { indexed: true, internalType: "address", name: "from", type: "address" }, { indexed: true, internalType: "address", name: "to", type: "address" }, { indexed: false, internalType: "uint256", name: "amount", type: "uint256" }, { indexed: false, internalType: "bytes", name: "data", type: "bytes" }, { indexed: false, internalType: "bytes", name: "operatorData", type: "bytes" } ], name: "Sent", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "from", type: "address" }, { indexed: true, internalType: "address", name: "to", type: "address" }, { indexed: false, internalType: "uint256", name: "value", type: "uint256" } ], name: "Transfer", type: "event" }, { inputs: [ { internalType: "address", name: "holder", type: "address" }, { internalType: "address", name: "spender", type: "address" } ], name: "allowance", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "spender", type: "address" }, { internalType: "uint256", name: "value", type: "uint256" } ], name: "approve", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "operator", type: "address" } ], name: "authorizeOperator", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "tokenHolder", type: "address" } ], name: "balanceOf", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "uint256", name: "amount", type: "uint256" }, { internalType: "bytes", name: "data", type: "bytes" } ], name: "burn", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [], name: "decimals", outputs: [ { internalType: "uint8", name: "", type: "uint8" } ], stateMutability: "pure", type: "function" }, { inputs: [], name: "defaultOperators", outputs: [ { internalType: "address[]", name: "", type: "address[]" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "granularity", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "operator", type: "address" }, { internalType: "address", name: "tokenHolder", type: "address" } ], name: "isOperatorFor", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "name", outputs: [ { internalType: "string", name: "", type: "string" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "account", type: "address" }, { internalType: "uint256", name: "amount", type: "uint256" }, { internalType: "bytes", name: "data", type: "bytes" }, { internalType: "bytes", name: "operatorData", type: "bytes" } ], name: "operatorBurn", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "sender", type: "address" }, { internalType: "address", name: "recipient", type: "address" }, { internalType: "uint256", name: "amount", type: "uint256" }, { internalType: "bytes", name: "data", type: "bytes" }, { internalType: "bytes", name: "operatorData", type: "bytes" } ], name: "operatorSend", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "operator", type: "address" } ], name: "revokeOperator", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "recipient", type: "address" }, { internalType: "uint256", name: "amount", type: "uint256" }, { internalType: "bytes", name: "data", type: "bytes" } ], name: "send", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [], name: "symbol", outputs: [ { internalType: "string", name: "", type: "string" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "totalSupply", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "recipient", type: "address" }, { internalType: "uint256", name: "amount", type: "uint256" } ], name: "transfer", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "holder", type: "address" }, { internalType: "address", name: "recipient", type: "address" }, { internalType: "uint256", name: "amount", type: "uint256" } ], name: "transferFrom", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "nonpayable", type: "function" } ]; const _bytecode$t = "0x60806040523480156200001157600080fd5b506040516200209d3803806200209d8339810160408190526200003491620007b9565b84848482600290805190602001906200004f929190620005b2565b50815162000065906003906020850190620005b2565b5080516200007b90600490602084019062000641565b5060005b8151811015620000eb57600160056000848481518110620000a457620000a4620008dc565b6020908102919091018101516001600160a01b03168252810191909152604001600020805460ff191691151591909117905580620000e28162000908565b9150506200007f565b506040516329965a1d60e01b815230600482018190527fac7fbab5f54a3ca8194167523c6753bfeb96a445279294b6125b68cce217705460248301526044820152731820a4b7618bde71dce8cdc73aab6c95905fad24906329965a1d90606401600060405180830381600087803b1580156200016657600080fd5b505af11580156200017b573d6000803e3d6000fd5b50506040516329965a1d60e01b815230600482018190527faea199e31a596269b42cdafd93407f14436db6e4cad65417994c2eb37381e05a60248301526044820152731820a4b7618bde71dce8cdc73aab6c95905fad2492506329965a1d9150606401600060405180830381600087803b158015620001f957600080fd5b505af11580156200020e573d6000803e3d6000fd5b5050505050505062000247818360405180602001604052806000815250604051806020016040528060008152506200025260201b60201c565b505050505062000a65565b6200026284848484600162000268565b50505050565b6001600160a01b038516620002c45760405162461bcd60e51b815260206004820181905260248201527f4552433737373a206d696e7420746f20746865207a65726f206164647265737360448201526064015b60405180910390fd5b60003390508460016000828254620002dd919062000924565b90915550506001600160a01b038616600090815260208190526040812080548792906200030c90849062000924565b909155506200032490508160008888888888620003be565b856001600160a01b0316816001600160a01b03167f2fe5be0146f74c5bce36c0b80911af6c7d86ff27e89d5cfa61fc681327954e5d8787876040516200036d939291906200096d565b60405180910390a36040518581526001600160a01b038716906000907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a3505050505050565b60405163555ddc6560e11b81526001600160a01b03861660048201527fb281fc8c12954d22544db45de3159a39272895b169a852b314f9cc762e44c53b6024820152600090731820a4b7618bde71dce8cdc73aab6c95905fad249063aabbb8ca90604401602060405180830381865afa15801562000440573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620004669190620009a6565b90506001600160a01b03811615620004e8576040516223de2960e01b81526001600160a01b038216906223de2990620004ae908b908b908b908b908b908b90600401620009cb565b600060405180830381600087803b158015620004c957600080fd5b505af1158015620004de573d6000803e3d6000fd5b5050505062000599565b811562000599576200050e866001600160a01b0316620005a360201b620007d91760201c565b15620005995760405162461bcd60e51b815260206004820152604d60248201527f4552433737373a20746f6b656e20726563697069656e7420636f6e747261637460448201527f20686173206e6f20696d706c656d656e74657220666f7220455243373737546f60648201526c1ad95b9cd49958da5c1a595b9d609a1b608482015260a401620002bb565b5050505050505050565b6001600160a01b03163b151590565b828054620005c09062000a29565b90600052602060002090601f016020900481019282620005e457600085556200062f565b82601f10620005ff57805160ff19168380011785556200062f565b828001600101855582156200062f579182015b828111156200062f57825182559160200191906001019062000612565b506200063d92915062000699565b5090565b8280548282559060005260206000209081019282156200062f579160200282015b828111156200062f57825182546001600160a01b0319166001600160a01b0390911617825560209092019160019091019062000662565b5b808211156200063d57600081556001016200069a565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b0381118282101715620006f157620006f1620006b0565b604052919050565b60005b8381101562000716578181015183820152602001620006fc565b83811115620002625750506000910152565b600082601f8301126200073a57600080fd5b81516001600160401b03811115620007565762000756620006b0565b6200076b601f8201601f1916602001620006c6565b8181528460208386010111156200078157600080fd5b62000794826020830160208701620006f9565b949350505050565b80516001600160a01b0381168114620007b457600080fd5b919050565b600080600080600060a08688031215620007d257600080fd5b85516001600160401b0380821115620007ea57600080fd5b620007f889838a0162000728565b96506020915081880151818111156200081057600080fd5b6200081e8a828b0162000728565b9650506040880151818111156200083457600080fd5b8801601f81018a136200084657600080fd5b8051828111156200085b576200085b620006b0565b8060051b92506200086e848401620006c6565b818152928201840192848101908c8511156200088957600080fd5b928501925b84841015620008b257620008a2846200079c565b825292850192908501906200088e565b80985050505050505060608601519150620008d0608087016200079c565b90509295509295909350565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b6000600182016200091d576200091d620008f2565b5060010190565b600082198211156200093a576200093a620008f2565b500190565b6000815180845262000959816020860160208601620006f9565b601f01601f19169290920160200192915050565b8381526060602082015260006200098860608301856200093f565b82810360408401526200099c81856200093f565b9695505050505050565b600060208284031215620009b957600080fd5b620009c4826200079c565b9392505050565b6001600160a01b0387811682528681166020830152851660408201526060810184905260c06080820181905260009062000a08908301856200093f565b82810360a084015262000a1c81856200093f565b9998505050505050505050565b600181811c9082168062000a3e57607f821691505b60208210810362000a5f57634e487b7160e01b600052602260045260246000fd5b50919050565b6116288062000a756000396000f3fe608060405234801561001057600080fd5b50600436106101165760003560e01c8063959b8c3f116100a2578063d95b637111610071578063d95b63711461022b578063dd62ed3e1461023e578063fad8b32a14610277578063fc673c4f1461028a578063fe9d93031461029d57600080fd5b8063959b8c3f146101ea57806395d89b41146101fd5780639bd9bbc614610205578063a9059cbb1461021857600080fd5b806323b872dd116100e957806323b872dd14610183578063313ce56714610196578063556f0dc7146101a557806362ad1b83146101ac57806370a08231146101c157600080fd5b806306e485381461011b57806306fdde0314610139578063095ea7b31461014e57806318160ddd14610171575b600080fd5b6101236102b0565b604051610130919061109d565b60405180910390f35b610141610312565b6040516101309190611137565b61016161015c366004611162565b61039b565b6040519015158152602001610130565b6001545b604051908152602001610130565b61016161019136600461118e565b6103b3565b60405160128152602001610130565b6001610175565b6101bf6101ba366004611272565b6103f9565b005b6101756101cf366004611305565b6001600160a01b031660009081526020819052604090205490565b6101bf6101f8366004611305565b61043e565b61014161055b565b6101bf610213366004611322565b61056a565b610161610226366004611162565b61058d565b61016161023936600461137b565b6105c5565b61017561024c36600461137b565b6001600160a01b03918216600090815260086020908152604080832093909416825291909152205490565b6101bf610285366004611305565b610667565b6101bf6102983660046113b4565b610782565b6101bf6102ab366004611434565b6107ba565b6060600480548060200260200160405190810160405280929190818152602001828054801561030857602002820191906000526020600020905b81546001600160a01b031681526001909101906020018083116102ea575b5050505050905090565b6060600280546103219061147b565b80601f016020809104026020016040519081016040528092919081815260200182805461034d9061147b565b80156103085780601f1061036f57610100808354040283529160200191610308565b820191906000526020600020905b81548152906001019060200180831161037d57509395945050505050565b6000336103a98185856107e8565b5060019392505050565b6000336103c185828561090f565b6103ee8585856040518060200160405280600081525060405180602001604052806000815250600061099b565b506001949350505050565b61040333866105c5565b6104285760405162461bcd60e51b815260040161041f906114b5565b60405180910390fd5b6104378585858585600161099b565b5050505050565b6001600160a01b03811633036104a25760405162461bcd60e51b8152602060048201526024808201527f4552433737373a20617574686f72697a696e672073656c66206173206f70657260448201526330ba37b960e11b606482015260840161041f565b6001600160a01b03811660009081526005602052604090205460ff16156104f3573360009081526007602090815260408083206001600160a01b03851684529091529020805460ff19169055610522565b3360009081526006602090815260408083206001600160a01b03851684529091529020805460ff191660011790555b60405133906001600160a01b038316907ff4caeb2d6ca8932a215a353d0703c326ec2d81fc68170f320eb2ab49e9df61f990600090a350565b6060600380546103219061147b565b6105883384848460405180602001604052806000815250600161099b565b505050565b60006105bc3384846040518060200160405280600081525060405180602001604052806000815250600061099b565b50600192915050565b6000816001600160a01b0316836001600160a01b0316148061063057506001600160a01b03831660009081526005602052604090205460ff16801561063057506001600160a01b0380831660009081526007602090815260408083209387168352929052205460ff16155b8061066057506001600160a01b0380831660009081526006602090815260408083209387168352929052205460ff165b9392505050565b336001600160a01b038216036106c95760405162461bcd60e51b815260206004820152602160248201527f4552433737373a207265766f6b696e672073656c66206173206f70657261746f6044820152603960f91b606482015260840161041f565b6001600160a01b03811660009081526005602052604090205460ff161561071d573360009081526007602090815260408083206001600160a01b03851684529091529020805460ff19166001179055610749565b3360009081526006602090815260408083206001600160a01b03851684529091529020805460ff191690555b60405133906001600160a01b038316907f50546e66e5f44d728365dc3908c63bc5cfeeab470722c1677e3073a6ac294aa190600090a350565b61078c33856105c5565b6107a85760405162461bcd60e51b815260040161041f906114b5565b6107b484848484610a97565b50505050565b6107d533838360405180602001604052806000815250610a97565b5050565b6001600160a01b03163b151590565b6001600160a01b03831661084c5760405162461bcd60e51b815260206004820152602560248201527f4552433737373a20617070726f76652066726f6d20746865207a65726f206164604482015264647265737360d81b606482015260840161041f565b6001600160a01b0382166108ae5760405162461bcd60e51b815260206004820152602360248201527f4552433737373a20617070726f766520746f20746865207a65726f206164647260448201526265737360e81b606482015260840161041f565b6001600160a01b0383811660008181526008602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b0383811660009081526008602090815260408083209386168352929052205460001981146107b4578181101561098e5760405162461bcd60e51b815260206004820152601e60248201527f4552433737373a20696e73756666696369656e7420616c6c6f77616e63650000604482015260640161041f565b6107b484848484036107e8565b6001600160a01b038616610a005760405162461bcd60e51b815260206004820152602660248201527f4552433737373a207472616e736665722066726f6d20746865207a65726f206160448201526564647265737360d01b606482015260840161041f565b6001600160a01b038516610a625760405162461bcd60e51b8152602060048201526024808201527f4552433737373a207472616e7366657220746f20746865207a65726f206164646044820152637265737360e01b606482015260840161041f565b33610a71818888888888610c4b565b610a7f818888888888610d72565b610a8e81888888888888610ed8565b50505050505050565b6001600160a01b038416610af85760405162461bcd60e51b815260206004820152602260248201527f4552433737373a206275726e2066726f6d20746865207a65726f206164647265604482015261737360f01b606482015260840161041f565b33610b0881866000878787610c4b565b6001600160a01b03851660009081526020819052604090205484811015610b7d5760405162461bcd60e51b815260206004820152602360248201527f4552433737373a206275726e20616d6f756e7420657863656564732062616c616044820152626e636560e81b606482015260840161041f565b6001600160a01b0386166000908152602081905260408120868303905560018054879290610bac908490611517565b92505081905550856001600160a01b0316826001600160a01b03167fa78a9be3a7b862d26933ad85fb11d80ef66b8f972d7cbba06621d583943a4098878787604051610bfa9392919061152e565b60405180910390a36040518581526000906001600160a01b038816907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a3505050505050565b60405163555ddc6560e11b81526001600160a01b03861660048201527f29ddb589b1fb5fc7cf394961c1adf5f8c6454761adf795e67fe149f658abe8956024820152600090731820a4b7618bde71dce8cdc73aab6c95905fad249063aabbb8ca90604401602060405180830381865afa158015610ccc573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610cf09190611563565b90506001600160a01b03811615610a8e57604051633ad5cbc160e11b81526001600160a01b038216906375ab978290610d37908a908a908a908a908a908a90600401611580565b600060405180830381600087803b158015610d5157600080fd5b505af1158015610d65573d6000803e3d6000fd5b5050505050505050505050565b6001600160a01b03851660009081526020819052604090205483811015610deb5760405162461bcd60e51b815260206004820152602760248201527f4552433737373a207472616e7366657220616d6f756e7420657863656564732060448201526662616c616e636560c81b606482015260840161041f565b6001600160a01b03808716600090815260208190526040808220878503905591871681529081208054869290610e229084906115da565b92505081905550846001600160a01b0316866001600160a01b0316886001600160a01b03167f06b541ddaa720db2b10a4d0cdac39b8d360425fc073085fac19bc82614677987878787604051610e7a9392919061152e565b60405180910390a4846001600160a01b0316866001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef86604051610ec791815260200190565b60405180910390a350505050505050565b60405163555ddc6560e11b81526001600160a01b03861660048201527fb281fc8c12954d22544db45de3159a39272895b169a852b314f9cc762e44c53b6024820152600090731820a4b7618bde71dce8cdc73aab6c95905fad249063aabbb8ca90604401602060405180830381865afa158015610f59573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f7d9190611563565b90506001600160a01b03811615610ff9576040516223de2960e01b81526001600160a01b038216906223de2990610fc2908b908b908b908b908b908b90600401611580565b600060405180830381600087803b158015610fdc57600080fd5b505af1158015610ff0573d6000803e3d6000fd5b50505050611093565b8115611093576001600160a01b0386163b156110935760405162461bcd60e51b815260206004820152604d60248201527f4552433737373a20746f6b656e20726563697069656e7420636f6e747261637460448201527f20686173206e6f20696d706c656d656e74657220666f7220455243373737546f60648201526c1ad95b9cd49958da5c1a595b9d609a1b608482015260a40161041f565b5050505050505050565b6020808252825182820181905260009190848201906040850190845b818110156110de5783516001600160a01b0316835292840192918401916001016110b9565b50909695505050505050565b6000815180845260005b81811015611110576020818501810151868301820152016110f4565b81811115611122576000602083870101525b50601f01601f19169290920160200192915050565b60208152600061066060208301846110ea565b6001600160a01b038116811461115f57600080fd5b50565b6000806040838503121561117557600080fd5b82356111808161114a565b946020939093013593505050565b6000806000606084860312156111a357600080fd5b83356111ae8161114a565b925060208401356111be8161114a565b929592945050506040919091013590565b634e487b7160e01b600052604160045260246000fd5b600082601f8301126111f657600080fd5b813567ffffffffffffffff80821115611211576112116111cf565b604051601f8301601f19908116603f01168101908282118183101715611239576112396111cf565b8160405283815286602085880101111561125257600080fd5b836020870160208301376000602085830101528094505050505092915050565b600080600080600060a0868803121561128a57600080fd5b85356112958161114a565b945060208601356112a58161114a565b935060408601359250606086013567ffffffffffffffff808211156112c957600080fd5b6112d589838a016111e5565b935060808801359150808211156112eb57600080fd5b506112f8888289016111e5565b9150509295509295909350565b60006020828403121561131757600080fd5b81356106608161114a565b60008060006060848603121561133757600080fd5b83356113428161114a565b925060208401359150604084013567ffffffffffffffff81111561136557600080fd5b611371868287016111e5565b9150509250925092565b6000806040838503121561138e57600080fd5b82356113998161114a565b915060208301356113a98161114a565b809150509250929050565b600080600080608085870312156113ca57600080fd5b84356113d58161114a565b935060208501359250604085013567ffffffffffffffff808211156113f957600080fd5b611405888389016111e5565b9350606087013591508082111561141b57600080fd5b50611428878288016111e5565b91505092959194509250565b6000806040838503121561144757600080fd5b82359150602083013567ffffffffffffffff81111561146557600080fd5b611471858286016111e5565b9150509250929050565b600181811c9082168061148f57607f821691505b6020821081036114af57634e487b7160e01b600052602260045260246000fd5b50919050565b6020808252602c908201527f4552433737373a2063616c6c6572206973206e6f7420616e206f70657261746f60408201526b39103337b9103437b63232b960a11b606082015260800190565b634e487b7160e01b600052601160045260246000fd5b60008282101561152957611529611501565b500390565b83815260606020820152600061154760608301856110ea565b828103604084015261155981856110ea565b9695505050505050565b60006020828403121561157557600080fd5b81516106608161114a565b6001600160a01b0387811682528681166020830152851660408201526060810184905260c0608082018190526000906115bb908301856110ea565b82810360a08401526115cd81856110ea565b9998505050505050505050565b600082198211156115ed576115ed611501565b50019056fea2646970667358221220cef610267830be9674d9c250b18a1c4398cd7518ce3f493e45edfe801b0f623064736f6c634300080d0033"; const isSuperArgs$t = (xs) => xs.length > 1; class ERC777PresetFixedSupply__factory extends ethers.ContractFactory { constructor(...args) { if (isSuperArgs$t(args)) { super(...args); } else { super(_abi$1K, _bytecode$t, args[0]); } } getDeployTransaction(name, symbol, defaultOperators, initialSupply, owner, overrides) { return super.getDeployTransaction( name, symbol, defaultOperators, initialSupply, owner, overrides || {} ); } deploy(name, symbol, defaultOperators, initialSupply, owner, overrides) { return super.deploy( name, symbol, defaultOperators, initialSupply, owner, overrides || {} ); } connect(runner) { return super.connect(runner); } static createInterface() { return new ethers.Interface(_abi$1K); } static connect(address, runner) { return new ethers.Contract( address, _abi$1K, runner ); } } __publicField$1K(ERC777PresetFixedSupply__factory, "bytecode", _bytecode$t); __publicField$1K(ERC777PresetFixedSupply__factory, "abi", _abi$1K); var __defProp$1J = Object.defineProperty; var __defNormalProp$1J = (obj, key, value) => key in obj ? __defProp$1J(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$1J = (obj, key, value) => { __defNormalProp$1J(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$1J = [ { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "payee", type: "address" }, { indexed: false, internalType: "uint256", name: "weiAmount", type: "uint256" } ], name: "Deposited", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "previousOwner", type: "address" }, { indexed: true, internalType: "address", name: "newOwner", type: "address" } ], name: "OwnershipTransferred", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "payee", type: "address" }, { indexed: false, internalType: "uint256", name: "weiAmount", type: "uint256" } ], name: "Withdrawn", type: "event" }, { inputs: [ { internalType: "address", name: "payee", type: "address" } ], name: "deposit", outputs: [], stateMutability: "payable", type: "function" }, { inputs: [ { internalType: "address", name: "payee", type: "address" } ], name: "depositsOf", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "owner", outputs: [ { internalType: "address", name: "", type: "address" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "renounceOwnership", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "newOwner", type: "address" } ], name: "transferOwnership", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address payable", name: "payee", type: "address" } ], name: "withdraw", outputs: [], stateMutability: "nonpayable", type: "function" } ]; const _bytecode$s = "0x608060405234801561001057600080fd5b5061001a3361001f565b61006f565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b61050d8061007e6000396000f3fe6080604052600436106100555760003560e01c806351cff8d91461005a578063715018a61461007c5780638da5cb5b14610091578063e3a9db1a146100be578063f2fde38b14610102578063f340fa0114610122575b600080fd5b34801561006657600080fd5b5061007a61007536600461048d565b610135565b005b34801561008857600080fd5b5061007a6101ac565b34801561009d57600080fd5b506000546040516001600160a01b0390911681526020015b60405180910390f35b3480156100ca57600080fd5b506100f46100d936600461048d565b6001600160a01b031660009081526001602052604090205490565b6040519081526020016100b5565b34801561010e57600080fd5b5061007a61011d36600461048d565b6101c0565b61007a61013036600461048d565b61023e565b61013d6102b0565b6001600160a01b0381166000818152600160205260408120805491905590610165908261030a565b816001600160a01b03167f7084f5476618d8e60b11ef0d7d3f06914655adb8793e28ff7f018d4c76d505d5826040516101a091815260200190565b60405180910390a25050565b6101b46102b0565b6101be6000610428565b565b6101c86102b0565b6001600160a01b0381166102325760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084015b60405180910390fd5b61023b81610428565b50565b6102466102b0565b6001600160a01b0381166000908152600160205260408120805434928392916102709084906104b1565b90915550506040518181526001600160a01b038316907f2da466a7b24304f47e87fa2e1e5a81b9831ce54fec19055ce277ca2f39ba42c4906020016101a0565b6000546001600160a01b031633146101be5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610229565b8047101561035a5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a20696e73756666696369656e742062616c616e63650000006044820152606401610229565b6000826001600160a01b03168260405160006040518083038185875af1925050503d80600081146103a7576040519150601f19603f3d011682016040523d82523d6000602084013e6103ac565b606091505b50509050806104235760405162461bcd60e51b815260206004820152603a60248201527f416464726573733a20756e61626c6520746f2073656e642076616c75652c207260448201527f6563697069656e74206d617920686176652072657665727465640000000000006064820152608401610229565b505050565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6001600160a01b038116811461023b57600080fd5b60006020828403121561049f57600080fd5b81356104aa81610478565b9392505050565b600082198211156104d257634e487b7160e01b600052601160045260246000fd5b50019056fea2646970667358221220dc6c34bc3335960c9e91e6de838a4426b5dd5d59951e1c89f8b6f5d95bf262a364736f6c634300080d0033"; const isSuperArgs$s = (xs) => xs.length > 1; class Escrow__factory extends ethers.ContractFactory { constructor(...args) { if (isSuperArgs$s(args)) { super(...args); } else { super(_abi$1J, _bytecode$s, args[0]); } } getDeployTransaction(overrides) { return super.getDeployTransaction(overrides || {}); } deploy(overrides) { return super.deploy(overrides || {}); } connect(runner) { return super.connect(runner); } static createInterface() { return new ethers.Interface(_abi$1J); } static connect(address, runner) { return new ethers.Contract(address, _abi$1J, runner); } } __publicField$1J(Escrow__factory, "bytecode", _bytecode$s); __publicField$1J(Escrow__factory, "abi", _abi$1J); var __defProp$1I = Object.defineProperty; var __defNormalProp$1I = (obj, key, value) => key in obj ? __defProp$1I(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$1I = (obj, key, value) => { __defNormalProp$1I(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$1I = [ { inputs: [], name: "Empty", type: "error" }, { inputs: [], name: "InvalidShortString", type: "error" }, { inputs: [ { internalType: "string", name: "str", type: "string" } ], name: "StringTooLong", type: "error" }, { anonymous: false, inputs: [], name: "EIP712DomainChanged", type: "event" }, { anonymous: false, inputs: [ { indexed: false, internalType: "uint256", name: "proposalId", type: "uint256" } ], name: "ProposalCanceled", type: "event" }, { anonymous: false, inputs: [ { indexed: false, internalType: "uint256", name: "proposalId", type: "uint256" }, { indexed: false, internalType: "address", name: "proposer", type: "address" }, { indexed: false, internalType: "address[]", name: "targets", type: "address[]" }, { indexed: false, internalType: "uint256[]", name: "values", type: "uint256[]" }, { indexed: false, internalType: "string[]", name: "signatures", type: "string[]" }, { indexed: false, internalType: "bytes[]", name: "calldatas", type: "bytes[]" }, { indexed: false, internalType: "uint256", name: "voteStart", type: "uint256" }, { indexed: false, internalType: "uint256", name: "voteEnd", type: "uint256" }, { indexed: false, internalType: "string", name: "description", type: "string" } ], name: "ProposalCreated", type: "event" }, { anonymous: false, inputs: [ { indexed: false, internalType: "uint256", name: "proposalId", type: "uint256" } ], name: "ProposalExecuted", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "voter", type: "address" }, { indexed: false, internalType: "uint256", name: "proposalId", type: "uint256" }, { indexed: false, internalType: "uint8", name: "support", type: "uint8" }, { indexed: false, internalType: "uint256", name: "weight", type: "uint256" }, { indexed: false, internalType: "string", name: "reason", type: "string" } ], name: "VoteCast", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "voter", type: "address" }, { indexed: false, internalType: "uint256", name: "proposalId", type: "uint256" }, { indexed: false, internalType: "uint8", name: "support", type: "uint8" }, { indexed: false, internalType: "uint256", name: "weight", type: "uint256" }, { indexed: false, internalType: "string", name: "reason", type: "string" }, { indexed: false, internalType: "bytes", name: "params", type: "bytes" } ], name: "VoteCastWithParams", type: "event" }, { inputs: [], name: "BALLOT_TYPEHASH", outputs: [ { internalType: "bytes32", name: "", type: "bytes32" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "CLOCK_MODE", outputs: [ { internalType: "string", name: "", type: "string" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "COUNTING_MODE", outputs: [ { internalType: "string", name: "", type: "string" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "EXTENDED_BALLOT_TYPEHASH", outputs: [ { internalType: "bytes32", name: "", type: "bytes32" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address[]", name: "targets", type: "address[]" }, { internalType: "uint256[]", name: "values", type: "uint256[]" }, { internalType: "bytes[]", name: "calldatas", type: "bytes[]" }, { internalType: "bytes32", name: "descriptionHash", type: "bytes32" } ], name: "cancel", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" }, { internalType: "uint8", name: "support", type: "uint8" } ], name: "castVote", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" }, { internalType: "uint8", name: "support", type: "uint8" }, { internalType: "uint8", name: "v", type: "uint8" }, { internalType: "bytes32", name: "r", type: "bytes32" }, { internalType: "bytes32", name: "s", type: "bytes32" } ], name: "castVoteBySig", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" }, { internalType: "uint8", name: "support", type: "uint8" }, { internalType: "string", name: "reason", type: "string" } ], name: "castVoteWithReason", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" }, { internalType: "uint8", name: "support", type: "uint8" }, { internalType: "string", name: "reason", type: "string" }, { internalType: "bytes", name: "params", type: "bytes" } ], name: "castVoteWithReasonAndParams", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" }, { internalType: "uint8", name: "support", type: "uint8" }, { internalType: "string", name: "reason", type: "string" }, { internalType: "bytes", name: "params", type: "bytes" }, { internalType: "uint8", name: "v", type: "uint8" }, { internalType: "bytes32", name: "r", type: "bytes32" }, { internalType: "bytes32", name: "s", type: "bytes32" } ], name: "castVoteWithReasonAndParamsBySig", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [], name: "clock", outputs: [ { internalType: "uint48", name: "", type: "uint48" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "eip712Domain", outputs: [ { internalType: "bytes1", name: "fields", type: "bytes1" }, { internalType: "string", name: "name", type: "string" }, { internalType: "string", name: "version", type: "string" }, { internalType: "uint256", name: "chainId", type: "uint256" }, { internalType: "address", name: "verifyingContract", type: "address" }, { internalType: "bytes32", name: "salt", type: "bytes32" }, { internalType: "uint256[]", name: "extensions", type: "uint256[]" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address[]", name: "targets", type: "address[]" }, { internalType: "uint256[]", name: "values", type: "uint256[]" }, { internalType: "bytes[]", name: "calldatas", type: "bytes[]" }, { internalType: "bytes32", name: "descriptionHash", type: "bytes32" } ], name: "execute", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "payable", type: "function" }, { inputs: [ { internalType: "address", name: "account", type: "address" }, { internalType: "uint256", name: "timepoint", type: "uint256" } ], name: "getVotes", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "account", type: "address" }, { internalType: "uint256", name: "timepoint", type: "uint256" }, { internalType: "bytes", name: "params", type: "bytes" } ], name: "getVotesWithParams", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" }, { internalType: "address", name: "account", type: "address" } ], name: "hasVoted", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address[]", name: "targets", type: "address[]" }, { internalType: "uint256[]", name: "values", type: "uint256[]" }, { internalType: "bytes[]", name: "calldatas", type: "bytes[]" }, { internalType: "bytes32", name: "descriptionHash", type: "bytes32" } ], name: "hashProposal", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "pure", type: "function" }, { inputs: [], name: "name", outputs: [ { internalType: "string", name: "", type: "string" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "", type: "address" }, { internalType: "address", name: "", type: "address" }, { internalType: "uint256[]", name: "", type: "uint256[]" }, { internalType: "uint256[]", name: "", type: "uint256[]" }, { internalType: "bytes", name: "", type: "bytes" } ], name: "onERC1155BatchReceived", outputs: [ { internalType: "bytes4", name: "", type: "bytes4" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "", type: "address" }, { internalType: "address", name: "", type: "address" }, { internalType: "uint256", name: "", type: "uint256" }, { internalType: "uint256", name: "", type: "uint256" }, { internalType: "bytes", name: "", type: "bytes" } ], name: "onERC1155Received", outputs: [ { internalType: "bytes4", name: "", type: "bytes4" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "", type: "address" }, { internalType: "address", name: "", type: "address" }, { internalType: "uint256", name: "", type: "uint256" }, { internalType: "bytes", name: "", type: "bytes" } ], name: "onERC721Received", outputs: [ { internalType: "bytes4", name: "", type: "bytes4" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" } ], name: "proposalDeadline", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" } ], name: "proposalProposer", outputs: [ { internalType: "address", name: "", type: "address" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" } ], name: "proposalSnapshot", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "proposalThreshold", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address[]", name: "targets", type: "address[]" }, { internalType: "uint256[]", name: "values", type: "uint256[]" }, { internalType: "bytes[]", name: "calldatas", type: "bytes[]" }, { internalType: "string", name: "description", type: "string" } ], name: "propose", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "uint256", name: "timepoint", type: "uint256" } ], name: "quorum", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "target", type: "address" }, { internalType: "uint256", name: "value", type: "uint256" }, { internalType: "bytes", name: "data", type: "bytes" } ], name: "relay", outputs: [], stateMutability: "payable", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" } ], name: "state", outputs: [ { internalType: "enum IGovernor.ProposalState", name: "", type: "uint8" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "bytes4", name: "interfaceId", type: "bytes4" } ], name: "supportsInterface", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "version", outputs: [ { internalType: "string", name: "", type: "string" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "votingDelay", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "votingPeriod", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { stateMutability: "payable", type: "receive" } ]; class Governor__factory { static createInterface() { return new ethers.Interface(_abi$1I); } static connect(address, runner) { return new ethers.Contract(address, _abi$1I, runner); } } __publicField$1I(Governor__factory, "abi", _abi$1I); var __defProp$1H = Object.defineProperty; var __defNormalProp$1H = (obj, key, value) => key in obj ? __defProp$1H(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$1H = (obj, key, value) => { __defNormalProp$1H(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$1H = [ { inputs: [], name: "Empty", type: "error" }, { inputs: [], name: "InvalidShortString", type: "error" }, { inputs: [ { internalType: "string", name: "str", type: "string" } ], name: "StringTooLong", type: "error" }, { anonymous: false, inputs: [], name: "EIP712DomainChanged", type: "event" }, { anonymous: false, inputs: [ { indexed: false, internalType: "uint256", name: "proposalId", type: "uint256" } ], name: "ProposalCanceled", type: "event" }, { anonymous: false, inputs: [ { indexed: false, internalType: "uint256", name: "proposalId", type: "uint256" }, { indexed: false, internalType: "address", name: "proposer", type: "address" }, { indexed: false, internalType: "address[]", name: "targets", type: "address[]" }, { indexed: false, internalType: "uint256[]", name: "values", type: "uint256[]" }, { indexed: false, internalType: "string[]", name: "signatures", type: "string[]" }, { indexed: false, internalType: "bytes[]", name: "calldatas", type: "bytes[]" }, { indexed: false, internalType: "uint256", name: "voteStart", type: "uint256" }, { indexed: false, internalType: "uint256", name: "voteEnd", type: "uint256" }, { indexed: false, internalType: "string", name: "description", type: "string" } ], name: "ProposalCreated", type: "event" }, { anonymous: false, inputs: [ { indexed: false, internalType: "uint256", name: "proposalId", type: "uint256" } ], name: "ProposalExecuted", type: "event" }, { anonymous: false, inputs: [ { indexed: false, internalType: "uint256", name: "proposalId", type: "uint256" }, { indexed: false, internalType: "uint256", name: "eta", type: "uint256" } ], name: "ProposalQueued", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "voter", type: "address" }, { indexed: false, internalType: "uint256", name: "proposalId", type: "uint256" }, { indexed: false, internalType: "uint8", name: "support", type: "uint8" }, { indexed: false, internalType: "uint256", name: "weight", type: "uint256" }, { indexed: false, internalType: "string", name: "reason", type: "string" } ], name: "VoteCast", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "voter", type: "address" }, { indexed: false, internalType: "uint256", name: "proposalId", type: "uint256" }, { indexed: false, internalType: "uint8", name: "support", type: "uint8" }, { indexed: false, internalType: "uint256", name: "weight", type: "uint256" }, { indexed: false, internalType: "string", name: "reason", type: "string" }, { indexed: false, internalType: "bytes", name: "params", type: "bytes" } ], name: "VoteCastWithParams", type: "event" }, { inputs: [], name: "BALLOT_TYPEHASH", outputs: [ { internalType: "bytes32", name: "", type: "bytes32" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "CLOCK_MODE", outputs: [ { internalType: "string", name: "", type: "string" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "COUNTING_MODE", outputs: [ { internalType: "string", name: "", type: "string" } ], stateMutability: "pure", type: "function" }, { inputs: [], name: "EXTENDED_BALLOT_TYPEHASH", outputs: [ { internalType: "bytes32", name: "", type: "bytes32" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" } ], name: "cancel", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address[]", name: "targets", type: "address[]" }, { internalType: "uint256[]", name: "values", type: "uint256[]" }, { internalType: "bytes[]", name: "calldatas", type: "bytes[]" }, { internalType: "bytes32", name: "descriptionHash", type: "bytes32" } ], name: "cancel", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" }, { internalType: "uint8", name: "support", type: "uint8" } ], name: "castVote", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" }, { internalType: "uint8", name: "support", type: "uint8" }, { internalType: "uint8", name: "v", type: "uint8" }, { internalType: "bytes32", name: "r", type: "bytes32" }, { internalType: "bytes32", name: "s", type: "bytes32" } ], name: "castVoteBySig", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" }, { internalType: "uint8", name: "support", type: "uint8" }, { internalType: "string", name: "reason", type: "string" } ], name: "castVoteWithReason", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" }, { internalType: "uint8", name: "support", type: "uint8" }, { internalType: "string", name: "reason", type: "string" }, { internalType: "bytes", name: "params", type: "bytes" } ], name: "castVoteWithReasonAndParams", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" }, { internalType: "uint8", name: "support", type: "uint8" }, { internalType: "string", name: "reason", type: "string" }, { internalType: "bytes", name: "params", type: "bytes" }, { internalType: "uint8", name: "v", type: "uint8" }, { internalType: "bytes32", name: "r", type: "bytes32" }, { internalType: "bytes32", name: "s", type: "bytes32" } ], name: "castVoteWithReasonAndParamsBySig", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [], name: "clock", outputs: [ { internalType: "uint48", name: "", type: "uint48" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "eip712Domain", outputs: [ { internalType: "bytes1", name: "fields", type: "bytes1" }, { internalType: "string", name: "name", type: "string" }, { internalType: "string", name: "version", type: "string" }, { internalType: "uint256", name: "chainId", type: "uint256" }, { internalType: "address", name: "verifyingContract", type: "address" }, { internalType: "bytes32", name: "salt", type: "bytes32" }, { internalType: "uint256[]", name: "extensions", type: "uint256[]" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address[]", name: "targets", type: "address[]" }, { internalType: "uint256[]", name: "values", type: "uint256[]" }, { internalType: "bytes[]", name: "calldatas", type: "bytes[]" }, { internalType: "bytes32", name: "descriptionHash", type: "bytes32" } ], name: "execute", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "payable", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" } ], name: "execute", outputs: [], stateMutability: "payable", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" } ], name: "getActions", outputs: [ { internalType: "address[]", name: "targets", type: "address[]" }, { internalType: "uint256[]", name: "values", type: "uint256[]" }, { internalType: "string[]", name: "signatures", type: "string[]" }, { internalType: "bytes[]", name: "calldatas", type: "bytes[]" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" }, { internalType: "address", name: "voter", type: "address" } ], name: "getReceipt", outputs: [ { components: [ { internalType: "bool", name: "hasVoted", type: "bool" }, { internalType: "uint8", name: "support", type: "uint8" }, { internalType: "uint96", name: "votes", type: "uint96" } ], internalType: "struct IGovernorCompatibilityBravo.Receipt", name: "", type: "tuple" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "account", type: "address" }, { internalType: "uint256", name: "timepoint", type: "uint256" } ], name: "getVotes", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "account", type: "address" }, { internalType: "uint256", name: "timepoint", type: "uint256" }, { internalType: "bytes", name: "params", type: "bytes" } ], name: "getVotesWithParams", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" }, { internalType: "address", name: "account", type: "address" } ], name: "hasVoted", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address[]", name: "targets", type: "address[]" }, { internalType: "uint256[]", name: "values", type: "uint256[]" }, { internalType: "bytes[]", name: "calldatas", type: "bytes[]" }, { internalType: "bytes32", name: "descriptionHash", type: "bytes32" } ], name: "hashProposal", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "pure", type: "function" }, { inputs: [], name: "name", outputs: [ { internalType: "string", name: "", type: "string" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "", type: "address" }, { internalType: "address", name: "", type: "address" }, { internalType: "uint256[]", name: "", type: "uint256[]" }, { internalType: "uint256[]", name: "", type: "uint256[]" }, { internalType: "bytes", name: "", type: "bytes" } ], name: "onERC1155BatchReceived", outputs: [ { internalType: "bytes4", name: "", type: "bytes4" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "", type: "address" }, { internalType: "address", name: "", type: "address" }, { internalType: "uint256", name: "", type: "uint256" }, { internalType: "uint256", name: "", type: "uint256" }, { internalType: "bytes", name: "", type: "bytes" } ], name: "onERC1155Received", outputs: [ { internalType: "bytes4", name: "", type: "bytes4" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "", type: "address" }, { internalType: "address", name: "", type: "address" }, { internalType: "uint256", name: "", type: "uint256" }, { internalType: "bytes", name: "", type: "bytes" } ], name: "onERC721Received", outputs: [ { internalType: "bytes4", name: "", type: "bytes4" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" } ], name: "proposalDeadline", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" } ], name: "proposalEta", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" } ], name: "proposalProposer", outputs: [ { internalType: "address", name: "", type: "address" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" } ], name: "proposalSnapshot", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "proposalThreshold", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" } ], name: "proposals", outputs: [ { internalType: "uint256", name: "id", type: "uint256" }, { internalType: "address", name: "proposer", type: "address" }, { internalType: "uint256", name: "eta", type: "uint256" }, { internalType: "uint256", name: "startBlock", type: "uint256" }, { internalType: "uint256", name: "endBlock", type: "uint256" }, { internalType: "uint256", name: "forVotes", type: "uint256" }, { internalType: "uint256", name: "againstVotes", type: "uint256" }, { internalType: "uint256", name: "abstainVotes", type: "uint256" }, { internalType: "bool", name: "canceled", type: "bool" }, { internalType: "bool", name: "executed", type: "bool" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address[]", name: "targets", type: "address[]" }, { internalType: "uint256[]", name: "values", type: "uint256[]" }, { internalType: "bytes[]", name: "calldatas", type: "bytes[]" }, { internalType: "string", name: "description", type: "string" } ], name: "propose", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address[]", name: "targets", type: "address[]" }, { internalType: "uint256[]", name: "values", type: "uint256[]" }, { internalType: "string[]", name: "signatures", type: "string[]" }, { internalType: "bytes[]", name: "calldatas", type: "bytes[]" }, { internalType: "string", name: "description", type: "string" } ], name: "propose", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address[]", name: "targets", type: "address[]" }, { internalType: "uint256[]", name: "values", type: "uint256[]" }, { internalType: "bytes[]", name: "calldatas", type: "bytes[]" }, { internalType: "bytes32", name: "descriptionHash", type: "bytes32" } ], name: "queue", outputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" } ], name: "queue", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "uint256", name: "timepoint", type: "uint256" } ], name: "quorum", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "quorumVotes", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "target", type: "address" }, { internalType: "uint256", name: "value", type: "uint256" }, { internalType: "bytes", name: "data", type: "bytes" } ], name: "relay", outputs: [], stateMutability: "payable", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" } ], name: "state", outputs: [ { internalType: "enum IGovernor.ProposalState", name: "", type: "uint8" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "bytes4", name: "interfaceId", type: "bytes4" } ], name: "supportsInterface", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "timelock", outputs: [ { internalType: "address", name: "", type: "address" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "version", outputs: [ { internalType: "string", name: "", type: "string" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "votingDelay", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "votingPeriod", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { stateMutability: "payable", type: "receive" } ]; class GovernorCompatibilityBravo__factory { static createInterface() { return new ethers.Interface(_abi$1H); } static connect(address, runner) { return new ethers.Contract( address, _abi$1H, runner ); } } __publicField$1H(GovernorCompatibilityBravo__factory, "abi", _abi$1H); var __defProp$1G = Object.defineProperty; var __defNormalProp$1G = (obj, key, value) => key in obj ? __defProp$1G(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$1G = (obj, key, value) => { __defNormalProp$1G(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$1G = [ { inputs: [], name: "Empty", type: "error" }, { inputs: [], name: "InvalidShortString", type: "error" }, { inputs: [ { internalType: "string", name: "str", type: "string" } ], name: "StringTooLong", type: "error" }, { anonymous: false, inputs: [], name: "EIP712DomainChanged", type: "event" }, { anonymous: false, inputs: [ { indexed: false, internalType: "uint256", name: "proposalId", type: "uint256" } ], name: "ProposalCanceled", type: "event" }, { anonymous: false, inputs: [ { indexed: false, internalType: "uint256", name: "proposalId", type: "uint256" }, { indexed: false, internalType: "address", name: "proposer", type: "address" }, { indexed: false, internalType: "address[]", name: "targets", type: "address[]" }, { indexed: false, internalType: "uint256[]", name: "values", type: "uint256[]" }, { indexed: false, internalType: "string[]", name: "signatures", type: "string[]" }, { indexed: false, internalType: "bytes[]", name: "calldatas", type: "bytes[]" }, { indexed: false, internalType: "uint256", name: "voteStart", type: "uint256" }, { indexed: false, internalType: "uint256", name: "voteEnd", type: "uint256" }, { indexed: false, internalType: "string", name: "description", type: "string" } ], name: "ProposalCreated", type: "event" }, { anonymous: false, inputs: [ { indexed: false, internalType: "uint256", name: "proposalId", type: "uint256" } ], name: "ProposalExecuted", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "voter", type: "address" }, { indexed: false, internalType: "uint256", name: "proposalId", type: "uint256" }, { indexed: false, internalType: "uint8", name: "support", type: "uint8" }, { indexed: false, internalType: "uint256", name: "weight", type: "uint256" }, { indexed: false, internalType: "string", name: "reason", type: "string" } ], name: "VoteCast", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "voter", type: "address" }, { indexed: false, internalType: "uint256", name: "proposalId", type: "uint256" }, { indexed: false, internalType: "uint8", name: "support", type: "uint8" }, { indexed: false, internalType: "uint256", name: "weight", type: "uint256" }, { indexed: false, internalType: "string", name: "reason", type: "string" }, { indexed: false, internalType: "bytes", name: "params", type: "bytes" } ], name: "VoteCastWithParams", type: "event" }, { inputs: [], name: "BALLOT_TYPEHASH", outputs: [ { internalType: "bytes32", name: "", type: "bytes32" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "CLOCK_MODE", outputs: [ { internalType: "string", name: "", type: "string" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "COUNTING_MODE", outputs: [ { internalType: "string", name: "", type: "string" } ], stateMutability: "pure", type: "function" }, { inputs: [], name: "EXTENDED_BALLOT_TYPEHASH", outputs: [ { internalType: "bytes32", name: "", type: "bytes32" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address[]", name: "targets", type: "address[]" }, { internalType: "uint256[]", name: "values", type: "uint256[]" }, { internalType: "bytes[]", name: "calldatas", type: "bytes[]" }, { internalType: "bytes32", name: "descriptionHash", type: "bytes32" } ], name: "cancel", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" }, { internalType: "uint8", name: "support", type: "uint8" } ], name: "castVote", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" }, { internalType: "uint8", name: "support", type: "uint8" }, { internalType: "uint8", name: "v", type: "uint8" }, { internalType: "bytes32", name: "r", type: "bytes32" }, { internalType: "bytes32", name: "s", type: "bytes32" } ], name: "castVoteBySig", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" }, { internalType: "uint8", name: "support", type: "uint8" }, { internalType: "string", name: "reason", type: "string" } ], name: "castVoteWithReason", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" }, { internalType: "uint8", name: "support", type: "uint8" }, { internalType: "string", name: "reason", type: "string" }, { internalType: "bytes", name: "params", type: "bytes" } ], name: "castVoteWithReasonAndParams", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" }, { internalType: "uint8", name: "support", type: "uint8" }, { internalType: "string", name: "reason", type: "string" }, { internalType: "bytes", name: "params", type: "bytes" }, { internalType: "uint8", name: "v", type: "uint8" }, { internalType: "bytes32", name: "r", type: "bytes32" }, { internalType: "bytes32", name: "s", type: "bytes32" } ], name: "castVoteWithReasonAndParamsBySig", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [], name: "clock", outputs: [ { internalType: "uint48", name: "", type: "uint48" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "eip712Domain", outputs: [ { internalType: "bytes1", name: "fields", type: "bytes1" }, { internalType: "string", name: "name", type: "string" }, { internalType: "string", name: "version", type: "string" }, { internalType: "uint256", name: "chainId", type: "uint256" }, { internalType: "address", name: "verifyingContract", type: "address" }, { internalType: "bytes32", name: "salt", type: "bytes32" }, { internalType: "uint256[]", name: "extensions", type: "uint256[]" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address[]", name: "targets", type: "address[]" }, { internalType: "uint256[]", name: "values", type: "uint256[]" }, { internalType: "bytes[]", name: "calldatas", type: "bytes[]" }, { internalType: "bytes32", name: "descriptionHash", type: "bytes32" } ], name: "execute", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "payable", type: "function" }, { inputs: [ { internalType: "address", name: "account", type: "address" }, { internalType: "uint256", name: "timepoint", type: "uint256" } ], name: "getVotes", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "account", type: "address" }, { internalType: "uint256", name: "timepoint", type: "uint256" }, { internalType: "bytes", name: "params", type: "bytes" } ], name: "getVotesWithParams", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" }, { internalType: "address", name: "account", type: "address" } ], name: "hasVoted", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address[]", name: "targets", type: "address[]" }, { internalType: "uint256[]", name: "values", type: "uint256[]" }, { internalType: "bytes[]", name: "calldatas", type: "bytes[]" }, { internalType: "bytes32", name: "descriptionHash", type: "bytes32" } ], name: "hashProposal", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "pure", type: "function" }, { inputs: [], name: "name", outputs: [ { internalType: "string", name: "", type: "string" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "", type: "address" }, { internalType: "address", name: "", type: "address" }, { internalType: "uint256[]", name: "", type: "uint256[]" }, { internalType: "uint256[]", name: "", type: "uint256[]" }, { internalType: "bytes", name: "", type: "bytes" } ], name: "onERC1155BatchReceived", outputs: [ { internalType: "bytes4", name: "", type: "bytes4" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "", type: "address" }, { internalType: "address", name: "", type: "address" }, { internalType: "uint256", name: "", type: "uint256" }, { internalType: "uint256", name: "", type: "uint256" }, { internalType: "bytes", name: "", type: "bytes" } ], name: "onERC1155Received", outputs: [ { internalType: "bytes4", name: "", type: "bytes4" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "", type: "address" }, { internalType: "address", name: "", type: "address" }, { internalType: "uint256", name: "", type: "uint256" }, { internalType: "bytes", name: "", type: "bytes" } ], name: "onERC721Received", outputs: [ { internalType: "bytes4", name: "", type: "bytes4" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" } ], name: "proposalDeadline", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" } ], name: "proposalProposer", outputs: [ { internalType: "address", name: "", type: "address" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" } ], name: "proposalSnapshot", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "proposalThreshold", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" } ], name: "proposalVotes", outputs: [ { internalType: "uint256", name: "againstVotes", type: "uint256" }, { internalType: "uint256", name: "forVotes", type: "uint256" }, { internalType: "uint256", name: "abstainVotes", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address[]", name: "targets", type: "address[]" }, { internalType: "uint256[]", name: "values", type: "uint256[]" }, { internalType: "bytes[]", name: "calldatas", type: "bytes[]" }, { internalType: "string", name: "description", type: "string" } ], name: "propose", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "uint256", name: "timepoint", type: "uint256" } ], name: "quorum", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "target", type: "address" }, { internalType: "uint256", name: "value", type: "uint256" }, { internalType: "bytes", name: "data", type: "bytes" } ], name: "relay", outputs: [], stateMutability: "payable", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" } ], name: "state", outputs: [ { internalType: "enum IGovernor.ProposalState", name: "", type: "uint8" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "bytes4", name: "interfaceId", type: "bytes4" } ], name: "supportsInterface", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "version", outputs: [ { internalType: "string", name: "", type: "string" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "votingDelay", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "votingPeriod", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { stateMutability: "payable", type: "receive" } ]; class GovernorCountingSimple__factory { static createInterface() { return new ethers.Interface(_abi$1G); } static connect(address, runner) { return new ethers.Contract( address, _abi$1G, runner ); } } __publicField$1G(GovernorCountingSimple__factory, "abi", _abi$1G); var __defProp$1F = Object.defineProperty; var __defNormalProp$1F = (obj, key, value) => key in obj ? __defProp$1F(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$1F = (obj, key, value) => { __defNormalProp$1F(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$1F = [ { inputs: [], name: "Empty", type: "error" }, { inputs: [], name: "InvalidShortString", type: "error" }, { inputs: [ { internalType: "string", name: "str", type: "string" } ], name: "StringTooLong", type: "error" }, { anonymous: false, inputs: [], name: "EIP712DomainChanged", type: "event" }, { anonymous: false, inputs: [ { indexed: false, internalType: "uint64", name: "oldVoteExtension", type: "uint64" }, { indexed: false, internalType: "uint64", name: "newVoteExtension", type: "uint64" } ], name: "LateQuorumVoteExtensionSet", type: "event" }, { anonymous: false, inputs: [ { indexed: false, internalType: "uint256", name: "proposalId", type: "uint256" } ], name: "ProposalCanceled", type: "event" }, { anonymous: false, inputs: [ { indexed: false, internalType: "uint256", name: "proposalId", type: "uint256" }, { indexed: false, internalType: "address", name: "proposer", type: "address" }, { indexed: false, internalType: "address[]", name: "targets", type: "address[]" }, { indexed: false, internalType: "uint256[]", name: "values", type: "uint256[]" }, { indexed: false, internalType: "string[]", name: "signatures", type: "string[]" }, { indexed: false, internalType: "bytes[]", name: "calldatas", type: "bytes[]" }, { indexed: false, internalType: "uint256", name: "voteStart", type: "uint256" }, { indexed: false, internalType: "uint256", name: "voteEnd", type: "uint256" }, { indexed: false, internalType: "string", name: "description", type: "string" } ], name: "ProposalCreated", type: "event" }, { anonymous: false, inputs: [ { indexed: false, internalType: "uint256", name: "proposalId", type: "uint256" } ], name: "ProposalExecuted", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "uint256", name: "proposalId", type: "uint256" }, { indexed: false, internalType: "uint64", name: "extendedDeadline", type: "uint64" } ], name: "ProposalExtended", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "voter", type: "address" }, { indexed: false, internalType: "uint256", name: "proposalId", type: "uint256" }, { indexed: false, internalType: "uint8", name: "support", type: "uint8" }, { indexed: false, internalType: "uint256", name: "weight", type: "uint256" }, { indexed: false, internalType: "string", name: "reason", type: "string" } ], name: "VoteCast", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "voter", type: "address" }, { indexed: false, internalType: "uint256", name: "proposalId", type: "uint256" }, { indexed: false, internalType: "uint8", name: "support", type: "uint8" }, { indexed: false, internalType: "uint256", name: "weight", type: "uint256" }, { indexed: false, internalType: "string", name: "reason", type: "string" }, { indexed: false, internalType: "bytes", name: "params", type: "bytes" } ], name: "VoteCastWithParams", type: "event" }, { inputs: [], name: "BALLOT_TYPEHASH", outputs: [ { internalType: "bytes32", name: "", type: "bytes32" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "CLOCK_MODE", outputs: [ { internalType: "string", name: "", type: "string" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "COUNTING_MODE", outputs: [ { internalType: "string", name: "", type: "string" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "EXTENDED_BALLOT_TYPEHASH", outputs: [ { internalType: "bytes32", name: "", type: "bytes32" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address[]", name: "targets", type: "address[]" }, { internalType: "uint256[]", name: "values", type: "uint256[]" }, { internalType: "bytes[]", name: "calldatas", type: "bytes[]" }, { internalType: "bytes32", name: "descriptionHash", type: "bytes32" } ], name: "cancel", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" }, { internalType: "uint8", name: "support", type: "uint8" } ], name: "castVote", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" }, { internalType: "uint8", name: "support", type: "uint8" }, { internalType: "uint8", name: "v", type: "uint8" }, { internalType: "bytes32", name: "r", type: "bytes32" }, { internalType: "bytes32", name: "s", type: "bytes32" } ], name: "castVoteBySig", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" }, { internalType: "uint8", name: "support", type: "uint8" }, { internalType: "string", name: "reason", type: "string" } ], name: "castVoteWithReason", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" }, { internalType: "uint8", name: "support", type: "uint8" }, { internalType: "string", name: "reason", type: "string" }, { internalType: "bytes", name: "params", type: "bytes" } ], name: "castVoteWithReasonAndParams", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" }, { internalType: "uint8", name: "support", type: "uint8" }, { internalType: "string", name: "reason", type: "string" }, { internalType: "bytes", name: "params", type: "bytes" }, { internalType: "uint8", name: "v", type: "uint8" }, { internalType: "bytes32", name: "r", type: "bytes32" }, { internalType: "bytes32", name: "s", type: "bytes32" } ], name: "castVoteWithReasonAndParamsBySig", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [], name: "clock", outputs: [ { internalType: "uint48", name: "", type: "uint48" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "eip712Domain", outputs: [ { internalType: "bytes1", name: "fields", type: "bytes1" }, { internalType: "string", name: "name", type: "string" }, { internalType: "string", name: "version", type: "string" }, { internalType: "uint256", name: "chainId", type: "uint256" }, { internalType: "address", name: "verifyingContract", type: "address" }, { internalType: "bytes32", name: "salt", type: "bytes32" }, { internalType: "uint256[]", name: "extensions", type: "uint256[]" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address[]", name: "targets", type: "address[]" }, { internalType: "uint256[]", name: "values", type: "uint256[]" }, { internalType: "bytes[]", name: "calldatas", type: "bytes[]" }, { internalType: "bytes32", name: "descriptionHash", type: "bytes32" } ], name: "execute", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "payable", type: "function" }, { inputs: [ { internalType: "address", name: "account", type: "address" }, { internalType: "uint256", name: "timepoint", type: "uint256" } ], name: "getVotes", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "account", type: "address" }, { internalType: "uint256", name: "timepoint", type: "uint256" }, { internalType: "bytes", name: "params", type: "bytes" } ], name: "getVotesWithParams", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" }, { internalType: "address", name: "account", type: "address" } ], name: "hasVoted", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address[]", name: "targets", type: "address[]" }, { internalType: "uint256[]", name: "values", type: "uint256[]" }, { internalType: "bytes[]", name: "calldatas", type: "bytes[]" }, { internalType: "bytes32", name: "descriptionHash", type: "bytes32" } ], name: "hashProposal", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "pure", type: "function" }, { inputs: [], name: "lateQuorumVoteExtension", outputs: [ { internalType: "uint64", name: "", type: "uint64" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "name", outputs: [ { internalType: "string", name: "", type: "string" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "", type: "address" }, { internalType: "address", name: "", type: "address" }, { internalType: "uint256[]", name: "", type: "uint256[]" }, { internalType: "uint256[]", name: "", type: "uint256[]" }, { internalType: "bytes", name: "", type: "bytes" } ], name: "onERC1155BatchReceived", outputs: [ { internalType: "bytes4", name: "", type: "bytes4" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "", type: "address" }, { internalType: "address", name: "", type: "address" }, { internalType: "uint256", name: "", type: "uint256" }, { internalType: "uint256", name: "", type: "uint256" }, { internalType: "bytes", name: "", type: "bytes" } ], name: "onERC1155Received", outputs: [ { internalType: "bytes4", name: "", type: "bytes4" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "", type: "address" }, { internalType: "address", name: "", type: "address" }, { internalType: "uint256", name: "", type: "uint256" }, { internalType: "bytes", name: "", type: "bytes" } ], name: "onERC721Received", outputs: [ { internalType: "bytes4", name: "", type: "bytes4" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" } ], name: "proposalDeadline", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" } ], name: "proposalProposer", outputs: [ { internalType: "address", name: "", type: "address" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" } ], name: "proposalSnapshot", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "proposalThreshold", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address[]", name: "targets", type: "address[]" }, { internalType: "uint256[]", name: "values", type: "uint256[]" }, { internalType: "bytes[]", name: "calldatas", type: "bytes[]" }, { internalType: "string", name: "description", type: "string" } ], name: "propose", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "uint256", name: "timepoint", type: "uint256" } ], name: "quorum", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "target", type: "address" }, { internalType: "uint256", name: "value", type: "uint256" }, { internalType: "bytes", name: "data", type: "bytes" } ], name: "relay", outputs: [], stateMutability: "payable", type: "function" }, { inputs: [ { internalType: "uint64", name: "newVoteExtension", type: "uint64" } ], name: "setLateQuorumVoteExtension", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" } ], name: "state", outputs: [ { internalType: "enum IGovernor.ProposalState", name: "", type: "uint8" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "bytes4", name: "interfaceId", type: "bytes4" } ], name: "supportsInterface", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "version", outputs: [ { internalType: "string", name: "", type: "string" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "votingDelay", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "votingPeriod", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { stateMutability: "payable", type: "receive" } ]; class GovernorPreventLateQuorum__factory { static createInterface() { return new ethers.Interface(_abi$1F); } static connect(address, runner) { return new ethers.Contract( address, _abi$1F, runner ); } } __publicField$1F(GovernorPreventLateQuorum__factory, "abi", _abi$1F); var __defProp$1E = Object.defineProperty; var __defNormalProp$1E = (obj, key, value) => key in obj ? __defProp$1E(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$1E = (obj, key, value) => { __defNormalProp$1E(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$1E = [ { inputs: [], name: "Empty", type: "error" }, { inputs: [], name: "InvalidShortString", type: "error" }, { inputs: [ { internalType: "string", name: "str", type: "string" } ], name: "StringTooLong", type: "error" }, { anonymous: false, inputs: [], name: "EIP712DomainChanged", type: "event" }, { anonymous: false, inputs: [ { indexed: false, internalType: "uint256", name: "proposalId", type: "uint256" } ], name: "ProposalCanceled", type: "event" }, { anonymous: false, inputs: [ { indexed: false, internalType: "uint256", name: "proposalId", type: "uint256" }, { indexed: false, internalType: "address", name: "proposer", type: "address" }, { indexed: false, internalType: "address[]", name: "targets", type: "address[]" }, { indexed: false, internalType: "uint256[]", name: "values", type: "uint256[]" }, { indexed: false, internalType: "string[]", name: "signatures", type: "string[]" }, { indexed: false, internalType: "bytes[]", name: "calldatas", type: "bytes[]" }, { indexed: false, internalType: "uint256", name: "voteStart", type: "uint256" }, { indexed: false, internalType: "uint256", name: "voteEnd", type: "uint256" }, { indexed: false, internalType: "string", name: "description", type: "string" } ], name: "ProposalCreated", type: "event" }, { anonymous: false, inputs: [ { indexed: false, internalType: "uint256", name: "proposalId", type: "uint256" } ], name: "ProposalExecuted", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "voter", type: "address" }, { indexed: false, internalType: "uint256", name: "proposalId", type: "uint256" }, { indexed: false, internalType: "uint8", name: "support", type: "uint8" }, { indexed: false, internalType: "uint256", name: "weight", type: "uint256" }, { indexed: false, internalType: "string", name: "reason", type: "string" } ], name: "VoteCast", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "voter", type: "address" }, { indexed: false, internalType: "uint256", name: "proposalId", type: "uint256" }, { indexed: false, internalType: "uint8", name: "support", type: "uint8" }, { indexed: false, internalType: "uint256", name: "weight", type: "uint256" }, { indexed: false, internalType: "string", name: "reason", type: "string" }, { indexed: false, internalType: "bytes", name: "params", type: "bytes" } ], name: "VoteCastWithParams", type: "event" }, { inputs: [], name: "BALLOT_TYPEHASH", outputs: [ { internalType: "bytes32", name: "", type: "bytes32" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "CLOCK_MODE", outputs: [ { internalType: "string", name: "", type: "string" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "COUNTING_MODE", outputs: [ { internalType: "string", name: "", type: "string" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "EXTENDED_BALLOT_TYPEHASH", outputs: [ { internalType: "bytes32", name: "", type: "bytes32" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address[]", name: "targets", type: "address[]" }, { internalType: "uint256[]", name: "values", type: "uint256[]" }, { internalType: "bytes[]", name: "calldatas", type: "bytes[]" }, { internalType: "bytes32", name: "descriptionHash", type: "bytes32" } ], name: "cancel", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" }, { internalType: "uint8", name: "support", type: "uint8" } ], name: "castVote", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" }, { internalType: "uint8", name: "support", type: "uint8" }, { internalType: "uint8", name: "v", type: "uint8" }, { internalType: "bytes32", name: "r", type: "bytes32" }, { internalType: "bytes32", name: "s", type: "bytes32" } ], name: "castVoteBySig", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" }, { internalType: "uint8", name: "support", type: "uint8" }, { internalType: "string", name: "reason", type: "string" } ], name: "castVoteWithReason", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" }, { internalType: "uint8", name: "support", type: "uint8" }, { internalType: "string", name: "reason", type: "string" }, { internalType: "bytes", name: "params", type: "bytes" } ], name: "castVoteWithReasonAndParams", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" }, { internalType: "uint8", name: "support", type: "uint8" }, { internalType: "string", name: "reason", type: "string" }, { internalType: "bytes", name: "params", type: "bytes" }, { internalType: "uint8", name: "v", type: "uint8" }, { internalType: "bytes32", name: "r", type: "bytes32" }, { internalType: "bytes32", name: "s", type: "bytes32" } ], name: "castVoteWithReasonAndParamsBySig", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [], name: "clock", outputs: [ { internalType: "uint48", name: "", type: "uint48" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "eip712Domain", outputs: [ { internalType: "bytes1", name: "fields", type: "bytes1" }, { internalType: "string", name: "name", type: "string" }, { internalType: "string", name: "version", type: "string" }, { internalType: "uint256", name: "chainId", type: "uint256" }, { internalType: "address", name: "verifyingContract", type: "address" }, { internalType: "bytes32", name: "salt", type: "bytes32" }, { internalType: "uint256[]", name: "extensions", type: "uint256[]" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address[]", name: "targets", type: "address[]" }, { internalType: "uint256[]", name: "values", type: "uint256[]" }, { internalType: "bytes[]", name: "calldatas", type: "bytes[]" }, { internalType: "bytes32", name: "descriptionHash", type: "bytes32" } ], name: "execute", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "payable", type: "function" }, { inputs: [ { internalType: "address", name: "account", type: "address" }, { internalType: "uint256", name: "timepoint", type: "uint256" } ], name: "getVotes", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "account", type: "address" }, { internalType: "uint256", name: "timepoint", type: "uint256" }, { internalType: "bytes", name: "params", type: "bytes" } ], name: "getVotesWithParams", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" }, { internalType: "address", name: "account", type: "address" } ], name: "hasVoted", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address[]", name: "targets", type: "address[]" }, { internalType: "uint256[]", name: "values", type: "uint256[]" }, { internalType: "bytes[]", name: "calldatas", type: "bytes[]" }, { internalType: "bytes32", name: "descriptionHash", type: "bytes32" } ], name: "hashProposal", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "pure", type: "function" }, { inputs: [], name: "name", outputs: [ { internalType: "string", name: "", type: "string" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "", type: "address" }, { internalType: "address", name: "", type: "address" }, { internalType: "uint256[]", name: "", type: "uint256[]" }, { internalType: "uint256[]", name: "", type: "uint256[]" }, { internalType: "bytes", name: "", type: "bytes" } ], name: "onERC1155BatchReceived", outputs: [ { internalType: "bytes4", name: "", type: "bytes4" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "", type: "address" }, { internalType: "address", name: "", type: "address" }, { internalType: "uint256", name: "", type: "uint256" }, { internalType: "uint256", name: "", type: "uint256" }, { internalType: "bytes", name: "", type: "bytes" } ], name: "onERC1155Received", outputs: [ { internalType: "bytes4", name: "", type: "bytes4" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "", type: "address" }, { internalType: "address", name: "", type: "address" }, { internalType: "uint256", name: "", type: "uint256" }, { internalType: "bytes", name: "", type: "bytes" } ], name: "onERC721Received", outputs: [ { internalType: "bytes4", name: "", type: "bytes4" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" } ], name: "proposalDeadline", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" } ], name: "proposalProposer", outputs: [ { internalType: "address", name: "", type: "address" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" } ], name: "proposalSnapshot", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "proposalThreshold", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address[]", name: "targets", type: "address[]" }, { internalType: "uint256[]", name: "values", type: "uint256[]" }, { internalType: "bytes[]", name: "calldatas", type: "bytes[]" }, { internalType: "string", name: "description", type: "string" } ], name: "propose", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "uint256", name: "timepoint", type: "uint256" } ], name: "quorum", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "target", type: "address" }, { internalType: "uint256", name: "value", type: "uint256" }, { internalType: "bytes", name: "data", type: "bytes" } ], name: "relay", outputs: [], stateMutability: "payable", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" } ], name: "state", outputs: [ { internalType: "enum IGovernor.ProposalState", name: "", type: "uint8" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "bytes4", name: "interfaceId", type: "bytes4" } ], name: "supportsInterface", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "version", outputs: [ { internalType: "string", name: "", type: "string" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "votingDelay", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "votingPeriod", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { stateMutability: "payable", type: "receive" } ]; class GovernorProposalThreshold__factory { static createInterface() { return new ethers.Interface(_abi$1E); } static connect(address, runner) { return new ethers.Contract( address, _abi$1E, runner ); } } __publicField$1E(GovernorProposalThreshold__factory, "abi", _abi$1E); var __defProp$1D = Object.defineProperty; var __defNormalProp$1D = (obj, key, value) => key in obj ? __defProp$1D(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$1D = (obj, key, value) => { __defNormalProp$1D(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$1D = [ { inputs: [], name: "Empty", type: "error" }, { inputs: [], name: "InvalidShortString", type: "error" }, { inputs: [ { internalType: "string", name: "str", type: "string" } ], name: "StringTooLong", type: "error" }, { anonymous: false, inputs: [], name: "EIP712DomainChanged", type: "event" }, { anonymous: false, inputs: [ { indexed: false, internalType: "uint256", name: "proposalId", type: "uint256" } ], name: "ProposalCanceled", type: "event" }, { anonymous: false, inputs: [ { indexed: false, internalType: "uint256", name: "proposalId", type: "uint256" }, { indexed: false, internalType: "address", name: "proposer", type: "address" }, { indexed: false, internalType: "address[]", name: "targets", type: "address[]" }, { indexed: false, internalType: "uint256[]", name: "values", type: "uint256[]" }, { indexed: false, internalType: "string[]", name: "signatures", type: "string[]" }, { indexed: false, internalType: "bytes[]", name: "calldatas", type: "bytes[]" }, { indexed: false, internalType: "uint256", name: "voteStart", type: "uint256" }, { indexed: false, internalType: "uint256", name: "voteEnd", type: "uint256" }, { indexed: false, internalType: "string", name: "description", type: "string" } ], name: "ProposalCreated", type: "event" }, { anonymous: false, inputs: [ { indexed: false, internalType: "uint256", name: "proposalId", type: "uint256" } ], name: "ProposalExecuted", type: "event" }, { anonymous: false, inputs: [ { indexed: false, internalType: "uint256", name: "oldProposalThreshold", type: "uint256" }, { indexed: false, internalType: "uint256", name: "newProposalThreshold", type: "uint256" } ], name: "ProposalThresholdSet", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "voter", type: "address" }, { indexed: false, internalType: "uint256", name: "proposalId", type: "uint256" }, { indexed: false, internalType: "uint8", name: "support", type: "uint8" }, { indexed: false, internalType: "uint256", name: "weight", type: "uint256" }, { indexed: false, internalType: "string", name: "reason", type: "string" } ], name: "VoteCast", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "voter", type: "address" }, { indexed: false, internalType: "uint256", name: "proposalId", type: "uint256" }, { indexed: false, internalType: "uint8", name: "support", type: "uint8" }, { indexed: false, internalType: "uint256", name: "weight", type: "uint256" }, { indexed: false, internalType: "string", name: "reason", type: "string" }, { indexed: false, internalType: "bytes", name: "params", type: "bytes" } ], name: "VoteCastWithParams", type: "event" }, { anonymous: false, inputs: [ { indexed: false, internalType: "uint256", name: "oldVotingDelay", type: "uint256" }, { indexed: false, internalType: "uint256", name: "newVotingDelay", type: "uint256" } ], name: "VotingDelaySet", type: "event" }, { anonymous: false, inputs: [ { indexed: false, internalType: "uint256", name: "oldVotingPeriod", type: "uint256" }, { indexed: false, internalType: "uint256", name: "newVotingPeriod", type: "uint256" } ], name: "VotingPeriodSet", type: "event" }, { inputs: [], name: "BALLOT_TYPEHASH", outputs: [ { internalType: "bytes32", name: "", type: "bytes32" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "CLOCK_MODE", outputs: [ { internalType: "string", name: "", type: "string" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "COUNTING_MODE", outputs: [ { internalType: "string", name: "", type: "string" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "EXTENDED_BALLOT_TYPEHASH", outputs: [ { internalType: "bytes32", name: "", type: "bytes32" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address[]", name: "targets", type: "address[]" }, { internalType: "uint256[]", name: "values", type: "uint256[]" }, { internalType: "bytes[]", name: "calldatas", type: "bytes[]" }, { internalType: "bytes32", name: "descriptionHash", type: "bytes32" } ], name: "cancel", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" }, { internalType: "uint8", name: "support", type: "uint8" } ], name: "castVote", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" }, { internalType: "uint8", name: "support", type: "uint8" }, { internalType: "uint8", name: "v", type: "uint8" }, { internalType: "bytes32", name: "r", type: "bytes32" }, { internalType: "bytes32", name: "s", type: "bytes32" } ], name: "castVoteBySig", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" }, { internalType: "uint8", name: "support", type: "uint8" }, { internalType: "string", name: "reason", type: "string" } ], name: "castVoteWithReason", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" }, { internalType: "uint8", name: "support", type: "uint8" }, { internalType: "string", name: "reason", type: "string" }, { internalType: "bytes", name: "params", type: "bytes" } ], name: "castVoteWithReasonAndParams", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" }, { internalType: "uint8", name: "support", type: "uint8" }, { internalType: "string", name: "reason", type: "string" }, { internalType: "bytes", name: "params", type: "bytes" }, { internalType: "uint8", name: "v", type: "uint8" }, { internalType: "bytes32", name: "r", type: "bytes32" }, { internalType: "bytes32", name: "s", type: "bytes32" } ], name: "castVoteWithReasonAndParamsBySig", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [], name: "clock", outputs: [ { internalType: "uint48", name: "", type: "uint48" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "eip712Domain", outputs: [ { internalType: "bytes1", name: "fields", type: "bytes1" }, { internalType: "string", name: "name", type: "string" }, { internalType: "string", name: "version", type: "string" }, { internalType: "uint256", name: "chainId", type: "uint256" }, { internalType: "address", name: "verifyingContract", type: "address" }, { internalType: "bytes32", name: "salt", type: "bytes32" }, { internalType: "uint256[]", name: "extensions", type: "uint256[]" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address[]", name: "targets", type: "address[]" }, { internalType: "uint256[]", name: "values", type: "uint256[]" }, { internalType: "bytes[]", name: "calldatas", type: "bytes[]" }, { internalType: "bytes32", name: "descriptionHash", type: "bytes32" } ], name: "execute", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "payable", type: "function" }, { inputs: [ { internalType: "address", name: "account", type: "address" }, { internalType: "uint256", name: "timepoint", type: "uint256" } ], name: "getVotes", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "account", type: "address" }, { internalType: "uint256", name: "timepoint", type: "uint256" }, { internalType: "bytes", name: "params", type: "bytes" } ], name: "getVotesWithParams", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" }, { internalType: "address", name: "account", type: "address" } ], name: "hasVoted", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address[]", name: "targets", type: "address[]" }, { internalType: "uint256[]", name: "values", type: "uint256[]" }, { internalType: "bytes[]", name: "calldatas", type: "bytes[]" }, { internalType: "bytes32", name: "descriptionHash", type: "bytes32" } ], name: "hashProposal", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "pure", type: "function" }, { inputs: [], name: "name", outputs: [ { internalType: "string", name: "", type: "string" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "", type: "address" }, { internalType: "address", name: "", type: "address" }, { internalType: "uint256[]", name: "", type: "uint256[]" }, { internalType: "uint256[]", name: "", type: "uint256[]" }, { internalType: "bytes", name: "", type: "bytes" } ], name: "onERC1155BatchReceived", outputs: [ { internalType: "bytes4", name: "", type: "bytes4" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "", type: "address" }, { internalType: "address", name: "", type: "address" }, { internalType: "uint256", name: "", type: "uint256" }, { internalType: "uint256", name: "", type: "uint256" }, { internalType: "bytes", name: "", type: "bytes" } ], name: "onERC1155Received", outputs: [ { internalType: "bytes4", name: "", type: "bytes4" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "", type: "address" }, { internalType: "address", name: "", type: "address" }, { internalType: "uint256", name: "", type: "uint256" }, { internalType: "bytes", name: "", type: "bytes" } ], name: "onERC721Received", outputs: [ { internalType: "bytes4", name: "", type: "bytes4" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" } ], name: "proposalDeadline", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" } ], name: "proposalProposer", outputs: [ { internalType: "address", name: "", type: "address" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" } ], name: "proposalSnapshot", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "proposalThreshold", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address[]", name: "targets", type: "address[]" }, { internalType: "uint256[]", name: "values", type: "uint256[]" }, { internalType: "bytes[]", name: "calldatas", type: "bytes[]" }, { internalType: "string", name: "description", type: "string" } ], name: "propose", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "uint256", name: "timepoint", type: "uint256" } ], name: "quorum", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "target", type: "address" }, { internalType: "uint256", name: "value", type: "uint256" }, { internalType: "bytes", name: "data", type: "bytes" } ], name: "relay", outputs: [], stateMutability: "payable", type: "function" }, { inputs: [ { internalType: "uint256", name: "newProposalThreshold", type: "uint256" } ], name: "setProposalThreshold", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "uint256", name: "newVotingDelay", type: "uint256" } ], name: "setVotingDelay", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "uint256", name: "newVotingPeriod", type: "uint256" } ], name: "setVotingPeriod", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" } ], name: "state", outputs: [ { internalType: "enum IGovernor.ProposalState", name: "", type: "uint8" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "bytes4", name: "interfaceId", type: "bytes4" } ], name: "supportsInterface", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "version", outputs: [ { internalType: "string", name: "", type: "string" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "votingDelay", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "votingPeriod", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { stateMutability: "payable", type: "receive" } ]; class GovernorSettings__factory { static createInterface() { return new ethers.Interface(_abi$1D); } static connect(address, runner) { return new ethers.Contract(address, _abi$1D, runner); } } __publicField$1D(GovernorSettings__factory, "abi", _abi$1D); var __defProp$1C = Object.defineProperty; var __defNormalProp$1C = (obj, key, value) => key in obj ? __defProp$1C(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$1C = (obj, key, value) => { __defNormalProp$1C(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$1C = [ { inputs: [], name: "Empty", type: "error" }, { inputs: [], name: "InvalidShortString", type: "error" }, { inputs: [ { internalType: "string", name: "str", type: "string" } ], name: "StringTooLong", type: "error" }, { anonymous: false, inputs: [], name: "EIP712DomainChanged", type: "event" }, { anonymous: false, inputs: [ { indexed: false, internalType: "uint256", name: "proposalId", type: "uint256" } ], name: "ProposalCanceled", type: "event" }, { anonymous: false, inputs: [ { indexed: false, internalType: "uint256", name: "proposalId", type: "uint256" }, { indexed: false, internalType: "address", name: "proposer", type: "address" }, { indexed: false, internalType: "address[]", name: "targets", type: "address[]" }, { indexed: false, internalType: "uint256[]", name: "values", type: "uint256[]" }, { indexed: false, internalType: "string[]", name: "signatures", type: "string[]" }, { indexed: false, internalType: "bytes[]", name: "calldatas", type: "bytes[]" }, { indexed: false, internalType: "uint256", name: "voteStart", type: "uint256" }, { indexed: false, internalType: "uint256", name: "voteEnd", type: "uint256" }, { indexed: false, internalType: "string", name: "description", type: "string" } ], name: "ProposalCreated", type: "event" }, { anonymous: false, inputs: [ { indexed: false, internalType: "uint256", name: "proposalId", type: "uint256" } ], name: "ProposalExecuted", type: "event" }, { anonymous: false, inputs: [ { indexed: false, internalType: "uint256", name: "proposalId", type: "uint256" }, { indexed: false, internalType: "uint256", name: "eta", type: "uint256" } ], name: "ProposalQueued", type: "event" }, { anonymous: false, inputs: [ { indexed: false, internalType: "address", name: "oldTimelock", type: "address" }, { indexed: false, internalType: "address", name: "newTimelock", type: "address" } ], name: "TimelockChange", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "voter", type: "address" }, { indexed: false, internalType: "uint256", name: "proposalId", type: "uint256" }, { indexed: false, internalType: "uint8", name: "support", type: "uint8" }, { indexed: false, internalType: "uint256", name: "weight", type: "uint256" }, { indexed: false, internalType: "string", name: "reason", type: "string" } ], name: "VoteCast", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "voter", type: "address" }, { indexed: false, internalType: "uint256", name: "proposalId", type: "uint256" }, { indexed: false, internalType: "uint8", name: "support", type: "uint8" }, { indexed: false, internalType: "uint256", name: "weight", type: "uint256" }, { indexed: false, internalType: "string", name: "reason", type: "string" }, { indexed: false, internalType: "bytes", name: "params", type: "bytes" } ], name: "VoteCastWithParams", type: "event" }, { inputs: [], name: "BALLOT_TYPEHASH", outputs: [ { internalType: "bytes32", name: "", type: "bytes32" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "CLOCK_MODE", outputs: [ { internalType: "string", name: "", type: "string" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "COUNTING_MODE", outputs: [ { internalType: "string", name: "", type: "string" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "EXTENDED_BALLOT_TYPEHASH", outputs: [ { internalType: "bytes32", name: "", type: "bytes32" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "__acceptAdmin", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address[]", name: "targets", type: "address[]" }, { internalType: "uint256[]", name: "values", type: "uint256[]" }, { internalType: "bytes[]", name: "calldatas", type: "bytes[]" }, { internalType: "bytes32", name: "descriptionHash", type: "bytes32" } ], name: "cancel", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" }, { internalType: "uint8", name: "support", type: "uint8" } ], name: "castVote", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" }, { internalType: "uint8", name: "support", type: "uint8" }, { internalType: "uint8", name: "v", type: "uint8" }, { internalType: "bytes32", name: "r", type: "bytes32" }, { internalType: "bytes32", name: "s", type: "bytes32" } ], name: "castVoteBySig", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" }, { internalType: "uint8", name: "support", type: "uint8" }, { internalType: "string", name: "reason", type: "string" } ], name: "castVoteWithReason", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" }, { internalType: "uint8", name: "support", type: "uint8" }, { internalType: "string", name: "reason", type: "string" }, { internalType: "bytes", name: "params", type: "bytes" } ], name: "castVoteWithReasonAndParams", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" }, { internalType: "uint8", name: "support", type: "uint8" }, { internalType: "string", name: "reason", type: "string" }, { internalType: "bytes", name: "params", type: "bytes" }, { internalType: "uint8", name: "v", type: "uint8" }, { internalType: "bytes32", name: "r", type: "bytes32" }, { internalType: "bytes32", name: "s", type: "bytes32" } ], name: "castVoteWithReasonAndParamsBySig", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [], name: "clock", outputs: [ { internalType: "uint48", name: "", type: "uint48" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "eip712Domain", outputs: [ { internalType: "bytes1", name: "fields", type: "bytes1" }, { internalType: "string", name: "name", type: "string" }, { internalType: "string", name: "version", type: "string" }, { internalType: "uint256", name: "chainId", type: "uint256" }, { internalType: "address", name: "verifyingContract", type: "address" }, { internalType: "bytes32", name: "salt", type: "bytes32" }, { internalType: "uint256[]", name: "extensions", type: "uint256[]" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address[]", name: "targets", type: "address[]" }, { internalType: "uint256[]", name: "values", type: "uint256[]" }, { internalType: "bytes[]", name: "calldatas", type: "bytes[]" }, { internalType: "bytes32", name: "descriptionHash", type: "bytes32" } ], name: "execute", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "payable", type: "function" }, { inputs: [ { internalType: "address", name: "account", type: "address" }, { internalType: "uint256", name: "timepoint", type: "uint256" } ], name: "getVotes", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "account", type: "address" }, { internalType: "uint256", name: "timepoint", type: "uint256" }, { internalType: "bytes", name: "params", type: "bytes" } ], name: "getVotesWithParams", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" }, { internalType: "address", name: "account", type: "address" } ], name: "hasVoted", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address[]", name: "targets", type: "address[]" }, { internalType: "uint256[]", name: "values", type: "uint256[]" }, { internalType: "bytes[]", name: "calldatas", type: "bytes[]" }, { internalType: "bytes32", name: "descriptionHash", type: "bytes32" } ], name: "hashProposal", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "pure", type: "function" }, { inputs: [], name: "name", outputs: [ { internalType: "string", name: "", type: "string" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "", type: "address" }, { internalType: "address", name: "", type: "address" }, { internalType: "uint256[]", name: "", type: "uint256[]" }, { internalType: "uint256[]", name: "", type: "uint256[]" }, { internalType: "bytes", name: "", type: "bytes" } ], name: "onERC1155BatchReceived", outputs: [ { internalType: "bytes4", name: "", type: "bytes4" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "", type: "address" }, { internalType: "address", name: "", type: "address" }, { internalType: "uint256", name: "", type: "uint256" }, { internalType: "uint256", name: "", type: "uint256" }, { internalType: "bytes", name: "", type: "bytes" } ], name: "onERC1155Received", outputs: [ { internalType: "bytes4", name: "", type: "bytes4" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "", type: "address" }, { internalType: "address", name: "", type: "address" }, { internalType: "uint256", name: "", type: "uint256" }, { internalType: "bytes", name: "", type: "bytes" } ], name: "onERC721Received", outputs: [ { internalType: "bytes4", name: "", type: "bytes4" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" } ], name: "proposalDeadline", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" } ], name: "proposalEta", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" } ], name: "proposalProposer", outputs: [ { internalType: "address", name: "", type: "address" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" } ], name: "proposalSnapshot", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "proposalThreshold", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address[]", name: "targets", type: "address[]" }, { internalType: "uint256[]", name: "values", type: "uint256[]" }, { internalType: "bytes[]", name: "calldatas", type: "bytes[]" }, { internalType: "string", name: "description", type: "string" } ], name: "propose", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address[]", name: "targets", type: "address[]" }, { internalType: "uint256[]", name: "values", type: "uint256[]" }, { internalType: "bytes[]", name: "calldatas", type: "bytes[]" }, { internalType: "bytes32", name: "descriptionHash", type: "bytes32" } ], name: "queue", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "uint256", name: "timepoint", type: "uint256" } ], name: "quorum", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "target", type: "address" }, { internalType: "uint256", name: "value", type: "uint256" }, { internalType: "bytes", name: "data", type: "bytes" } ], name: "relay", outputs: [], stateMutability: "payable", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" } ], name: "state", outputs: [ { internalType: "enum IGovernor.ProposalState", name: "", type: "uint8" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "bytes4", name: "interfaceId", type: "bytes4" } ], name: "supportsInterface", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "timelock", outputs: [ { internalType: "address", name: "", type: "address" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "contract ICompoundTimelock", name: "newTimelock", type: "address" } ], name: "updateTimelock", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [], name: "version", outputs: [ { internalType: "string", name: "", type: "string" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "votingDelay", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "votingPeriod", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { stateMutability: "payable", type: "receive" } ]; class GovernorTimelockCompound__factory { static createInterface() { return new ethers.Interface(_abi$1C); } static connect(address, runner) { return new ethers.Contract( address, _abi$1C, runner ); } } __publicField$1C(GovernorTimelockCompound__factory, "abi", _abi$1C); var __defProp$1B = Object.defineProperty; var __defNormalProp$1B = (obj, key, value) => key in obj ? __defProp$1B(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$1B = (obj, key, value) => { __defNormalProp$1B(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$1B = [ { inputs: [], name: "Empty", type: "error" }, { inputs: [], name: "InvalidShortString", type: "error" }, { inputs: [ { internalType: "string", name: "str", type: "string" } ], name: "StringTooLong", type: "error" }, { anonymous: false, inputs: [], name: "EIP712DomainChanged", type: "event" }, { anonymous: false, inputs: [ { indexed: false, internalType: "uint256", name: "proposalId", type: "uint256" } ], name: "ProposalCanceled", type: "event" }, { anonymous: false, inputs: [ { indexed: false, internalType: "uint256", name: "proposalId", type: "uint256" }, { indexed: false, internalType: "address", name: "proposer", type: "address" }, { indexed: false, internalType: "address[]", name: "targets", type: "address[]" }, { indexed: false, internalType: "uint256[]", name: "values", type: "uint256[]" }, { indexed: false, internalType: "string[]", name: "signatures", type: "string[]" }, { indexed: false, internalType: "bytes[]", name: "calldatas", type: "bytes[]" }, { indexed: false, internalType: "uint256", name: "voteStart", type: "uint256" }, { indexed: false, internalType: "uint256", name: "voteEnd", type: "uint256" }, { indexed: false, internalType: "string", name: "description", type: "string" } ], name: "ProposalCreated", type: "event" }, { anonymous: false, inputs: [ { indexed: false, internalType: "uint256", name: "proposalId", type: "uint256" } ], name: "ProposalExecuted", type: "event" }, { anonymous: false, inputs: [ { indexed: false, internalType: "uint256", name: "proposalId", type: "uint256" }, { indexed: false, internalType: "uint256", name: "eta", type: "uint256" } ], name: "ProposalQueued", type: "event" }, { anonymous: false, inputs: [ { indexed: false, internalType: "address", name: "oldTimelock", type: "address" }, { indexed: false, internalType: "address", name: "newTimelock", type: "address" } ], name: "TimelockChange", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "voter", type: "address" }, { indexed: false, internalType: "uint256", name: "proposalId", type: "uint256" }, { indexed: false, internalType: "uint8", name: "support", type: "uint8" }, { indexed: false, internalType: "uint256", name: "weight", type: "uint256" }, { indexed: false, internalType: "string", name: "reason", type: "string" } ], name: "VoteCast", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "voter", type: "address" }, { indexed: false, internalType: "uint256", name: "proposalId", type: "uint256" }, { indexed: false, internalType: "uint8", name: "support", type: "uint8" }, { indexed: false, internalType: "uint256", name: "weight", type: "uint256" }, { indexed: false, internalType: "string", name: "reason", type: "string" }, { indexed: false, internalType: "bytes", name: "params", type: "bytes" } ], name: "VoteCastWithParams", type: "event" }, { inputs: [], name: "BALLOT_TYPEHASH", outputs: [ { internalType: "bytes32", name: "", type: "bytes32" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "CLOCK_MODE", outputs: [ { internalType: "string", name: "", type: "string" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "COUNTING_MODE", outputs: [ { internalType: "string", name: "", type: "string" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "EXTENDED_BALLOT_TYPEHASH", outputs: [ { internalType: "bytes32", name: "", type: "bytes32" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address[]", name: "targets", type: "address[]" }, { internalType: "uint256[]", name: "values", type: "uint256[]" }, { internalType: "bytes[]", name: "calldatas", type: "bytes[]" }, { internalType: "bytes32", name: "descriptionHash", type: "bytes32" } ], name: "cancel", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" }, { internalType: "uint8", name: "support", type: "uint8" } ], name: "castVote", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" }, { internalType: "uint8", name: "support", type: "uint8" }, { internalType: "uint8", name: "v", type: "uint8" }, { internalType: "bytes32", name: "r", type: "bytes32" }, { internalType: "bytes32", name: "s", type: "bytes32" } ], name: "castVoteBySig", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" }, { internalType: "uint8", name: "support", type: "uint8" }, { internalType: "string", name: "reason", type: "string" } ], name: "castVoteWithReason", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" }, { internalType: "uint8", name: "support", type: "uint8" }, { internalType: "string", name: "reason", type: "string" }, { internalType: "bytes", name: "params", type: "bytes" } ], name: "castVoteWithReasonAndParams", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" }, { internalType: "uint8", name: "support", type: "uint8" }, { internalType: "string", name: "reason", type: "string" }, { internalType: "bytes", name: "params", type: "bytes" }, { internalType: "uint8", name: "v", type: "uint8" }, { internalType: "bytes32", name: "r", type: "bytes32" }, { internalType: "bytes32", name: "s", type: "bytes32" } ], name: "castVoteWithReasonAndParamsBySig", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [], name: "clock", outputs: [ { internalType: "uint48", name: "", type: "uint48" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "eip712Domain", outputs: [ { internalType: "bytes1", name: "fields", type: "bytes1" }, { internalType: "string", name: "name", type: "string" }, { internalType: "string", name: "version", type: "string" }, { internalType: "uint256", name: "chainId", type: "uint256" }, { internalType: "address", name: "verifyingContract", type: "address" }, { internalType: "bytes32", name: "salt", type: "bytes32" }, { internalType: "uint256[]", name: "extensions", type: "uint256[]" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address[]", name: "targets", type: "address[]" }, { internalType: "uint256[]", name: "values", type: "uint256[]" }, { internalType: "bytes[]", name: "calldatas", type: "bytes[]" }, { internalType: "bytes32", name: "descriptionHash", type: "bytes32" } ], name: "execute", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "payable", type: "function" }, { inputs: [ { internalType: "address", name: "account", type: "address" }, { internalType: "uint256", name: "timepoint", type: "uint256" } ], name: "getVotes", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "account", type: "address" }, { internalType: "uint256", name: "timepoint", type: "uint256" }, { internalType: "bytes", name: "params", type: "bytes" } ], name: "getVotesWithParams", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" }, { internalType: "address", name: "account", type: "address" } ], name: "hasVoted", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address[]", name: "targets", type: "address[]" }, { internalType: "uint256[]", name: "values", type: "uint256[]" }, { internalType: "bytes[]", name: "calldatas", type: "bytes[]" }, { internalType: "bytes32", name: "descriptionHash", type: "bytes32" } ], name: "hashProposal", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "pure", type: "function" }, { inputs: [], name: "name", outputs: [ { internalType: "string", name: "", type: "string" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "", type: "address" }, { internalType: "address", name: "", type: "address" }, { internalType: "uint256[]", name: "", type: "uint256[]" }, { internalType: "uint256[]", name: "", type: "uint256[]" }, { internalType: "bytes", name: "", type: "bytes" } ], name: "onERC1155BatchReceived", outputs: [ { internalType: "bytes4", name: "", type: "bytes4" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "", type: "address" }, { internalType: "address", name: "", type: "address" }, { internalType: "uint256", name: "", type: "uint256" }, { internalType: "uint256", name: "", type: "uint256" }, { internalType: "bytes", name: "", type: "bytes" } ], name: "onERC1155Received", outputs: [ { internalType: "bytes4", name: "", type: "bytes4" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "", type: "address" }, { internalType: "address", name: "", type: "address" }, { internalType: "uint256", name: "", type: "uint256" }, { internalType: "bytes", name: "", type: "bytes" } ], name: "onERC721Received", outputs: [ { internalType: "bytes4", name: "", type: "bytes4" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" } ], name: "proposalDeadline", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" } ], name: "proposalEta", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" } ], name: "proposalProposer", outputs: [ { internalType: "address", name: "", type: "address" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" } ], name: "proposalSnapshot", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "proposalThreshold", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address[]", name: "targets", type: "address[]" }, { internalType: "uint256[]", name: "values", type: "uint256[]" }, { internalType: "bytes[]", name: "calldatas", type: "bytes[]" }, { internalType: "string", name: "description", type: "string" } ], name: "propose", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address[]", name: "targets", type: "address[]" }, { internalType: "uint256[]", name: "values", type: "uint256[]" }, { internalType: "bytes[]", name: "calldatas", type: "bytes[]" }, { internalType: "bytes32", name: "descriptionHash", type: "bytes32" } ], name: "queue", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "uint256", name: "timepoint", type: "uint256" } ], name: "quorum", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "target", type: "address" }, { internalType: "uint256", name: "value", type: "uint256" }, { internalType: "bytes", name: "data", type: "bytes" } ], name: "relay", outputs: [], stateMutability: "payable", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" } ], name: "state", outputs: [ { internalType: "enum IGovernor.ProposalState", name: "", type: "uint8" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "bytes4", name: "interfaceId", type: "bytes4" } ], name: "supportsInterface", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "timelock", outputs: [ { internalType: "address", name: "", type: "address" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "contract TimelockController", name: "newTimelock", type: "address" } ], name: "updateTimelock", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [], name: "version", outputs: [ { internalType: "string", name: "", type: "string" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "votingDelay", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "votingPeriod", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { stateMutability: "payable", type: "receive" } ]; class GovernorTimelockControl__factory { static createInterface() { return new ethers.Interface(_abi$1B); } static connect(address, runner) { return new ethers.Contract( address, _abi$1B, runner ); } } __publicField$1B(GovernorTimelockControl__factory, "abi", _abi$1B); var __defProp$1A = Object.defineProperty; var __defNormalProp$1A = (obj, key, value) => key in obj ? __defProp$1A(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$1A = (obj, key, value) => { __defNormalProp$1A(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$1A = [ { inputs: [], name: "Empty", type: "error" }, { inputs: [], name: "InvalidShortString", type: "error" }, { inputs: [ { internalType: "string", name: "str", type: "string" } ], name: "StringTooLong", type: "error" }, { anonymous: false, inputs: [], name: "EIP712DomainChanged", type: "event" }, { anonymous: false, inputs: [ { indexed: false, internalType: "uint256", name: "proposalId", type: "uint256" } ], name: "ProposalCanceled", type: "event" }, { anonymous: false, inputs: [ { indexed: false, internalType: "uint256", name: "proposalId", type: "uint256" }, { indexed: false, internalType: "address", name: "proposer", type: "address" }, { indexed: false, internalType: "address[]", name: "targets", type: "address[]" }, { indexed: false, internalType: "uint256[]", name: "values", type: "uint256[]" }, { indexed: false, internalType: "string[]", name: "signatures", type: "string[]" }, { indexed: false, internalType: "bytes[]", name: "calldatas", type: "bytes[]" }, { indexed: false, internalType: "uint256", name: "voteStart", type: "uint256" }, { indexed: false, internalType: "uint256", name: "voteEnd", type: "uint256" }, { indexed: false, internalType: "string", name: "description", type: "string" } ], name: "ProposalCreated", type: "event" }, { anonymous: false, inputs: [ { indexed: false, internalType: "uint256", name: "proposalId", type: "uint256" } ], name: "ProposalExecuted", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "voter", type: "address" }, { indexed: false, internalType: "uint256", name: "proposalId", type: "uint256" }, { indexed: false, internalType: "uint8", name: "support", type: "uint8" }, { indexed: false, internalType: "uint256", name: "weight", type: "uint256" }, { indexed: false, internalType: "string", name: "reason", type: "string" } ], name: "VoteCast", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "voter", type: "address" }, { indexed: false, internalType: "uint256", name: "proposalId", type: "uint256" }, { indexed: false, internalType: "uint8", name: "support", type: "uint8" }, { indexed: false, internalType: "uint256", name: "weight", type: "uint256" }, { indexed: false, internalType: "string", name: "reason", type: "string" }, { indexed: false, internalType: "bytes", name: "params", type: "bytes" } ], name: "VoteCastWithParams", type: "event" }, { inputs: [], name: "BALLOT_TYPEHASH", outputs: [ { internalType: "bytes32", name: "", type: "bytes32" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "CLOCK_MODE", outputs: [ { internalType: "string", name: "", type: "string" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "COUNTING_MODE", outputs: [ { internalType: "string", name: "", type: "string" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "EXTENDED_BALLOT_TYPEHASH", outputs: [ { internalType: "bytes32", name: "", type: "bytes32" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address[]", name: "targets", type: "address[]" }, { internalType: "uint256[]", name: "values", type: "uint256[]" }, { internalType: "bytes[]", name: "calldatas", type: "bytes[]" }, { internalType: "bytes32", name: "descriptionHash", type: "bytes32" } ], name: "cancel", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" }, { internalType: "uint8", name: "support", type: "uint8" } ], name: "castVote", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" }, { internalType: "uint8", name: "support", type: "uint8" }, { internalType: "uint8", name: "v", type: "uint8" }, { internalType: "bytes32", name: "r", type: "bytes32" }, { internalType: "bytes32", name: "s", type: "bytes32" } ], name: "castVoteBySig", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" }, { internalType: "uint8", name: "support", type: "uint8" }, { internalType: "string", name: "reason", type: "string" } ], name: "castVoteWithReason", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" }, { internalType: "uint8", name: "support", type: "uint8" }, { internalType: "string", name: "reason", type: "string" }, { internalType: "bytes", name: "params", type: "bytes" } ], name: "castVoteWithReasonAndParams", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" }, { internalType: "uint8", name: "support", type: "uint8" }, { internalType: "string", name: "reason", type: "string" }, { internalType: "bytes", name: "params", type: "bytes" }, { internalType: "uint8", name: "v", type: "uint8" }, { internalType: "bytes32", name: "r", type: "bytes32" }, { internalType: "bytes32", name: "s", type: "bytes32" } ], name: "castVoteWithReasonAndParamsBySig", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [], name: "clock", outputs: [ { internalType: "uint48", name: "", type: "uint48" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "eip712Domain", outputs: [ { internalType: "bytes1", name: "fields", type: "bytes1" }, { internalType: "string", name: "name", type: "string" }, { internalType: "string", name: "version", type: "string" }, { internalType: "uint256", name: "chainId", type: "uint256" }, { internalType: "address", name: "verifyingContract", type: "address" }, { internalType: "bytes32", name: "salt", type: "bytes32" }, { internalType: "uint256[]", name: "extensions", type: "uint256[]" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address[]", name: "targets", type: "address[]" }, { internalType: "uint256[]", name: "values", type: "uint256[]" }, { internalType: "bytes[]", name: "calldatas", type: "bytes[]" }, { internalType: "bytes32", name: "descriptionHash", type: "bytes32" } ], name: "execute", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "payable", type: "function" }, { inputs: [ { internalType: "address", name: "account", type: "address" }, { internalType: "uint256", name: "timepoint", type: "uint256" } ], name: "getVotes", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "account", type: "address" }, { internalType: "uint256", name: "timepoint", type: "uint256" }, { internalType: "bytes", name: "params", type: "bytes" } ], name: "getVotesWithParams", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" }, { internalType: "address", name: "account", type: "address" } ], name: "hasVoted", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address[]", name: "targets", type: "address[]" }, { internalType: "uint256[]", name: "values", type: "uint256[]" }, { internalType: "bytes[]", name: "calldatas", type: "bytes[]" }, { internalType: "bytes32", name: "descriptionHash", type: "bytes32" } ], name: "hashProposal", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "pure", type: "function" }, { inputs: [], name: "name", outputs: [ { internalType: "string", name: "", type: "string" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "", type: "address" }, { internalType: "address", name: "", type: "address" }, { internalType: "uint256[]", name: "", type: "uint256[]" }, { internalType: "uint256[]", name: "", type: "uint256[]" }, { internalType: "bytes", name: "", type: "bytes" } ], name: "onERC1155BatchReceived", outputs: [ { internalType: "bytes4", name: "", type: "bytes4" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "", type: "address" }, { internalType: "address", name: "", type: "address" }, { internalType: "uint256", name: "", type: "uint256" }, { internalType: "uint256", name: "", type: "uint256" }, { internalType: "bytes", name: "", type: "bytes" } ], name: "onERC1155Received", outputs: [ { internalType: "bytes4", name: "", type: "bytes4" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "", type: "address" }, { internalType: "address", name: "", type: "address" }, { internalType: "uint256", name: "", type: "uint256" }, { internalType: "bytes", name: "", type: "bytes" } ], name: "onERC721Received", outputs: [ { internalType: "bytes4", name: "", type: "bytes4" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" } ], name: "proposalDeadline", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" } ], name: "proposalProposer", outputs: [ { internalType: "address", name: "", type: "address" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" } ], name: "proposalSnapshot", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "proposalThreshold", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address[]", name: "targets", type: "address[]" }, { internalType: "uint256[]", name: "values", type: "uint256[]" }, { internalType: "bytes[]", name: "calldatas", type: "bytes[]" }, { internalType: "string", name: "description", type: "string" } ], name: "propose", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "uint256", name: "timepoint", type: "uint256" } ], name: "quorum", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "target", type: "address" }, { internalType: "uint256", name: "value", type: "uint256" }, { internalType: "bytes", name: "data", type: "bytes" } ], name: "relay", outputs: [], stateMutability: "payable", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" } ], name: "state", outputs: [ { internalType: "enum IGovernor.ProposalState", name: "", type: "uint8" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "bytes4", name: "interfaceId", type: "bytes4" } ], name: "supportsInterface", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "token", outputs: [ { internalType: "contract IERC5805", name: "", type: "address" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "version", outputs: [ { internalType: "string", name: "", type: "string" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "votingDelay", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "votingPeriod", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { stateMutability: "payable", type: "receive" } ]; class GovernorVotes__factory { static createInterface() { return new ethers.Interface(_abi$1A); } static connect(address, runner) { return new ethers.Contract(address, _abi$1A, runner); } } __publicField$1A(GovernorVotes__factory, "abi", _abi$1A); var __defProp$1z = Object.defineProperty; var __defNormalProp$1z = (obj, key, value) => key in obj ? __defProp$1z(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$1z = (obj, key, value) => { __defNormalProp$1z(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$1z = [ { inputs: [], name: "Empty", type: "error" }, { inputs: [], name: "InvalidShortString", type: "error" }, { inputs: [ { internalType: "string", name: "str", type: "string" } ], name: "StringTooLong", type: "error" }, { anonymous: false, inputs: [], name: "EIP712DomainChanged", type: "event" }, { anonymous: false, inputs: [ { indexed: false, internalType: "uint256", name: "proposalId", type: "uint256" } ], name: "ProposalCanceled", type: "event" }, { anonymous: false, inputs: [ { indexed: false, internalType: "uint256", name: "proposalId", type: "uint256" }, { indexed: false, internalType: "address", name: "proposer", type: "address" }, { indexed: false, internalType: "address[]", name: "targets", type: "address[]" }, { indexed: false, internalType: "uint256[]", name: "values", type: "uint256[]" }, { indexed: false, internalType: "string[]", name: "signatures", type: "string[]" }, { indexed: false, internalType: "bytes[]", name: "calldatas", type: "bytes[]" }, { indexed: false, internalType: "uint256", name: "voteStart", type: "uint256" }, { indexed: false, internalType: "uint256", name: "voteEnd", type: "uint256" }, { indexed: false, internalType: "string", name: "description", type: "string" } ], name: "ProposalCreated", type: "event" }, { anonymous: false, inputs: [ { indexed: false, internalType: "uint256", name: "proposalId", type: "uint256" } ], name: "ProposalExecuted", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "voter", type: "address" }, { indexed: false, internalType: "uint256", name: "proposalId", type: "uint256" }, { indexed: false, internalType: "uint8", name: "support", type: "uint8" }, { indexed: false, internalType: "uint256", name: "weight", type: "uint256" }, { indexed: false, internalType: "string", name: "reason", type: "string" } ], name: "VoteCast", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "voter", type: "address" }, { indexed: false, internalType: "uint256", name: "proposalId", type: "uint256" }, { indexed: false, internalType: "uint8", name: "support", type: "uint8" }, { indexed: false, internalType: "uint256", name: "weight", type: "uint256" }, { indexed: false, internalType: "string", name: "reason", type: "string" }, { indexed: false, internalType: "bytes", name: "params", type: "bytes" } ], name: "VoteCastWithParams", type: "event" }, { inputs: [], name: "BALLOT_TYPEHASH", outputs: [ { internalType: "bytes32", name: "", type: "bytes32" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "CLOCK_MODE", outputs: [ { internalType: "string", name: "", type: "string" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "COUNTING_MODE", outputs: [ { internalType: "string", name: "", type: "string" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "EXTENDED_BALLOT_TYPEHASH", outputs: [ { internalType: "bytes32", name: "", type: "bytes32" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address[]", name: "targets", type: "address[]" }, { internalType: "uint256[]", name: "values", type: "uint256[]" }, { internalType: "bytes[]", name: "calldatas", type: "bytes[]" }, { internalType: "bytes32", name: "descriptionHash", type: "bytes32" } ], name: "cancel", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" }, { internalType: "uint8", name: "support", type: "uint8" } ], name: "castVote", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" }, { internalType: "uint8", name: "support", type: "uint8" }, { internalType: "uint8", name: "v", type: "uint8" }, { internalType: "bytes32", name: "r", type: "bytes32" }, { internalType: "bytes32", name: "s", type: "bytes32" } ], name: "castVoteBySig", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" }, { internalType: "uint8", name: "support", type: "uint8" }, { internalType: "string", name: "reason", type: "string" } ], name: "castVoteWithReason", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" }, { internalType: "uint8", name: "support", type: "uint8" }, { internalType: "string", name: "reason", type: "string" }, { internalType: "bytes", name: "params", type: "bytes" } ], name: "castVoteWithReasonAndParams", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" }, { internalType: "uint8", name: "support", type: "uint8" }, { internalType: "string", name: "reason", type: "string" }, { internalType: "bytes", name: "params", type: "bytes" }, { internalType: "uint8", name: "v", type: "uint8" }, { internalType: "bytes32", name: "r", type: "bytes32" }, { internalType: "bytes32", name: "s", type: "bytes32" } ], name: "castVoteWithReasonAndParamsBySig", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [], name: "clock", outputs: [ { internalType: "uint48", name: "", type: "uint48" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "eip712Domain", outputs: [ { internalType: "bytes1", name: "fields", type: "bytes1" }, { internalType: "string", name: "name", type: "string" }, { internalType: "string", name: "version", type: "string" }, { internalType: "uint256", name: "chainId", type: "uint256" }, { internalType: "address", name: "verifyingContract", type: "address" }, { internalType: "bytes32", name: "salt", type: "bytes32" }, { internalType: "uint256[]", name: "extensions", type: "uint256[]" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address[]", name: "targets", type: "address[]" }, { internalType: "uint256[]", name: "values", type: "uint256[]" }, { internalType: "bytes[]", name: "calldatas", type: "bytes[]" }, { internalType: "bytes32", name: "descriptionHash", type: "bytes32" } ], name: "execute", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "payable", type: "function" }, { inputs: [ { internalType: "address", name: "account", type: "address" }, { internalType: "uint256", name: "timepoint", type: "uint256" } ], name: "getVotes", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "account", type: "address" }, { internalType: "uint256", name: "timepoint", type: "uint256" }, { internalType: "bytes", name: "params", type: "bytes" } ], name: "getVotesWithParams", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" }, { internalType: "address", name: "account", type: "address" } ], name: "hasVoted", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address[]", name: "targets", type: "address[]" }, { internalType: "uint256[]", name: "values", type: "uint256[]" }, { internalType: "bytes[]", name: "calldatas", type: "bytes[]" }, { internalType: "bytes32", name: "descriptionHash", type: "bytes32" } ], name: "hashProposal", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "pure", type: "function" }, { inputs: [], name: "name", outputs: [ { internalType: "string", name: "", type: "string" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "", type: "address" }, { internalType: "address", name: "", type: "address" }, { internalType: "uint256[]", name: "", type: "uint256[]" }, { internalType: "uint256[]", name: "", type: "uint256[]" }, { internalType: "bytes", name: "", type: "bytes" } ], name: "onERC1155BatchReceived", outputs: [ { internalType: "bytes4", name: "", type: "bytes4" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "", type: "address" }, { internalType: "address", name: "", type: "address" }, { internalType: "uint256", name: "", type: "uint256" }, { internalType: "uint256", name: "", type: "uint256" }, { internalType: "bytes", name: "", type: "bytes" } ], name: "onERC1155Received", outputs: [ { internalType: "bytes4", name: "", type: "bytes4" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "", type: "address" }, { internalType: "address", name: "", type: "address" }, { internalType: "uint256", name: "", type: "uint256" }, { internalType: "bytes", name: "", type: "bytes" } ], name: "onERC721Received", outputs: [ { internalType: "bytes4", name: "", type: "bytes4" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" } ], name: "proposalDeadline", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" } ], name: "proposalProposer", outputs: [ { internalType: "address", name: "", type: "address" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" } ], name: "proposalSnapshot", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "proposalThreshold", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address[]", name: "targets", type: "address[]" }, { internalType: "uint256[]", name: "values", type: "uint256[]" }, { internalType: "bytes[]", name: "calldatas", type: "bytes[]" }, { internalType: "string", name: "description", type: "string" } ], name: "propose", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "uint256", name: "timepoint", type: "uint256" } ], name: "quorum", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "target", type: "address" }, { internalType: "uint256", name: "value", type: "uint256" }, { internalType: "bytes", name: "data", type: "bytes" } ], name: "relay", outputs: [], stateMutability: "payable", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" } ], name: "state", outputs: [ { internalType: "enum IGovernor.ProposalState", name: "", type: "uint8" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "bytes4", name: "interfaceId", type: "bytes4" } ], name: "supportsInterface", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "token", outputs: [ { internalType: "contract ERC20VotesComp", name: "", type: "address" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "version", outputs: [ { internalType: "string", name: "", type: "string" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "votingDelay", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "votingPeriod", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { stateMutability: "payable", type: "receive" } ]; class GovernorVotesComp__factory { static createInterface() { return new ethers.Interface(_abi$1z); } static connect(address, runner) { return new ethers.Contract(address, _abi$1z, runner); } } __publicField$1z(GovernorVotesComp__factory, "abi", _abi$1z); var __defProp$1y = Object.defineProperty; var __defNormalProp$1y = (obj, key, value) => key in obj ? __defProp$1y(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$1y = (obj, key, value) => { __defNormalProp$1y(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$1y = [ { inputs: [], name: "Empty", type: "error" }, { inputs: [], name: "InvalidShortString", type: "error" }, { inputs: [ { internalType: "string", name: "str", type: "string" } ], name: "StringTooLong", type: "error" }, { anonymous: false, inputs: [], name: "EIP712DomainChanged", type: "event" }, { anonymous: false, inputs: [ { indexed: false, internalType: "uint256", name: "proposalId", type: "uint256" } ], name: "ProposalCanceled", type: "event" }, { anonymous: false, inputs: [ { indexed: false, internalType: "uint256", name: "proposalId", type: "uint256" }, { indexed: false, internalType: "address", name: "proposer", type: "address" }, { indexed: false, internalType: "address[]", name: "targets", type: "address[]" }, { indexed: false, internalType: "uint256[]", name: "values", type: "uint256[]" }, { indexed: false, internalType: "string[]", name: "signatures", type: "string[]" }, { indexed: false, internalType: "bytes[]", name: "calldatas", type: "bytes[]" }, { indexed: false, internalType: "uint256", name: "voteStart", type: "uint256" }, { indexed: false, internalType: "uint256", name: "voteEnd", type: "uint256" }, { indexed: false, internalType: "string", name: "description", type: "string" } ], name: "ProposalCreated", type: "event" }, { anonymous: false, inputs: [ { indexed: false, internalType: "uint256", name: "proposalId", type: "uint256" } ], name: "ProposalExecuted", type: "event" }, { anonymous: false, inputs: [ { indexed: false, internalType: "uint256", name: "oldQuorumNumerator", type: "uint256" }, { indexed: false, internalType: "uint256", name: "newQuorumNumerator", type: "uint256" } ], name: "QuorumNumeratorUpdated", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "voter", type: "address" }, { indexed: false, internalType: "uint256", name: "proposalId", type: "uint256" }, { indexed: false, internalType: "uint8", name: "support", type: "uint8" }, { indexed: false, internalType: "uint256", name: "weight", type: "uint256" }, { indexed: false, internalType: "string", name: "reason", type: "string" } ], name: "VoteCast", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "voter", type: "address" }, { indexed: false, internalType: "uint256", name: "proposalId", type: "uint256" }, { indexed: false, internalType: "uint8", name: "support", type: "uint8" }, { indexed: false, internalType: "uint256", name: "weight", type: "uint256" }, { indexed: false, internalType: "string", name: "reason", type: "string" }, { indexed: false, internalType: "bytes", name: "params", type: "bytes" } ], name: "VoteCastWithParams", type: "event" }, { inputs: [], name: "BALLOT_TYPEHASH", outputs: [ { internalType: "bytes32", name: "", type: "bytes32" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "CLOCK_MODE", outputs: [ { internalType: "string", name: "", type: "string" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "COUNTING_MODE", outputs: [ { internalType: "string", name: "", type: "string" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "EXTENDED_BALLOT_TYPEHASH", outputs: [ { internalType: "bytes32", name: "", type: "bytes32" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address[]", name: "targets", type: "address[]" }, { internalType: "uint256[]", name: "values", type: "uint256[]" }, { internalType: "bytes[]", name: "calldatas", type: "bytes[]" }, { internalType: "bytes32", name: "descriptionHash", type: "bytes32" } ], name: "cancel", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" }, { internalType: "uint8", name: "support", type: "uint8" } ], name: "castVote", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" }, { internalType: "uint8", name: "support", type: "uint8" }, { internalType: "uint8", name: "v", type: "uint8" }, { internalType: "bytes32", name: "r", type: "bytes32" }, { internalType: "bytes32", name: "s", type: "bytes32" } ], name: "castVoteBySig", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" }, { internalType: "uint8", name: "support", type: "uint8" }, { internalType: "string", name: "reason", type: "string" } ], name: "castVoteWithReason", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" }, { internalType: "uint8", name: "support", type: "uint8" }, { internalType: "string", name: "reason", type: "string" }, { internalType: "bytes", name: "params", type: "bytes" } ], name: "castVoteWithReasonAndParams", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" }, { internalType: "uint8", name: "support", type: "uint8" }, { internalType: "string", name: "reason", type: "string" }, { internalType: "bytes", name: "params", type: "bytes" }, { internalType: "uint8", name: "v", type: "uint8" }, { internalType: "bytes32", name: "r", type: "bytes32" }, { internalType: "bytes32", name: "s", type: "bytes32" } ], name: "castVoteWithReasonAndParamsBySig", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [], name: "clock", outputs: [ { internalType: "uint48", name: "", type: "uint48" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "eip712Domain", outputs: [ { internalType: "bytes1", name: "fields", type: "bytes1" }, { internalType: "string", name: "name", type: "string" }, { internalType: "string", name: "version", type: "string" }, { internalType: "uint256", name: "chainId", type: "uint256" }, { internalType: "address", name: "verifyingContract", type: "address" }, { internalType: "bytes32", name: "salt", type: "bytes32" }, { internalType: "uint256[]", name: "extensions", type: "uint256[]" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address[]", name: "targets", type: "address[]" }, { internalType: "uint256[]", name: "values", type: "uint256[]" }, { internalType: "bytes[]", name: "calldatas", type: "bytes[]" }, { internalType: "bytes32", name: "descriptionHash", type: "bytes32" } ], name: "execute", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "payable", type: "function" }, { inputs: [ { internalType: "address", name: "account", type: "address" }, { internalType: "uint256", name: "timepoint", type: "uint256" } ], name: "getVotes", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "account", type: "address" }, { internalType: "uint256", name: "timepoint", type: "uint256" }, { internalType: "bytes", name: "params", type: "bytes" } ], name: "getVotesWithParams", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" }, { internalType: "address", name: "account", type: "address" } ], name: "hasVoted", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address[]", name: "targets", type: "address[]" }, { internalType: "uint256[]", name: "values", type: "uint256[]" }, { internalType: "bytes[]", name: "calldatas", type: "bytes[]" }, { internalType: "bytes32", name: "descriptionHash", type: "bytes32" } ], name: "hashProposal", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "pure", type: "function" }, { inputs: [], name: "name", outputs: [ { internalType: "string", name: "", type: "string" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "", type: "address" }, { internalType: "address", name: "", type: "address" }, { internalType: "uint256[]", name: "", type: "uint256[]" }, { internalType: "uint256[]", name: "", type: "uint256[]" }, { internalType: "bytes", name: "", type: "bytes" } ], name: "onERC1155BatchReceived", outputs: [ { internalType: "bytes4", name: "", type: "bytes4" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "", type: "address" }, { internalType: "address", name: "", type: "address" }, { internalType: "uint256", name: "", type: "uint256" }, { internalType: "uint256", name: "", type: "uint256" }, { internalType: "bytes", name: "", type: "bytes" } ], name: "onERC1155Received", outputs: [ { internalType: "bytes4", name: "", type: "bytes4" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "", type: "address" }, { internalType: "address", name: "", type: "address" }, { internalType: "uint256", name: "", type: "uint256" }, { internalType: "bytes", name: "", type: "bytes" } ], name: "onERC721Received", outputs: [ { internalType: "bytes4", name: "", type: "bytes4" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" } ], name: "proposalDeadline", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" } ], name: "proposalProposer", outputs: [ { internalType: "address", name: "", type: "address" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" } ], name: "proposalSnapshot", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "proposalThreshold", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address[]", name: "targets", type: "address[]" }, { internalType: "uint256[]", name: "values", type: "uint256[]" }, { internalType: "bytes[]", name: "calldatas", type: "bytes[]" }, { internalType: "string", name: "description", type: "string" } ], name: "propose", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "uint256", name: "timepoint", type: "uint256" } ], name: "quorum", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "quorumDenominator", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "uint256", name: "timepoint", type: "uint256" } ], name: "quorumNumerator", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "quorumNumerator", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "target", type: "address" }, { internalType: "uint256", name: "value", type: "uint256" }, { internalType: "bytes", name: "data", type: "bytes" } ], name: "relay", outputs: [], stateMutability: "payable", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" } ], name: "state", outputs: [ { internalType: "enum IGovernor.ProposalState", name: "", type: "uint8" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "bytes4", name: "interfaceId", type: "bytes4" } ], name: "supportsInterface", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "token", outputs: [ { internalType: "contract IERC5805", name: "", type: "address" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "uint256", name: "newQuorumNumerator", type: "uint256" } ], name: "updateQuorumNumerator", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [], name: "version", outputs: [ { internalType: "string", name: "", type: "string" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "votingDelay", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "votingPeriod", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { stateMutability: "payable", type: "receive" } ]; class GovernorVotesQuorumFraction__factory { static createInterface() { return new ethers.Interface(_abi$1y); } static connect(address, runner) { return new ethers.Contract( address, _abi$1y, runner ); } } __publicField$1y(GovernorVotesQuorumFraction__factory, "abi", _abi$1y); var __defProp$1x = Object.defineProperty; var __defNormalProp$1x = (obj, key, value) => key in obj ? __defProp$1x(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$1x = (obj, key, value) => { __defNormalProp$1x(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$1x = [ { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "sender", type: "address" }, { indexed: true, internalType: "address", name: "executor", type: "address" }, { indexed: true, internalType: "bytes32", name: "messageId", type: "bytes32" }, { indexed: false, internalType: "bool", name: "status", type: "bool" } ], name: "AffirmationCompleted", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "sender", type: "address" }, { indexed: true, internalType: "address", name: "executor", type: "address" }, { indexed: true, internalType: "bytes32", name: "messageId", type: "bytes32" }, { indexed: false, internalType: "bool", name: "status", type: "bool" } ], name: "RelayedMessage", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "bytes32", name: "messageId", type: "bytes32" }, { indexed: false, internalType: "bytes", name: "encodedData", type: "bytes" } ], name: "UserRequestForAffirmation", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "bytes32", name: "messageId", type: "bytes32" }, { indexed: false, internalType: "bytes", name: "encodedData", type: "bytes" } ], name: "UserRequestForSignature", type: "event" }, { inputs: [], name: "destinationChainId", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "bytes32", name: "_messageId", type: "bytes32" } ], name: "failedMessageDataHash", outputs: [ { internalType: "bytes32", name: "", type: "bytes32" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "bytes32", name: "_messageId", type: "bytes32" } ], name: "failedMessageReceiver", outputs: [ { internalType: "address", name: "", type: "address" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "bytes32", name: "_messageId", type: "bytes32" } ], name: "failedMessageSender", outputs: [ { internalType: "address", name: "", type: "address" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "maxGasPerTx", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "bytes32", name: "_messageId", type: "bytes32" } ], name: "messageCallStatus", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "messageId", outputs: [ { internalType: "bytes32", name: "", type: "bytes32" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "messageSender", outputs: [ { internalType: "address", name: "", type: "address" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "messageSourceChainId", outputs: [ { internalType: "bytes32", name: "", type: "bytes32" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "_contract", type: "address" }, { internalType: "bytes", name: "_data", type: "bytes" }, { internalType: "uint256", name: "_gas", type: "uint256" } ], name: "requireToConfirmMessage", outputs: [ { internalType: "bytes32", name: "", type: "bytes32" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "_contract", type: "address" }, { internalType: "bytes", name: "_data", type: "bytes" }, { internalType: "uint256", name: "_gas", type: "uint256" } ], name: "requireToPassMessage", outputs: [ { internalType: "bytes32", name: "", type: "bytes32" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [], name: "sourceChainId", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "transactionHash", outputs: [ { internalType: "bytes32", name: "", type: "bytes32" } ], stateMutability: "view", type: "function" } ]; class IAMB__factory { static createInterface() { return new ethers.Interface(_abi$1x); } static connect(address, runner) { return new ethers.Contract(address, _abi$1x, runner); } } __publicField$1x(IAMB__factory, "abi", _abi$1x); var __defProp$1w = Object.defineProperty; var __defNormalProp$1w = (obj, key, value) => key in obj ? __defProp$1w(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$1w = (obj, key, value) => { __defNormalProp$1w(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$1w = [ { anonymous: false, inputs: [ { indexed: true, internalType: "bytes32", name: "role", type: "bytes32" }, { indexed: true, internalType: "bytes32", name: "previousAdminRole", type: "bytes32" }, { indexed: true, internalType: "bytes32", name: "newAdminRole", type: "bytes32" } ], name: "RoleAdminChanged", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "bytes32", name: "role", type: "bytes32" }, { indexed: true, internalType: "address", name: "account", type: "address" }, { indexed: true, internalType: "address", name: "sender", type: "address" } ], name: "RoleGranted", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "bytes32", name: "role", type: "bytes32" }, { indexed: true, internalType: "address", name: "account", type: "address" }, { indexed: true, internalType: "address", name: "sender", type: "address" } ], name: "RoleRevoked", type: "event" }, { inputs: [ { internalType: "bytes32", name: "role", type: "bytes32" } ], name: "getRoleAdmin", outputs: [ { internalType: "bytes32", name: "", type: "bytes32" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "bytes32", name: "role", type: "bytes32" }, { internalType: "address", name: "account", type: "address" } ], name: "grantRole", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "bytes32", name: "role", type: "bytes32" }, { internalType: "address", name: "account", type: "address" } ], name: "hasRole", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "bytes32", name: "role", type: "bytes32" }, { internalType: "address", name: "account", type: "address" } ], name: "renounceRole", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "bytes32", name: "role", type: "bytes32" }, { internalType: "address", name: "account", type: "address" } ], name: "revokeRole", outputs: [], stateMutability: "nonpayable", type: "function" } ]; class IAccessControl__factory { static createInterface() { return new ethers.Interface(_abi$1w); } static connect(address, runner) { return new ethers.Contract(address, _abi$1w, runner); } } __publicField$1w(IAccessControl__factory, "abi", _abi$1w); var __defProp$1v = Object.defineProperty; var __defNormalProp$1v = (obj, key, value) => key in obj ? __defProp$1v(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$1v = (obj, key, value) => { __defNormalProp$1v(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$1v = [ { anonymous: false, inputs: [], name: "DefaultAdminDelayChangeCanceled", type: "event" }, { anonymous: false, inputs: [ { indexed: false, internalType: "uint48", name: "newDelay", type: "uint48" }, { indexed: false, internalType: "uint48", name: "effectSchedule", type: "uint48" } ], name: "DefaultAdminDelayChangeScheduled", type: "event" }, { anonymous: false, inputs: [], name: "DefaultAdminTransferCanceled", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "newAdmin", type: "address" }, { indexed: false, internalType: "uint48", name: "acceptSchedule", type: "uint48" } ], name: "DefaultAdminTransferScheduled", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "bytes32", name: "role", type: "bytes32" }, { indexed: true, internalType: "bytes32", name: "previousAdminRole", type: "bytes32" }, { indexed: true, internalType: "bytes32", name: "newAdminRole", type: "bytes32" } ], name: "RoleAdminChanged", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "bytes32", name: "role", type: "bytes32" }, { indexed: true, internalType: "address", name: "account", type: "address" }, { indexed: true, internalType: "address", name: "sender", type: "address" } ], name: "RoleGranted", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "bytes32", name: "role", type: "bytes32" }, { indexed: true, internalType: "address", name: "account", type: "address" }, { indexed: true, internalType: "address", name: "sender", type: "address" } ], name: "RoleRevoked", type: "event" }, { inputs: [], name: "acceptDefaultAdminTransfer", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "newAdmin", type: "address" } ], name: "beginDefaultAdminTransfer", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [], name: "cancelDefaultAdminTransfer", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "uint48", name: "newDelay", type: "uint48" } ], name: "changeDefaultAdminDelay", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [], name: "defaultAdmin", outputs: [ { internalType: "address", name: "", type: "address" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "defaultAdminDelay", outputs: [ { internalType: "uint48", name: "", type: "uint48" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "defaultAdminDelayIncreaseWait", outputs: [ { internalType: "uint48", name: "", type: "uint48" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "bytes32", name: "role", type: "bytes32" } ], name: "getRoleAdmin", outputs: [ { internalType: "bytes32", name: "", type: "bytes32" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "bytes32", name: "role", type: "bytes32" }, { internalType: "address", name: "account", type: "address" } ], name: "grantRole", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "bytes32", name: "role", type: "bytes32" }, { internalType: "address", name: "account", type: "address" } ], name: "hasRole", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "pendingDefaultAdmin", outputs: [ { internalType: "address", name: "newAdmin", type: "address" }, { internalType: "uint48", name: "acceptSchedule", type: "uint48" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "pendingDefaultAdminDelay", outputs: [ { internalType: "uint48", name: "newDelay", type: "uint48" }, { internalType: "uint48", name: "effectSchedule", type: "uint48" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "bytes32", name: "role", type: "bytes32" }, { internalType: "address", name: "account", type: "address" } ], name: "renounceRole", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "bytes32", name: "role", type: "bytes32" }, { internalType: "address", name: "account", type: "address" } ], name: "revokeRole", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [], name: "rollbackDefaultAdminDelay", outputs: [], stateMutability: "nonpayable", type: "function" } ]; class IAccessControlDefaultAdminRules__factory { static createInterface() { return new ethers.Interface(_abi$1v); } static connect(address, runner) { return new ethers.Contract( address, _abi$1v, runner ); } } __publicField$1v(IAccessControlDefaultAdminRules__factory, "abi", _abi$1v); var __defProp$1u = Object.defineProperty; var __defNormalProp$1u = (obj, key, value) => key in obj ? __defProp$1u(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$1u = (obj, key, value) => { __defNormalProp$1u(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$1u = [ { anonymous: false, inputs: [ { indexed: true, internalType: "bytes32", name: "role", type: "bytes32" }, { indexed: true, internalType: "bytes32", name: "previousAdminRole", type: "bytes32" }, { indexed: true, internalType: "bytes32", name: "newAdminRole", type: "bytes32" } ], name: "RoleAdminChanged", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "bytes32", name: "role", type: "bytes32" }, { indexed: true, internalType: "address", name: "account", type: "address" }, { indexed: true, internalType: "address", name: "sender", type: "address" } ], name: "RoleGranted", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "bytes32", name: "role", type: "bytes32" }, { indexed: true, internalType: "address", name: "account", type: "address" }, { indexed: true, internalType: "address", name: "sender", type: "address" } ], name: "RoleRevoked", type: "event" }, { inputs: [ { internalType: "bytes32", name: "role", type: "bytes32" } ], name: "getRoleAdmin", outputs: [ { internalType: "bytes32", name: "", type: "bytes32" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "bytes32", name: "role", type: "bytes32" }, { internalType: "uint256", name: "index", type: "uint256" } ], name: "getRoleMember", outputs: [ { internalType: "address", name: "", type: "address" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "bytes32", name: "role", type: "bytes32" } ], name: "getRoleMemberCount", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "bytes32", name: "role", type: "bytes32" }, { internalType: "address", name: "account", type: "address" } ], name: "grantRole", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "bytes32", name: "role", type: "bytes32" }, { internalType: "address", name: "account", type: "address" } ], name: "hasRole", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "bytes32", name: "role", type: "bytes32" }, { internalType: "address", name: "account", type: "address" } ], name: "renounceRole", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "bytes32", name: "role", type: "bytes32" }, { internalType: "address", name: "account", type: "address" } ], name: "revokeRole", outputs: [], stateMutability: "nonpayable", type: "function" } ]; class IAccessControlEnumerable__factory { static createInterface() { return new ethers.Interface(_abi$1u); } static connect(address, runner) { return new ethers.Contract( address, _abi$1u, runner ); } } __publicField$1u(IAccessControlEnumerable__factory, "abi", _abi$1u); var __defProp$1t = Object.defineProperty; var __defNormalProp$1t = (obj, key, value) => key in obj ? __defProp$1t(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$1t = (obj, key, value) => { __defNormalProp$1t(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$1t = [ { anonymous: false, inputs: [ { indexed: false, internalType: "address", name: "caller", type: "address" }, { indexed: true, internalType: "address", name: "destination", type: "address" }, { indexed: true, internalType: "uint256", name: "uniqueId", type: "uint256" }, { indexed: true, internalType: "uint256", name: "batchNumber", type: "uint256" }, { indexed: false, internalType: "uint256", name: "indexInBatch", type: "uint256" }, { indexed: false, internalType: "uint256", name: "arbBlockNum", type: "uint256" }, { indexed: false, internalType: "uint256", name: "ethBlockNum", type: "uint256" }, { indexed: false, internalType: "uint256", name: "timestamp", type: "uint256" }, { indexed: false, internalType: "uint256", name: "callvalue", type: "uint256" }, { indexed: false, internalType: "bytes", name: "data", type: "bytes" } ], name: "L2ToL1Transaction", type: "event" }, { anonymous: false, inputs: [ { indexed: false, internalType: "address", name: "caller", type: "address" }, { indexed: true, internalType: "address", name: "destination", type: "address" }, { indexed: true, internalType: "uint256", name: "hash", type: "uint256" }, { indexed: true, internalType: "uint256", name: "position", type: "uint256" }, { indexed: false, internalType: "uint256", name: "arbBlockNum", type: "uint256" }, { indexed: false, internalType: "uint256", name: "ethBlockNum", type: "uint256" }, { indexed: false, internalType: "uint256", name: "timestamp", type: "uint256" }, { indexed: false, internalType: "uint256", name: "callvalue", type: "uint256" }, { indexed: false, internalType: "bytes", name: "data", type: "bytes" } ], name: "L2ToL1Tx", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "uint256", name: "reserved", type: "uint256" }, { indexed: true, internalType: "bytes32", name: "hash", type: "bytes32" }, { indexed: true, internalType: "uint256", name: "position", type: "uint256" } ], name: "SendMerkleUpdate", type: "event" }, { inputs: [ { internalType: "uint256", name: "arbBlockNum", type: "uint256" } ], name: "arbBlockHash", outputs: [ { internalType: "bytes32", name: "", type: "bytes32" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "arbBlockNumber", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "arbChainID", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "arbOSVersion", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "getStorageGasAvailable", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "isTopLevelCall", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "sender", type: "address" }, { internalType: "address", name: "unused", type: "address" } ], name: "mapL1SenderContractAddressToL2Alias", outputs: [ { internalType: "address", name: "", type: "address" } ], stateMutability: "pure", type: "function" }, { inputs: [], name: "myCallersAddressWithoutAliasing", outputs: [ { internalType: "address", name: "", type: "address" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "sendMerkleTreeState", outputs: [ { internalType: "uint256", name: "size", type: "uint256" }, { internalType: "bytes32", name: "root", type: "bytes32" }, { internalType: "bytes32[]", name: "partials", type: "bytes32[]" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "destination", type: "address" }, { internalType: "bytes", name: "data", type: "bytes" } ], name: "sendTxToL1", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "payable", type: "function" }, { inputs: [], name: "wasMyCallersAddressAliased", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "destination", type: "address" } ], name: "withdrawEth", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "payable", type: "function" } ]; class IArbSys__factory { static createInterface() { return new ethers.Interface(_abi$1t); } static connect(address, runner) { return new ethers.Contract(address, _abi$1t, runner); } } __publicField$1t(IArbSys__factory, "abi", _abi$1t); var __defProp$1s = Object.defineProperty; var __defNormalProp$1s = (obj, key, value) => key in obj ? __defProp$1s(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$1s = (obj, key, value) => { __defNormalProp$1s(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$1s = [ { inputs: [], name: "implementation", outputs: [ { internalType: "address", name: "", type: "address" } ], stateMutability: "view", type: "function" } ]; class IBeacon__factory { static createInterface() { return new ethers.Interface(_abi$1s); } static connect(address, runner) { return new ethers.Contract(address, _abi$1s, runner); } } __publicField$1s(IBeacon__factory, "abi", _abi$1s); var __defProp$1r = Object.defineProperty; var __defNormalProp$1r = (obj, key, value) => key in obj ? __defProp$1r(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$1r = (obj, key, value) => { __defNormalProp$1r(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$1r = [ { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "outbox", type: "address" }, { indexed: true, internalType: "address", name: "to", type: "address" }, { indexed: false, internalType: "uint256", name: "value", type: "uint256" }, { indexed: false, internalType: "bytes", name: "data", type: "bytes" } ], name: "BridgeCallTriggered", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "inbox", type: "address" }, { indexed: false, internalType: "bool", name: "enabled", type: "bool" } ], name: "InboxToggle", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "uint256", name: "messageIndex", type: "uint256" }, { indexed: true, internalType: "bytes32", name: "beforeInboxAcc", type: "bytes32" }, { indexed: false, internalType: "address", name: "inbox", type: "address" }, { indexed: false, internalType: "uint8", name: "kind", type: "uint8" }, { indexed: false, internalType: "address", name: "sender", type: "address" }, { indexed: false, internalType: "bytes32", name: "messageDataHash", type: "bytes32" }, { indexed: false, internalType: "uint256", name: "baseFeeL1", type: "uint256" }, { indexed: false, internalType: "uint64", name: "timestamp", type: "uint64" } ], name: "MessageDelivered", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "outbox", type: "address" }, { indexed: false, internalType: "bool", name: "enabled", type: "bool" } ], name: "OutboxToggle", type: "event" }, { anonymous: false, inputs: [ { indexed: false, internalType: "address", name: "newSequencerInbox", type: "address" } ], name: "SequencerInboxUpdated", type: "event" }, { inputs: [], name: "activeOutbox", outputs: [ { internalType: "address", name: "", type: "address" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "uint256", name: "", type: "uint256" } ], name: "allowedDelayedInboxList", outputs: [ { internalType: "address", name: "", type: "address" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "inbox", type: "address" } ], name: "allowedDelayedInboxes", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "uint256", name: "", type: "uint256" } ], name: "allowedOutboxList", outputs: [ { internalType: "address", name: "", type: "address" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "outbox", type: "address" } ], name: "allowedOutboxes", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "uint256", name: "", type: "uint256" } ], name: "delayedInboxAccs", outputs: [ { internalType: "bytes32", name: "", type: "bytes32" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "delayedMessageCount", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "uint8", name: "kind", type: "uint8" }, { internalType: "address", name: "sender", type: "address" }, { internalType: "bytes32", name: "messageDataHash", type: "bytes32" } ], name: "enqueueDelayedMessage", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "payable", type: "function" }, { inputs: [ { internalType: "bytes32", name: "dataHash", type: "bytes32" }, { internalType: "uint256", name: "afterDelayedMessagesRead", type: "uint256" }, { internalType: "uint256", name: "prevMessageCount", type: "uint256" }, { internalType: "uint256", name: "newMessageCount", type: "uint256" } ], name: "enqueueSequencerMessage", outputs: [ { internalType: "uint256", name: "seqMessageIndex", type: "uint256" }, { internalType: "bytes32", name: "beforeAcc", type: "bytes32" }, { internalType: "bytes32", name: "delayedAcc", type: "bytes32" }, { internalType: "bytes32", name: "acc", type: "bytes32" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "to", type: "address" }, { internalType: "uint256", name: "value", type: "uint256" }, { internalType: "bytes", name: "data", type: "bytes" } ], name: "executeCall", outputs: [ { internalType: "bool", name: "success", type: "bool" }, { internalType: "bytes", name: "returnData", type: "bytes" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "rollup_", type: "address" } ], name: "initialize", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [], name: "rollup", outputs: [ { internalType: "address", name: "", type: "address" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "sequencerInbox", outputs: [ { internalType: "address", name: "", type: "address" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "uint256", name: "", type: "uint256" } ], name: "sequencerInboxAccs", outputs: [ { internalType: "bytes32", name: "", type: "bytes32" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "sequencerMessageCount", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "sequencerReportedSubMessageCount", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "inbox", type: "address" }, { internalType: "bool", name: "enabled", type: "bool" } ], name: "setDelayedInbox", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "inbox", type: "address" }, { internalType: "bool", name: "enabled", type: "bool" } ], name: "setOutbox", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "_sequencerInbox", type: "address" } ], name: "setSequencerInbox", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "batchPoster", type: "address" }, { internalType: "bytes32", name: "dataHash", type: "bytes32" } ], name: "submitBatchSpendingReport", outputs: [ { internalType: "uint256", name: "msgNum", type: "uint256" } ], stateMutability: "nonpayable", type: "function" } ]; class IBridge__factory { static createInterface() { return new ethers.Interface(_abi$1r); } static connect(address, runner) { return new ethers.Contract(address, _abi$1r, runner); } } __publicField$1r(IBridge__factory, "abi", _abi$1r); var __defProp$1q = Object.defineProperty; var __defNormalProp$1q = (obj, key, value) => key in obj ? __defProp$1q(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$1q = (obj, key, value) => { __defNormalProp$1q(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$1q = [ { anonymous: false, inputs: [ { indexed: true, internalType: "bytes32", name: "txHash", type: "bytes32" }, { indexed: true, internalType: "address", name: "target", type: "address" }, { indexed: false, internalType: "uint256", name: "value", type: "uint256" }, { indexed: false, internalType: "string", name: "signature", type: "string" }, { indexed: false, internalType: "bytes", name: "data", type: "bytes" }, { indexed: false, internalType: "uint256", name: "eta", type: "uint256" } ], name: "CancelTransaction", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "bytes32", name: "txHash", type: "bytes32" }, { indexed: true, internalType: "address", name: "target", type: "address" }, { indexed: false, internalType: "uint256", name: "value", type: "uint256" }, { indexed: false, internalType: "string", name: "signature", type: "string" }, { indexed: false, internalType: "bytes", name: "data", type: "bytes" }, { indexed: false, internalType: "uint256", name: "eta", type: "uint256" } ], name: "ExecuteTransaction", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "newAdmin", type: "address" } ], name: "NewAdmin", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "uint256", name: "newDelay", type: "uint256" } ], name: "NewDelay", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "newPendingAdmin", type: "address" } ], name: "NewPendingAdmin", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "bytes32", name: "txHash", type: "bytes32" }, { indexed: true, internalType: "address", name: "target", type: "address" }, { indexed: false, internalType: "uint256", name: "value", type: "uint256" }, { indexed: false, internalType: "string", name: "signature", type: "string" }, { indexed: false, internalType: "bytes", name: "data", type: "bytes" }, { indexed: false, internalType: "uint256", name: "eta", type: "uint256" } ], name: "QueueTransaction", type: "event" }, { inputs: [], name: "GRACE_PERIOD", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "MAXIMUM_DELAY", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "MINIMUM_DELAY", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "acceptAdmin", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [], name: "admin", outputs: [ { internalType: "address", name: "", type: "address" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "target", type: "address" }, { internalType: "uint256", name: "value", type: "uint256" }, { internalType: "string", name: "signature", type: "string" }, { internalType: "bytes", name: "data", type: "bytes" }, { internalType: "uint256", name: "eta", type: "uint256" } ], name: "cancelTransaction", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [], name: "delay", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "target", type: "address" }, { internalType: "uint256", name: "value", type: "uint256" }, { internalType: "string", name: "signature", type: "string" }, { internalType: "bytes", name: "data", type: "bytes" }, { internalType: "uint256", name: "eta", type: "uint256" } ], name: "executeTransaction", outputs: [ { internalType: "bytes", name: "", type: "bytes" } ], stateMutability: "payable", type: "function" }, { inputs: [], name: "pendingAdmin", outputs: [ { internalType: "address", name: "", type: "address" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "target", type: "address" }, { internalType: "uint256", name: "value", type: "uint256" }, { internalType: "string", name: "signature", type: "string" }, { internalType: "bytes", name: "data", type: "bytes" }, { internalType: "uint256", name: "eta", type: "uint256" } ], name: "queueTransaction", outputs: [ { internalType: "bytes32", name: "", type: "bytes32" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "bytes32", name: "", type: "bytes32" } ], name: "queuedTransactions", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "uint256", name: "", type: "uint256" } ], name: "setDelay", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "", type: "address" } ], name: "setPendingAdmin", outputs: [], stateMutability: "nonpayable", type: "function" }, { stateMutability: "payable", type: "receive" } ]; class ICompoundTimelock__factory { static createInterface() { return new ethers.Interface(_abi$1q); } static connect(address, runner) { return new ethers.Contract(address, _abi$1q, runner); } } __publicField$1q(ICompoundTimelock__factory, "abi", _abi$1q); var __defProp$1p = Object.defineProperty; var __defNormalProp$1p = (obj, key, value) => key in obj ? __defProp$1p(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$1p = (obj, key, value) => { __defNormalProp$1p(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$1p = [ { anonymous: false, inputs: [ { indexed: true, internalType: "bytes32", name: "msgHash", type: "bytes32" } ], name: "FailedRelayedMessage", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "bytes32", name: "msgHash", type: "bytes32" } ], name: "RelayedMessage", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "target", type: "address" }, { indexed: false, internalType: "address", name: "sender", type: "address" }, { indexed: false, internalType: "bytes", name: "message", type: "bytes" }, { indexed: false, internalType: "uint256", name: "messageNonce", type: "uint256" }, { indexed: false, internalType: "uint256", name: "gasLimit", type: "uint256" } ], name: "SentMessage", type: "event" }, { inputs: [ { internalType: "address", name: "_target", type: "address" }, { internalType: "bytes", name: "_message", type: "bytes" }, { internalType: "uint32", name: "_gasLimit", type: "uint32" } ], name: "sendMessage", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [], name: "xDomainMessageSender", outputs: [ { internalType: "address", name: "", type: "address" } ], stateMutability: "view", type: "function" } ]; class ICrossDomainMessenger__factory { static createInterface() { return new ethers.Interface(_abi$1p); } static connect(address, runner) { return new ethers.Contract( address, _abi$1p, runner ); } } __publicField$1p(ICrossDomainMessenger__factory, "abi", _abi$1p); var __defProp$1o = Object.defineProperty; var __defNormalProp$1o = (obj, key, value) => key in obj ? __defProp$1o(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$1o = (obj, key, value) => { __defNormalProp$1o(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$1o = [ { anonymous: false, inputs: [ { indexed: true, internalType: "uint256", name: "messageNum", type: "uint256" }, { indexed: false, internalType: "bytes", name: "data", type: "bytes" } ], name: "InboxMessageDelivered", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "uint256", name: "messageNum", type: "uint256" } ], name: "InboxMessageDeliveredFromOrigin", type: "event" } ]; class IDelayedMessageProvider__factory { static createInterface() { return new ethers.Interface(_abi$1o); } static connect(address, runner) { return new ethers.Contract( address, _abi$1o, runner ); } } __publicField$1o(IDelayedMessageProvider__factory, "abi", _abi$1o); var __defProp$1n = Object.defineProperty; var __defNormalProp$1n = (obj, key, value) => key in obj ? __defProp$1n(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$1n = (obj, key, value) => { __defNormalProp$1n(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$1n = [ { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "account", type: "address" }, { indexed: true, internalType: "address", name: "operator", type: "address" }, { indexed: false, internalType: "bool", name: "approved", type: "bool" } ], name: "ApprovalForAll", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "operator", type: "address" }, { indexed: true, internalType: "address", name: "from", type: "address" }, { indexed: true, internalType: "address", name: "to", type: "address" }, { indexed: false, internalType: "uint256[]", name: "ids", type: "uint256[]" }, { indexed: false, internalType: "uint256[]", name: "values", type: "uint256[]" } ], name: "TransferBatch", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "operator", type: "address" }, { indexed: true, internalType: "address", name: "from", type: "address" }, { indexed: true, internalType: "address", name: "to", type: "address" }, { indexed: false, internalType: "uint256", name: "id", type: "uint256" }, { indexed: false, internalType: "uint256", name: "value", type: "uint256" } ], name: "TransferSingle", type: "event" }, { anonymous: false, inputs: [ { indexed: false, internalType: "string", name: "value", type: "string" }, { indexed: true, internalType: "uint256", name: "id", type: "uint256" } ], name: "URI", type: "event" }, { inputs: [ { internalType: "address", name: "account", type: "address" }, { internalType: "uint256", name: "id", type: "uint256" } ], name: "balanceOf", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address[]", name: "accounts", type: "address[]" }, { internalType: "uint256[]", name: "ids", type: "uint256[]" } ], name: "balanceOfBatch", outputs: [ { internalType: "uint256[]", name: "", type: "uint256[]" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "account", type: "address" }, { internalType: "address", name: "operator", type: "address" } ], name: "isApprovedForAll", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "from", type: "address" }, { internalType: "address", name: "to", type: "address" }, { internalType: "uint256[]", name: "ids", type: "uint256[]" }, { internalType: "uint256[]", name: "amounts", type: "uint256[]" }, { internalType: "bytes", name: "data", type: "bytes" } ], name: "safeBatchTransferFrom", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "from", type: "address" }, { internalType: "address", name: "to", type: "address" }, { internalType: "uint256", name: "id", type: "uint256" }, { internalType: "uint256", name: "amount", type: "uint256" }, { internalType: "bytes", name: "data", type: "bytes" } ], name: "safeTransferFrom", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "operator", type: "address" }, { internalType: "bool", name: "approved", type: "bool" } ], name: "setApprovalForAll", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "bytes4", name: "interfaceId", type: "bytes4" } ], name: "supportsInterface", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" } ]; class IERC1155__factory { static createInterface() { return new ethers.Interface(_abi$1n); } static connect(address, runner) { return new ethers.Contract(address, _abi$1n, runner); } } __publicField$1n(IERC1155__factory, "abi", _abi$1n); var __defProp$1m = Object.defineProperty; var __defNormalProp$1m = (obj, key, value) => key in obj ? __defProp$1m(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$1m = (obj, key, value) => { __defNormalProp$1m(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$1m = [ { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "account", type: "address" }, { indexed: true, internalType: "address", name: "operator", type: "address" }, { indexed: false, internalType: "bool", name: "approved", type: "bool" } ], name: "ApprovalForAll", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "operator", type: "address" }, { indexed: true, internalType: "address", name: "from", type: "address" }, { indexed: true, internalType: "address", name: "to", type: "address" }, { indexed: false, internalType: "uint256[]", name: "ids", type: "uint256[]" }, { indexed: false, internalType: "uint256[]", name: "values", type: "uint256[]" } ], name: "TransferBatch", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "operator", type: "address" }, { indexed: true, internalType: "address", name: "from", type: "address" }, { indexed: true, internalType: "address", name: "to", type: "address" }, { indexed: false, internalType: "uint256", name: "id", type: "uint256" }, { indexed: false, internalType: "uint256", name: "value", type: "uint256" } ], name: "TransferSingle", type: "event" }, { anonymous: false, inputs: [ { indexed: false, internalType: "string", name: "value", type: "string" }, { indexed: true, internalType: "uint256", name: "id", type: "uint256" } ], name: "URI", type: "event" }, { inputs: [ { internalType: "address", name: "account", type: "address" }, { internalType: "uint256", name: "id", type: "uint256" } ], name: "balanceOf", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address[]", name: "accounts", type: "address[]" }, { internalType: "uint256[]", name: "ids", type: "uint256[]" } ], name: "balanceOfBatch", outputs: [ { internalType: "uint256[]", name: "", type: "uint256[]" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "account", type: "address" }, { internalType: "address", name: "operator", type: "address" } ], name: "isApprovedForAll", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "from", type: "address" }, { internalType: "address", name: "to", type: "address" }, { internalType: "uint256[]", name: "ids", type: "uint256[]" }, { internalType: "uint256[]", name: "amounts", type: "uint256[]" }, { internalType: "bytes", name: "data", type: "bytes" } ], name: "safeBatchTransferFrom", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "from", type: "address" }, { internalType: "address", name: "to", type: "address" }, { internalType: "uint256", name: "id", type: "uint256" }, { internalType: "uint256", name: "amount", type: "uint256" }, { internalType: "bytes", name: "data", type: "bytes" } ], name: "safeTransferFrom", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "operator", type: "address" }, { internalType: "bool", name: "approved", type: "bool" } ], name: "setApprovalForAll", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "bytes4", name: "interfaceId", type: "bytes4" } ], name: "supportsInterface", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "uint256", name: "id", type: "uint256" } ], name: "uri", outputs: [ { internalType: "string", name: "", type: "string" } ], stateMutability: "view", type: "function" } ]; class IERC1155MetadataURI__factory { static createInterface() { return new ethers.Interface(_abi$1m); } static connect(address, runner) { return new ethers.Contract( address, _abi$1m, runner ); } } __publicField$1m(IERC1155MetadataURI__factory, "abi", _abi$1m); var __defProp$1l = Object.defineProperty; var __defNormalProp$1l = (obj, key, value) => key in obj ? __defProp$1l(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$1l = (obj, key, value) => { __defNormalProp$1l(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$1l = [ { inputs: [ { internalType: "address", name: "operator", type: "address" }, { internalType: "address", name: "from", type: "address" }, { internalType: "uint256[]", name: "ids", type: "uint256[]" }, { internalType: "uint256[]", name: "values", type: "uint256[]" }, { internalType: "bytes", name: "data", type: "bytes" } ], name: "onERC1155BatchReceived", outputs: [ { internalType: "bytes4", name: "", type: "bytes4" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "operator", type: "address" }, { internalType: "address", name: "from", type: "address" }, { internalType: "uint256", name: "id", type: "uint256" }, { internalType: "uint256", name: "value", type: "uint256" }, { internalType: "bytes", name: "data", type: "bytes" } ], name: "onERC1155Received", outputs: [ { internalType: "bytes4", name: "", type: "bytes4" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "bytes4", name: "interfaceId", type: "bytes4" } ], name: "supportsInterface", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" } ]; class IERC1155Receiver__factory { static createInterface() { return new ethers.Interface(_abi$1l); } static connect(address, runner) { return new ethers.Contract(address, _abi$1l, runner); } } __publicField$1l(IERC1155Receiver__factory, "abi", _abi$1l); var __defProp$1k = Object.defineProperty; var __defNormalProp$1k = (obj, key, value) => key in obj ? __defProp$1k(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$1k = (obj, key, value) => { __defNormalProp$1k(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$1k = [ { inputs: [ { internalType: "bytes32", name: "hash", type: "bytes32" }, { internalType: "bytes", name: "signature", type: "bytes" } ], name: "isValidSignature", outputs: [ { internalType: "bytes4", name: "magicValue", type: "bytes4" } ], stateMutability: "view", type: "function" } ]; class IERC1271__factory { static createInterface() { return new ethers.Interface(_abi$1k); } static connect(address, runner) { return new ethers.Contract(address, _abi$1k, runner); } } __publicField$1k(IERC1271__factory, "abi", _abi$1k); var __defProp$1j = Object.defineProperty; var __defNormalProp$1j = (obj, key, value) => key in obj ? __defProp$1j(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$1j = (obj, key, value) => { __defNormalProp$1j(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$1j = [ { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "owner", type: "address" }, { indexed: true, internalType: "address", name: "spender", type: "address" }, { indexed: false, internalType: "uint256", name: "value", type: "uint256" } ], name: "Approval", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "from", type: "address" }, { indexed: true, internalType: "address", name: "to", type: "address" }, { indexed: false, internalType: "uint256", name: "value", type: "uint256" } ], name: "Transfer", type: "event" }, { inputs: [ { internalType: "address", name: "owner", type: "address" }, { internalType: "address", name: "spender", type: "address" } ], name: "allowance", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "spender", type: "address" }, { internalType: "uint256", name: "amount", type: "uint256" } ], name: "approve", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "spender", type: "address" }, { internalType: "uint256", name: "amount", type: "uint256" } ], name: "approveAndCall", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "spender", type: "address" }, { internalType: "uint256", name: "amount", type: "uint256" }, { internalType: "bytes", name: "data", type: "bytes" } ], name: "approveAndCall", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "account", type: "address" } ], name: "balanceOf", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "bytes4", name: "interfaceId", type: "bytes4" } ], name: "supportsInterface", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "totalSupply", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "to", type: "address" }, { internalType: "uint256", name: "amount", type: "uint256" } ], name: "transfer", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "to", type: "address" }, { internalType: "uint256", name: "amount", type: "uint256" } ], name: "transferAndCall", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "to", type: "address" }, { internalType: "uint256", name: "amount", type: "uint256" }, { internalType: "bytes", name: "data", type: "bytes" } ], name: "transferAndCall", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "from", type: "address" }, { internalType: "address", name: "to", type: "address" }, { internalType: "uint256", name: "amount", type: "uint256" } ], name: "transferFrom", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "from", type: "address" }, { internalType: "address", name: "to", type: "address" }, { internalType: "uint256", name: "amount", type: "uint256" }, { internalType: "bytes", name: "data", type: "bytes" } ], name: "transferFromAndCall", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "from", type: "address" }, { internalType: "address", name: "to", type: "address" }, { internalType: "uint256", name: "amount", type: "uint256" } ], name: "transferFromAndCall", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "nonpayable", type: "function" } ]; class IERC1363__factory { static createInterface() { return new ethers.Interface(_abi$1j); } static connect(address, runner) { return new ethers.Contract(address, _abi$1j, runner); } } __publicField$1j(IERC1363__factory, "abi", _abi$1j); var __defProp$1i = Object.defineProperty; var __defNormalProp$1i = (obj, key, value) => key in obj ? __defProp$1i(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$1i = (obj, key, value) => { __defNormalProp$1i(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$1i = [ { inputs: [ { internalType: "address", name: "operator", type: "address" }, { internalType: "address", name: "from", type: "address" }, { internalType: "uint256", name: "amount", type: "uint256" }, { internalType: "bytes", name: "data", type: "bytes" } ], name: "onTransferReceived", outputs: [ { internalType: "bytes4", name: "", type: "bytes4" } ], stateMutability: "nonpayable", type: "function" } ]; class IERC1363Receiver__factory { static createInterface() { return new ethers.Interface(_abi$1i); } static connect(address, runner) { return new ethers.Contract(address, _abi$1i, runner); } } __publicField$1i(IERC1363Receiver__factory, "abi", _abi$1i); var __defProp$1h = Object.defineProperty; var __defNormalProp$1h = (obj, key, value) => key in obj ? __defProp$1h(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$1h = (obj, key, value) => { __defNormalProp$1h(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$1h = [ { inputs: [ { internalType: "address", name: "owner", type: "address" }, { internalType: "uint256", name: "amount", type: "uint256" }, { internalType: "bytes", name: "data", type: "bytes" } ], name: "onApprovalReceived", outputs: [ { internalType: "bytes4", name: "", type: "bytes4" } ], stateMutability: "nonpayable", type: "function" } ]; class IERC1363Spender__factory { static createInterface() { return new ethers.Interface(_abi$1h); } static connect(address, runner) { return new ethers.Contract(address, _abi$1h, runner); } } __publicField$1h(IERC1363Spender__factory, "abi", _abi$1h); var __defProp$1g = Object.defineProperty; var __defNormalProp$1g = (obj, key, value) => key in obj ? __defProp$1g(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$1g = (obj, key, value) => { __defNormalProp$1g(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$1g = [ { inputs: [ { internalType: "bytes4", name: "interfaceId", type: "bytes4" } ], name: "supportsInterface", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" } ]; class IERC165__factory { static createInterface() { return new ethers.Interface(_abi$1g); } static connect(address, runner) { return new ethers.Contract(address, _abi$1g, runner); } } __publicField$1g(IERC165__factory, "abi", _abi$1g); var __defProp$1f = Object.defineProperty; var __defNormalProp$1f = (obj, key, value) => key in obj ? __defProp$1f(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$1f = (obj, key, value) => { __defNormalProp$1f(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$1f = [ { inputs: [ { internalType: "bytes32", name: "interfaceHash", type: "bytes32" }, { internalType: "address", name: "account", type: "address" } ], name: "canImplementInterfaceForAddress", outputs: [ { internalType: "bytes32", name: "", type: "bytes32" } ], stateMutability: "view", type: "function" } ]; class IERC1820Implementer__factory { static createInterface() { return new ethers.Interface(_abi$1f); } static connect(address, runner) { return new ethers.Contract( address, _abi$1f, runner ); } } __publicField$1f(IERC1820Implementer__factory, "abi", _abi$1f); var __defProp$1e = Object.defineProperty; var __defNormalProp$1e = (obj, key, value) => key in obj ? __defProp$1e(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$1e = (obj, key, value) => { __defNormalProp$1e(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$1e = [ { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "account", type: "address" }, { indexed: true, internalType: "bytes32", name: "interfaceHash", type: "bytes32" }, { indexed: true, internalType: "address", name: "implementer", type: "address" } ], name: "InterfaceImplementerSet", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "account", type: "address" }, { indexed: true, internalType: "address", name: "newManager", type: "address" } ], name: "ManagerChanged", type: "event" }, { inputs: [ { internalType: "address", name: "account", type: "address" }, { internalType: "bytes32", name: "_interfaceHash", type: "bytes32" } ], name: "getInterfaceImplementer", outputs: [ { internalType: "address", name: "", type: "address" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "account", type: "address" } ], name: "getManager", outputs: [ { internalType: "address", name: "", type: "address" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "account", type: "address" }, { internalType: "bytes4", name: "interfaceId", type: "bytes4" } ], name: "implementsERC165Interface", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "account", type: "address" }, { internalType: "bytes4", name: "interfaceId", type: "bytes4" } ], name: "implementsERC165InterfaceNoCache", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "string", name: "interfaceName", type: "string" } ], name: "interfaceHash", outputs: [ { internalType: "bytes32", name: "", type: "bytes32" } ], stateMutability: "pure", type: "function" }, { inputs: [ { internalType: "address", name: "account", type: "address" }, { internalType: "bytes32", name: "_interfaceHash", type: "bytes32" }, { internalType: "address", name: "implementer", type: "address" } ], name: "setInterfaceImplementer", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "account", type: "address" }, { internalType: "address", name: "newManager", type: "address" } ], name: "setManager", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "account", type: "address" }, { internalType: "bytes4", name: "interfaceId", type: "bytes4" } ], name: "updateERC165Cache", outputs: [], stateMutability: "nonpayable", type: "function" } ]; class IERC1820Registry__factory { static createInterface() { return new ethers.Interface(_abi$1e); } static connect(address, runner) { return new ethers.Contract(address, _abi$1e, runner); } } __publicField$1e(IERC1820Registry__factory, "abi", _abi$1e); var __defProp$1d = Object.defineProperty; var __defNormalProp$1d = (obj, key, value) => key in obj ? __defProp$1d(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$1d = (obj, key, value) => { __defNormalProp$1d(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$1d = [ { inputs: [], name: "proxiableUUID", outputs: [ { internalType: "bytes32", name: "", type: "bytes32" } ], stateMutability: "view", type: "function" } ]; class IERC1822Proxiable__factory { static createInterface() { return new ethers.Interface(_abi$1d); } static connect(address, runner) { return new ethers.Contract(address, _abi$1d, runner); } } __publicField$1d(IERC1822Proxiable__factory, "abi", _abi$1d); var __defProp$1c = Object.defineProperty; var __defNormalProp$1c = (obj, key, value) => key in obj ? __defProp$1c(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$1c = (obj, key, value) => { __defNormalProp$1c(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$1c = [ { anonymous: false, inputs: [ { indexed: false, internalType: "address", name: "previousAdmin", type: "address" }, { indexed: false, internalType: "address", name: "newAdmin", type: "address" } ], name: "AdminChanged", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "beacon", type: "address" } ], name: "BeaconUpgraded", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "implementation", type: "address" } ], name: "Upgraded", type: "event" } ]; class IERC1967__factory { static createInterface() { return new ethers.Interface(_abi$1c); } static connect(address, runner) { return new ethers.Contract(address, _abi$1c, runner); } } __publicField$1c(IERC1967__factory, "abi", _abi$1c); var __defProp$1b = Object.defineProperty; var __defNormalProp$1b = (obj, key, value) => key in obj ? __defProp$1b(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$1b = (obj, key, value) => { __defNormalProp$1b(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$1b = [ { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "owner", type: "address" }, { indexed: true, internalType: "address", name: "spender", type: "address" }, { indexed: false, internalType: "uint256", name: "value", type: "uint256" } ], name: "Approval", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "from", type: "address" }, { indexed: true, internalType: "address", name: "to", type: "address" }, { indexed: false, internalType: "uint256", name: "value", type: "uint256" } ], name: "Transfer", type: "event" }, { inputs: [ { internalType: "address", name: "owner", type: "address" }, { internalType: "address", name: "spender", type: "address" } ], name: "allowance", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "spender", type: "address" }, { internalType: "uint256", name: "amount", type: "uint256" } ], name: "approve", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "account", type: "address" } ], name: "balanceOf", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "totalSupply", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "to", type: "address" }, { internalType: "uint256", name: "amount", type: "uint256" } ], name: "transfer", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "from", type: "address" }, { internalType: "address", name: "to", type: "address" }, { internalType: "uint256", name: "amount", type: "uint256" } ], name: "transferFrom", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "nonpayable", type: "function" } ]; class IERC20__factory { static createInterface() { return new ethers.Interface(_abi$1b); } static connect(address, runner) { return new ethers.Contract(address, _abi$1b, runner); } } __publicField$1b(IERC20__factory, "abi", _abi$1b); var __defProp$1a = Object.defineProperty; var __defNormalProp$1a = (obj, key, value) => key in obj ? __defProp$1a(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$1a = (obj, key, value) => { __defNormalProp$1a(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$1a = [ { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "owner", type: "address" }, { indexed: true, internalType: "address", name: "spender", type: "address" }, { indexed: false, internalType: "uint256", name: "value", type: "uint256" } ], name: "Approval", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "from", type: "address" }, { indexed: true, internalType: "address", name: "to", type: "address" }, { indexed: false, internalType: "uint256", name: "value", type: "uint256" } ], name: "Transfer", type: "event" }, { inputs: [ { internalType: "address", name: "owner", type: "address" }, { internalType: "address", name: "spender", type: "address" } ], name: "allowance", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "spender", type: "address" }, { internalType: "uint256", name: "amount", type: "uint256" } ], name: "approve", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "account", type: "address" } ], name: "balanceOf", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "decimals", outputs: [ { internalType: "uint8", name: "", type: "uint8" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "name", outputs: [ { internalType: "string", name: "", type: "string" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "symbol", outputs: [ { internalType: "string", name: "", type: "string" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "totalSupply", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "to", type: "address" }, { internalType: "uint256", name: "amount", type: "uint256" } ], name: "transfer", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "from", type: "address" }, { internalType: "address", name: "to", type: "address" }, { internalType: "uint256", name: "amount", type: "uint256" } ], name: "transferFrom", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "nonpayable", type: "function" } ]; class IERC20Metadata__factory { static createInterface() { return new ethers.Interface(_abi$1a); } static connect(address, runner) { return new ethers.Contract(address, _abi$1a, runner); } } __publicField$1a(IERC20Metadata__factory, "abi", _abi$1a); var __defProp$19 = Object.defineProperty; var __defNormalProp$19 = (obj, key, value) => key in obj ? __defProp$19(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$19 = (obj, key, value) => { __defNormalProp$19(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$19 = [ { inputs: [], name: "DOMAIN_SEPARATOR", outputs: [ { internalType: "bytes32", name: "", type: "bytes32" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "owner", type: "address" } ], name: "nonces", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "owner", type: "address" }, { internalType: "address", name: "spender", type: "address" }, { internalType: "uint256", name: "value", type: "uint256" }, { internalType: "uint256", name: "deadline", type: "uint256" }, { internalType: "uint8", name: "v", type: "uint8" }, { internalType: "bytes32", name: "r", type: "bytes32" }, { internalType: "bytes32", name: "s", type: "bytes32" } ], name: "permit", outputs: [], stateMutability: "nonpayable", type: "function" } ]; class IERC20Permit__factory { static createInterface() { return new ethers.Interface(_abi$19); } static connect(address, runner) { return new ethers.Contract(address, _abi$19, runner); } } __publicField$19(IERC20Permit__factory, "abi", _abi$19); var __defProp$18 = Object.defineProperty; var __defNormalProp$18 = (obj, key, value) => key in obj ? __defProp$18(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$18 = (obj, key, value) => { __defNormalProp$18(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$18 = [ { anonymous: false, inputs: [ { indexed: true, internalType: "uint256", name: "fromTokenId", type: "uint256" }, { indexed: false, internalType: "uint256", name: "toTokenId", type: "uint256" }, { indexed: true, internalType: "address", name: "fromAddress", type: "address" }, { indexed: true, internalType: "address", name: "toAddress", type: "address" } ], name: "ConsecutiveTransfer", type: "event" } ]; class IERC2309__factory { static createInterface() { return new ethers.Interface(_abi$18); } static connect(address, runner) { return new ethers.Contract(address, _abi$18, runner); } } __publicField$18(IERC2309__factory, "abi", _abi$18); var __defProp$17 = Object.defineProperty; var __defNormalProp$17 = (obj, key, value) => key in obj ? __defProp$17(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$17 = (obj, key, value) => { __defNormalProp$17(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$17 = [ { inputs: [], name: "DOMAIN_SEPARATOR", outputs: [ { internalType: "bytes32", name: "", type: "bytes32" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "owner", type: "address" } ], name: "nonces", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "owner", type: "address" }, { internalType: "address", name: "spender", type: "address" }, { internalType: "uint256", name: "value", type: "uint256" }, { internalType: "uint256", name: "deadline", type: "uint256" }, { internalType: "uint8", name: "v", type: "uint8" }, { internalType: "bytes32", name: "r", type: "bytes32" }, { internalType: "bytes32", name: "s", type: "bytes32" } ], name: "permit", outputs: [], stateMutability: "nonpayable", type: "function" } ]; class IERC2612__factory { static createInterface() { return new ethers.Interface(_abi$17); } static connect(address, runner) { return new ethers.Contract(address, _abi$17, runner); } } __publicField$17(IERC2612__factory, "abi", _abi$17); var __defProp$16 = Object.defineProperty; var __defNormalProp$16 = (obj, key, value) => key in obj ? __defProp$16(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$16 = (obj, key, value) => { __defNormalProp$16(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$16 = [ { inputs: [ { internalType: "uint256", name: "tokenId", type: "uint256" }, { internalType: "uint256", name: "salePrice", type: "uint256" } ], name: "royaltyInfo", outputs: [ { internalType: "address", name: "receiver", type: "address" }, { internalType: "uint256", name: "royaltyAmount", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "bytes4", name: "interfaceId", type: "bytes4" } ], name: "supportsInterface", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" } ]; class IERC2981__factory { static createInterface() { return new ethers.Interface(_abi$16); } static connect(address, runner) { return new ethers.Contract(address, _abi$16, runner); } } __publicField$16(IERC2981__factory, "abi", _abi$16); var __defProp$15 = Object.defineProperty; var __defNormalProp$15 = (obj, key, value) => key in obj ? __defProp$15(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$15 = (obj, key, value) => { __defNormalProp$15(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$15 = [ { inputs: [ { internalType: "address", name: "initiator", type: "address" }, { internalType: "address", name: "token", type: "address" }, { internalType: "uint256", name: "amount", type: "uint256" }, { internalType: "uint256", name: "fee", type: "uint256" }, { internalType: "bytes", name: "data", type: "bytes" } ], name: "onFlashLoan", outputs: [ { internalType: "bytes32", name: "", type: "bytes32" } ], stateMutability: "nonpayable", type: "function" } ]; class IERC3156FlashBorrower__factory { static createInterface() { return new ethers.Interface(_abi$15); } static connect(address, runner) { return new ethers.Contract( address, _abi$15, runner ); } } __publicField$15(IERC3156FlashBorrower__factory, "abi", _abi$15); var __defProp$14 = Object.defineProperty; var __defNormalProp$14 = (obj, key, value) => key in obj ? __defProp$14(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$14 = (obj, key, value) => { __defNormalProp$14(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$14 = [ { inputs: [ { internalType: "address", name: "token", type: "address" }, { internalType: "uint256", name: "amount", type: "uint256" } ], name: "flashFee", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "contract IERC3156FlashBorrower", name: "receiver", type: "address" }, { internalType: "address", name: "token", type: "address" }, { internalType: "uint256", name: "amount", type: "uint256" }, { internalType: "bytes", name: "data", type: "bytes" } ], name: "flashLoan", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "token", type: "address" } ], name: "maxFlashLoan", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" } ]; class IERC3156FlashLender__factory { static createInterface() { return new ethers.Interface(_abi$14); } static connect(address, runner) { return new ethers.Contract( address, _abi$14, runner ); } } __publicField$14(IERC3156FlashLender__factory, "abi", _abi$14); var __defProp$13 = Object.defineProperty; var __defNormalProp$13 = (obj, key, value) => key in obj ? __defProp$13(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$13 = (obj, key, value) => { __defNormalProp$13(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$13 = [ { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "owner", type: "address" }, { indexed: true, internalType: "address", name: "spender", type: "address" }, { indexed: false, internalType: "uint256", name: "value", type: "uint256" } ], name: "Approval", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "sender", type: "address" }, { indexed: true, internalType: "address", name: "owner", type: "address" }, { indexed: false, internalType: "uint256", name: "assets", type: "uint256" }, { indexed: false, internalType: "uint256", name: "shares", type: "uint256" } ], name: "Deposit", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "from", type: "address" }, { indexed: true, internalType: "address", name: "to", type: "address" }, { indexed: false, internalType: "uint256", name: "value", type: "uint256" } ], name: "Transfer", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "sender", type: "address" }, { indexed: true, internalType: "address", name: "receiver", type: "address" }, { indexed: true, internalType: "address", name: "owner", type: "address" }, { indexed: false, internalType: "uint256", name: "assets", type: "uint256" }, { indexed: false, internalType: "uint256", name: "shares", type: "uint256" } ], name: "Withdraw", type: "event" }, { inputs: [ { internalType: "address", name: "owner", type: "address" }, { internalType: "address", name: "spender", type: "address" } ], name: "allowance", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "spender", type: "address" }, { internalType: "uint256", name: "amount", type: "uint256" } ], name: "approve", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [], name: "asset", outputs: [ { internalType: "address", name: "assetTokenAddress", type: "address" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "account", type: "address" } ], name: "balanceOf", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "uint256", name: "shares", type: "uint256" } ], name: "convertToAssets", outputs: [ { internalType: "uint256", name: "assets", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "uint256", name: "assets", type: "uint256" } ], name: "convertToShares", outputs: [ { internalType: "uint256", name: "shares", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "decimals", outputs: [ { internalType: "uint8", name: "", type: "uint8" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "uint256", name: "assets", type: "uint256" }, { internalType: "address", name: "receiver", type: "address" } ], name: "deposit", outputs: [ { internalType: "uint256", name: "shares", type: "uint256" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "receiver", type: "address" } ], name: "maxDeposit", outputs: [ { internalType: "uint256", name: "maxAssets", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "receiver", type: "address" } ], name: "maxMint", outputs: [ { internalType: "uint256", name: "maxShares", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "owner", type: "address" } ], name: "maxRedeem", outputs: [ { internalType: "uint256", name: "maxShares", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "owner", type: "address" } ], name: "maxWithdraw", outputs: [ { internalType: "uint256", name: "maxAssets", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "uint256", name: "shares", type: "uint256" }, { internalType: "address", name: "receiver", type: "address" } ], name: "mint", outputs: [ { internalType: "uint256", name: "assets", type: "uint256" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [], name: "name", outputs: [ { internalType: "string", name: "", type: "string" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "uint256", name: "assets", type: "uint256" } ], name: "previewDeposit", outputs: [ { internalType: "uint256", name: "shares", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "uint256", name: "shares", type: "uint256" } ], name: "previewMint", outputs: [ { internalType: "uint256", name: "assets", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "uint256", name: "shares", type: "uint256" } ], name: "previewRedeem", outputs: [ { internalType: "uint256", name: "assets", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "uint256", name: "assets", type: "uint256" } ], name: "previewWithdraw", outputs: [ { internalType: "uint256", name: "shares", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "uint256", name: "shares", type: "uint256" }, { internalType: "address", name: "receiver", type: "address" }, { internalType: "address", name: "owner", type: "address" } ], name: "redeem", outputs: [ { internalType: "uint256", name: "assets", type: "uint256" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [], name: "symbol", outputs: [ { internalType: "string", name: "", type: "string" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "totalAssets", outputs: [ { internalType: "uint256", name: "totalManagedAssets", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "totalSupply", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "to", type: "address" }, { internalType: "uint256", name: "amount", type: "uint256" } ], name: "transfer", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "from", type: "address" }, { internalType: "address", name: "to", type: "address" }, { internalType: "uint256", name: "amount", type: "uint256" } ], name: "transferFrom", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "uint256", name: "assets", type: "uint256" }, { internalType: "address", name: "receiver", type: "address" }, { internalType: "address", name: "owner", type: "address" } ], name: "withdraw", outputs: [ { internalType: "uint256", name: "shares", type: "uint256" } ], stateMutability: "nonpayable", type: "function" } ]; class IERC4626__factory { static createInterface() { return new ethers.Interface(_abi$13); } static connect(address, runner) { return new ethers.Contract(address, _abi$13, runner); } } __publicField$13(IERC4626__factory, "abi", _abi$13); var __defProp$12 = Object.defineProperty; var __defNormalProp$12 = (obj, key, value) => key in obj ? __defProp$12(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$12 = (obj, key, value) => { __defNormalProp$12(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$12 = [ { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "owner", type: "address" }, { indexed: true, internalType: "address", name: "approved", type: "address" }, { indexed: true, internalType: "uint256", name: "tokenId", type: "uint256" } ], name: "Approval", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "owner", type: "address" }, { indexed: true, internalType: "address", name: "operator", type: "address" }, { indexed: false, internalType: "bool", name: "approved", type: "bool" } ], name: "ApprovalForAll", type: "event" }, { anonymous: false, inputs: [ { indexed: false, internalType: "uint256", name: "_fromTokenId", type: "uint256" }, { indexed: false, internalType: "uint256", name: "_toTokenId", type: "uint256" } ], name: "BatchMetadataUpdate", type: "event" }, { anonymous: false, inputs: [ { indexed: false, internalType: "uint256", name: "_tokenId", type: "uint256" } ], name: "MetadataUpdate", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "from", type: "address" }, { indexed: true, internalType: "address", name: "to", type: "address" }, { indexed: true, internalType: "uint256", name: "tokenId", type: "uint256" } ], name: "Transfer", type: "event" }, { inputs: [ { internalType: "address", name: "to", type: "address" }, { internalType: "uint256", name: "tokenId", type: "uint256" } ], name: "approve", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "owner", type: "address" } ], name: "balanceOf", outputs: [ { internalType: "uint256", name: "balance", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "uint256", name: "tokenId", type: "uint256" } ], name: "getApproved", outputs: [ { internalType: "address", name: "operator", type: "address" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "owner", type: "address" }, { internalType: "address", name: "operator", type: "address" } ], name: "isApprovedForAll", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "uint256", name: "tokenId", type: "uint256" } ], name: "ownerOf", outputs: [ { internalType: "address", name: "owner", type: "address" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "from", type: "address" }, { internalType: "address", name: "to", type: "address" }, { internalType: "uint256", name: "tokenId", type: "uint256" } ], name: "safeTransferFrom", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "from", type: "address" }, { internalType: "address", name: "to", type: "address" }, { internalType: "uint256", name: "tokenId", type: "uint256" }, { internalType: "bytes", name: "data", type: "bytes" } ], name: "safeTransferFrom", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "operator", type: "address" }, { internalType: "bool", name: "approved", type: "bool" } ], name: "setApprovalForAll", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "bytes4", name: "interfaceId", type: "bytes4" } ], name: "supportsInterface", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "from", type: "address" }, { internalType: "address", name: "to", type: "address" }, { internalType: "uint256", name: "tokenId", type: "uint256" } ], name: "transferFrom", outputs: [], stateMutability: "nonpayable", type: "function" } ]; class IERC4906__factory { static createInterface() { return new ethers.Interface(_abi$12); } static connect(address, runner) { return new ethers.Contract(address, _abi$12, runner); } } __publicField$12(IERC4906__factory, "abi", _abi$12); var __defProp$11 = Object.defineProperty; var __defNormalProp$11 = (obj, key, value) => key in obj ? __defProp$11(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$11 = (obj, key, value) => { __defNormalProp$11(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$11 = [ { anonymous: false, inputs: [], name: "EIP712DomainChanged", type: "event" }, { inputs: [], name: "eip712Domain", outputs: [ { internalType: "bytes1", name: "fields", type: "bytes1" }, { internalType: "string", name: "name", type: "string" }, { internalType: "string", name: "version", type: "string" }, { internalType: "uint256", name: "chainId", type: "uint256" }, { internalType: "address", name: "verifyingContract", type: "address" }, { internalType: "bytes32", name: "salt", type: "bytes32" }, { internalType: "uint256[]", name: "extensions", type: "uint256[]" } ], stateMutability: "view", type: "function" } ]; class IERC5267__factory { static createInterface() { return new ethers.Interface(_abi$11); } static connect(address, runner) { return new ethers.Contract(address, _abi$11, runner); } } __publicField$11(IERC5267__factory, "abi", _abi$11); var __defProp$10 = Object.defineProperty; var __defNormalProp$10 = (obj, key, value) => key in obj ? __defProp$10(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$10 = (obj, key, value) => { __defNormalProp$10(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$10 = [ { inputs: [], name: "owner", outputs: [ { internalType: "address", name: "", type: "address" } ], stateMutability: "view", type: "function" } ]; class IERC5313__factory { static createInterface() { return new ethers.Interface(_abi$10); } static connect(address, runner) { return new ethers.Contract(address, _abi$10, runner); } } __publicField$10(IERC5313__factory, "abi", _abi$10); var __defProp$$ = Object.defineProperty; var __defNormalProp$$ = (obj, key, value) => key in obj ? __defProp$$(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$$ = (obj, key, value) => { __defNormalProp$$(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$$ = [ { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "delegator", type: "address" }, { indexed: true, internalType: "address", name: "fromDelegate", type: "address" }, { indexed: true, internalType: "address", name: "toDelegate", type: "address" } ], name: "DelegateChanged", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "delegate", type: "address" }, { indexed: false, internalType: "uint256", name: "previousBalance", type: "uint256" }, { indexed: false, internalType: "uint256", name: "newBalance", type: "uint256" } ], name: "DelegateVotesChanged", type: "event" }, { inputs: [], name: "CLOCK_MODE", outputs: [ { internalType: "string", name: "", type: "string" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "clock", outputs: [ { internalType: "uint48", name: "", type: "uint48" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "delegatee", type: "address" } ], name: "delegate", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "delegatee", type: "address" }, { internalType: "uint256", name: "nonce", type: "uint256" }, { internalType: "uint256", name: "expiry", type: "uint256" }, { internalType: "uint8", name: "v", type: "uint8" }, { internalType: "bytes32", name: "r", type: "bytes32" }, { internalType: "bytes32", name: "s", type: "bytes32" } ], name: "delegateBySig", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "account", type: "address" } ], name: "delegates", outputs: [ { internalType: "address", name: "", type: "address" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "uint256", name: "timepoint", type: "uint256" } ], name: "getPastTotalSupply", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "account", type: "address" }, { internalType: "uint256", name: "timepoint", type: "uint256" } ], name: "getPastVotes", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "account", type: "address" } ], name: "getVotes", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" } ]; class IERC5805__factory { static createInterface() { return new ethers.Interface(_abi$$); } static connect(address, runner) { return new ethers.Contract(address, _abi$$, runner); } } __publicField$$(IERC5805__factory, "abi", _abi$$); var __defProp$_ = Object.defineProperty; var __defNormalProp$_ = (obj, key, value) => key in obj ? __defProp$_(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$_ = (obj, key, value) => { __defNormalProp$_(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$_ = [ { inputs: [], name: "CLOCK_MODE", outputs: [ { internalType: "string", name: "", type: "string" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "clock", outputs: [ { internalType: "uint48", name: "", type: "uint48" } ], stateMutability: "view", type: "function" } ]; class IERC6372__factory { static createInterface() { return new ethers.Interface(_abi$_); } static connect(address, runner) { return new ethers.Contract(address, _abi$_, runner); } } __publicField$_(IERC6372__factory, "abi", _abi$_); var __defProp$Z = Object.defineProperty; var __defNormalProp$Z = (obj, key, value) => key in obj ? __defProp$Z(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$Z = (obj, key, value) => { __defNormalProp$Z(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$Z = [ { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "owner", type: "address" }, { indexed: true, internalType: "address", name: "approved", type: "address" }, { indexed: true, internalType: "uint256", name: "tokenId", type: "uint256" } ], name: "Approval", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "owner", type: "address" }, { indexed: true, internalType: "address", name: "operator", type: "address" }, { indexed: false, internalType: "bool", name: "approved", type: "bool" } ], name: "ApprovalForAll", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "from", type: "address" }, { indexed: true, internalType: "address", name: "to", type: "address" }, { indexed: true, internalType: "uint256", name: "tokenId", type: "uint256" } ], name: "Transfer", type: "event" }, { inputs: [ { internalType: "address", name: "to", type: "address" }, { internalType: "uint256", name: "tokenId", type: "uint256" } ], name: "approve", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "owner", type: "address" } ], name: "balanceOf", outputs: [ { internalType: "uint256", name: "balance", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "uint256", name: "tokenId", type: "uint256" } ], name: "getApproved", outputs: [ { internalType: "address", name: "operator", type: "address" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "owner", type: "address" }, { internalType: "address", name: "operator", type: "address" } ], name: "isApprovedForAll", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "uint256", name: "tokenId", type: "uint256" } ], name: "ownerOf", outputs: [ { internalType: "address", name: "owner", type: "address" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "from", type: "address" }, { internalType: "address", name: "to", type: "address" }, { internalType: "uint256", name: "tokenId", type: "uint256" } ], name: "safeTransferFrom", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "from", type: "address" }, { internalType: "address", name: "to", type: "address" }, { internalType: "uint256", name: "tokenId", type: "uint256" }, { internalType: "bytes", name: "data", type: "bytes" } ], name: "safeTransferFrom", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "operator", type: "address" }, { internalType: "bool", name: "approved", type: "bool" } ], name: "setApprovalForAll", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "bytes4", name: "interfaceId", type: "bytes4" } ], name: "supportsInterface", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "from", type: "address" }, { internalType: "address", name: "to", type: "address" }, { internalType: "uint256", name: "tokenId", type: "uint256" } ], name: "transferFrom", outputs: [], stateMutability: "nonpayable", type: "function" } ]; class IERC721__factory { static createInterface() { return new ethers.Interface(_abi$Z); } static connect(address, runner) { return new ethers.Contract(address, _abi$Z, runner); } } __publicField$Z(IERC721__factory, "abi", _abi$Z); var __defProp$Y = Object.defineProperty; var __defNormalProp$Y = (obj, key, value) => key in obj ? __defProp$Y(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$Y = (obj, key, value) => { __defNormalProp$Y(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$Y = [ { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "owner", type: "address" }, { indexed: true, internalType: "address", name: "approved", type: "address" }, { indexed: true, internalType: "uint256", name: "tokenId", type: "uint256" } ], name: "Approval", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "owner", type: "address" }, { indexed: true, internalType: "address", name: "operator", type: "address" }, { indexed: false, internalType: "bool", name: "approved", type: "bool" } ], name: "ApprovalForAll", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "from", type: "address" }, { indexed: true, internalType: "address", name: "to", type: "address" }, { indexed: true, internalType: "uint256", name: "tokenId", type: "uint256" } ], name: "Transfer", type: "event" }, { inputs: [ { internalType: "address", name: "to", type: "address" }, { internalType: "uint256", name: "tokenId", type: "uint256" } ], name: "approve", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "owner", type: "address" } ], name: "balanceOf", outputs: [ { internalType: "uint256", name: "balance", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "uint256", name: "tokenId", type: "uint256" } ], name: "getApproved", outputs: [ { internalType: "address", name: "operator", type: "address" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "owner", type: "address" }, { internalType: "address", name: "operator", type: "address" } ], name: "isApprovedForAll", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "uint256", name: "tokenId", type: "uint256" } ], name: "ownerOf", outputs: [ { internalType: "address", name: "owner", type: "address" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "from", type: "address" }, { internalType: "address", name: "to", type: "address" }, { internalType: "uint256", name: "tokenId", type: "uint256" } ], name: "safeTransferFrom", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "from", type: "address" }, { internalType: "address", name: "to", type: "address" }, { internalType: "uint256", name: "tokenId", type: "uint256" }, { internalType: "bytes", name: "data", type: "bytes" } ], name: "safeTransferFrom", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "operator", type: "address" }, { internalType: "bool", name: "approved", type: "bool" } ], name: "setApprovalForAll", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "bytes4", name: "interfaceId", type: "bytes4" } ], name: "supportsInterface", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "uint256", name: "index", type: "uint256" } ], name: "tokenByIndex", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "owner", type: "address" }, { internalType: "uint256", name: "index", type: "uint256" } ], name: "tokenOfOwnerByIndex", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "totalSupply", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "from", type: "address" }, { internalType: "address", name: "to", type: "address" }, { internalType: "uint256", name: "tokenId", type: "uint256" } ], name: "transferFrom", outputs: [], stateMutability: "nonpayable", type: "function" } ]; class IERC721Enumerable__factory { static createInterface() { return new ethers.Interface(_abi$Y); } static connect(address, runner) { return new ethers.Contract(address, _abi$Y, runner); } } __publicField$Y(IERC721Enumerable__factory, "abi", _abi$Y); var __defProp$X = Object.defineProperty; var __defNormalProp$X = (obj, key, value) => key in obj ? __defProp$X(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$X = (obj, key, value) => { __defNormalProp$X(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$X = [ { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "owner", type: "address" }, { indexed: true, internalType: "address", name: "approved", type: "address" }, { indexed: true, internalType: "uint256", name: "tokenId", type: "uint256" } ], name: "Approval", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "owner", type: "address" }, { indexed: true, internalType: "address", name: "operator", type: "address" }, { indexed: false, internalType: "bool", name: "approved", type: "bool" } ], name: "ApprovalForAll", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "from", type: "address" }, { indexed: true, internalType: "address", name: "to", type: "address" }, { indexed: true, internalType: "uint256", name: "tokenId", type: "uint256" } ], name: "Transfer", type: "event" }, { inputs: [ { internalType: "address", name: "to", type: "address" }, { internalType: "uint256", name: "tokenId", type: "uint256" } ], name: "approve", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "owner", type: "address" } ], name: "balanceOf", outputs: [ { internalType: "uint256", name: "balance", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "uint256", name: "tokenId", type: "uint256" } ], name: "getApproved", outputs: [ { internalType: "address", name: "operator", type: "address" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "owner", type: "address" }, { internalType: "address", name: "operator", type: "address" } ], name: "isApprovedForAll", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "name", outputs: [ { internalType: "string", name: "", type: "string" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "uint256", name: "tokenId", type: "uint256" } ], name: "ownerOf", outputs: [ { internalType: "address", name: "owner", type: "address" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "from", type: "address" }, { internalType: "address", name: "to", type: "address" }, { internalType: "uint256", name: "tokenId", type: "uint256" } ], name: "safeTransferFrom", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "from", type: "address" }, { internalType: "address", name: "to", type: "address" }, { internalType: "uint256", name: "tokenId", type: "uint256" }, { internalType: "bytes", name: "data", type: "bytes" } ], name: "safeTransferFrom", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "operator", type: "address" }, { internalType: "bool", name: "approved", type: "bool" } ], name: "setApprovalForAll", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "bytes4", name: "interfaceId", type: "bytes4" } ], name: "supportsInterface", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "symbol", outputs: [ { internalType: "string", name: "", type: "string" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "uint256", name: "tokenId", type: "uint256" } ], name: "tokenURI", outputs: [ { internalType: "string", name: "", type: "string" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "from", type: "address" }, { internalType: "address", name: "to", type: "address" }, { internalType: "uint256", name: "tokenId", type: "uint256" } ], name: "transferFrom", outputs: [], stateMutability: "nonpayable", type: "function" } ]; class IERC721Metadata__factory { static createInterface() { return new ethers.Interface(_abi$X); } static connect(address, runner) { return new ethers.Contract(address, _abi$X, runner); } } __publicField$X(IERC721Metadata__factory, "abi", _abi$X); var __defProp$W = Object.defineProperty; var __defNormalProp$W = (obj, key, value) => key in obj ? __defProp$W(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$W = (obj, key, value) => { __defNormalProp$W(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$W = [ { inputs: [ { internalType: "address", name: "operator", type: "address" }, { internalType: "address", name: "from", type: "address" }, { internalType: "uint256", name: "tokenId", type: "uint256" }, { internalType: "bytes", name: "data", type: "bytes" } ], name: "onERC721Received", outputs: [ { internalType: "bytes4", name: "", type: "bytes4" } ], stateMutability: "nonpayable", type: "function" } ]; class IERC721Receiver__factory { static createInterface() { return new ethers.Interface(_abi$W); } static connect(address, runner) { return new ethers.Contract(address, _abi$W, runner); } } __publicField$W(IERC721Receiver__factory, "abi", _abi$W); var __defProp$V = Object.defineProperty; var __defNormalProp$V = (obj, key, value) => key in obj ? __defProp$V(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$V = (obj, key, value) => { __defNormalProp$V(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$V = [ { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "operator", type: "address" }, { indexed: true, internalType: "address", name: "tokenHolder", type: "address" } ], name: "AuthorizedOperator", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "operator", type: "address" }, { indexed: true, internalType: "address", name: "from", type: "address" }, { indexed: false, internalType: "uint256", name: "amount", type: "uint256" }, { indexed: false, internalType: "bytes", name: "data", type: "bytes" }, { indexed: false, internalType: "bytes", name: "operatorData", type: "bytes" } ], name: "Burned", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "operator", type: "address" }, { indexed: true, internalType: "address", name: "to", type: "address" }, { indexed: false, internalType: "uint256", name: "amount", type: "uint256" }, { indexed: false, internalType: "bytes", name: "data", type: "bytes" }, { indexed: false, internalType: "bytes", name: "operatorData", type: "bytes" } ], name: "Minted", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "operator", type: "address" }, { indexed: true, internalType: "address", name: "tokenHolder", type: "address" } ], name: "RevokedOperator", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "operator", type: "address" }, { indexed: true, internalType: "address", name: "from", type: "address" }, { indexed: true, internalType: "address", name: "to", type: "address" }, { indexed: false, internalType: "uint256", name: "amount", type: "uint256" }, { indexed: false, internalType: "bytes", name: "data", type: "bytes" }, { indexed: false, internalType: "bytes", name: "operatorData", type: "bytes" } ], name: "Sent", type: "event" }, { inputs: [ { internalType: "address", name: "operator", type: "address" } ], name: "authorizeOperator", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "owner", type: "address" } ], name: "balanceOf", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "uint256", name: "amount", type: "uint256" }, { internalType: "bytes", name: "data", type: "bytes" } ], name: "burn", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [], name: "defaultOperators", outputs: [ { internalType: "address[]", name: "", type: "address[]" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "granularity", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "operator", type: "address" }, { internalType: "address", name: "tokenHolder", type: "address" } ], name: "isOperatorFor", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "name", outputs: [ { internalType: "string", name: "", type: "string" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "account", type: "address" }, { internalType: "uint256", name: "amount", type: "uint256" }, { internalType: "bytes", name: "data", type: "bytes" }, { internalType: "bytes", name: "operatorData", type: "bytes" } ], name: "operatorBurn", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "sender", type: "address" }, { internalType: "address", name: "recipient", type: "address" }, { internalType: "uint256", name: "amount", type: "uint256" }, { internalType: "bytes", name: "data", type: "bytes" }, { internalType: "bytes", name: "operatorData", type: "bytes" } ], name: "operatorSend", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "operator", type: "address" } ], name: "revokeOperator", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "recipient", type: "address" }, { internalType: "uint256", name: "amount", type: "uint256" }, { internalType: "bytes", name: "data", type: "bytes" } ], name: "send", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [], name: "symbol", outputs: [ { internalType: "string", name: "", type: "string" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "totalSupply", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" } ]; class IERC777__factory { static createInterface() { return new ethers.Interface(_abi$V); } static connect(address, runner) { return new ethers.Contract(address, _abi$V, runner); } } __publicField$V(IERC777__factory, "abi", _abi$V); var __defProp$U = Object.defineProperty; var __defNormalProp$U = (obj, key, value) => key in obj ? __defProp$U(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$U = (obj, key, value) => { __defNormalProp$U(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$U = [ { inputs: [ { internalType: "address", name: "operator", type: "address" }, { internalType: "address", name: "from", type: "address" }, { internalType: "address", name: "to", type: "address" }, { internalType: "uint256", name: "amount", type: "uint256" }, { internalType: "bytes", name: "userData", type: "bytes" }, { internalType: "bytes", name: "operatorData", type: "bytes" } ], name: "tokensReceived", outputs: [], stateMutability: "nonpayable", type: "function" } ]; class IERC777Recipient__factory { static createInterface() { return new ethers.Interface(_abi$U); } static connect(address, runner) { return new ethers.Contract(address, _abi$U, runner); } } __publicField$U(IERC777Recipient__factory, "abi", _abi$U); var __defProp$T = Object.defineProperty; var __defNormalProp$T = (obj, key, value) => key in obj ? __defProp$T(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$T = (obj, key, value) => { __defNormalProp$T(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$T = [ { inputs: [ { internalType: "address", name: "operator", type: "address" }, { internalType: "address", name: "from", type: "address" }, { internalType: "address", name: "to", type: "address" }, { internalType: "uint256", name: "amount", type: "uint256" }, { internalType: "bytes", name: "userData", type: "bytes" }, { internalType: "bytes", name: "operatorData", type: "bytes" } ], name: "tokensToSend", outputs: [], stateMutability: "nonpayable", type: "function" } ]; class IERC777Sender__factory { static createInterface() { return new ethers.Interface(_abi$T); } static connect(address, runner) { return new ethers.Contract(address, _abi$T, runner); } } __publicField$T(IERC777Sender__factory, "abi", _abi$T); var __defProp$S = Object.defineProperty; var __defNormalProp$S = (obj, key, value) => key in obj ? __defProp$S(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$S = (obj, key, value) => { __defNormalProp$S(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$S = [ { inputs: [ { internalType: "uint256", name: "stateId", type: "uint256" }, { internalType: "address", name: "rootMessageSender", type: "address" }, { internalType: "bytes", name: "data", type: "bytes" } ], name: "processMessageFromRoot", outputs: [], stateMutability: "nonpayable", type: "function" } ]; class IFxMessageProcessor__factory { static createInterface() { return new ethers.Interface(_abi$S); } static connect(address, runner) { return new ethers.Contract( address, _abi$S, runner ); } } __publicField$S(IFxMessageProcessor__factory, "abi", _abi$S); var __defProp$R = Object.defineProperty; var __defNormalProp$R = (obj, key, value) => key in obj ? __defProp$R(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$R = (obj, key, value) => { __defNormalProp$R(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$R = [ { anonymous: false, inputs: [ { indexed: false, internalType: "uint256", name: "proposalId", type: "uint256" } ], name: "ProposalCanceled", type: "event" }, { anonymous: false, inputs: [ { indexed: false, internalType: "uint256", name: "proposalId", type: "uint256" }, { indexed: false, internalType: "address", name: "proposer", type: "address" }, { indexed: false, internalType: "address[]", name: "targets", type: "address[]" }, { indexed: false, internalType: "uint256[]", name: "values", type: "uint256[]" }, { indexed: false, internalType: "string[]", name: "signatures", type: "string[]" }, { indexed: false, internalType: "bytes[]", name: "calldatas", type: "bytes[]" }, { indexed: false, internalType: "uint256", name: "voteStart", type: "uint256" }, { indexed: false, internalType: "uint256", name: "voteEnd", type: "uint256" }, { indexed: false, internalType: "string", name: "description", type: "string" } ], name: "ProposalCreated", type: "event" }, { anonymous: false, inputs: [ { indexed: false, internalType: "uint256", name: "proposalId", type: "uint256" } ], name: "ProposalExecuted", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "voter", type: "address" }, { indexed: false, internalType: "uint256", name: "proposalId", type: "uint256" }, { indexed: false, internalType: "uint8", name: "support", type: "uint8" }, { indexed: false, internalType: "uint256", name: "weight", type: "uint256" }, { indexed: false, internalType: "string", name: "reason", type: "string" } ], name: "VoteCast", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "voter", type: "address" }, { indexed: false, internalType: "uint256", name: "proposalId", type: "uint256" }, { indexed: false, internalType: "uint8", name: "support", type: "uint8" }, { indexed: false, internalType: "uint256", name: "weight", type: "uint256" }, { indexed: false, internalType: "string", name: "reason", type: "string" }, { indexed: false, internalType: "bytes", name: "params", type: "bytes" } ], name: "VoteCastWithParams", type: "event" }, { inputs: [], name: "CLOCK_MODE", outputs: [ { internalType: "string", name: "", type: "string" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "COUNTING_MODE", outputs: [ { internalType: "string", name: "", type: "string" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address[]", name: "targets", type: "address[]" }, { internalType: "uint256[]", name: "values", type: "uint256[]" }, { internalType: "bytes[]", name: "calldatas", type: "bytes[]" }, { internalType: "bytes32", name: "descriptionHash", type: "bytes32" } ], name: "cancel", outputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" }, { internalType: "uint8", name: "support", type: "uint8" } ], name: "castVote", outputs: [ { internalType: "uint256", name: "balance", type: "uint256" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" }, { internalType: "uint8", name: "support", type: "uint8" }, { internalType: "uint8", name: "v", type: "uint8" }, { internalType: "bytes32", name: "r", type: "bytes32" }, { internalType: "bytes32", name: "s", type: "bytes32" } ], name: "castVoteBySig", outputs: [ { internalType: "uint256", name: "balance", type: "uint256" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" }, { internalType: "uint8", name: "support", type: "uint8" }, { internalType: "string", name: "reason", type: "string" } ], name: "castVoteWithReason", outputs: [ { internalType: "uint256", name: "balance", type: "uint256" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" }, { internalType: "uint8", name: "support", type: "uint8" }, { internalType: "string", name: "reason", type: "string" }, { internalType: "bytes", name: "params", type: "bytes" } ], name: "castVoteWithReasonAndParams", outputs: [ { internalType: "uint256", name: "balance", type: "uint256" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" }, { internalType: "uint8", name: "support", type: "uint8" }, { internalType: "string", name: "reason", type: "string" }, { internalType: "bytes", name: "params", type: "bytes" }, { internalType: "uint8", name: "v", type: "uint8" }, { internalType: "bytes32", name: "r", type: "bytes32" }, { internalType: "bytes32", name: "s", type: "bytes32" } ], name: "castVoteWithReasonAndParamsBySig", outputs: [ { internalType: "uint256", name: "balance", type: "uint256" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [], name: "clock", outputs: [ { internalType: "uint48", name: "", type: "uint48" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address[]", name: "targets", type: "address[]" }, { internalType: "uint256[]", name: "values", type: "uint256[]" }, { internalType: "bytes[]", name: "calldatas", type: "bytes[]" }, { internalType: "bytes32", name: "descriptionHash", type: "bytes32" } ], name: "execute", outputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" } ], stateMutability: "payable", type: "function" }, { inputs: [ { internalType: "address", name: "account", type: "address" }, { internalType: "uint256", name: "timepoint", type: "uint256" } ], name: "getVotes", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "account", type: "address" }, { internalType: "uint256", name: "timepoint", type: "uint256" }, { internalType: "bytes", name: "params", type: "bytes" } ], name: "getVotesWithParams", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" }, { internalType: "address", name: "account", type: "address" } ], name: "hasVoted", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address[]", name: "targets", type: "address[]" }, { internalType: "uint256[]", name: "values", type: "uint256[]" }, { internalType: "bytes[]", name: "calldatas", type: "bytes[]" }, { internalType: "bytes32", name: "descriptionHash", type: "bytes32" } ], name: "hashProposal", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "pure", type: "function" }, { inputs: [], name: "name", outputs: [ { internalType: "string", name: "", type: "string" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" } ], name: "proposalDeadline", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" } ], name: "proposalProposer", outputs: [ { internalType: "address", name: "", type: "address" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" } ], name: "proposalSnapshot", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address[]", name: "targets", type: "address[]" }, { internalType: "uint256[]", name: "values", type: "uint256[]" }, { internalType: "bytes[]", name: "calldatas", type: "bytes[]" }, { internalType: "string", name: "description", type: "string" } ], name: "propose", outputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "uint256", name: "timepoint", type: "uint256" } ], name: "quorum", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" } ], name: "state", outputs: [ { internalType: "enum IGovernor.ProposalState", name: "", type: "uint8" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "bytes4", name: "interfaceId", type: "bytes4" } ], name: "supportsInterface", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "version", outputs: [ { internalType: "string", name: "", type: "string" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "votingDelay", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "votingPeriod", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" } ]; class IGovernor__factory { static createInterface() { return new ethers.Interface(_abi$R); } static connect(address, runner) { return new ethers.Contract(address, _abi$R, runner); } } __publicField$R(IGovernor__factory, "abi", _abi$R); var __defProp$Q = Object.defineProperty; var __defNormalProp$Q = (obj, key, value) => key in obj ? __defProp$Q(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$Q = (obj, key, value) => { __defNormalProp$Q(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$Q = [ { anonymous: false, inputs: [ { indexed: false, internalType: "uint256", name: "proposalId", type: "uint256" } ], name: "ProposalCanceled", type: "event" }, { anonymous: false, inputs: [ { indexed: false, internalType: "uint256", name: "proposalId", type: "uint256" }, { indexed: false, internalType: "address", name: "proposer", type: "address" }, { indexed: false, internalType: "address[]", name: "targets", type: "address[]" }, { indexed: false, internalType: "uint256[]", name: "values", type: "uint256[]" }, { indexed: false, internalType: "string[]", name: "signatures", type: "string[]" }, { indexed: false, internalType: "bytes[]", name: "calldatas", type: "bytes[]" }, { indexed: false, internalType: "uint256", name: "voteStart", type: "uint256" }, { indexed: false, internalType: "uint256", name: "voteEnd", type: "uint256" }, { indexed: false, internalType: "string", name: "description", type: "string" } ], name: "ProposalCreated", type: "event" }, { anonymous: false, inputs: [ { indexed: false, internalType: "uint256", name: "proposalId", type: "uint256" } ], name: "ProposalExecuted", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "voter", type: "address" }, { indexed: false, internalType: "uint256", name: "proposalId", type: "uint256" }, { indexed: false, internalType: "uint8", name: "support", type: "uint8" }, { indexed: false, internalType: "uint256", name: "weight", type: "uint256" }, { indexed: false, internalType: "string", name: "reason", type: "string" } ], name: "VoteCast", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "voter", type: "address" }, { indexed: false, internalType: "uint256", name: "proposalId", type: "uint256" }, { indexed: false, internalType: "uint8", name: "support", type: "uint8" }, { indexed: false, internalType: "uint256", name: "weight", type: "uint256" }, { indexed: false, internalType: "string", name: "reason", type: "string" }, { indexed: false, internalType: "bytes", name: "params", type: "bytes" } ], name: "VoteCastWithParams", type: "event" }, { inputs: [], name: "CLOCK_MODE", outputs: [ { internalType: "string", name: "", type: "string" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "COUNTING_MODE", outputs: [ { internalType: "string", name: "", type: "string" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" } ], name: "cancel", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address[]", name: "targets", type: "address[]" }, { internalType: "uint256[]", name: "values", type: "uint256[]" }, { internalType: "bytes[]", name: "calldatas", type: "bytes[]" }, { internalType: "bytes32", name: "descriptionHash", type: "bytes32" } ], name: "cancel", outputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" }, { internalType: "uint8", name: "support", type: "uint8" } ], name: "castVote", outputs: [ { internalType: "uint256", name: "balance", type: "uint256" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" }, { internalType: "uint8", name: "support", type: "uint8" }, { internalType: "uint8", name: "v", type: "uint8" }, { internalType: "bytes32", name: "r", type: "bytes32" }, { internalType: "bytes32", name: "s", type: "bytes32" } ], name: "castVoteBySig", outputs: [ { internalType: "uint256", name: "balance", type: "uint256" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" }, { internalType: "uint8", name: "support", type: "uint8" }, { internalType: "string", name: "reason", type: "string" } ], name: "castVoteWithReason", outputs: [ { internalType: "uint256", name: "balance", type: "uint256" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" }, { internalType: "uint8", name: "support", type: "uint8" }, { internalType: "string", name: "reason", type: "string" }, { internalType: "bytes", name: "params", type: "bytes" } ], name: "castVoteWithReasonAndParams", outputs: [ { internalType: "uint256", name: "balance", type: "uint256" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" }, { internalType: "uint8", name: "support", type: "uint8" }, { internalType: "string", name: "reason", type: "string" }, { internalType: "bytes", name: "params", type: "bytes" }, { internalType: "uint8", name: "v", type: "uint8" }, { internalType: "bytes32", name: "r", type: "bytes32" }, { internalType: "bytes32", name: "s", type: "bytes32" } ], name: "castVoteWithReasonAndParamsBySig", outputs: [ { internalType: "uint256", name: "balance", type: "uint256" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [], name: "clock", outputs: [ { internalType: "uint48", name: "", type: "uint48" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address[]", name: "targets", type: "address[]" }, { internalType: "uint256[]", name: "values", type: "uint256[]" }, { internalType: "bytes[]", name: "calldatas", type: "bytes[]" }, { internalType: "bytes32", name: "descriptionHash", type: "bytes32" } ], name: "execute", outputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" } ], stateMutability: "payable", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" } ], name: "execute", outputs: [], stateMutability: "payable", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" } ], name: "getActions", outputs: [ { internalType: "address[]", name: "targets", type: "address[]" }, { internalType: "uint256[]", name: "values", type: "uint256[]" }, { internalType: "string[]", name: "signatures", type: "string[]" }, { internalType: "bytes[]", name: "calldatas", type: "bytes[]" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" }, { internalType: "address", name: "voter", type: "address" } ], name: "getReceipt", outputs: [ { components: [ { internalType: "bool", name: "hasVoted", type: "bool" }, { internalType: "uint8", name: "support", type: "uint8" }, { internalType: "uint96", name: "votes", type: "uint96" } ], internalType: "struct IGovernorCompatibilityBravo.Receipt", name: "", type: "tuple" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "account", type: "address" }, { internalType: "uint256", name: "timepoint", type: "uint256" } ], name: "getVotes", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "account", type: "address" }, { internalType: "uint256", name: "timepoint", type: "uint256" }, { internalType: "bytes", name: "params", type: "bytes" } ], name: "getVotesWithParams", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" }, { internalType: "address", name: "account", type: "address" } ], name: "hasVoted", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address[]", name: "targets", type: "address[]" }, { internalType: "uint256[]", name: "values", type: "uint256[]" }, { internalType: "bytes[]", name: "calldatas", type: "bytes[]" }, { internalType: "bytes32", name: "descriptionHash", type: "bytes32" } ], name: "hashProposal", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "pure", type: "function" }, { inputs: [], name: "name", outputs: [ { internalType: "string", name: "", type: "string" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" } ], name: "proposalDeadline", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" } ], name: "proposalProposer", outputs: [ { internalType: "address", name: "", type: "address" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" } ], name: "proposalSnapshot", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "uint256", name: "", type: "uint256" } ], name: "proposals", outputs: [ { internalType: "uint256", name: "id", type: "uint256" }, { internalType: "address", name: "proposer", type: "address" }, { internalType: "uint256", name: "eta", type: "uint256" }, { internalType: "uint256", name: "startBlock", type: "uint256" }, { internalType: "uint256", name: "endBlock", type: "uint256" }, { internalType: "uint256", name: "forVotes", type: "uint256" }, { internalType: "uint256", name: "againstVotes", type: "uint256" }, { internalType: "uint256", name: "abstainVotes", type: "uint256" }, { internalType: "bool", name: "canceled", type: "bool" }, { internalType: "bool", name: "executed", type: "bool" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address[]", name: "targets", type: "address[]" }, { internalType: "uint256[]", name: "values", type: "uint256[]" }, { internalType: "bytes[]", name: "calldatas", type: "bytes[]" }, { internalType: "string", name: "description", type: "string" } ], name: "propose", outputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address[]", name: "targets", type: "address[]" }, { internalType: "uint256[]", name: "values", type: "uint256[]" }, { internalType: "string[]", name: "signatures", type: "string[]" }, { internalType: "bytes[]", name: "calldatas", type: "bytes[]" }, { internalType: "string", name: "description", type: "string" } ], name: "propose", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" } ], name: "queue", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "uint256", name: "timepoint", type: "uint256" } ], name: "quorum", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "quorumVotes", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" } ], name: "state", outputs: [ { internalType: "enum IGovernor.ProposalState", name: "", type: "uint8" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "bytes4", name: "interfaceId", type: "bytes4" } ], name: "supportsInterface", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "version", outputs: [ { internalType: "string", name: "", type: "string" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "votingDelay", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "votingPeriod", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" } ]; class IGovernorCompatibilityBravo__factory { static createInterface() { return new ethers.Interface(_abi$Q); } static connect(address, runner) { return new ethers.Contract( address, _abi$Q, runner ); } } __publicField$Q(IGovernorCompatibilityBravo__factory, "abi", _abi$Q); var __defProp$P = Object.defineProperty; var __defNormalProp$P = (obj, key, value) => key in obj ? __defProp$P(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$P = (obj, key, value) => { __defNormalProp$P(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$P = [ { anonymous: false, inputs: [ { indexed: false, internalType: "uint256", name: "proposalId", type: "uint256" } ], name: "ProposalCanceled", type: "event" }, { anonymous: false, inputs: [ { indexed: false, internalType: "uint256", name: "proposalId", type: "uint256" }, { indexed: false, internalType: "address", name: "proposer", type: "address" }, { indexed: false, internalType: "address[]", name: "targets", type: "address[]" }, { indexed: false, internalType: "uint256[]", name: "values", type: "uint256[]" }, { indexed: false, internalType: "string[]", name: "signatures", type: "string[]" }, { indexed: false, internalType: "bytes[]", name: "calldatas", type: "bytes[]" }, { indexed: false, internalType: "uint256", name: "voteStart", type: "uint256" }, { indexed: false, internalType: "uint256", name: "voteEnd", type: "uint256" }, { indexed: false, internalType: "string", name: "description", type: "string" } ], name: "ProposalCreated", type: "event" }, { anonymous: false, inputs: [ { indexed: false, internalType: "uint256", name: "proposalId", type: "uint256" } ], name: "ProposalExecuted", type: "event" }, { anonymous: false, inputs: [ { indexed: false, internalType: "uint256", name: "proposalId", type: "uint256" }, { indexed: false, internalType: "uint256", name: "eta", type: "uint256" } ], name: "ProposalQueued", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "voter", type: "address" }, { indexed: false, internalType: "uint256", name: "proposalId", type: "uint256" }, { indexed: false, internalType: "uint8", name: "support", type: "uint8" }, { indexed: false, internalType: "uint256", name: "weight", type: "uint256" }, { indexed: false, internalType: "string", name: "reason", type: "string" } ], name: "VoteCast", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "voter", type: "address" }, { indexed: false, internalType: "uint256", name: "proposalId", type: "uint256" }, { indexed: false, internalType: "uint8", name: "support", type: "uint8" }, { indexed: false, internalType: "uint256", name: "weight", type: "uint256" }, { indexed: false, internalType: "string", name: "reason", type: "string" }, { indexed: false, internalType: "bytes", name: "params", type: "bytes" } ], name: "VoteCastWithParams", type: "event" }, { inputs: [], name: "CLOCK_MODE", outputs: [ { internalType: "string", name: "", type: "string" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "COUNTING_MODE", outputs: [ { internalType: "string", name: "", type: "string" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address[]", name: "targets", type: "address[]" }, { internalType: "uint256[]", name: "values", type: "uint256[]" }, { internalType: "bytes[]", name: "calldatas", type: "bytes[]" }, { internalType: "bytes32", name: "descriptionHash", type: "bytes32" } ], name: "cancel", outputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" }, { internalType: "uint8", name: "support", type: "uint8" } ], name: "castVote", outputs: [ { internalType: "uint256", name: "balance", type: "uint256" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" }, { internalType: "uint8", name: "support", type: "uint8" }, { internalType: "uint8", name: "v", type: "uint8" }, { internalType: "bytes32", name: "r", type: "bytes32" }, { internalType: "bytes32", name: "s", type: "bytes32" } ], name: "castVoteBySig", outputs: [ { internalType: "uint256", name: "balance", type: "uint256" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" }, { internalType: "uint8", name: "support", type: "uint8" }, { internalType: "string", name: "reason", type: "string" } ], name: "castVoteWithReason", outputs: [ { internalType: "uint256", name: "balance", type: "uint256" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" }, { internalType: "uint8", name: "support", type: "uint8" }, { internalType: "string", name: "reason", type: "string" }, { internalType: "bytes", name: "params", type: "bytes" } ], name: "castVoteWithReasonAndParams", outputs: [ { internalType: "uint256", name: "balance", type: "uint256" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" }, { internalType: "uint8", name: "support", type: "uint8" }, { internalType: "string", name: "reason", type: "string" }, { internalType: "bytes", name: "params", type: "bytes" }, { internalType: "uint8", name: "v", type: "uint8" }, { internalType: "bytes32", name: "r", type: "bytes32" }, { internalType: "bytes32", name: "s", type: "bytes32" } ], name: "castVoteWithReasonAndParamsBySig", outputs: [ { internalType: "uint256", name: "balance", type: "uint256" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [], name: "clock", outputs: [ { internalType: "uint48", name: "", type: "uint48" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address[]", name: "targets", type: "address[]" }, { internalType: "uint256[]", name: "values", type: "uint256[]" }, { internalType: "bytes[]", name: "calldatas", type: "bytes[]" }, { internalType: "bytes32", name: "descriptionHash", type: "bytes32" } ], name: "execute", outputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" } ], stateMutability: "payable", type: "function" }, { inputs: [ { internalType: "address", name: "account", type: "address" }, { internalType: "uint256", name: "timepoint", type: "uint256" } ], name: "getVotes", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "account", type: "address" }, { internalType: "uint256", name: "timepoint", type: "uint256" }, { internalType: "bytes", name: "params", type: "bytes" } ], name: "getVotesWithParams", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" }, { internalType: "address", name: "account", type: "address" } ], name: "hasVoted", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address[]", name: "targets", type: "address[]" }, { internalType: "uint256[]", name: "values", type: "uint256[]" }, { internalType: "bytes[]", name: "calldatas", type: "bytes[]" }, { internalType: "bytes32", name: "descriptionHash", type: "bytes32" } ], name: "hashProposal", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "pure", type: "function" }, { inputs: [], name: "name", outputs: [ { internalType: "string", name: "", type: "string" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" } ], name: "proposalDeadline", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" } ], name: "proposalEta", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" } ], name: "proposalProposer", outputs: [ { internalType: "address", name: "", type: "address" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" } ], name: "proposalSnapshot", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address[]", name: "targets", type: "address[]" }, { internalType: "uint256[]", name: "values", type: "uint256[]" }, { internalType: "bytes[]", name: "calldatas", type: "bytes[]" }, { internalType: "string", name: "description", type: "string" } ], name: "propose", outputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address[]", name: "targets", type: "address[]" }, { internalType: "uint256[]", name: "values", type: "uint256[]" }, { internalType: "bytes[]", name: "calldatas", type: "bytes[]" }, { internalType: "bytes32", name: "descriptionHash", type: "bytes32" } ], name: "queue", outputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "uint256", name: "timepoint", type: "uint256" } ], name: "quorum", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "uint256", name: "proposalId", type: "uint256" } ], name: "state", outputs: [ { internalType: "enum IGovernor.ProposalState", name: "", type: "uint8" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "bytes4", name: "interfaceId", type: "bytes4" } ], name: "supportsInterface", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "timelock", outputs: [ { internalType: "address", name: "", type: "address" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "version", outputs: [ { internalType: "string", name: "", type: "string" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "votingDelay", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "votingPeriod", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" } ]; class IGovernorTimelock__factory { static createInterface() { return new ethers.Interface(_abi$P); } static connect(address, runner) { return new ethers.Contract(address, _abi$P, runner); } } __publicField$P(IGovernorTimelock__factory, "abi", _abi$P); var __defProp$O = Object.defineProperty; var __defNormalProp$O = (obj, key, value) => key in obj ? __defProp$O(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$O = (obj, key, value) => { __defNormalProp$O(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$O = [ { anonymous: false, inputs: [ { indexed: true, internalType: "uint256", name: "messageNum", type: "uint256" }, { indexed: false, internalType: "bytes", name: "data", type: "bytes" } ], name: "InboxMessageDelivered", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "uint256", name: "messageNum", type: "uint256" } ], name: "InboxMessageDeliveredFromOrigin", type: "event" }, { inputs: [], name: "bridge", outputs: [ { internalType: "contract IBridge", name: "", type: "address" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "uint256", name: "dataLength", type: "uint256" }, { internalType: "uint256", name: "baseFee", type: "uint256" } ], name: "calculateRetryableSubmissionFee", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "to", type: "address" }, { internalType: "uint256", name: "l2CallValue", type: "uint256" }, { internalType: "uint256", name: "maxSubmissionCost", type: "uint256" }, { internalType: "address", name: "excessFeeRefundAddress", type: "address" }, { internalType: "address", name: "callValueRefundAddress", type: "address" }, { internalType: "uint256", name: "gasLimit", type: "uint256" }, { internalType: "uint256", name: "maxFeePerGas", type: "uint256" }, { internalType: "bytes", name: "data", type: "bytes" } ], name: "createRetryableTicket", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "payable", type: "function" }, { inputs: [], name: "depositEth", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "payable", type: "function" }, { inputs: [ { internalType: "contract IBridge", name: "_bridge", type: "address" }, { internalType: "address", name: "_sequencerInbox", type: "address" } ], name: "initialize", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [], name: "pause", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "contract IBridge", name: "_bridge", type: "address" } ], name: "postUpgradeInit", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "uint256", name: "gasLimit", type: "uint256" }, { internalType: "uint256", name: "maxFeePerGas", type: "uint256" }, { internalType: "address", name: "to", type: "address" }, { internalType: "uint256", name: "value", type: "uint256" }, { internalType: "bytes", name: "data", type: "bytes" } ], name: "sendContractTransaction", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "uint256", name: "gasLimit", type: "uint256" }, { internalType: "uint256", name: "maxFeePerGas", type: "uint256" }, { internalType: "address", name: "to", type: "address" }, { internalType: "bytes", name: "data", type: "bytes" } ], name: "sendL1FundedContractTransaction", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "payable", type: "function" }, { inputs: [ { internalType: "uint256", name: "gasLimit", type: "uint256" }, { internalType: "uint256", name: "maxFeePerGas", type: "uint256" }, { internalType: "uint256", name: "nonce", type: "uint256" }, { internalType: "address", name: "to", type: "address" }, { internalType: "bytes", name: "data", type: "bytes" } ], name: "sendL1FundedUnsignedTransaction", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "payable", type: "function" }, { inputs: [ { internalType: "bytes", name: "messageData", type: "bytes" } ], name: "sendL2Message", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "bytes", name: "messageData", type: "bytes" } ], name: "sendL2MessageFromOrigin", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "uint256", name: "gasLimit", type: "uint256" }, { internalType: "uint256", name: "maxFeePerGas", type: "uint256" }, { internalType: "uint256", name: "nonce", type: "uint256" }, { internalType: "address", name: "to", type: "address" }, { internalType: "uint256", name: "value", type: "uint256" }, { internalType: "bytes", name: "data", type: "bytes" } ], name: "sendUnsignedTransaction", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [], name: "sequencerInbox", outputs: [ { internalType: "address", name: "", type: "address" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "unpause", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "to", type: "address" }, { internalType: "uint256", name: "l2CallValue", type: "uint256" }, { internalType: "uint256", name: "maxSubmissionCost", type: "uint256" }, { internalType: "address", name: "excessFeeRefundAddress", type: "address" }, { internalType: "address", name: "callValueRefundAddress", type: "address" }, { internalType: "uint256", name: "gasLimit", type: "uint256" }, { internalType: "uint256", name: "maxFeePerGas", type: "uint256" }, { internalType: "bytes", name: "data", type: "bytes" } ], name: "unsafeCreateRetryableTicket", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "payable", type: "function" } ]; class IInbox__factory { static createInterface() { return new ethers.Interface(_abi$O); } static connect(address, runner) { return new ethers.Contract(address, _abi$O, runner); } } __publicField$O(IInbox__factory, "abi", _abi$O); var __defProp$N = Object.defineProperty; var __defNormalProp$N = (obj, key, value) => key in obj ? __defProp$N(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$N = (obj, key, value) => { __defNormalProp$N(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$N = [ { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "to", type: "address" }, { indexed: true, internalType: "address", name: "l2Sender", type: "address" }, { indexed: true, internalType: "uint256", name: "zero", type: "uint256" }, { indexed: false, internalType: "uint256", name: "transactionIndex", type: "uint256" } ], name: "OutBoxTransactionExecuted", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "bytes32", name: "blockHash", type: "bytes32" }, { indexed: true, internalType: "bytes32", name: "outputRoot", type: "bytes32" } ], name: "SendRootUpdated", type: "event" }, { inputs: [], name: "OUTBOX_VERSION", outputs: [ { internalType: "uint128", name: "", type: "uint128" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "bridge", outputs: [ { internalType: "contract IBridge", name: "", type: "address" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "l2Sender", type: "address" }, { internalType: "address", name: "to", type: "address" }, { internalType: "uint256", name: "l2Block", type: "uint256" }, { internalType: "uint256", name: "l1Block", type: "uint256" }, { internalType: "uint256", name: "l2Timestamp", type: "uint256" }, { internalType: "uint256", name: "value", type: "uint256" }, { internalType: "bytes", name: "data", type: "bytes" } ], name: "calculateItemHash", outputs: [ { internalType: "bytes32", name: "", type: "bytes32" } ], stateMutability: "pure", type: "function" }, { inputs: [ { internalType: "bytes32[]", name: "proof", type: "bytes32[]" }, { internalType: "uint256", name: "path", type: "uint256" }, { internalType: "bytes32", name: "item", type: "bytes32" } ], name: "calculateMerkleRoot", outputs: [ { internalType: "bytes32", name: "", type: "bytes32" } ], stateMutability: "pure", type: "function" }, { inputs: [ { internalType: "bytes32[]", name: "proof", type: "bytes32[]" }, { internalType: "uint256", name: "index", type: "uint256" }, { internalType: "address", name: "l2Sender", type: "address" }, { internalType: "address", name: "to", type: "address" }, { internalType: "uint256", name: "l2Block", type: "uint256" }, { internalType: "uint256", name: "l1Block", type: "uint256" }, { internalType: "uint256", name: "l2Timestamp", type: "uint256" }, { internalType: "uint256", name: "value", type: "uint256" }, { internalType: "bytes", name: "data", type: "bytes" } ], name: "executeTransaction", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "uint256", name: "index", type: "uint256" }, { internalType: "address", name: "l2Sender", type: "address" }, { internalType: "address", name: "to", type: "address" }, { internalType: "uint256", name: "l2Block", type: "uint256" }, { internalType: "uint256", name: "l1Block", type: "uint256" }, { internalType: "uint256", name: "l2Timestamp", type: "uint256" }, { internalType: "uint256", name: "value", type: "uint256" }, { internalType: "bytes", name: "data", type: "bytes" } ], name: "executeTransactionSimulation", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "uint256", name: "index", type: "uint256" } ], name: "isSpent", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "l2ToL1Block", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "l2ToL1EthBlock", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "l2ToL1OutputId", outputs: [ { internalType: "bytes32", name: "", type: "bytes32" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "l2ToL1Sender", outputs: [ { internalType: "address", name: "", type: "address" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "l2ToL1Timestamp", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "rollup", outputs: [ { internalType: "address", name: "", type: "address" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "bytes32", name: "", type: "bytes32" } ], name: "roots", outputs: [ { internalType: "bytes32", name: "", type: "bytes32" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "uint256", name: "", type: "uint256" } ], name: "spent", outputs: [ { internalType: "bytes32", name: "", type: "bytes32" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "bytes32", name: "sendRoot", type: "bytes32" }, { internalType: "bytes32", name: "l2BlockHash", type: "bytes32" } ], name: "updateSendRoot", outputs: [], stateMutability: "nonpayable", type: "function" } ]; class IOutbox__factory { static createInterface() { return new ethers.Interface(_abi$N); } static connect(address, runner) { return new ethers.Contract(address, _abi$N, runner); } } __publicField$N(IOutbox__factory, "abi", _abi$N); var __defProp$M = Object.defineProperty; var __defNormalProp$M = (obj, key, value) => key in obj ? __defProp$M(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$M = (obj, key, value) => { __defNormalProp$M(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$M = [ { anonymous: false, inputs: [ { indexed: false, internalType: "address", name: "previousAdmin", type: "address" }, { indexed: false, internalType: "address", name: "newAdmin", type: "address" } ], name: "AdminChanged", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "beacon", type: "address" } ], name: "BeaconUpgraded", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "implementation", type: "address" } ], name: "Upgraded", type: "event" }, { inputs: [], name: "admin", outputs: [ { internalType: "address", name: "", type: "address" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "", type: "address" } ], name: "changeAdmin", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [], name: "implementation", outputs: [ { internalType: "address", name: "", type: "address" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "", type: "address" } ], name: "upgradeTo", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "", type: "address" }, { internalType: "bytes", name: "", type: "bytes" } ], name: "upgradeToAndCall", outputs: [], stateMutability: "payable", type: "function" } ]; class ITransparentUpgradeableProxy__factory { static createInterface() { return new ethers.Interface(_abi$M); } static connect(address, runner) { return new ethers.Contract( address, _abi$M, runner ); } } __publicField$M(ITransparentUpgradeableProxy__factory, "abi", _abi$M); var __defProp$L = Object.defineProperty; var __defNormalProp$L = (obj, key, value) => key in obj ? __defProp$L(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$L = (obj, key, value) => { __defNormalProp$L(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$L = [ { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "delegator", type: "address" }, { indexed: true, internalType: "address", name: "fromDelegate", type: "address" }, { indexed: true, internalType: "address", name: "toDelegate", type: "address" } ], name: "DelegateChanged", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "delegate", type: "address" }, { indexed: false, internalType: "uint256", name: "previousBalance", type: "uint256" }, { indexed: false, internalType: "uint256", name: "newBalance", type: "uint256" } ], name: "DelegateVotesChanged", type: "event" }, { inputs: [ { internalType: "address", name: "delegatee", type: "address" } ], name: "delegate", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "delegatee", type: "address" }, { internalType: "uint256", name: "nonce", type: "uint256" }, { internalType: "uint256", name: "expiry", type: "uint256" }, { internalType: "uint8", name: "v", type: "uint8" }, { internalType: "bytes32", name: "r", type: "bytes32" }, { internalType: "bytes32", name: "s", type: "bytes32" } ], name: "delegateBySig", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "account", type: "address" } ], name: "delegates", outputs: [ { internalType: "address", name: "", type: "address" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "uint256", name: "timepoint", type: "uint256" } ], name: "getPastTotalSupply", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "account", type: "address" }, { internalType: "uint256", name: "timepoint", type: "uint256" } ], name: "getPastVotes", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "account", type: "address" } ], name: "getVotes", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" } ]; class IVotes__factory { static createInterface() { return new ethers.Interface(_abi$L); } static connect(address, runner) { return new ethers.Contract(address, _abi$L, runner); } } __publicField$L(IVotes__factory, "abi", _abi$L); var __defProp$K = Object.defineProperty; var __defNormalProp$K = (obj, key, value) => key in obj ? __defProp$K(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$K = (obj, key, value) => { __defNormalProp$K(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$K = [ { anonymous: false, inputs: [ { indexed: false, internalType: "uint8", name: "version", type: "uint8" } ], name: "Initialized", type: "event" } ]; class Initializable__factory { static createInterface() { return new ethers.Interface(_abi$K); } static connect(address, runner) { return new ethers.Contract(address, _abi$K, runner); } } __publicField$K(Initializable__factory, "abi", _abi$K); var __defProp$J = Object.defineProperty; var __defNormalProp$J = (obj, key, value) => key in obj ? __defProp$J(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$J = (obj, key, value) => { __defNormalProp$J(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$J = [ { inputs: [], name: "ARBSYS", outputs: [ { internalType: "address", name: "", type: "address" } ], stateMutability: "view", type: "function" } ]; const _bytecode$r = "0x6091610038600b82828239805160001a607314602b57634e487b7160e01b600052600060045260246000fd5b30600052607381538281f3fe730000000000000000000000000000000000000000301460806040526004361060335760003560e01c8063bf0a12cf146038575b600080fd5b603f606481565b6040516001600160a01b03909116815260200160405180910390f3fea2646970667358221220a997e9a9bed247ae5a204c5becb72b696557d3f8c1958c819328313f56d94d9f64736f6c634300080d0033"; const isSuperArgs$r = (xs) => xs.length > 1; class LibArbitrumL2__factory extends ethers.ContractFactory { constructor(...args) { if (isSuperArgs$r(args)) { super(...args); } else { super(_abi$J, _bytecode$r, args[0]); } } getDeployTransaction(overrides) { return super.getDeployTransaction(overrides || {}); } deploy(overrides) { return super.deploy(overrides || {}); } connect(runner) { return super.connect(runner); } static createInterface() { return new ethers.Interface(_abi$J); } static connect(address, runner) { return new ethers.Contract(address, _abi$J, runner); } } __publicField$J(LibArbitrumL2__factory, "bytecode", _bytecode$r); __publicField$J(LibArbitrumL2__factory, "abi", _abi$J); var __defProp$I = Object.defineProperty; var __defNormalProp$I = (obj, key, value) => key in obj ? __defProp$I(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$I = (obj, key, value) => { __defNormalProp$I(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$I = [ { inputs: [], stateMutability: "nonpayable", type: "constructor" }, { inputs: [], name: "InvalidShortString", type: "error" }, { inputs: [ { internalType: "string", name: "str", type: "string" } ], name: "StringTooLong", type: "error" }, { anonymous: false, inputs: [], name: "EIP712DomainChanged", type: "event" }, { inputs: [], name: "eip712Domain", outputs: [ { internalType: "bytes1", name: "fields", type: "bytes1" }, { internalType: "string", name: "name", type: "string" }, { internalType: "string", name: "version", type: "string" }, { internalType: "uint256", name: "chainId", type: "uint256" }, { internalType: "address", name: "verifyingContract", type: "address" }, { internalType: "bytes32", name: "salt", type: "bytes32" }, { internalType: "uint256[]", name: "extensions", type: "uint256[]" } ], stateMutability: "view", type: "function" }, { inputs: [ { components: [ { internalType: "address", name: "from", type: "address" }, { internalType: "address", name: "to", type: "address" }, { internalType: "uint256", name: "value", type: "uint256" }, { internalType: "uint256", name: "gas", type: "uint256" }, { internalType: "uint256", name: "nonce", type: "uint256" }, { internalType: "bytes", name: "data", type: "bytes" } ], internalType: "struct MinimalForwarder.ForwardRequest", name: "req", type: "tuple" }, { internalType: "bytes", name: "signature", type: "bytes" } ], name: "execute", outputs: [ { internalType: "bool", name: "", type: "bool" }, { internalType: "bytes", name: "", type: "bytes" } ], stateMutability: "payable", type: "function" }, { inputs: [ { internalType: "address", name: "from", type: "address" } ], name: "getNonce", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { components: [ { internalType: "address", name: "from", type: "address" }, { internalType: "address", name: "to", type: "address" }, { internalType: "uint256", name: "value", type: "uint256" }, { internalType: "uint256", name: "gas", type: "uint256" }, { internalType: "uint256", name: "nonce", type: "uint256" }, { internalType: "bytes", name: "data", type: "bytes" } ], internalType: "struct MinimalForwarder.ForwardRequest", name: "req", type: "tuple" }, { internalType: "bytes", name: "signature", type: "bytes" } ], name: "verify", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" } ]; const _bytecode$q = "0x6101606040523480156200001257600080fd5b506040518060400160405280601081526020016f26b4b734b6b0b62337b93bb0b93232b960811b81525060405180604001604052806005815260200164302e302e3160d81b815250620000756000836200012f60201b620004a71790919060201c565b61012052620000928160016200012f602090811b620004a717901c565b61014052815160208084019190912060e052815190820120610100524660a0526200012060e05161010051604080517f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f60208201529081019290925260608201524660808201523060a082015260009060c00160405160208183030381529060405280519060200120905090565b60805250503060c0526200032e565b60006020835110156200014f57620001478362000183565b90506200017d565b826200016683620001cf60201b620004e01760201c565b8151620001779260200190620001d2565b5060ff90505b92915050565b600080829050601f81511115620001ba578260405163305a27a960e01b8152600401620001b1919062000278565b60405180910390fd5b8051620001c782620002d0565b179392505050565b90565b828054620001e090620002f8565b90600052602060002090601f0160209004810192826200020457600085556200024f565b82601f106200021f57805160ff19168380011785556200024f565b828001600101855582156200024f579182015b828111156200024f57825182559160200191906001019062000232565b506200025d92915062000261565b5090565b5b808211156200025d576000815560010162000262565b600060208083528351808285015260005b81811015620002a75785810183015185820160400152820162000289565b81811115620002ba576000604083870101525b50601f01601f1916929092016040019392505050565b80516020808301519190811015620002f2576000198160200360031b1b821691505b50919050565b600181811c908216806200030d57607f821691505b602082108103620002f257634e487b7160e01b600052602260045260246000fd5b60805160a05160c05160e051610100516101205161014051610e1e6200038960003960006102d8015260006102ae0152600061072f01526000610707015260006106620152600061068c015260006106b60152610e1e6000f3fe60806040526004361061003f5760003560e01c80632d0335ab1461004457806347153f821461008d57806384b0196e146100ae578063bf5d3bdb146100d6575b600080fd5b34801561005057600080fd5b5061007a61005f366004610a9c565b6001600160a01b031660009081526002602052604090205490565b6040519081526020015b60405180910390f35b6100a061009b366004610acc565b610106565b604051610084929190610bc7565b3480156100ba57600080fd5b506100c36102a0565b6040516100849796959493929190610bea565b3480156100e257600080fd5b506100f66100f1366004610acc565b610328565b6040519015158152602001610084565b60006060610115858585610328565b6101815760405162461bcd60e51b815260206004820152603260248201527f4d696e696d616c466f727761726465723a207369676e617475726520646f6573604482015271081b9bdd081b585d18da081c995c5d595cdd60721b60648201526084015b60405180910390fd5b61019060808601356001610c80565b600260006101a16020890189610a9c565b6001600160a01b03166001600160a01b03168152602001908152602001600020819055506000808660200160208101906101db9190610a9c565b6001600160a01b0316606088013560408901356101fb60a08b018b610ca6565b61020860208d018d610a9c565b60405160200161021a93929190610ced565b60408051601f198184030181529082905261023491610d13565b600060405180830381858888f193505050503d8060008114610272576040519150601f19603f3d011682016040523d82523d6000602084013e610277565b606091505b50909250905061028c603f6060890135610d2f565b5a1161029457fe5b90969095509350505050565b6000606080828080836102d37f0000000000000000000000000000000000000000000000000000000000000000836104e3565b6102fe7f000000000000000000000000000000000000000000000000000000000000000060016104e3565b60408051600080825260208201909252600f60f81b9b939a50919850469750309650945092509050565b60008061043b84848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061043592507fdd8f4b70b0f4393e889bd39128a30628a78b61816a9eb8199759e7a349657e489150610398905060208a018a610a9c565b6103a860408b0160208c01610a9c565b60408b013560608c013560808d01356103c460a08f018f610ca6565b6040516103d2929190610d51565b6040805191829003822060208301989098526001600160a01b0396871690820152949093166060850152608084019190915260a083015260c082015260e08101919091526101000160405160208183030381529060405280519060200120610587565b906105b4565b90506080850135600260006104536020890189610a9c565b6001600160a01b03166001600160a01b031681526020019081526020016000205414801561049e57506104896020860186610a9c565b6001600160a01b0316816001600160a01b0316145b95945050505050565b60006020835110156104c3576104bc836105d8565b90506104da565b828281516104d49260200190610a03565b5060ff90505b92915050565b90565b606060ff83146104f6576104bc83610616565b81805461050290610d61565b80601f016020809104026020016040519081016040528092919081815260200182805461052e90610d61565b801561057b5780601f106105505761010080835404028352916020019161057b565b820191906000526020600020905b81548152906001019060200180831161055e57829003601f168201915b505050505090506104da565b60006104da610594610655565b8360405161190160f01b8152600281019290925260228201526042902090565b60008060006105c38585610785565b915091506105d0816107ca565b509392505050565b600080829050601f81511115610603578260405163305a27a960e01b81526004016101789190610d9b565b805161060e82610dae565b179392505050565b6060600061062383610917565b604080516020808252818301909252919250600091906020820181803683375050509182525060208101929092525090565b6000306001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000161480156106ae57507f000000000000000000000000000000000000000000000000000000000000000046145b156106d857507f000000000000000000000000000000000000000000000000000000000000000090565b610780604080517f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f60208201527f0000000000000000000000000000000000000000000000000000000000000000918101919091527f000000000000000000000000000000000000000000000000000000000000000060608201524660808201523060a082015260009060c00160405160208183030381529060405280519060200120905090565b905090565b60008082516041036107bb5760208301516040840151606085015160001a6107af8782858561093f565b945094505050506107c3565b506000905060025b9250929050565b60008160048111156107de576107de610dd2565b036107e65750565b60018160048111156107fa576107fa610dd2565b036108475760405162461bcd60e51b815260206004820152601860248201527f45434453413a20696e76616c6964207369676e617475726500000000000000006044820152606401610178565b600281600481111561085b5761085b610dd2565b036108a85760405162461bcd60e51b815260206004820152601f60248201527f45434453413a20696e76616c6964207369676e6174757265206c656e677468006044820152606401610178565b60038160048111156108bc576108bc610dd2565b036109145760405162461bcd60e51b815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202773272076616c604482015261756560f01b6064820152608401610178565b50565b600060ff8216601f8111156104da57604051632cd44ac360e21b815260040160405180910390fd5b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a083111561097657506000905060036109fa565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa1580156109ca573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b0381166109f3576000600192509250506109fa565b9150600090505b94509492505050565b828054610a0f90610d61565b90600052602060002090601f016020900481019282610a315760008555610a77565b82601f10610a4a57805160ff1916838001178555610a77565b82800160010185558215610a77579182015b82811115610a77578251825591602001919060010190610a5c565b50610a83929150610a87565b5090565b5b80821115610a835760008155600101610a88565b600060208284031215610aae57600080fd5b81356001600160a01b0381168114610ac557600080fd5b9392505050565b600080600060408486031215610ae157600080fd5b833567ffffffffffffffff80821115610af957600080fd5b9085019060c08288031215610b0d57600080fd5b90935060208501359080821115610b2357600080fd5b818601915086601f830112610b3757600080fd5b813581811115610b4657600080fd5b876020828501011115610b5857600080fd5b6020830194508093505050509250925092565b60005b83811015610b86578181015183820152602001610b6e565b83811115610b95576000848401525b50505050565b60008151808452610bb3816020860160208601610b6b565b601f01601f19169290920160200192915050565b8215158152604060208201526000610be26040830184610b9b565b949350505050565b60ff60f81b881681526000602060e081840152610c0a60e084018a610b9b565b8381036040850152610c1c818a610b9b565b606085018990526001600160a01b038816608086015260a0850187905284810360c0860152855180825283870192509083019060005b81811015610c6e57835183529284019291840191600101610c52565b50909c9b505050505050505050505050565b60008219821115610ca157634e487b7160e01b600052601160045260246000fd5b500190565b6000808335601e19843603018112610cbd57600080fd5b83018035915067ffffffffffffffff821115610cd857600080fd5b6020019150368190038213156107c357600080fd5b8284823760609190911b6bffffffffffffffffffffffff19169101908152601401919050565b60008251610d25818460208701610b6b565b9190910192915050565b600082610d4c57634e487b7160e01b600052601260045260246000fd5b500490565b8183823760009101908152919050565b600181811c90821680610d7557607f821691505b602082108103610d9557634e487b7160e01b600052602260045260246000fd5b50919050565b602081526000610ac56020830184610b9b565b80516020808301519190811015610d955760001960209190910360031b1b16919050565b634e487b7160e01b600052602160045260246000fdfea26469706673582212206fe5ed5ceb0154292fd4bec46d808cd37f1bb24363f695e1a84a3f4f9c71b78164736f6c634300080d0033"; const isSuperArgs$q = (xs) => xs.length > 1; class MinimalForwarder__factory extends ethers.ContractFactory { constructor(...args) { if (isSuperArgs$q(args)) { super(...args); } else { super(_abi$I, _bytecode$q, args[0]); } } getDeployTransaction(overrides) { return super.getDeployTransaction(overrides || {}); } deploy(overrides) { return super.deploy(overrides || {}); } connect(runner) { return super.connect(runner); } static createInterface() { return new ethers.Interface(_abi$I); } static connect(address, runner) { return new ethers.Contract(address, _abi$I, runner); } } __publicField$I(MinimalForwarder__factory, "bytecode", _bytecode$q); __publicField$I(MinimalForwarder__factory, "abi", _abi$I); var __defProp$H = Object.defineProperty; var __defNormalProp$H = (obj, key, value) => key in obj ? __defProp$H(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$H = (obj, key, value) => { __defNormalProp$H(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$H = [ { inputs: [ { internalType: "bytes[]", name: "data", type: "bytes[]" } ], name: "multicall", outputs: [ { internalType: "bytes[]", name: "results", type: "bytes[]" } ], stateMutability: "nonpayable", type: "function" } ]; class Multicall__factory { static createInterface() { return new ethers.Interface(_abi$H); } static connect(address, runner) { return new ethers.Contract(address, _abi$H, runner); } } __publicField$H(Multicall__factory, "abi", _abi$H); var __defProp$G = Object.defineProperty; var __defNormalProp$G = (obj, key, value) => key in obj ? __defProp$G(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$G = (obj, key, value) => { __defNormalProp$G(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$G = [ { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "previousOwner", type: "address" }, { indexed: true, internalType: "address", name: "newOwner", type: "address" } ], name: "OwnershipTransferred", type: "event" }, { inputs: [], name: "owner", outputs: [ { internalType: "address", name: "", type: "address" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "renounceOwnership", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "newOwner", type: "address" } ], name: "transferOwnership", outputs: [], stateMutability: "nonpayable", type: "function" } ]; class Ownable__factory { static createInterface() { return new ethers.Interface(_abi$G); } static connect(address, runner) { return new ethers.Contract(address, _abi$G, runner); } } __publicField$G(Ownable__factory, "abi", _abi$G); var __defProp$F = Object.defineProperty; var __defNormalProp$F = (obj, key, value) => key in obj ? __defProp$F(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$F = (obj, key, value) => { __defNormalProp$F(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$F = [ { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "previousOwner", type: "address" }, { indexed: true, internalType: "address", name: "newOwner", type: "address" } ], name: "OwnershipTransferStarted", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "previousOwner", type: "address" }, { indexed: true, internalType: "address", name: "newOwner", type: "address" } ], name: "OwnershipTransferred", type: "event" }, { inputs: [], name: "acceptOwnership", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [], name: "owner", outputs: [ { internalType: "address", name: "", type: "address" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "pendingOwner", outputs: [ { internalType: "address", name: "", type: "address" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "renounceOwnership", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "newOwner", type: "address" } ], name: "transferOwnership", outputs: [], stateMutability: "nonpayable", type: "function" } ]; class Ownable2Step__factory { static createInterface() { return new ethers.Interface(_abi$F); } static connect(address, runner) { return new ethers.Contract(address, _abi$F, runner); } } __publicField$F(Ownable2Step__factory, "abi", _abi$F); var __defProp$E = Object.defineProperty; var __defNormalProp$E = (obj, key, value) => key in obj ? __defProp$E(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$E = (obj, key, value) => { __defNormalProp$E(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$E = [ { anonymous: false, inputs: [ { indexed: false, internalType: "address", name: "account", type: "address" } ], name: "Paused", type: "event" }, { anonymous: false, inputs: [ { indexed: false, internalType: "address", name: "account", type: "address" } ], name: "Unpaused", type: "event" }, { inputs: [], name: "paused", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" } ]; class Pausable__factory { static createInterface() { return new ethers.Interface(_abi$E); } static connect(address, runner) { return new ethers.Contract(address, _abi$E, runner); } } __publicField$E(Pausable__factory, "abi", _abi$E); var __defProp$D = Object.defineProperty; var __defNormalProp$D = (obj, key, value) => key in obj ? __defProp$D(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$D = (obj, key, value) => { __defNormalProp$D(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$D = [ { inputs: [ { internalType: "address[]", name: "payees", type: "address[]" }, { internalType: "uint256[]", name: "shares_", type: "uint256[]" } ], stateMutability: "payable", type: "constructor" }, { anonymous: false, inputs: [ { indexed: true, internalType: "contract IERC20", name: "token", type: "address" }, { indexed: false, internalType: "address", name: "to", type: "address" }, { indexed: false, internalType: "uint256", name: "amount", type: "uint256" } ], name: "ERC20PaymentReleased", type: "event" }, { anonymous: false, inputs: [ { indexed: false, internalType: "address", name: "account", type: "address" }, { indexed: false, internalType: "uint256", name: "shares", type: "uint256" } ], name: "PayeeAdded", type: "event" }, { anonymous: false, inputs: [ { indexed: false, internalType: "address", name: "from", type: "address" }, { indexed: false, internalType: "uint256", name: "amount", type: "uint256" } ], name: "PaymentReceived", type: "event" }, { anonymous: false, inputs: [ { indexed: false, internalType: "address", name: "to", type: "address" }, { indexed: false, internalType: "uint256", name: "amount", type: "uint256" } ], name: "PaymentReleased", type: "event" }, { inputs: [ { internalType: "uint256", name: "index", type: "uint256" } ], name: "payee", outputs: [ { internalType: "address", name: "", type: "address" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "account", type: "address" } ], name: "releasable", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "contract IERC20", name: "token", type: "address" }, { internalType: "address", name: "account", type: "address" } ], name: "releasable", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address payable", name: "account", type: "address" } ], name: "release", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "contract IERC20", name: "token", type: "address" }, { internalType: "address", name: "account", type: "address" } ], name: "release", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "contract IERC20", name: "token", type: "address" }, { internalType: "address", name: "account", type: "address" } ], name: "released", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "account", type: "address" } ], name: "released", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "account", type: "address" } ], name: "shares", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "contract IERC20", name: "token", type: "address" } ], name: "totalReleased", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "totalReleased", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "totalShares", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { stateMutability: "payable", type: "receive" } ]; const _bytecode$p = "0x6080604052604051620011d3380380620011d383398101604081905262000026916200042e565b8051825114620000985760405162461bcd60e51b815260206004820152603260248201527f5061796d656e7453706c69747465723a2070617965657320616e6420736861726044820152710cae640d8cadccee8d040dad2e6dac2e8c6d60731b60648201526084015b60405180910390fd5b6000825111620000eb5760405162461bcd60e51b815260206004820152601a60248201527f5061796d656e7453706c69747465723a206e6f2070617965657300000000000060448201526064016200008f565b60005b82518110156200015757620001428382815181106200011157620001116200050c565b60200260200101518383815181106200012e576200012e6200050c565b60200260200101516200016060201b60201c565b806200014e8162000538565b915050620000ee565b5050506200056f565b6001600160a01b038216620001cd5760405162461bcd60e51b815260206004820152602c60248201527f5061796d656e7453706c69747465723a206163636f756e74206973207468652060448201526b7a65726f206164647265737360a01b60648201526084016200008f565b600081116200021f5760405162461bcd60e51b815260206004820152601d60248201527f5061796d656e7453706c69747465723a2073686172657320617265203000000060448201526064016200008f565b6001600160a01b038216600090815260026020526040902054156200029b5760405162461bcd60e51b815260206004820152602b60248201527f5061796d656e7453706c69747465723a206163636f756e7420616c726561647960448201526a206861732073686172657360a81b60648201526084016200008f565b60048054600181019091557f8a35acfbc15ff81a39ae7d344fd709f28e8600b4aa8c65c6b64bfe7fe36bd19b0180546001600160a01b0319166001600160a01b0384169081179091556000908152600260205260408120829055546200030390829062000554565b600055604080516001600160a01b0384168152602081018390527f40c340f65e17194d14ddddb073d3c9f888e3cb52b5aae0c6c7706b4fbc905fac910160405180910390a15050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b03811182821017156200038d576200038d6200034c565b604052919050565b60006001600160401b03821115620003b157620003b16200034c565b5060051b60200190565b600082601f830112620003cd57600080fd5b81516020620003e6620003e08362000395565b62000362565b82815260059290921b840181019181810190868411156200040657600080fd5b8286015b848110156200042357805183529183019183016200040a565b509695505050505050565b600080604083850312156200044257600080fd5b82516001600160401b03808211156200045a57600080fd5b818501915085601f8301126200046f57600080fd5b8151602062000482620003e08362000395565b82815260059290921b84018101918181019089841115620004a257600080fd5b948201945b83861015620004d95785516001600160a01b0381168114620004c95760008081fd5b82529482019490820190620004a7565b91880151919650909350505080821115620004f357600080fd5b506200050285828601620003bb565b9150509250929050565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b6000600182016200054d576200054d62000522565b5060010190565b600082198211156200056a576200056a62000522565b500190565b610c54806200057f6000396000f3fe6080604052600436106100a05760003560e01c80639852595c116100645780639852595c146101d2578063a3f8eace14610208578063c45ac05014610228578063ce7c2ac214610248578063d79779b21461027e578063e33b7de3146102b457600080fd5b806319165587146100ee5780633a98ef3914610110578063406072a91461013457806348b750441461017a5780638b83209b1461019a57600080fd5b366100e9577f6ef95f06320e7a25a04a175ca677b7052bdd97131872c2192525a629f51be77033604080516001600160a01b0390921682523460208301520160405180910390a1005b600080fd5b3480156100fa57600080fd5b5061010e6101093660046109c8565b6102c9565b005b34801561011c57600080fd5b506000545b6040519081526020015b60405180910390f35b34801561014057600080fd5b5061012161014f3660046109e5565b6001600160a01b03918216600090815260066020908152604080832093909416825291909152205490565b34801561018657600080fd5b5061010e6101953660046109e5565b6103b9565b3480156101a657600080fd5b506101ba6101b5366004610a1e565b6104ca565b6040516001600160a01b03909116815260200161012b565b3480156101de57600080fd5b506101216101ed3660046109c8565b6001600160a01b031660009081526003602052604090205490565b34801561021457600080fd5b506101216102233660046109c8565b6104fa565b34801561023457600080fd5b506101216102433660046109e5565b610542565b34801561025457600080fd5b506101216102633660046109c8565b6001600160a01b031660009081526002602052604090205490565b34801561028a57600080fd5b506101216102993660046109c8565b6001600160a01b031660009081526005602052604090205490565b3480156102c057600080fd5b50600154610121565b6001600160a01b0381166000908152600260205260409020546103075760405162461bcd60e51b81526004016102fe90610a37565b60405180910390fd5b6000610312826104fa565b9050806000036103345760405162461bcd60e51b81526004016102fe90610a7d565b80600160008282546103469190610ade565b90915550506001600160a01b0382166000908152600360205260409020805482019055610373828261060d565b604080516001600160a01b0384168152602081018390527fdf20fd1e76bc69d672e4814fafb2c449bba3a5369d8359adf9e05e6fde87b056910160405180910390a15050565b6001600160a01b0381166000908152600260205260409020546103ee5760405162461bcd60e51b81526004016102fe90610a37565b60006103fa8383610542565b90508060000361041c5760405162461bcd60e51b81526004016102fe90610a7d565b6001600160a01b03831660009081526005602052604081208054839290610444908490610ade565b90915550506001600160a01b03808416600090815260066020908152604080832093861683529290522080548201905561047f83838361072b565b604080516001600160a01b038481168252602082018490528516917f3be5b7a71e84ed12875d241991c70855ac5817d847039e17a9d895c1ceb0f18a910160405180910390a2505050565b6000600482815481106104df576104df610af6565b6000918252602090912001546001600160a01b031692915050565b60008061050660015490565b6105109047610ade565b905061053b8382610536866001600160a01b031660009081526003602052604090205490565b61077d565b9392505050565b6001600160a01b03821660009081526005602052604081205481906040516370a0823160e01b81523060048201526001600160a01b038616906370a0823190602401602060405180830381865afa1580156105a1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105c59190610b0c565b6105cf9190610ade565b6001600160a01b03808616600090815260066020908152604080832093881683529290522054909150610605908490839061077d565b949350505050565b8047101561065d5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a20696e73756666696369656e742062616c616e636500000060448201526064016102fe565b6000826001600160a01b03168260405160006040518083038185875af1925050503d80600081146106aa576040519150601f19603f3d011682016040523d82523d6000602084013e6106af565b606091505b50509050806107265760405162461bcd60e51b815260206004820152603a60248201527f416464726573733a20756e61626c6520746f2073656e642076616c75652c207260448201527f6563697069656e74206d6179206861766520726576657274656400000000000060648201526084016102fe565b505050565b604080516001600160a01b038416602482015260448082018490528251808303909101815260649091019091526020810180516001600160e01b031663a9059cbb60e01b1790526107269084906107b8565b600080546001600160a01b0385168252600260205260408220548391906107a49086610b25565b6107ae9190610b44565b6106059190610b66565b600061080d826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b031661088d9092919063ffffffff16565b905080516000148061082e57508080602001905181019061082e9190610b7d565b6107265760405162461bcd60e51b815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e6044820152691bdd081cdd58d8d9595960b21b60648201526084016102fe565b6060610605848460008585600080866001600160a01b031685876040516108b49190610bcf565b60006040518083038185875af1925050503d80600081146108f1576040519150601f19603f3d011682016040523d82523d6000602084013e6108f6565b606091505b509150915061090787838387610912565b979650505050505050565b6060831561098157825160000361097a576001600160a01b0385163b61097a5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e747261637400000060448201526064016102fe565b5081610605565b61060583838151156109965781518083602001fd5b8060405162461bcd60e51b81526004016102fe9190610beb565b6001600160a01b03811681146109c557600080fd5b50565b6000602082840312156109da57600080fd5b813561053b816109b0565b600080604083850312156109f857600080fd5b8235610a03816109b0565b91506020830135610a13816109b0565b809150509250929050565b600060208284031215610a3057600080fd5b5035919050565b60208082526026908201527f5061796d656e7453706c69747465723a206163636f756e7420686173206e6f2060408201526573686172657360d01b606082015260800190565b6020808252602b908201527f5061796d656e7453706c69747465723a206163636f756e74206973206e6f742060408201526a191d59481c185e5b595b9d60aa1b606082015260800190565b634e487b7160e01b600052601160045260246000fd5b60008219821115610af157610af1610ac8565b500190565b634e487b7160e01b600052603260045260246000fd5b600060208284031215610b1e57600080fd5b5051919050565b6000816000190483118215151615610b3f57610b3f610ac8565b500290565b600082610b6157634e487b7160e01b600052601260045260246000fd5b500490565b600082821015610b7857610b78610ac8565b500390565b600060208284031215610b8f57600080fd5b8151801515811461053b57600080fd5b60005b83811015610bba578181015183820152602001610ba2565b83811115610bc9576000848401525b50505050565b60008251610be1818460208701610b9f565b9190910192915050565b6020815260008251806020840152610c0a816040850160208701610b9f565b601f01601f1916919091016040019291505056fea26469706673582212200b576ee29cf675e2ba4c1ec141ddfb83fc811611bf7893d8c5be7ac83b51746964736f6c634300080d0033"; const isSuperArgs$p = (xs) => xs.length > 1; class PaymentSplitter__factory extends ethers.ContractFactory { constructor(...args) { if (isSuperArgs$p(args)) { super(...args); } else { super(_abi$D, _bytecode$p, args[0]); } } getDeployTransaction(payees, shares_, overrides) { return super.getDeployTransaction(payees, shares_, overrides || {}); } deploy(payees, shares_, overrides) { return super.deploy(payees, shares_, overrides || {}); } connect(runner) { return super.connect(runner); } static createInterface() { return new ethers.Interface(_abi$D); } static connect(address, runner) { return new ethers.Contract(address, _abi$D, runner); } } __publicField$D(PaymentSplitter__factory, "bytecode", _bytecode$p); __publicField$D(PaymentSplitter__factory, "abi", _abi$D); var __defProp$C = Object.defineProperty; var __defNormalProp$C = (obj, key, value) => key in obj ? __defProp$C(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$C = (obj, key, value) => { __defNormalProp$C(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$C = [ { stateMutability: "payable", type: "fallback" }, { stateMutability: "payable", type: "receive" } ]; class Proxy__factory { static createInterface() { return new ethers.Interface(_abi$C); } static connect(address, runner) { return new ethers.Contract(address, _abi$C, runner); } } __publicField$C(Proxy__factory, "abi", _abi$C); var __defProp$B = Object.defineProperty; var __defNormalProp$B = (obj, key, value) => key in obj ? __defProp$B(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$B = (obj, key, value) => { __defNormalProp$B(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$B = [ { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "previousOwner", type: "address" }, { indexed: true, internalType: "address", name: "newOwner", type: "address" } ], name: "OwnershipTransferred", type: "event" }, { inputs: [ { internalType: "contract ITransparentUpgradeableProxy", name: "proxy", type: "address" }, { internalType: "address", name: "newAdmin", type: "address" } ], name: "changeProxyAdmin", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "contract ITransparentUpgradeableProxy", name: "proxy", type: "address" } ], name: "getProxyAdmin", outputs: [ { internalType: "address", name: "", type: "address" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "contract ITransparentUpgradeableProxy", name: "proxy", type: "address" } ], name: "getProxyImplementation", outputs: [ { internalType: "address", name: "", type: "address" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "owner", outputs: [ { internalType: "address", name: "", type: "address" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "renounceOwnership", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "newOwner", type: "address" } ], name: "transferOwnership", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "contract ITransparentUpgradeableProxy", name: "proxy", type: "address" }, { internalType: "address", name: "implementation", type: "address" } ], name: "upgrade", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "contract ITransparentUpgradeableProxy", name: "proxy", type: "address" }, { internalType: "address", name: "implementation", type: "address" }, { internalType: "bytes", name: "data", type: "bytes" } ], name: "upgradeAndCall", outputs: [], stateMutability: "payable", type: "function" } ]; const _bytecode$o = "0x608060405234801561001057600080fd5b5061001a3361001f565b61006f565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b61069a8061007e6000396000f3fe60806040526004361061007b5760003560e01c80639623609d1161004e5780639623609d1461011157806399a88ec414610124578063f2fde38b14610144578063f3b7dead1461016457600080fd5b8063204e1c7a14610080578063715018a6146100bc5780637eff275e146100d35780638da5cb5b146100f3575b600080fd5b34801561008c57600080fd5b506100a061009b366004610499565b610184565b6040516001600160a01b03909116815260200160405180910390f35b3480156100c857600080fd5b506100d1610215565b005b3480156100df57600080fd5b506100d16100ee3660046104bd565b610229565b3480156100ff57600080fd5b506000546001600160a01b03166100a0565b6100d161011f36600461050c565b610291565b34801561013057600080fd5b506100d161013f3660046104bd565b610300565b34801561015057600080fd5b506100d161015f366004610499565b610336565b34801561017057600080fd5b506100a061017f366004610499565b6103b4565b6000806000836001600160a01b03166040516101aa90635c60da1b60e01b815260040190565b600060405180830381855afa9150503d80600081146101e5576040519150601f19603f3d011682016040523d82523d6000602084013e6101ea565b606091505b5091509150816101f957600080fd5b8080602001905181019061020d91906105e2565b949350505050565b61021d6103da565b6102276000610434565b565b6102316103da565b6040516308f2839760e41b81526001600160a01b038281166004830152831690638f283970906024015b600060405180830381600087803b15801561027557600080fd5b505af1158015610289573d6000803e3d6000fd5b505050505050565b6102996103da565b60405163278f794360e11b81526001600160a01b03841690634f1ef2869034906102c990869086906004016105ff565b6000604051808303818588803b1580156102e257600080fd5b505af11580156102f6573d6000803e3d6000fd5b5050505050505050565b6103086103da565b604051631b2ce7f360e11b81526001600160a01b038281166004830152831690633659cfe69060240161025b565b61033e6103da565b6001600160a01b0381166103a85760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084015b60405180910390fd5b6103b181610434565b50565b6000806000836001600160a01b03166040516101aa906303e1469160e61b815260040190565b6000546001600160a01b031633146102275760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161039f565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6001600160a01b03811681146103b157600080fd5b6000602082840312156104ab57600080fd5b81356104b681610484565b9392505050565b600080604083850312156104d057600080fd5b82356104db81610484565b915060208301356104eb81610484565b809150509250929050565b634e487b7160e01b600052604160045260246000fd5b60008060006060848603121561052157600080fd5b833561052c81610484565b9250602084013561053c81610484565b9150604084013567ffffffffffffffff8082111561055957600080fd5b818601915086601f83011261056d57600080fd5b81358181111561057f5761057f6104f6565b604051601f8201601f19908116603f011681019083821181831017156105a7576105a76104f6565b816040528281528960208487010111156105c057600080fd5b8260208601602083013760006020848301015280955050505050509250925092565b6000602082840312156105f457600080fd5b81516104b681610484565b60018060a01b038316815260006020604081840152835180604085015260005b8181101561063b5785810183015185820160600152820161061f565b8181111561064d576000606083870101525b50601f01601f19169290920160600194935050505056fea2646970667358221220ba609cdc1acb4b31893a88830cb51f57e1dc322365ae5105c5710d07e3ba05ac64736f6c634300080d0033"; const isSuperArgs$o = (xs) => xs.length > 1; class ProxyAdmin__factory extends ethers.ContractFactory { constructor(...args) { if (isSuperArgs$o(args)) { super(...args); } else { super(_abi$B, _bytecode$o, args[0]); } } getDeployTransaction(overrides) { return super.getDeployTransaction(overrides || {}); } deploy(overrides) { return super.deploy(overrides || {}); } connect(runner) { return super.connect(runner); } static createInterface() { return new ethers.Interface(_abi$B); } static connect(address, runner) { return new ethers.Contract(address, _abi$B, runner); } } __publicField$B(ProxyAdmin__factory, "bytecode", _bytecode$o); __publicField$B(ProxyAdmin__factory, "abi", _abi$B); var __defProp$A = Object.defineProperty; var __defNormalProp$A = (obj, key, value) => key in obj ? __defProp$A(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$A = (obj, key, value) => { __defNormalProp$A(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$A = [ { inputs: [ { internalType: "address", name: "dest", type: "address" } ], name: "payments", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address payable", name: "payee", type: "address" } ], name: "withdrawPayments", outputs: [], stateMutability: "nonpayable", type: "function" } ]; class PullPayment__factory { static createInterface() { return new ethers.Interface(_abi$A); } static connect(address, runner) { return new ethers.Contract(address, _abi$A, runner); } } __publicField$A(PullPayment__factory, "abi", _abi$A); var __defProp$z = Object.defineProperty; var __defNormalProp$z = (obj, key, value) => key in obj ? __defProp$z(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$z = (obj, key, value) => { __defNormalProp$z(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$z = [ { inputs: [ { internalType: "address payable", name: "beneficiary_", type: "address" } ], stateMutability: "nonpayable", type: "constructor" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "payee", type: "address" }, { indexed: false, internalType: "uint256", name: "weiAmount", type: "uint256" } ], name: "Deposited", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "previousOwner", type: "address" }, { indexed: true, internalType: "address", name: "newOwner", type: "address" } ], name: "OwnershipTransferred", type: "event" }, { anonymous: false, inputs: [], name: "RefundsClosed", type: "event" }, { anonymous: false, inputs: [], name: "RefundsEnabled", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "payee", type: "address" }, { indexed: false, internalType: "uint256", name: "weiAmount", type: "uint256" } ], name: "Withdrawn", type: "event" }, { inputs: [], name: "beneficiary", outputs: [ { internalType: "address payable", name: "", type: "address" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "beneficiaryWithdraw", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [], name: "close", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "refundee", type: "address" } ], name: "deposit", outputs: [], stateMutability: "payable", type: "function" }, { inputs: [ { internalType: "address", name: "payee", type: "address" } ], name: "depositsOf", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "enableRefunds", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [], name: "owner", outputs: [ { internalType: "address", name: "", type: "address" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "renounceOwnership", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [], name: "state", outputs: [ { internalType: "enum RefundEscrow.State", name: "", type: "uint8" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "newOwner", type: "address" } ], name: "transferOwnership", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address payable", name: "payee", type: "address" } ], name: "withdraw", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "", type: "address" } ], name: "withdrawalAllowed", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" } ]; const _bytecode$n = "0x60a060405234801561001057600080fd5b50604051610b22380380610b2283398101604081905261002f91610113565b610038336100c3565b6001600160a01b0381166100a85760405162461bcd60e51b815260206004820152602d60248201527f526566756e64457363726f773a2062656e65666963696172792069732074686560448201526c207a65726f206164647265737360981b606482015260840160405180910390fd5b6001600160a01b03166080526002805460ff19169055610143565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b60006020828403121561012557600080fd5b81516001600160a01b038116811461013c57600080fd5b9392505050565b6080516109be6101646000396000818160bb015261051b01526109be6000f3fe6080604052600436106100a75760003560e01c80638da5cb5b116100645780638da5cb5b146101895780639af6549a146101a7578063c19d93fb146101bc578063e3a9db1a146101dc578063f2fde38b14610220578063f340fa011461024057600080fd5b806338af3eed146100ac57806343d726d6146100f857806351cff8d91461010f578063685ca1941461012f578063715018a61461015f5780638c52dc4114610174575b600080fd5b3480156100b857600080fd5b507f00000000000000000000000000000000000000000000000000000000000000005b6040516001600160a01b0390911681526020015b60405180910390f35b34801561010457600080fd5b5061010d610253565b005b34801561011b57600080fd5b5061010d61012a366004610900565b61030f565b34801561013b57600080fd5b5061014f61014a366004610900565b61038c565b60405190151581526020016100ef565b34801561016b57600080fd5b5061010d6103ae565b34801561018057600080fd5b5061010d6103c2565b34801561019557600080fd5b506000546001600160a01b03166100db565b3480156101b357600080fd5b5061010d610483565b3480156101c857600080fd5b5060025460ff166040516100ef919061093a565b3480156101e857600080fd5b506102126101f7366004610900565b6001600160a01b031660009081526001602052604090205490565b6040519081526020016100ef565b34801561022c57600080fd5b5061010d61023b366004610900565b610541565b61010d61024e366004610900565b6105b7565b61025b61063a565b600060025460ff16600281111561027457610274610924565b146102d85760405162461bcd60e51b815260206004820152602960248201527f526566756e64457363726f773a2063616e206f6e6c7920636c6f7365207768696044820152686c652061637469766560b81b60648201526084015b60405180910390fd5b6002805460ff1916811790556040517f088672c3a6e342f7cd94a65ba63b79df24a8973927b4d05d803c44bbf787d12f90600090a1565b6103188161038c565b6103805760405162461bcd60e51b815260206004820152603360248201527f436f6e646974696f6e616c457363726f773a207061796565206973206e6f7420604482015272616c6c6f77656420746f20776974686472617760681b60648201526084016102cf565b61038981610694565b50565b6000600160025460ff1660028111156103a7576103a7610924565b1492915050565b6103b661063a565b6103c0600061070b565b565b6103ca61063a565b600060025460ff1660028111156103e3576103e3610924565b1461044b5760405162461bcd60e51b815260206004820152603260248201527f526566756e64457363726f773a2063616e206f6e6c7920656e61626c6520726560448201527166756e6473207768696c652061637469766560701b60648201526084016102cf565b6002805460ff191660011790556040517f599d8e5a83cffb867d051598c4d70e805d59802d8081c1c7d6dffc5b6aca2b8990600090a1565b6002805460ff16600281111561049b5761049b610924565b1461050e5760405162461bcd60e51b815260206004820152603860248201527f526566756e64457363726f773a2062656e65666963696172792063616e206f6e60448201527f6c79207769746864726177207768696c6520636c6f736564000000000000000060648201526084016102cf565b6103c06001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000164761075b565b61054961063a565b6001600160a01b0381166105ae5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016102cf565b6103898161070b565b600060025460ff1660028111156105d0576105d0610924565b146106315760405162461bcd60e51b815260206004820152602b60248201527f526566756e64457363726f773a2063616e206f6e6c79206465706f736974207760448201526a68696c652061637469766560a81b60648201526084016102cf565b61038981610879565b6000546001600160a01b031633146103c05760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016102cf565b61069c61063a565b6001600160a01b03811660008181526001602052604081208054919055906106c4908261075b565b816001600160a01b03167f7084f5476618d8e60b11ef0d7d3f06914655adb8793e28ff7f018d4c76d505d5826040516106ff91815260200190565b60405180910390a25050565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b804710156107ab5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a20696e73756666696369656e742062616c616e636500000060448201526064016102cf565b6000826001600160a01b03168260405160006040518083038185875af1925050503d80600081146107f8576040519150601f19603f3d011682016040523d82523d6000602084013e6107fd565b606091505b50509050806108745760405162461bcd60e51b815260206004820152603a60248201527f416464726573733a20756e61626c6520746f2073656e642076616c75652c207260448201527f6563697069656e74206d6179206861766520726576657274656400000000000060648201526084016102cf565b505050565b61088161063a565b6001600160a01b0381166000908152600160205260408120805434928392916108ab908490610962565b90915550506040518181526001600160a01b038316907f2da466a7b24304f47e87fa2e1e5a81b9831ce54fec19055ce277ca2f39ba42c4906020016106ff565b6001600160a01b038116811461038957600080fd5b60006020828403121561091257600080fd5b813561091d816108eb565b9392505050565b634e487b7160e01b600052602160045260246000fd5b602081016003831061095c57634e487b7160e01b600052602160045260246000fd5b91905290565b6000821982111561098357634e487b7160e01b600052601160045260246000fd5b50019056fea26469706673582212208267ea71961568bda0999b5327794fce13d0cf08516c5f195e62b943718d305664736f6c634300080d0033"; const isSuperArgs$n = (xs) => xs.length > 1; class RefundEscrow__factory extends ethers.ContractFactory { constructor(...args) { if (isSuperArgs$n(args)) { super(...args); } else { super(_abi$z, _bytecode$n, args[0]); } } getDeployTransaction(beneficiary_, overrides) { return super.getDeployTransaction(beneficiary_, overrides || {}); } deploy(beneficiary_, overrides) { return super.deploy(beneficiary_, overrides || {}); } connect(runner) { return super.connect(runner); } static createInterface() { return new ethers.Interface(_abi$z); } static connect(address, runner) { return new ethers.Contract(address, _abi$z, runner); } } __publicField$z(RefundEscrow__factory, "bytecode", _bytecode$n); __publicField$z(RefundEscrow__factory, "abi", _abi$z); var __defProp$y = Object.defineProperty; var __defNormalProp$y = (obj, key, value) => key in obj ? __defProp$y(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$y = (obj, key, value) => { __defNormalProp$y(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$y = [ { inputs: [], name: "InvalidShortString", type: "error" }, { inputs: [ { internalType: "string", name: "str", type: "string" } ], name: "StringTooLong", type: "error" } ]; const _bytecode$m = "0x60566037600b82828239805160001a607314602a57634e487b7160e01b600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea2646970667358221220d0db41542d31ccd96c0c2e6e7f432a62af284bce7400577ffbcc43205fb5825264736f6c634300080d0033"; const isSuperArgs$m = (xs) => xs.length > 1; class ShortStrings__factory extends ethers.ContractFactory { constructor(...args) { if (isSuperArgs$m(args)) { super(...args); } else { super(_abi$y, _bytecode$m, args[0]); } } getDeployTransaction(overrides) { return super.getDeployTransaction(overrides || {}); } deploy(overrides) { return super.deploy(overrides || {}); } connect(runner) { return super.connect(runner); } static createInterface() { return new ethers.Interface(_abi$y); } static connect(address, runner) { return new ethers.Contract(address, _abi$y, runner); } } __publicField$y(ShortStrings__factory, "bytecode", _bytecode$m); __publicField$y(ShortStrings__factory, "abi", _abi$y); var __defProp$x = Object.defineProperty; var __defNormalProp$x = (obj, key, value) => key in obj ? __defProp$x(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$x = (obj, key, value) => { __defNormalProp$x(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$x = [ { inputs: [ { internalType: "uint256", name: "minDelay", type: "uint256" }, { internalType: "address[]", name: "proposers", type: "address[]" }, { internalType: "address[]", name: "executors", type: "address[]" }, { internalType: "address", name: "admin", type: "address" } ], stateMutability: "nonpayable", type: "constructor" }, { anonymous: false, inputs: [ { indexed: true, internalType: "bytes32", name: "id", type: "bytes32" }, { indexed: true, internalType: "uint256", name: "index", type: "uint256" }, { indexed: false, internalType: "address", name: "target", type: "address" }, { indexed: false, internalType: "uint256", name: "value", type: "uint256" }, { indexed: false, internalType: "bytes", name: "data", type: "bytes" } ], name: "CallExecuted", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "bytes32", name: "id", type: "bytes32" }, { indexed: false, internalType: "bytes32", name: "salt", type: "bytes32" } ], name: "CallSalt", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "bytes32", name: "id", type: "bytes32" }, { indexed: true, internalType: "uint256", name: "index", type: "uint256" }, { indexed: false, internalType: "address", name: "target", type: "address" }, { indexed: false, internalType: "uint256", name: "value", type: "uint256" }, { indexed: false, internalType: "bytes", name: "data", type: "bytes" }, { indexed: false, internalType: "bytes32", name: "predecessor", type: "bytes32" }, { indexed: false, internalType: "uint256", name: "delay", type: "uint256" } ], name: "CallScheduled", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "bytes32", name: "id", type: "bytes32" } ], name: "Cancelled", type: "event" }, { anonymous: false, inputs: [ { indexed: false, internalType: "uint256", name: "oldDuration", type: "uint256" }, { indexed: false, internalType: "uint256", name: "newDuration", type: "uint256" } ], name: "MinDelayChange", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "bytes32", name: "role", type: "bytes32" }, { indexed: true, internalType: "bytes32", name: "previousAdminRole", type: "bytes32" }, { indexed: true, internalType: "bytes32", name: "newAdminRole", type: "bytes32" } ], name: "RoleAdminChanged", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "bytes32", name: "role", type: "bytes32" }, { indexed: true, internalType: "address", name: "account", type: "address" }, { indexed: true, internalType: "address", name: "sender", type: "address" } ], name: "RoleGranted", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "bytes32", name: "role", type: "bytes32" }, { indexed: true, internalType: "address", name: "account", type: "address" }, { indexed: true, internalType: "address", name: "sender", type: "address" } ], name: "RoleRevoked", type: "event" }, { inputs: [], name: "CANCELLER_ROLE", outputs: [ { internalType: "bytes32", name: "", type: "bytes32" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "DEFAULT_ADMIN_ROLE", outputs: [ { internalType: "bytes32", name: "", type: "bytes32" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "EXECUTOR_ROLE", outputs: [ { internalType: "bytes32", name: "", type: "bytes32" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "PROPOSER_ROLE", outputs: [ { internalType: "bytes32", name: "", type: "bytes32" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "TIMELOCK_ADMIN_ROLE", outputs: [ { internalType: "bytes32", name: "", type: "bytes32" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "bytes32", name: "id", type: "bytes32" } ], name: "cancel", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "target", type: "address" }, { internalType: "uint256", name: "value", type: "uint256" }, { internalType: "bytes", name: "payload", type: "bytes" }, { internalType: "bytes32", name: "predecessor", type: "bytes32" }, { internalType: "bytes32", name: "salt", type: "bytes32" } ], name: "execute", outputs: [], stateMutability: "payable", type: "function" }, { inputs: [ { internalType: "address[]", name: "targets", type: "address[]" }, { internalType: "uint256[]", name: "values", type: "uint256[]" }, { internalType: "bytes[]", name: "payloads", type: "bytes[]" }, { internalType: "bytes32", name: "predecessor", type: "bytes32" }, { internalType: "bytes32", name: "salt", type: "bytes32" } ], name: "executeBatch", outputs: [], stateMutability: "payable", type: "function" }, { inputs: [], name: "getMinDelay", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "bytes32", name: "role", type: "bytes32" } ], name: "getRoleAdmin", outputs: [ { internalType: "bytes32", name: "", type: "bytes32" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "bytes32", name: "id", type: "bytes32" } ], name: "getTimestamp", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "bytes32", name: "role", type: "bytes32" }, { internalType: "address", name: "account", type: "address" } ], name: "grantRole", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "bytes32", name: "role", type: "bytes32" }, { internalType: "address", name: "account", type: "address" } ], name: "hasRole", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "target", type: "address" }, { internalType: "uint256", name: "value", type: "uint256" }, { internalType: "bytes", name: "data", type: "bytes" }, { internalType: "bytes32", name: "predecessor", type: "bytes32" }, { internalType: "bytes32", name: "salt", type: "bytes32" } ], name: "hashOperation", outputs: [ { internalType: "bytes32", name: "", type: "bytes32" } ], stateMutability: "pure", type: "function" }, { inputs: [ { internalType: "address[]", name: "targets", type: "address[]" }, { internalType: "uint256[]", name: "values", type: "uint256[]" }, { internalType: "bytes[]", name: "payloads", type: "bytes[]" }, { internalType: "bytes32", name: "predecessor", type: "bytes32" }, { internalType: "bytes32", name: "salt", type: "bytes32" } ], name: "hashOperationBatch", outputs: [ { internalType: "bytes32", name: "", type: "bytes32" } ], stateMutability: "pure", type: "function" }, { inputs: [ { internalType: "bytes32", name: "id", type: "bytes32" } ], name: "isOperation", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "bytes32", name: "id", type: "bytes32" } ], name: "isOperationDone", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "bytes32", name: "id", type: "bytes32" } ], name: "isOperationPending", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "bytes32", name: "id", type: "bytes32" } ], name: "isOperationReady", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "", type: "address" }, { internalType: "address", name: "", type: "address" }, { internalType: "uint256[]", name: "", type: "uint256[]" }, { internalType: "uint256[]", name: "", type: "uint256[]" }, { internalType: "bytes", name: "", type: "bytes" } ], name: "onERC1155BatchReceived", outputs: [ { internalType: "bytes4", name: "", type: "bytes4" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "", type: "address" }, { internalType: "address", name: "", type: "address" }, { internalType: "uint256", name: "", type: "uint256" }, { internalType: "uint256", name: "", type: "uint256" }, { internalType: "bytes", name: "", type: "bytes" } ], name: "onERC1155Received", outputs: [ { internalType: "bytes4", name: "", type: "bytes4" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "", type: "address" }, { internalType: "address", name: "", type: "address" }, { internalType: "uint256", name: "", type: "uint256" }, { internalType: "bytes", name: "", type: "bytes" } ], name: "onERC721Received", outputs: [ { internalType: "bytes4", name: "", type: "bytes4" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "bytes32", name: "role", type: "bytes32" }, { internalType: "address", name: "account", type: "address" } ], name: "renounceRole", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "bytes32", name: "role", type: "bytes32" }, { internalType: "address", name: "account", type: "address" } ], name: "revokeRole", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "target", type: "address" }, { internalType: "uint256", name: "value", type: "uint256" }, { internalType: "bytes", name: "data", type: "bytes" }, { internalType: "bytes32", name: "predecessor", type: "bytes32" }, { internalType: "bytes32", name: "salt", type: "bytes32" }, { internalType: "uint256", name: "delay", type: "uint256" } ], name: "schedule", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address[]", name: "targets", type: "address[]" }, { internalType: "uint256[]", name: "values", type: "uint256[]" }, { internalType: "bytes[]", name: "payloads", type: "bytes[]" }, { internalType: "bytes32", name: "predecessor", type: "bytes32" }, { internalType: "bytes32", name: "salt", type: "bytes32" }, { internalType: "uint256", name: "delay", type: "uint256" } ], name: "scheduleBatch", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "bytes4", name: "interfaceId", type: "bytes4" } ], name: "supportsInterface", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "uint256", name: "newDelay", type: "uint256" } ], name: "updateDelay", outputs: [], stateMutability: "nonpayable", type: "function" }, { stateMutability: "payable", type: "receive" } ]; const _bytecode$l = "0x60806040523480156200001157600080fd5b50604051620023a4380380620023a4833981016040819052620000349162000408565b6200004f60008051602062002324833981519152806200022d565b6200007960008051602062002344833981519152600080516020620023248339815191526200022d565b620000a360008051602062002364833981519152600080516020620023248339815191526200022d565b620000cd60008051602062002384833981519152600080516020620023248339815191526200022d565b620000e8600080516020620023248339815191523062000278565b6001600160a01b03811615620001135762000113600080516020620023248339815191528262000278565b60005b835181101562000199576200015d600080516020620023448339815191528583815181106200014957620001496200048f565b60200260200101516200027860201b60201c565b62000186600080516020620023848339815191528583815181106200014957620001496200048f565b6200019181620004a5565b905062000116565b5060005b8251811015620001e357620001d0600080516020620023648339815191528483815181106200014957620001496200048f565b620001db81620004a5565b90506200019d565b5060028490556040805160008152602081018690527f11c24f4ead16507c69ac467fbd5e4eed5fb5c699626d2cc6d66421df253886d5910160405180910390a150505050620004cd565b600082815260208190526040808220600101805490849055905190918391839186917fbd79b86ffe0ab8e8776151514217cd7cacd52c909f66475c3af44e129f0b00ff9190a4505050565b62000284828262000288565b5050565b6000828152602081815260408083206001600160a01b038516845290915290205460ff1662000284576000828152602081815260408083206001600160a01b03851684529091529020805460ff19166001179055620002e43390565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b634e487b7160e01b600052604160045260246000fd5b80516001600160a01b03811681146200035657600080fd5b919050565b600082601f8301126200036d57600080fd5b815160206001600160401b03808311156200038c576200038c62000328565b8260051b604051601f19603f83011681018181108482111715620003b457620003b462000328565b604052938452858101830193838101925087851115620003d357600080fd5b83870191505b84821015620003fd57620003ed826200033e565b83529183019190830190620003d9565b979650505050505050565b600080600080608085870312156200041f57600080fd5b845160208601519094506001600160401b03808211156200043f57600080fd5b6200044d888389016200035b565b945060408701519150808211156200046457600080fd5b5062000473878288016200035b565b92505062000484606086016200033e565b905092959194509250565b634e487b7160e01b600052603260045260246000fd5b600060018201620004c657634e487b7160e01b600052601160045260246000fd5b5060010190565b611e4780620004dd6000396000f3fe6080604052600436106101bb5760003560e01c80638065657f116100ec578063bc197c811161008a578063d547741f11610064578063d547741f14610582578063e38335e5146105a2578063f23a6e61146105b5578063f27a0c92146105e157600080fd5b8063bc197c8114610509578063c4d252f514610535578063d45c44351461055557600080fd5b806391d14854116100c657806391d1485414610480578063a217fddf146104a0578063b08e51c0146104b5578063b1c5f427146104e957600080fd5b80638065657f1461040c5780638f2a0bb01461042c5780638f61f4f51461044c57600080fd5b8063248a9ca31161015957806331d507501161013357806331d507501461038c57806336568abe146103ac578063584b153e146103cc57806364d62353146103ec57600080fd5b8063248a9ca31461030b5780632ab0f5291461033b5780632f2ff15d1461036c57600080fd5b80630d3cf6fc116101955780630d3cf6fc14610260578063134008d31461029457806313bc9f20146102a7578063150b7a02146102c757600080fd5b806301d5062a146101c757806301ffc9a7146101e957806307bd02651461021e57600080fd5b366101c257005b600080fd5b3480156101d357600080fd5b506101e76101e2366004611442565b6105f6565b005b3480156101f557600080fd5b506102096102043660046114b6565b6106cc565b60405190151581526020015b60405180910390f35b34801561022a57600080fd5b506102527fd8aa0f3194971a2a116679f7c2090f6939c8d4e01a2a8d7e41d55e5351469e6381565b604051908152602001610215565b34801561026c57600080fd5b506102527f5f58e3a2316349923ce3780f8d587db2d72378aed66a8261c916544fa6846ca581565b6101e76102a23660046114e0565b6106f7565b3480156102b357600080fd5b506102096102c236600461154b565b6107ac565b3480156102d357600080fd5b506102f26102e2366004611619565b630a85bd0160e11b949350505050565b6040516001600160e01b03199091168152602001610215565b34801561031757600080fd5b5061025261032636600461154b565b60009081526020819052604090206001015490565b34801561034757600080fd5b5061020961035636600461154b565b6000908152600160208190526040909120541490565b34801561037857600080fd5b506101e7610387366004611680565b6107d2565b34801561039857600080fd5b506102096103a736600461154b565b6107fc565b3480156103b857600080fd5b506101e76103c7366004611680565b610815565b3480156103d857600080fd5b506102096103e736600461154b565b610898565b3480156103f857600080fd5b506101e761040736600461154b565b6108ae565b34801561041857600080fd5b506102526104273660046114e0565b610952565b34801561043857600080fd5b506101e76104473660046116f0565b610991565b34801561045857600080fd5b506102527fb09aa5aeb3702cfd50b6b62bc4532604938f21248a27a1d5ca736082b6819cc181565b34801561048c57600080fd5b5061020961049b366004611680565b610b24565b3480156104ac57600080fd5b50610252600081565b3480156104c157600080fd5b506102527ffd643c72710c63c0180259aba6b2d05451e3591a24e58b62239378085726f78381565b3480156104f557600080fd5b506102526105043660046117a1565b610b4d565b34801561051557600080fd5b506102f26105243660046118c8565b63bc197c8160e01b95945050505050565b34801561054157600080fd5b506101e761055036600461154b565b610b92565b34801561056157600080fd5b5061025261057036600461154b565b60009081526001602052604090205490565b34801561058e57600080fd5b506101e761059d366004611680565b610c67565b6101e76105b03660046117a1565b610c8c565b3480156105c157600080fd5b506102f26105d0366004611971565b63f23a6e6160e01b95945050505050565b3480156105ed57600080fd5b50600254610252565b7fb09aa5aeb3702cfd50b6b62bc4532604938f21248a27a1d5ca736082b6819cc161062081610e16565b6000610630898989898989610952565b905061063c8184610e23565b6000817f4cf4410cc57040e44862ef0f45f3dd5a5e02db8eb8add648d4b0e236f1d07dca8b8b8b8b8b8a604051610678969594939291906119fe565b60405180910390a383156106c157807f20fda5fd27a1ea7bf5b9567f143ac5470bb059374a27e8f67cb44f946f6d0387856040516106b891815260200190565b60405180910390a25b505050505050505050565b60006001600160e01b03198216630271189760e51b14806106f157506106f182610f12565b92915050565b7fd8aa0f3194971a2a116679f7c2090f6939c8d4e01a2a8d7e41d55e5351469e63610723816000610b24565b610731576107318133610f47565b6000610741888888888888610952565b905061074d8185610fa0565b6107598888888861103c565b6000817fc2617efa69bab66782fa219543714338489c4e9e178271560a91b82c3f612b588a8a8a8a6040516107919493929190611a3b565b60405180910390a36107a28161110f565b5050505050505050565b6000818152600160205260408120546001811180156107cb5750428111155b9392505050565b6000828152602081905260409020600101546107ed81610e16565b6107f78383611148565b505050565b60008181526001602052604081205481905b1192915050565b6001600160a01b038116331461088a5760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b60648201526084015b60405180910390fd5b61089482826111cc565b5050565b600081815260016020819052604082205461080e565b3330146109115760405162461bcd60e51b815260206004820152602b60248201527f54696d656c6f636b436f6e74726f6c6c65723a2063616c6c6572206d7573742060448201526a62652074696d656c6f636b60a81b6064820152608401610881565b60025460408051918252602082018390527f11c24f4ead16507c69ac467fbd5e4eed5fb5c699626d2cc6d66421df253886d5910160405180910390a1600255565b600086868686868660405160200161096f969594939291906119fe565b6040516020818303038152906040528051906020012090509695505050505050565b7fb09aa5aeb3702cfd50b6b62bc4532604938f21248a27a1d5ca736082b6819cc16109bb81610e16565b8887146109da5760405162461bcd60e51b815260040161088190611a6d565b8885146109f95760405162461bcd60e51b815260040161088190611a6d565b6000610a0b8b8b8b8b8b8b8b8b610b4d565b9050610a178184610e23565b60005b8a811015610ad55780827f4cf4410cc57040e44862ef0f45f3dd5a5e02db8eb8add648d4b0e236f1d07dca8e8e85818110610a5757610a57611ab0565b9050602002016020810190610a6c9190611ac6565b8d8d86818110610a7e57610a7e611ab0565b905060200201358c8c87818110610a9757610a97611ab0565b9050602002810190610aa99190611ae1565b8c8b604051610abd969594939291906119fe565b60405180910390a3610ace81611b3d565b9050610a1a565b508315610b1757807f20fda5fd27a1ea7bf5b9567f143ac5470bb059374a27e8f67cb44f946f6d038785604051610b0e91815260200190565b60405180910390a25b5050505050505050505050565b6000918252602082815260408084206001600160a01b0393909316845291905290205460ff1690565b60008888888888888888604051602001610b6e989796959493929190611be6565b60405160208183030381529060405280519060200120905098975050505050505050565b7ffd643c72710c63c0180259aba6b2d05451e3591a24e58b62239378085726f783610bbc81610e16565b610bc582610898565b610c2b5760405162461bcd60e51b815260206004820152603160248201527f54696d656c6f636b436f6e74726f6c6c65723a206f7065726174696f6e2063616044820152701b9b9bdd0818994818d85b98d95b1b1959607a1b6064820152608401610881565b6000828152600160205260408082208290555183917fbaa1eb22f2a492ba1a5fea61b8df4d27c6c8b5f3971e63bb58fa14ff72eedb7091a25050565b600082815260208190526040902060010154610c8281610e16565b6107f783836111cc565b7fd8aa0f3194971a2a116679f7c2090f6939c8d4e01a2a8d7e41d55e5351469e63610cb8816000610b24565b610cc657610cc68133610f47565b878614610ce55760405162461bcd60e51b815260040161088190611a6d565b878414610d045760405162461bcd60e51b815260040161088190611a6d565b6000610d168a8a8a8a8a8a8a8a610b4d565b9050610d228185610fa0565b60005b89811015610e005760008b8b83818110610d4157610d41611ab0565b9050602002016020810190610d569190611ac6565b905060008a8a84818110610d6c57610d6c611ab0565b9050602002013590503660008a8a86818110610d8a57610d8a611ab0565b9050602002810190610d9c9190611ae1565b91509150610dac8484848461103c565b84867fc2617efa69bab66782fa219543714338489c4e9e178271560a91b82c3f612b5886868686604051610de39493929190611a3b565b60405180910390a35050505080610df990611b3d565b9050610d25565b50610e0a8161110f565b50505050505050505050565b610e208133610f47565b50565b610e2c826107fc565b15610e915760405162461bcd60e51b815260206004820152602f60248201527f54696d656c6f636b436f6e74726f6c6c65723a206f7065726174696f6e20616c60448201526e1c9958591e481cd8da19591d5b1959608a1b6064820152608401610881565b600254811015610ef25760405162461bcd60e51b815260206004820152602660248201527f54696d656c6f636b436f6e74726f6c6c65723a20696e73756666696369656e746044820152652064656c617960d01b6064820152608401610881565b610efc8142611c91565b6000928352600160205260409092209190915550565b60006001600160e01b03198216637965db0b60e01b14806106f157506301ffc9a760e01b6001600160e01b03198316146106f1565b610f518282610b24565b61089457610f5e81611231565b610f69836020611243565b604051602001610f7a929190611cd9565b60408051601f198184030181529082905262461bcd60e51b825261088191600401611d4e565b610fa9826107ac565b610fc55760405162461bcd60e51b815260040161088190611d81565b801580610fe15750600081815260016020819052604090912054145b6108945760405162461bcd60e51b815260206004820152602660248201527f54696d656c6f636b436f6e74726f6c6c65723a206d697373696e6720646570656044820152656e64656e637960d01b6064820152608401610881565b6000846001600160a01b0316848484604051611059929190611dcb565b60006040518083038185875af1925050503d8060008114611096576040519150601f19603f3d011682016040523d82523d6000602084013e61109b565b606091505b50509050806111085760405162461bcd60e51b815260206004820152603360248201527f54696d656c6f636b436f6e74726f6c6c65723a20756e6465726c79696e6720746044820152721c985b9cd858dd1a5bdb881c995d995c9d1959606a1b6064820152608401610881565b5050505050565b611118816107ac565b6111345760405162461bcd60e51b815260040161088190611d81565b600090815260016020819052604090912055565b6111528282610b24565b610894576000828152602081815260408083206001600160a01b03851684529091529020805460ff191660011790556111883390565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b6111d68282610b24565b15610894576000828152602081815260408083206001600160a01b0385168085529252808320805460ff1916905551339285917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a45050565b60606106f16001600160a01b03831660145b60606000611252836002611ddb565b61125d906002611c91565b6001600160401b0381111561127457611274611564565b6040519080825280601f01601f19166020018201604052801561129e576020820181803683370190505b509050600360fc1b816000815181106112b9576112b9611ab0565b60200101906001600160f81b031916908160001a905350600f60fb1b816001815181106112e8576112e8611ab0565b60200101906001600160f81b031916908160001a905350600061130c846002611ddb565b611317906001611c91565b90505b600181111561138f576f181899199a1a9b1b9c1cb0b131b232b360811b85600f166010811061134b5761134b611ab0565b1a60f81b82828151811061136157611361611ab0565b60200101906001600160f81b031916908160001a90535060049490941c9361138881611dfa565b905061131a565b5083156107cb5760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152606401610881565b80356001600160a01b03811681146113f557600080fd5b919050565b60008083601f84011261140c57600080fd5b5081356001600160401b0381111561142357600080fd5b60208301915083602082850101111561143b57600080fd5b9250929050565b600080600080600080600060c0888a03121561145d57600080fd5b611466886113de565b96506020880135955060408801356001600160401b0381111561148857600080fd5b6114948a828b016113fa565b989b979a50986060810135976080820135975060a09091013595509350505050565b6000602082840312156114c857600080fd5b81356001600160e01b0319811681146107cb57600080fd5b60008060008060008060a087890312156114f957600080fd5b611502876113de565b95506020870135945060408701356001600160401b0381111561152457600080fd5b61153089828a016113fa565b979a9699509760608101359660809091013595509350505050565b60006020828403121561155d57600080fd5b5035919050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b03811182821017156115a2576115a2611564565b604052919050565b600082601f8301126115bb57600080fd5b81356001600160401b038111156115d4576115d4611564565b6115e7601f8201601f191660200161157a565b8181528460208386010111156115fc57600080fd5b816020850160208301376000918101602001919091529392505050565b6000806000806080858703121561162f57600080fd5b611638856113de565b9350611646602086016113de565b92506040850135915060608501356001600160401b0381111561166857600080fd5b611674878288016115aa565b91505092959194509250565b6000806040838503121561169357600080fd5b823591506116a3602084016113de565b90509250929050565b60008083601f8401126116be57600080fd5b5081356001600160401b038111156116d557600080fd5b6020830191508360208260051b850101111561143b57600080fd5b600080600080600080600080600060c08a8c03121561170e57600080fd5b89356001600160401b038082111561172557600080fd5b6117318d838e016116ac565b909b50995060208c013591508082111561174a57600080fd5b6117568d838e016116ac565b909950975060408c013591508082111561176f57600080fd5b5061177c8c828d016116ac565b9a9d999c50979a969997986060880135976080810135975060a0013595509350505050565b60008060008060008060008060a0898b0312156117bd57600080fd5b88356001600160401b03808211156117d457600080fd5b6117e08c838d016116ac565b909a50985060208b01359150808211156117f957600080fd5b6118058c838d016116ac565b909850965060408b013591508082111561181e57600080fd5b5061182b8b828c016116ac565b999c989b509699959896976060870135966080013595509350505050565b600082601f83011261185a57600080fd5b813560206001600160401b0382111561187557611875611564565b8160051b61188482820161157a565b928352848101820192828101908785111561189e57600080fd5b83870192505b848310156118bd578235825291830191908301906118a4565b979650505050505050565b600080600080600060a086880312156118e057600080fd5b6118e9866113de565b94506118f7602087016113de565b935060408601356001600160401b038082111561191357600080fd5b61191f89838a01611849565b9450606088013591508082111561193557600080fd5b61194189838a01611849565b9350608088013591508082111561195757600080fd5b50611964888289016115aa565b9150509295509295909350565b600080600080600060a0868803121561198957600080fd5b611992866113de565b94506119a0602087016113de565b9350604086013592506060860135915060808601356001600160401b038111156119c957600080fd5b611964888289016115aa565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b60018060a01b038716815285602082015260a060408201526000611a2660a0830186886119d5565b60608301949094525060800152949350505050565b60018060a01b0385168152836020820152606060408201526000611a636060830184866119d5565b9695505050505050565b60208082526023908201527f54696d656c6f636b436f6e74726f6c6c65723a206c656e677468206d69736d616040820152620e8c6d60eb1b606082015260800190565b634e487b7160e01b600052603260045260246000fd5b600060208284031215611ad857600080fd5b6107cb826113de565b6000808335601e19843603018112611af857600080fd5b8301803591506001600160401b03821115611b1257600080fd5b60200191503681900382131561143b57600080fd5b634e487b7160e01b600052601160045260246000fd5b600060018201611b4f57611b4f611b27565b5060010190565b81835260006020808501808196508560051b810191508460005b87811015611bd95782840389528135601e19883603018112611b9157600080fd5b870180356001600160401b03811115611ba957600080fd5b803603891315611bb857600080fd5b611bc586828985016119d5565b9a87019a9550505090840190600101611b70565b5091979650505050505050565b60a0808252810188905260008960c08301825b8b811015611c27576001600160a01b03611c12846113de565b16825260209283019290910190600101611bf9565b5083810360208501528881526001600160fb1b03891115611c4757600080fd5b8860051b9150818a602083013781810191505060208101600081526020848303016040850152611c7881888a611b56565b6060850196909652505050608001529695505050505050565b60008219821115611ca457611ca4611b27565b500190565b60005b83811015611cc4578181015183820152602001611cac565b83811115611cd3576000848401525b50505050565b7f416363657373436f6e74726f6c3a206163636f756e7420000000000000000000815260008351611d11816017850160208801611ca9565b7001034b99036b4b9b9b4b733903937b6329607d1b6017918401918201528351611d42816028840160208801611ca9565b01602801949350505050565b6020815260008251806020840152611d6d816040850160208701611ca9565b601f01601f19169190910160400192915050565b6020808252602a908201527f54696d656c6f636b436f6e74726f6c6c65723a206f7065726174696f6e206973604082015269206e6f7420726561647960b01b606082015260800190565b8183823760009101908152919050565b6000816000190483118215151615611df557611df5611b27565b500290565b600081611e0957611e09611b27565b50600019019056fea2646970667358221220be35042c03cd52cc4d975802efc7798f58a0d2d816f72b63513451f5ef6fbd9d64736f6c634300080d00335f58e3a2316349923ce3780f8d587db2d72378aed66a8261c916544fa6846ca5b09aa5aeb3702cfd50b6b62bc4532604938f21248a27a1d5ca736082b6819cc1d8aa0f3194971a2a116679f7c2090f6939c8d4e01a2a8d7e41d55e5351469e63fd643c72710c63c0180259aba6b2d05451e3591a24e58b62239378085726f783"; const isSuperArgs$l = (xs) => xs.length > 1; class TimelockController__factory extends ethers.ContractFactory { constructor(...args) { if (isSuperArgs$l(args)) { super(...args); } else { super(_abi$x, _bytecode$l, args[0]); } } getDeployTransaction(minDelay, proposers, executors, admin, overrides) { return super.getDeployTransaction( minDelay, proposers, executors, admin, overrides || {} ); } deploy(minDelay, proposers, executors, admin, overrides) { return super.deploy( minDelay, proposers, executors, admin, overrides || {} ); } connect(runner) { return super.connect(runner); } static createInterface() { return new ethers.Interface(_abi$x); } static connect(address, runner) { return new ethers.Contract(address, _abi$x, runner); } } __publicField$x(TimelockController__factory, "bytecode", _bytecode$l); __publicField$x(TimelockController__factory, "abi", _abi$x); var __defProp$w = Object.defineProperty; var __defNormalProp$w = (obj, key, value) => key in obj ? __defProp$w(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$w = (obj, key, value) => { __defNormalProp$w(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$w = [ { inputs: [ { internalType: "contract IERC20", name: "token_", type: "address" }, { internalType: "address", name: "beneficiary_", type: "address" }, { internalType: "uint256", name: "releaseTime_", type: "uint256" } ], stateMutability: "nonpayable", type: "constructor" }, { inputs: [], name: "beneficiary", outputs: [ { internalType: "address", name: "", type: "address" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "release", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [], name: "releaseTime", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "token", outputs: [ { internalType: "contract IERC20", name: "", type: "address" } ], stateMutability: "view", type: "function" } ]; const _bytecode$k = "0x60e060405234801561001057600080fd5b506040516107cd3803806107cd83398101604081905261002f916100d0565b42811161009d5760405162461bcd60e51b815260206004820152603260248201527f546f6b656e54696d656c6f636b3a2072656c656173652074696d65206973206260448201527165666f72652063757272656e742074696d6560701b606482015260840160405180910390fd5b6001600160a01b03928316608052911660a05260c052610113565b6001600160a01b03811681146100cd57600080fd5b50565b6000806000606084860312156100e557600080fd5b83516100f0816100b8565b6020850151909350610101816100b8565b80925050604084015190509250925092565b60805160a05160c05161067361015a60003960008181609f015260f00152600081816053015261029801526000818160ca01528181610182015261027601526106736000f3fe608060405234801561001057600080fd5b506004361061004c5760003560e01c806338af3eed1461005157806386d1a69f14610090578063b91d40011461009a578063fc0c546a146100c8575b600080fd5b7f00000000000000000000000000000000000000000000000000000000000000005b6040516001600160a01b0390911681526020015b60405180910390f35b6100986100ee565b005b6040517f00000000000000000000000000000000000000000000000000000000000000008152602001610087565b7f0000000000000000000000000000000000000000000000000000000000000000610073565b7f000000000000000000000000000000000000000000000000000000000000000042101561017e5760405162461bcd60e51b815260206004820152603260248201527f546f6b656e54696d656c6f636b3a2063757272656e742074696d65206973206260448201527165666f72652072656c656173652074696d6560701b60648201526084015b60405180910390fd5b60007f00000000000000000000000000000000000000000000000000000000000000006040516370a0823160e01b81523060048201526001600160a01b0391909116906370a0823190602401602060405180830381865afa1580156101e7573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061020b919061057c565b9050600081116102695760405162461bcd60e51b815260206004820152602360248201527f546f6b656e54696d656c6f636b3a206e6f20746f6b656e7320746f2072656c6560448201526261736560e81b6064820152608401610175565b6102bd6001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000167f0000000000000000000000000000000000000000000000000000000000000000836102c0565b50565b604080516001600160a01b038416602482015260448082018490528251808303909101815260649091019091526020810180516001600160e01b031663a9059cbb60e01b179052610312908490610317565b505050565b600061036c826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b03166103ec9092919063ffffffff16565b905080516000148061038d57508080602001905181019061038d9190610595565b6103125760405162461bcd60e51b815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e6044820152691bdd081cdd58d8d9595960b21b6064820152608401610175565b60606103fb8484600085610403565b949350505050565b6060824710156104645760405162461bcd60e51b815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f6044820152651c8818d85b1b60d21b6064820152608401610175565b600080866001600160a01b0316858760405161048091906105ee565b60006040518083038185875af1925050503d80600081146104bd576040519150601f19603f3d011682016040523d82523d6000602084013e6104c2565b606091505b50915091506104d3878383876104de565b979650505050505050565b6060831561054d578251600003610546576001600160a01b0385163b6105465760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401610175565b50816103fb565b6103fb83838151156105625781518083602001fd5b8060405162461bcd60e51b8152600401610175919061060a565b60006020828403121561058e57600080fd5b5051919050565b6000602082840312156105a757600080fd5b815180151581146105b757600080fd5b9392505050565b60005b838110156105d95781810151838201526020016105c1565b838111156105e8576000848401525b50505050565b600082516106008184602087016105be565b9190910192915050565b60208152600082518060208401526106298160408501602087016105be565b601f01601f1916919091016040019291505056fea2646970667358221220717a8b2284b1b33e3d8da6eac760494ed3f74e654b74a5a7622c703e1cfd578a64736f6c634300080d0033"; const isSuperArgs$k = (xs) => xs.length > 1; class TokenTimelock__factory extends ethers.ContractFactory { constructor(...args) { if (isSuperArgs$k(args)) { super(...args); } else { super(_abi$w, _bytecode$k, args[0]); } } getDeployTransaction(token_, beneficiary_, releaseTime_, overrides) { return super.getDeployTransaction( token_, beneficiary_, releaseTime_, overrides || {} ); } deploy(token_, beneficiary_, releaseTime_, overrides) { return super.deploy( token_, beneficiary_, releaseTime_, overrides || {} ); } connect(runner) { return super.connect(runner); } static createInterface() { return new ethers.Interface(_abi$w); } static connect(address, runner) { return new ethers.Contract(address, _abi$w, runner); } } __publicField$w(TokenTimelock__factory, "bytecode", _bytecode$k); __publicField$w(TokenTimelock__factory, "abi", _abi$w); var __defProp$v = Object.defineProperty; var __defNormalProp$v = (obj, key, value) => key in obj ? __defProp$v(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$v = (obj, key, value) => { __defNormalProp$v(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$v = [ { inputs: [ { internalType: "address", name: "_logic", type: "address" }, { internalType: "address", name: "admin_", type: "address" }, { internalType: "bytes", name: "_data", type: "bytes" } ], stateMutability: "payable", type: "constructor" }, { anonymous: false, inputs: [ { indexed: false, internalType: "address", name: "previousAdmin", type: "address" }, { indexed: false, internalType: "address", name: "newAdmin", type: "address" } ], name: "AdminChanged", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "beacon", type: "address" } ], name: "BeaconUpgraded", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "implementation", type: "address" } ], name: "Upgraded", type: "event" }, { stateMutability: "payable", type: "fallback" }, { stateMutability: "payable", type: "receive" } ]; const _bytecode$j = "0x608060405260405162000ed038038062000ed08339810160408190526200002691620004a0565b828162000036828260006200004d565b50620000449050826200008a565b505050620005d3565b6200005883620000e5565b600082511180620000665750805b1562000085576200008383836200012760201b620001691760201c565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f620000b562000156565b604080516001600160a01b03928316815291841660208301520160405180910390a1620000e2816200018f565b50565b620000f08162000244565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b60606200014f838360405180606001604052806027815260200162000ea960279139620002f8565b9392505050565b60006200018060008051602062000e8983398151915260001b6200037760201b620001951760201c565b546001600160a01b0316919050565b6001600160a01b038116620001fa5760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b60648201526084015b60405180910390fd5b806200022360008051602062000e8983398151915260001b6200037760201b620001951760201c565b80546001600160a01b0319166001600160a01b039290921691909117905550565b6200025a816200037a60201b620001981760201c565b620002be5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b6064820152608401620001f1565b80620002237f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc60001b6200037760201b620001951760201c565b6060600080856001600160a01b03168560405162000317919062000580565b600060405180830381855af49150503d806000811462000354576040519150601f19603f3d011682016040523d82523d6000602084013e62000359565b606091505b5090925090506200036d8683838762000389565b9695505050505050565b90565b6001600160a01b03163b151590565b60608315620003fd578251600003620003f5576001600160a01b0385163b620003f55760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401620001f1565b508162000409565b62000409838362000411565b949350505050565b815115620004225781518083602001fd5b8060405162461bcd60e51b8152600401620001f191906200059e565b80516001600160a01b03811681146200045657600080fd5b919050565b634e487b7160e01b600052604160045260246000fd5b60005b838110156200048e57818101518382015260200162000474565b83811115620000835750506000910152565b600080600060608486031215620004b657600080fd5b620004c1846200043e565b9250620004d1602085016200043e565b60408501519092506001600160401b0380821115620004ef57600080fd5b818601915086601f8301126200050457600080fd5b8151818111156200051957620005196200045b565b604051601f8201601f19908116603f011681019083821181831017156200054457620005446200045b565b816040528281528960208487010111156200055e57600080fd5b6200057183602083016020880162000471565b80955050505050509250925092565b600082516200059481846020870162000471565b9190910192915050565b6020815260008251806020840152620005bf81604085016020870162000471565b601f01601f19169190910160400192915050565b6108a680620005e36000396000f3fe60806040523661001357610011610017565b005b6100115b61001f6101a7565b6001600160a01b0316330361015f5760606001600160e01b0319600035166364d3180d60e11b810161005a576100536101da565b9150610157565b63587086bd60e11b6001600160e01b031982160161007a57610053610231565b63070d7c6960e41b6001600160e01b031982160161009a57610053610277565b621eb96f60e61b6001600160e01b03198216016100b9576100536102a8565b63a39f25e560e01b6001600160e01b03198216016100d9576100536102e8565b60405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b815160208301f35b6101676102fc565b565b606061018e838360405180606001604052806027815260200161084a6027913961030c565b9392505050565b90565b6001600160a01b03163b151590565b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b60606101e4610384565b60006101f33660048184610695565b81019061020091906106db565b905061021d8160405180602001604052806000815250600061038f565b505060408051602081019091526000815290565b60606000806102433660048184610695565b810190610250919061070c565b915091506102608282600161038f565b604051806020016040528060008152509250505090565b6060610281610384565b60006102903660048184610695565b81019061029d91906106db565b905061021d816103bb565b60606102b2610384565b60006102bc6101a7565b604080516001600160a01b03831660208201529192500160405160208183030381529060405291505090565b60606102f2610384565b60006102bc610412565b610167610307610412565b610421565b6060600080856001600160a01b03168560405161032991906107fa565b600060405180830381855af49150503d8060008114610364576040519150601f19603f3d011682016040523d82523d6000602084013e610369565b606091505b509150915061037a86838387610445565b9695505050505050565b341561016757600080fd5b610398836104c6565b6000825111806103a55750805b156103b6576103b48383610169565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103e46101a7565b604080516001600160a01b03928316815291841660208301520160405180910390a161040f81610506565b50565b600061041c6105af565b905090565b3660008037600080366000845af43d6000803e808015610440573d6000f35b3d6000fd5b606083156104b45782516000036104ad576001600160a01b0385163b6104ad5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161014e565b50816104be565b6104be83836105d7565b949350505050565b6104cf81610601565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6001600160a01b03811661056b5760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b606482015260840161014e565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6101cb565b8151156105e75781518083602001fd5b8060405162461bcd60e51b815260040161014e9190610816565b6001600160a01b0381163b61066e5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840161014e565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc61058e565b600080858511156106a557600080fd5b838611156106b257600080fd5b5050820193919092039150565b80356001600160a01b03811681146106d657600080fd5b919050565b6000602082840312156106ed57600080fd5b61018e826106bf565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561071f57600080fd5b610728836106bf565b9150602083013567ffffffffffffffff8082111561074557600080fd5b818501915085601f83011261075957600080fd5b81358181111561076b5761076b6106f6565b604051601f8201601f19908116603f01168101908382118183101715610793576107936106f6565b816040528281528860208487010111156107ac57600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60005b838110156107e95781810151838201526020016107d1565b838111156103b45750506000910152565b6000825161080c8184602087016107ce565b9190910192915050565b60208152600082518060208401526108358160408501602087016107ce565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a2646970667358221220eed753f2d706b2830a4f22c0a254d6bf8195eda4b6811061eb1a5a96d822738c64736f6c634300080d0033b53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564"; const isSuperArgs$j = (xs) => xs.length > 1; class TransparentUpgradeableProxy__factory extends ethers.ContractFactory { constructor(...args) { if (isSuperArgs$j(args)) { super(...args); } else { super(_abi$v, _bytecode$j, args[0]); } } getDeployTransaction(_logic, admin_, _data, overrides) { return super.getDeployTransaction(_logic, admin_, _data, overrides || {}); } deploy(_logic, admin_, _data, overrides) { return super.deploy(_logic, admin_, _data, overrides || {}); } connect(runner) { return super.connect(runner); } static createInterface() { return new ethers.Interface(_abi$v); } static connect(address, runner) { return new ethers.Contract( address, _abi$v, runner ); } } __publicField$v(TransparentUpgradeableProxy__factory, "bytecode", _bytecode$j); __publicField$v(TransparentUpgradeableProxy__factory, "abi", _abi$v); var __defProp$u = Object.defineProperty; var __defNormalProp$u = (obj, key, value) => key in obj ? __defProp$u(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$u = (obj, key, value) => { __defNormalProp$u(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$u = [ { anonymous: false, inputs: [ { indexed: false, internalType: "address", name: "previousAdmin", type: "address" }, { indexed: false, internalType: "address", name: "newAdmin", type: "address" } ], name: "AdminChanged", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "beacon", type: "address" } ], name: "BeaconUpgraded", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "implementation", type: "address" } ], name: "Upgraded", type: "event" }, { inputs: [], name: "proxiableUUID", outputs: [ { internalType: "bytes32", name: "", type: "bytes32" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "newImplementation", type: "address" } ], name: "upgradeTo", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "newImplementation", type: "address" }, { internalType: "bytes", name: "data", type: "bytes" } ], name: "upgradeToAndCall", outputs: [], stateMutability: "payable", type: "function" } ]; class UUPSUpgradeable__factory { static createInterface() { return new ethers.Interface(_abi$u); } static connect(address, runner) { return new ethers.Contract(address, _abi$u, runner); } } __publicField$u(UUPSUpgradeable__factory, "abi", _abi$u); var __defProp$t = Object.defineProperty; var __defNormalProp$t = (obj, key, value) => key in obj ? __defProp$t(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$t = (obj, key, value) => { __defNormalProp$t(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$t = [ { inputs: [ { internalType: "address", name: "implementation_", type: "address" } ], stateMutability: "nonpayable", type: "constructor" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "previousOwner", type: "address" }, { indexed: true, internalType: "address", name: "newOwner", type: "address" } ], name: "OwnershipTransferred", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "implementation", type: "address" } ], name: "Upgraded", type: "event" }, { inputs: [], name: "implementation", outputs: [ { internalType: "address", name: "", type: "address" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "owner", outputs: [ { internalType: "address", name: "", type: "address" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "renounceOwnership", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "newOwner", type: "address" } ], name: "transferOwnership", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "newImplementation", type: "address" } ], name: "upgradeTo", outputs: [], stateMutability: "nonpayable", type: "function" } ]; const _bytecode$i = "0x608060405234801561001057600080fd5b506040516104e43803806104e483398101604081905261002f91610151565b61003833610047565b61004181610097565b50610181565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6100aa8161014260201b6101a01760201c565b6101205760405162461bcd60e51b815260206004820152603360248201527f5570677261646561626c65426561636f6e3a20696d706c656d656e746174696f60448201527f6e206973206e6f74206120636f6e747261637400000000000000000000000000606482015260840160405180910390fd5b600180546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b03163b151590565b60006020828403121561016357600080fd5b81516001600160a01b038116811461017a57600080fd5b9392505050565b610354806101906000396000f3fe608060405234801561001057600080fd5b50600436106100575760003560e01c80633659cfe61461005c5780635c60da1b14610071578063715018a61461009a5780638da5cb5b146100a2578063f2fde38b146100b3575b600080fd5b61006f61006a3660046102ee565b6100c6565b005b6001546001600160a01b03165b6040516001600160a01b03909116815260200160405180910390f35b61006f61010e565b6000546001600160a01b031661007e565b61006f6100c13660046102ee565b610122565b6100ce6101af565b6100d781610209565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6101166101af565b610120600061029e565b565b61012a6101af565b6001600160a01b0381166101945760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084015b60405180910390fd5b61019d8161029e565b50565b6001600160a01b03163b151590565b6000546001600160a01b031633146101205760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161018b565b6001600160a01b0381163b61027c5760405162461bcd60e51b815260206004820152603360248201527f5570677261646561626c65426561636f6e3a20696d706c656d656e746174696f6044820152721b881a5cc81b9bdd08184818dbdb9d1c9858dd606a1b606482015260840161018b565b600180546001600160a01b0319166001600160a01b0392909216919091179055565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b60006020828403121561030057600080fd5b81356001600160a01b038116811461031757600080fd5b939250505056fea2646970667358221220c868e6c943c1386edda57067da9e52276a92c1cb791ee80f3339462907d8ffa664736f6c634300080d0033"; const isSuperArgs$i = (xs) => xs.length > 1; class UpgradeableBeacon__factory extends ethers.ContractFactory { constructor(...args) { if (isSuperArgs$i(args)) { super(...args); } else { super(_abi$t, _bytecode$i, args[0]); } } getDeployTransaction(implementation_, overrides) { return super.getDeployTransaction(implementation_, overrides || {}); } deploy(implementation_, overrides) { return super.deploy(implementation_, overrides || {}); } connect(runner) { return super.connect(runner); } static createInterface() { return new ethers.Interface(_abi$t); } static connect(address, runner) { return new ethers.Contract(address, _abi$t, runner); } } __publicField$t(UpgradeableBeacon__factory, "bytecode", _bytecode$i); __publicField$t(UpgradeableBeacon__factory, "abi", _abi$t); var __defProp$s = Object.defineProperty; var __defNormalProp$s = (obj, key, value) => key in obj ? __defProp$s(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$s = (obj, key, value) => { __defNormalProp$s(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$s = [ { inputs: [ { internalType: "address", name: "beneficiaryAddress", type: "address" }, { internalType: "uint64", name: "startTimestamp", type: "uint64" }, { internalType: "uint64", name: "durationSeconds", type: "uint64" } ], stateMutability: "payable", type: "constructor" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "token", type: "address" }, { indexed: false, internalType: "uint256", name: "amount", type: "uint256" } ], name: "ERC20Released", type: "event" }, { anonymous: false, inputs: [ { indexed: false, internalType: "uint256", name: "amount", type: "uint256" } ], name: "EtherReleased", type: "event" }, { inputs: [], name: "beneficiary", outputs: [ { internalType: "address", name: "", type: "address" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "duration", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "token", type: "address" } ], name: "releasable", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "releasable", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "token", type: "address" } ], name: "release", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [], name: "release", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [], name: "released", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "token", type: "address" } ], name: "released", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "start", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "uint64", name: "timestamp", type: "uint64" } ], name: "vestedAmount", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "token", type: "address" }, { internalType: "uint64", name: "timestamp", type: "uint64" } ], name: "vestedAmount", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { stateMutability: "payable", type: "receive" } ]; const _bytecode$h = "0x60e0604052604051610cdb380380610cdb833981016040819052610022916100d0565b6001600160a01b03831661008f5760405162461bcd60e51b815260206004820152602a60248201527f56657374696e6757616c6c65743a2062656e6566696369617279206973207a65604482015269726f206164647265737360b01b606482015260840160405180910390fd5b6001600160a01b039092166080526001600160401b0390811660a0521660c052610121565b80516001600160401b03811681146100cb57600080fd5b919050565b6000806000606084860312156100e557600080fd5b83516001600160a01b03811681146100fc57600080fd5b925061010a602085016100b4565b9150610118604085016100b4565b90509250925092565b60805160a05160c051610b7061016b6000396000818160ee015281816104ce01526105230152600061046a015260008181610158015281816102f1015261040a0152610b706000f3fe6080604052600436106100a05760003560e01c806386d1a69f1161006457806386d1a69f146101a257806396132521146101b75780639852595c146101cc578063a3f8eace14610202578063be9a655514610222578063fbccedae1461023757600080fd5b80630a17b06b146100ac5780630fb5a6b4146100df578063191655871461011c57806338af3eed1461013e578063810ec23b1461018257600080fd5b366100a757005b600080fd5b3480156100b857600080fd5b506100cc6100c736600461097a565b61024c565b6040519081526020015b60405180910390f35b3480156100eb57600080fd5b507f000000000000000000000000000000000000000000000000000000000000000067ffffffffffffffff166100cc565b34801561012857600080fd5b5061013c6101373660046109ac565b610270565b005b34801561014a57600080fd5b506040516001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001681526020016100d6565b34801561018e57600080fd5b506100cc61019d3660046109c7565b61031a565b3480156101ae57600080fd5b5061013c6103b0565b3480156101c357600080fd5b506000546100cc565b3480156101d857600080fd5b506100cc6101e73660046109ac565b6001600160a01b031660009081526001602052604090205490565b34801561020e57600080fd5b506100cc61021d3660046109ac565b610432565b34801561022e57600080fd5b506100cc61045f565b34801561024357600080fd5b506100cc61048d565b600061026a61025a60005490565b6102649047610a10565b836104a9565b92915050565b600061027b82610432565b6001600160a01b0383166000908152600160205260408120805492935083929091906102a8908490610a10565b90915550506040518181526001600160a01b038316907fc0e523490dd523c33b1878c9eb14ff46991e3f5b2cd33710918618f2a39cba1b9060200160405180910390a2610316827f000000000000000000000000000000000000000000000000000000000000000083610583565b5050565b6001600160a01b0382166000908152600160205260408120546103a9906040516370a0823160e01b81523060048201526001600160a01b038616906370a0823190602401602060405180830381865afa15801561037b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061039f9190610a28565b6102649190610a10565b9392505050565b60006103ba61048d565b9050806000808282546103cd9190610a10565b90915550506040518181527fda9d4e5f101b8b9b1c5b76d0c5a9f7923571acfc02376aa076b75a8c080c956b9060200160405180910390a161042f7f0000000000000000000000000000000000000000000000000000000000000000826105da565b50565b6001600160a01b038116600090815260016020526040812054610455834261031a565b61026a9190610a41565b67ffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001690565b6000805461049a4261024c565b6104a49190610a41565b905090565b60006104b361045f565b8267ffffffffffffffff1610156104cc5750600061026a565b7f000000000000000000000000000000000000000000000000000000000000000067ffffffffffffffff166104ff61045f565b6105099190610a10565b8267ffffffffffffffff16111561052157508161026a565b7f000000000000000000000000000000000000000000000000000000000000000067ffffffffffffffff1661055461045f565b6105689067ffffffffffffffff8516610a41565b6105729085610a58565b61057c9190610a77565b905061026a565b604080516001600160a01b038416602482015260448082018490528251808303909101815260649091019091526020810180516001600160e01b031663a9059cbb60e01b1790526105d59084906106f8565b505050565b8047101561062f5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a20696e73756666696369656e742062616c616e636500000060448201526064015b60405180910390fd5b6000826001600160a01b03168260405160006040518083038185875af1925050503d806000811461067c576040519150601f19603f3d011682016040523d82523d6000602084013e610681565b606091505b50509050806105d55760405162461bcd60e51b815260206004820152603a60248201527f416464726573733a20756e61626c6520746f2073656e642076616c75652c207260448201527f6563697069656e74206d617920686176652072657665727465640000000000006064820152608401610626565b600061074d826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b03166107cd9092919063ffffffff16565b905080516000148061076e57508080602001905181019061076e9190610a99565b6105d55760405162461bcd60e51b815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e6044820152691bdd081cdd58d8d9595960b21b6064820152608401610626565b60606107dc84846000856107e4565b949350505050565b6060824710156108455760405162461bcd60e51b815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f6044820152651c8818d85b1b60d21b6064820152608401610626565b600080866001600160a01b031685876040516108619190610aeb565b60006040518083038185875af1925050503d806000811461089e576040519150601f19603f3d011682016040523d82523d6000602084013e6108a3565b606091505b50915091506108b4878383876108bf565b979650505050505050565b6060831561092e578251600003610927576001600160a01b0385163b6109275760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401610626565b50816107dc565b6107dc83838151156109435781518083602001fd5b8060405162461bcd60e51b81526004016106269190610b07565b803567ffffffffffffffff8116811461097557600080fd5b919050565b60006020828403121561098c57600080fd5b6103a98261095d565b80356001600160a01b038116811461097557600080fd5b6000602082840312156109be57600080fd5b6103a982610995565b600080604083850312156109da57600080fd5b6109e383610995565b91506109f16020840161095d565b90509250929050565b634e487b7160e01b600052601160045260246000fd5b60008219821115610a2357610a236109fa565b500190565b600060208284031215610a3a57600080fd5b5051919050565b600082821015610a5357610a536109fa565b500390565b6000816000190483118215151615610a7257610a726109fa565b500290565b600082610a9457634e487b7160e01b600052601260045260246000fd5b500490565b600060208284031215610aab57600080fd5b815180151581146103a957600080fd5b60005b83811015610ad6578181015183820152602001610abe565b83811115610ae5576000848401525b50505050565b60008251610afd818460208701610abb565b9190910192915050565b6020815260008251806020840152610b26816040850160208701610abb565b601f01601f1916919091016040019291505056fea26469706673582212202934e0851e0eb404b8aceebff1068361110cecdbad5f9f791dfb2dfbddfcfe1964736f6c634300080d0033"; const isSuperArgs$h = (xs) => xs.length > 1; class VestingWallet__factory extends ethers.ContractFactory { constructor(...args) { if (isSuperArgs$h(args)) { super(...args); } else { super(_abi$s, _bytecode$h, args[0]); } } getDeployTransaction(beneficiaryAddress, startTimestamp, durationSeconds, overrides) { return super.getDeployTransaction( beneficiaryAddress, startTimestamp, durationSeconds, overrides || {} ); } deploy(beneficiaryAddress, startTimestamp, durationSeconds, overrides) { return super.deploy( beneficiaryAddress, startTimestamp, durationSeconds, overrides || {} ); } connect(runner) { return super.connect(runner); } static createInterface() { return new ethers.Interface(_abi$s); } static connect(address, runner) { return new ethers.Contract(address, _abi$s, runner); } } __publicField$s(VestingWallet__factory, "bytecode", _bytecode$h); __publicField$s(VestingWallet__factory, "abi", _abi$s); var __defProp$r = Object.defineProperty; var __defNormalProp$r = (obj, key, value) => key in obj ? __defProp$r(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$r = (obj, key, value) => { __defNormalProp$r(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$r = [ { inputs: [], name: "InvalidShortString", type: "error" }, { inputs: [ { internalType: "string", name: "str", type: "string" } ], name: "StringTooLong", type: "error" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "delegator", type: "address" }, { indexed: true, internalType: "address", name: "fromDelegate", type: "address" }, { indexed: true, internalType: "address", name: "toDelegate", type: "address" } ], name: "DelegateChanged", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "delegate", type: "address" }, { indexed: false, internalType: "uint256", name: "previousBalance", type: "uint256" }, { indexed: false, internalType: "uint256", name: "newBalance", type: "uint256" } ], name: "DelegateVotesChanged", type: "event" }, { anonymous: false, inputs: [], name: "EIP712DomainChanged", type: "event" }, { inputs: [], name: "CLOCK_MODE", outputs: [ { internalType: "string", name: "", type: "string" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "DOMAIN_SEPARATOR", outputs: [ { internalType: "bytes32", name: "", type: "bytes32" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "clock", outputs: [ { internalType: "uint48", name: "", type: "uint48" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "delegatee", type: "address" } ], name: "delegate", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "delegatee", type: "address" }, { internalType: "uint256", name: "nonce", type: "uint256" }, { internalType: "uint256", name: "expiry", type: "uint256" }, { internalType: "uint8", name: "v", type: "uint8" }, { internalType: "bytes32", name: "r", type: "bytes32" }, { internalType: "bytes32", name: "s", type: "bytes32" } ], name: "delegateBySig", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "account", type: "address" } ], name: "delegates", outputs: [ { internalType: "address", name: "", type: "address" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "eip712Domain", outputs: [ { internalType: "bytes1", name: "fields", type: "bytes1" }, { internalType: "string", name: "name", type: "string" }, { internalType: "string", name: "version", type: "string" }, { internalType: "uint256", name: "chainId", type: "uint256" }, { internalType: "address", name: "verifyingContract", type: "address" }, { internalType: "bytes32", name: "salt", type: "bytes32" }, { internalType: "uint256[]", name: "extensions", type: "uint256[]" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "uint256", name: "timepoint", type: "uint256" } ], name: "getPastTotalSupply", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "account", type: "address" }, { internalType: "uint256", name: "timepoint", type: "uint256" } ], name: "getPastVotes", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "account", type: "address" } ], name: "getVotes", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "owner", type: "address" } ], name: "nonces", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" } ]; class Votes__factory { static createInterface() { return new ethers.Interface(_abi$r); } static connect(address, runner) { return new ethers.Contract(address, _abi$r, runner); } } __publicField$r(Votes__factory, "abi", _abi$r); const index$3 = { __proto__: null, AccessControlCrossChain__factory: AccessControlCrossChain__factory, AccessControlDefaultAdminRules__factory: AccessControlDefaultAdminRules__factory, AccessControlEnumerable__factory: AccessControlEnumerable__factory, AccessControl__factory: AccessControl__factory, BeaconProxy__factory: BeaconProxy__factory, ConditionalEscrow__factory: ConditionalEscrow__factory, CrossChainEnabledAMB__factory: CrossChainEnabledAMB__factory, CrossChainEnabledPolygonChild__factory: CrossChainEnabledPolygonChild__factory, DoubleEndedQueue__factory: DoubleEndedQueue__factory, EIP712__factory: EIP712__factory, ERC1155Burnable__factory: ERC1155Burnable__factory, ERC1155Holder__factory: ERC1155Holder__factory, ERC1155Pausable__factory: ERC1155Pausable__factory, ERC1155PresetMinterPauser__factory: ERC1155PresetMinterPauser__factory, ERC1155Receiver__factory: ERC1155Receiver__factory, ERC1155Supply__factory: ERC1155Supply__factory, ERC1155URIStorage__factory: ERC1155URIStorage__factory, ERC1155__factory: ERC1155__factory, ERC165Storage__factory: ERC165Storage__factory, ERC165__factory: ERC165__factory, ERC1820Implementer__factory: ERC1820Implementer__factory, ERC1967Proxy__factory: ERC1967Proxy__factory, ERC1967Upgrade__factory: ERC1967Upgrade__factory, ERC20Burnable__factory: ERC20Burnable__factory, ERC20Capped__factory: ERC20Capped__factory, ERC20FlashMint__factory: ERC20FlashMint__factory, ERC20Pausable__factory: ERC20Pausable__factory, ERC20Permit__factory: ERC20Permit__factory, ERC20PresetFixedSupply__factory: ERC20PresetFixedSupply__factory, ERC20PresetMinterPauser__factory: ERC20PresetMinterPauser__factory, ERC20Snapshot__factory: ERC20Snapshot__factory, ERC20VotesComp__factory: ERC20VotesComp__factory, ERC20Votes__factory: ERC20Votes__factory, ERC20Wrapper__factory: ERC20Wrapper__factory, ERC20__factory: ERC20__factory, ERC2771Context__factory: ERC2771Context__factory, ERC2981__factory: ERC2981__factory, ERC4626__factory: ERC4626__factory, ERC721Burnable__factory: ERC721Burnable__factory, ERC721Consecutive__factory: ERC721Consecutive__factory, ERC721Enumerable__factory: ERC721Enumerable__factory, ERC721Holder__factory: ERC721Holder__factory, ERC721Pausable__factory: ERC721Pausable__factory, ERC721PresetMinterPauserAutoId__factory: ERC721PresetMinterPauserAutoId__factory, ERC721Royalty__factory: ERC721Royalty__factory, ERC721URIStorage__factory: ERC721URIStorage__factory, ERC721Votes__factory: ERC721Votes__factory, ERC721Wrapper__factory: ERC721Wrapper__factory, ERC721__factory: ERC721__factory, ERC777PresetFixedSupply__factory: ERC777PresetFixedSupply__factory, ERC777__factory: ERC777__factory, Escrow__factory: Escrow__factory, GovernorCompatibilityBravo__factory: GovernorCompatibilityBravo__factory, GovernorCountingSimple__factory: GovernorCountingSimple__factory, GovernorPreventLateQuorum__factory: GovernorPreventLateQuorum__factory, GovernorProposalThreshold__factory: GovernorProposalThreshold__factory, GovernorSettings__factory: GovernorSettings__factory, GovernorTimelockCompound__factory: GovernorTimelockCompound__factory, GovernorTimelockControl__factory: GovernorTimelockControl__factory, GovernorVotesComp__factory: GovernorVotesComp__factory, GovernorVotesQuorumFraction__factory: GovernorVotesQuorumFraction__factory, GovernorVotes__factory: GovernorVotes__factory, Governor__factory: Governor__factory, IAMB__factory: IAMB__factory, IAccessControlDefaultAdminRules__factory: IAccessControlDefaultAdminRules__factory, IAccessControlEnumerable__factory: IAccessControlEnumerable__factory, IAccessControl__factory: IAccessControl__factory, IArbSys__factory: IArbSys__factory, IBeacon__factory: IBeacon__factory, IBridge__factory: IBridge__factory, ICompoundTimelock__factory: ICompoundTimelock__factory, ICrossDomainMessenger__factory: ICrossDomainMessenger__factory, IDelayedMessageProvider__factory: IDelayedMessageProvider__factory, IERC1155MetadataURI__factory: IERC1155MetadataURI__factory, IERC1155Receiver__factory: IERC1155Receiver__factory, IERC1155__factory: IERC1155__factory, IERC1271__factory: IERC1271__factory, IERC1363Receiver__factory: IERC1363Receiver__factory, IERC1363Spender__factory: IERC1363Spender__factory, IERC1363__factory: IERC1363__factory, IERC165__factory: IERC165__factory, IERC1820Implementer__factory: IERC1820Implementer__factory, IERC1820Registry__factory: IERC1820Registry__factory, IERC1822Proxiable__factory: IERC1822Proxiable__factory, IERC1967__factory: IERC1967__factory, IERC20Metadata__factory: IERC20Metadata__factory, IERC20Permit__factory: IERC20Permit__factory, IERC20__factory: IERC20__factory, IERC2309__factory: IERC2309__factory, IERC2612__factory: IERC2612__factory, IERC2981__factory: IERC2981__factory, IERC3156FlashBorrower__factory: IERC3156FlashBorrower__factory, IERC3156FlashLender__factory: IERC3156FlashLender__factory, IERC4626__factory: IERC4626__factory, IERC4906__factory: IERC4906__factory, IERC5267__factory: IERC5267__factory, IERC5313__factory: IERC5313__factory, IERC5805__factory: IERC5805__factory, IERC6372__factory: IERC6372__factory, IERC721Enumerable__factory: IERC721Enumerable__factory, IERC721Metadata__factory: IERC721Metadata__factory, IERC721Receiver__factory: IERC721Receiver__factory, IERC721__factory: IERC721__factory, IERC777Recipient__factory: IERC777Recipient__factory, IERC777Sender__factory: IERC777Sender__factory, IERC777__factory: IERC777__factory, IFxMessageProcessor__factory: IFxMessageProcessor__factory, IGovernorCompatibilityBravo__factory: IGovernorCompatibilityBravo__factory, IGovernorTimelock__factory: IGovernorTimelock__factory, IGovernor__factory: IGovernor__factory, IInbox__factory: IInbox__factory, IOutbox__factory: IOutbox__factory, ITransparentUpgradeableProxy__factory: ITransparentUpgradeableProxy__factory, IVotes__factory: IVotes__factory, Initializable__factory: Initializable__factory, LibArbitrumL2__factory: LibArbitrumL2__factory, MinimalForwarder__factory: MinimalForwarder__factory, Multicall__factory: Multicall__factory, Ownable2Step__factory: Ownable2Step__factory, Ownable__factory: Ownable__factory, Pausable__factory: Pausable__factory, PaymentSplitter__factory: PaymentSplitter__factory, ProxyAdmin__factory: ProxyAdmin__factory, Proxy__factory: Proxy__factory, PullPayment__factory: PullPayment__factory, RefundEscrow__factory: RefundEscrow__factory, ShortStrings__factory: ShortStrings__factory, TimelockController__factory: TimelockController__factory, TokenTimelock__factory: TokenTimelock__factory, TransparentUpgradeableProxy__factory: TransparentUpgradeableProxy__factory, UUPSUpgradeable__factory: UUPSUpgradeable__factory, UpgradeableBeacon__factory: UpgradeableBeacon__factory, VestingWallet__factory: VestingWallet__factory, Votes__factory: Votes__factory }; const index$2 = { __proto__: null, AccessControlCrossChain__factory: AccessControlCrossChain__factory, AccessControlDefaultAdminRules__factory: AccessControlDefaultAdminRules__factory, AccessControlEnumerable__factory: AccessControlEnumerable__factory, AccessControl__factory: AccessControl__factory, BeaconProxy__factory: BeaconProxy__factory, ConditionalEscrow__factory: ConditionalEscrow__factory, CrossChainEnabledAMB__factory: CrossChainEnabledAMB__factory, CrossChainEnabledPolygonChild__factory: CrossChainEnabledPolygonChild__factory, DoubleEndedQueue__factory: DoubleEndedQueue__factory, EIP712__factory: EIP712__factory, ERC1155Burnable__factory: ERC1155Burnable__factory, ERC1155Holder__factory: ERC1155Holder__factory, ERC1155Pausable__factory: ERC1155Pausable__factory, ERC1155PresetMinterPauser__factory: ERC1155PresetMinterPauser__factory, ERC1155Receiver__factory: ERC1155Receiver__factory, ERC1155Supply__factory: ERC1155Supply__factory, ERC1155URIStorage__factory: ERC1155URIStorage__factory, ERC1155__factory: ERC1155__factory, ERC165Storage__factory: ERC165Storage__factory, ERC165__factory: ERC165__factory, ERC1820Implementer__factory: ERC1820Implementer__factory, ERC1967Proxy__factory: ERC1967Proxy__factory, ERC1967Upgrade__factory: ERC1967Upgrade__factory, ERC20Burnable__factory: ERC20Burnable__factory, ERC20Capped__factory: ERC20Capped__factory, ERC20FlashMint__factory: ERC20FlashMint__factory, ERC20Pausable__factory: ERC20Pausable__factory, ERC20Permit__factory: ERC20Permit__factory, ERC20PresetFixedSupply__factory: ERC20PresetFixedSupply__factory, ERC20PresetMinterPauser__factory: ERC20PresetMinterPauser__factory, ERC20Snapshot__factory: ERC20Snapshot__factory, ERC20VotesComp__factory: ERC20VotesComp__factory, ERC20Votes__factory: ERC20Votes__factory, ERC20Wrapper__factory: ERC20Wrapper__factory, ERC20__factory: ERC20__factory, ERC2771Context__factory: ERC2771Context__factory, ERC2981__factory: ERC2981__factory, ERC4626__factory: ERC4626__factory, ERC721Burnable__factory: ERC721Burnable__factory, ERC721Consecutive__factory: ERC721Consecutive__factory, ERC721Enumerable__factory: ERC721Enumerable__factory, ERC721Holder__factory: ERC721Holder__factory, ERC721Pausable__factory: ERC721Pausable__factory, ERC721PresetMinterPauserAutoId__factory: ERC721PresetMinterPauserAutoId__factory, ERC721Royalty__factory: ERC721Royalty__factory, ERC721URIStorage__factory: ERC721URIStorage__factory, ERC721Votes__factory: ERC721Votes__factory, ERC721Wrapper__factory: ERC721Wrapper__factory, ERC721__factory: ERC721__factory, ERC777PresetFixedSupply__factory: ERC777PresetFixedSupply__factory, ERC777__factory: ERC777__factory, Escrow__factory: Escrow__factory, GovernorCompatibilityBravo__factory: GovernorCompatibilityBravo__factory, GovernorCountingSimple__factory: GovernorCountingSimple__factory, GovernorPreventLateQuorum__factory: GovernorPreventLateQuorum__factory, GovernorProposalThreshold__factory: GovernorProposalThreshold__factory, GovernorSettings__factory: GovernorSettings__factory, GovernorTimelockCompound__factory: GovernorTimelockCompound__factory, GovernorTimelockControl__factory: GovernorTimelockControl__factory, GovernorVotesComp__factory: GovernorVotesComp__factory, GovernorVotesQuorumFraction__factory: GovernorVotesQuorumFraction__factory, GovernorVotes__factory: GovernorVotes__factory, Governor__factory: Governor__factory, IAMB__factory: IAMB__factory, IAccessControlDefaultAdminRules__factory: IAccessControlDefaultAdminRules__factory, IAccessControlEnumerable__factory: IAccessControlEnumerable__factory, IAccessControl__factory: IAccessControl__factory, IArbSys__factory: IArbSys__factory, IBeacon__factory: IBeacon__factory, IBridge__factory: IBridge__factory, ICompoundTimelock__factory: ICompoundTimelock__factory, ICrossDomainMessenger__factory: ICrossDomainMessenger__factory, IDelayedMessageProvider__factory: IDelayedMessageProvider__factory, IERC1155MetadataURI__factory: IERC1155MetadataURI__factory, IERC1155Receiver__factory: IERC1155Receiver__factory, IERC1155__factory: IERC1155__factory, IERC1271__factory: IERC1271__factory, IERC1363Receiver__factory: IERC1363Receiver__factory, IERC1363Spender__factory: IERC1363Spender__factory, IERC1363__factory: IERC1363__factory, IERC165__factory: IERC165__factory, IERC1820Implementer__factory: IERC1820Implementer__factory, IERC1820Registry__factory: IERC1820Registry__factory, IERC1822Proxiable__factory: IERC1822Proxiable__factory, IERC1967__factory: IERC1967__factory, IERC20Metadata__factory: IERC20Metadata__factory, IERC20Permit__factory: IERC20Permit__factory, IERC20__factory: IERC20__factory, IERC2309__factory: IERC2309__factory, IERC2612__factory: IERC2612__factory, IERC2981__factory: IERC2981__factory, IERC3156FlashBorrower__factory: IERC3156FlashBorrower__factory, IERC3156FlashLender__factory: IERC3156FlashLender__factory, IERC4626__factory: IERC4626__factory, IERC4906__factory: IERC4906__factory, IERC5267__factory: IERC5267__factory, IERC5313__factory: IERC5313__factory, IERC5805__factory: IERC5805__factory, IERC6372__factory: IERC6372__factory, IERC721Enumerable__factory: IERC721Enumerable__factory, IERC721Metadata__factory: IERC721Metadata__factory, IERC721Receiver__factory: IERC721Receiver__factory, IERC721__factory: IERC721__factory, IERC777Recipient__factory: IERC777Recipient__factory, IERC777Sender__factory: IERC777Sender__factory, IERC777__factory: IERC777__factory, IFxMessageProcessor__factory: IFxMessageProcessor__factory, IGovernorCompatibilityBravo__factory: IGovernorCompatibilityBravo__factory, IGovernorTimelock__factory: IGovernorTimelock__factory, IGovernor__factory: IGovernor__factory, IInbox__factory: IInbox__factory, IOutbox__factory: IOutbox__factory, ITransparentUpgradeableProxy__factory: ITransparentUpgradeableProxy__factory, IVotes__factory: IVotes__factory, Initializable__factory: Initializable__factory, LibArbitrumL2__factory: LibArbitrumL2__factory, MinimalForwarder__factory: MinimalForwarder__factory, Multicall__factory: Multicall__factory, Ownable2Step__factory: Ownable2Step__factory, Ownable__factory: Ownable__factory, Pausable__factory: Pausable__factory, PaymentSplitter__factory: PaymentSplitter__factory, ProxyAdmin__factory: ProxyAdmin__factory, Proxy__factory: Proxy__factory, PullPayment__factory: PullPayment__factory, RefundEscrow__factory: RefundEscrow__factory, ShortStrings__factory: ShortStrings__factory, TimelockController__factory: TimelockController__factory, TokenTimelock__factory: TokenTimelock__factory, TransparentUpgradeableProxy__factory: TransparentUpgradeableProxy__factory, UUPSUpgradeable__factory: UUPSUpgradeable__factory, UpgradeableBeacon__factory: UpgradeableBeacon__factory, VestingWallet__factory: VestingWallet__factory, Votes__factory: Votes__factory, factories: index$3 }; async function supportsLSPInterface(interfaceId, contract, provider) { if (!ethers.isAddress(contract) && !ethers.isAddressable(contract)) { throw new Error( `The parameter \`contract\` is not a valid address nor a valid contract instance of ERC165 contract. Value: '${contract}'` ); } let contractInstance; if (ethers.isAddress(contract)) { contractInstance = ERC165__factory.connect(contract, provider); } else if (provider) { contractInstance = contract.connect(provider); } else { contractInstance = contract; } let result; try { if (lspSmartContracts.INTERFACE_IDS[interfaceId]) { result = await contractInstance.supportsInterface(lspSmartContracts.INTERFACE_IDS[interfaceId]); } else { result = await contractInstance.supportsInterface(interfaceId); } } catch (errorMessage) { throw new Error(errorMessage); } return result; } var __defProp$q = Object.defineProperty; var __defNormalProp$q = (obj, key, value) => key in obj ? __defProp$q(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$q = (obj, key, value) => { __defNormalProp$q(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$q = [ { inputs: [ { internalType: "address", name: "initialOwner", type: "address" } ], stateMutability: "payable", type: "constructor" }, { inputs: [], name: "ERC725X_ContractDeploymentFailed", type: "error" }, { inputs: [], name: "ERC725X_CreateOperationsRequireEmptyRecipientAddress", type: "error" }, { inputs: [], name: "ERC725X_ExecuteParametersEmptyArray", type: "error" }, { inputs: [], name: "ERC725X_ExecuteParametersLengthMismatch", type: "error" }, { inputs: [ { internalType: "uint256", name: "balance", type: "uint256" }, { internalType: "uint256", name: "value", type: "uint256" } ], name: "ERC725X_InsufficientBalance", type: "error" }, { inputs: [], name: "ERC725X_MsgValueDisallowedInDelegateCall", type: "error" }, { inputs: [], name: "ERC725X_MsgValueDisallowedInStaticCall", type: "error" }, { inputs: [], name: "ERC725X_NoContractBytecodeProvided", type: "error" }, { inputs: [ { internalType: "uint256", name: "operationTypeProvided", type: "uint256" } ], name: "ERC725X_UnknownOperationType", type: "error" }, { inputs: [], name: "ERC725Y_DataKeysValuesEmptyArray", type: "error" }, { inputs: [], name: "ERC725Y_DataKeysValuesLengthMismatch", type: "error" }, { inputs: [ { internalType: "address", name: "caller", type: "address" } ], name: "LSP14CallerNotPendingOwner", type: "error" }, { inputs: [], name: "LSP14CannotTransferOwnershipToSelf", type: "error" }, { inputs: [], name: "LSP14MustAcceptOwnershipInSeparateTransaction", type: "error" }, { inputs: [ { internalType: "uint256", name: "renounceOwnershipStart", type: "uint256" }, { internalType: "uint256", name: "renounceOwnershipEnd", type: "uint256" } ], name: "LSP14NotInRenounceOwnershipInterval", type: "error" }, { inputs: [ { internalType: "bool", name: "postCall", type: "bool" }, { internalType: "bytes4", name: "returnedStatus", type: "bytes4" } ], name: "LSP20CallVerificationFailed", type: "error" }, { inputs: [ { internalType: "bool", name: "postCall", type: "bool" } ], name: "LSP20CallingVerifierFailed", type: "error" }, { inputs: [ { internalType: "address", name: "logicVerifier", type: "address" } ], name: "LSP20EOACannotVerifyCall", type: "error" }, { inputs: [ { internalType: "bytes4", name: "functionSelector", type: "bytes4" } ], name: "NoExtensionFoundForFunctionSelector", type: "error" }, { anonymous: false, inputs: [ { indexed: true, internalType: "uint256", name: "operationType", type: "uint256" }, { indexed: true, internalType: "address", name: "contractAddress", type: "address" }, { indexed: false, internalType: "uint256", name: "value", type: "uint256" }, { indexed: true, internalType: "bytes32", name: "salt", type: "bytes32" } ], name: "ContractCreated", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "bytes32", name: "dataKey", type: "bytes32" }, { indexed: false, internalType: "bytes", name: "dataValue", type: "bytes" } ], name: "DataChanged", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "uint256", name: "operationType", type: "uint256" }, { indexed: true, internalType: "address", name: "target", type: "address" }, { indexed: false, internalType: "uint256", name: "value", type: "uint256" }, { indexed: true, internalType: "bytes4", name: "selector", type: "bytes4" } ], name: "Executed", type: "event" }, { anonymous: false, inputs: [], name: "OwnershipRenounced", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "previousOwner", type: "address" }, { indexed: true, internalType: "address", name: "newOwner", type: "address" } ], name: "OwnershipTransferStarted", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "previousOwner", type: "address" }, { indexed: true, internalType: "address", name: "newOwner", type: "address" } ], name: "OwnershipTransferred", type: "event" }, { anonymous: false, inputs: [], name: "RenounceOwnershipStarted", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "from", type: "address" }, { indexed: true, internalType: "uint256", name: "value", type: "uint256" }, { indexed: true, internalType: "bytes32", name: "typeId", type: "bytes32" }, { indexed: false, internalType: "bytes", name: "receivedData", type: "bytes" }, { indexed: false, internalType: "bytes", name: "returnedValue", type: "bytes" } ], name: "UniversalReceiver", type: "event" }, { stateMutability: "payable", type: "fallback" }, { inputs: [], name: "RENOUNCE_OWNERSHIP_CONFIRMATION_DELAY", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "RENOUNCE_OWNERSHIP_CONFIRMATION_PERIOD", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "VERSION", outputs: [ { internalType: "string", name: "", type: "string" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "acceptOwnership", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "bytes[]", name: "data", type: "bytes[]" } ], name: "batchCalls", outputs: [ { internalType: "bytes[]", name: "results", type: "bytes[]" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "uint256", name: "operationType", type: "uint256" }, { internalType: "address", name: "target", type: "address" }, { internalType: "uint256", name: "value", type: "uint256" }, { internalType: "bytes", name: "data", type: "bytes" } ], name: "execute", outputs: [ { internalType: "bytes", name: "", type: "bytes" } ], stateMutability: "payable", type: "function" }, { inputs: [ { internalType: "uint256[]", name: "operationsType", type: "uint256[]" }, { internalType: "address[]", name: "targets", type: "address[]" }, { internalType: "uint256[]", name: "values", type: "uint256[]" }, { internalType: "bytes[]", name: "datas", type: "bytes[]" } ], name: "executeBatch", outputs: [ { internalType: "bytes[]", name: "", type: "bytes[]" } ], stateMutability: "payable", type: "function" }, { inputs: [ { internalType: "bytes32", name: "dataKey", type: "bytes32" } ], name: "getData", outputs: [ { internalType: "bytes", name: "dataValue", type: "bytes" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "bytes32[]", name: "dataKeys", type: "bytes32[]" } ], name: "getDataBatch", outputs: [ { internalType: "bytes[]", name: "dataValues", type: "bytes[]" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "bytes32", name: "dataHash", type: "bytes32" }, { internalType: "bytes", name: "signature", type: "bytes" } ], name: "isValidSignature", outputs: [ { internalType: "bytes4", name: "returnedStatus", type: "bytes4" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "owner", outputs: [ { internalType: "address", name: "", type: "address" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "pendingOwner", outputs: [ { internalType: "address", name: "", type: "address" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "renounceOwnership", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "bytes32", name: "dataKey", type: "bytes32" }, { internalType: "bytes", name: "dataValue", type: "bytes" } ], name: "setData", outputs: [], stateMutability: "payable", type: "function" }, { inputs: [ { internalType: "bytes32[]", name: "dataKeys", type: "bytes32[]" }, { internalType: "bytes[]", name: "dataValues", type: "bytes[]" } ], name: "setDataBatch", outputs: [], stateMutability: "payable", type: "function" }, { inputs: [ { internalType: "bytes4", name: "interfaceId", type: "bytes4" } ], name: "supportsInterface", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "pendingNewOwner", type: "address" } ], name: "transferOwnership", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "bytes32", name: "typeId", type: "bytes32" }, { internalType: "bytes", name: "receivedData", type: "bytes" } ], name: "universalReceiver", outputs: [ { internalType: "bytes", name: "returnedValues", type: "bytes" } ], stateMutability: "payable", type: "function" }, { stateMutability: "payable", type: "receive" } ]; const _bytecode$g = "0x6080604052604051620038dd380380620038dd833981016040819052620000269162000138565b3415620000ad577f9c4705229491d365fb5434052e12a386d6771d976bea61070a8c694e8affea3d60001b34336001600160a01b03167f9c3ba68eb5742b8e3961aea0afc7371a71bf433c8a67a831803b64c064a178c2604051620000a4906040808252600090820181905260606020830181905282015260800190565b60405180910390a45b620000c381620000ca60201b620016f01760201c565b506200016a565b6000546001600160a01b038281169116146200013557600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0383161790555b50565b6000602082840312156200014b57600080fd5b81516001600160a01b03811681146200016357600080fd5b9392505050565b613763806200017a6000396000f3fe60806040526004361061012d5760003560e01c806379ba5097116100a5578063dedff9c611610074578063ead3fbdf11610059578063ead3fbdf1461021e578063f2fde38b14610402578063ffa1ad741461042257610178565b8063dedff9c6146103c4578063e30c3978146103e457610178565b806379ba5097146103575780637f23690c1461036c5780638da5cb5b1461037f57806397902421146103b157610178565b806344c028fe116100fc5780636963d438116100e15780636963d4381461030f5780636bb56a141461032f578063715018a61461034257610178565b806344c028fe146102cf57806354f6127f146102ef57610178565b806301bfba611461021e57806301ffc9a7146102465780631626ba7e1461027657806331858452146102af57610178565b36610178573415610176576101747f9c4705229491d365fb5434052e12a386d6771d976bea61070a8c694e8affea3d60001b6040518060200160405280600081525061046b565b505b005b600036606060048210156102065734156101f1576101ef7f9c4705229491d365fb5434052e12a386d6771d976bea61070a8c694e8affea3d60001b84848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061046b92505050565b505b50604080516020810190915260008152610213565b6102108383610741565b90505b915050805190602001f35b34801561022a57600080fd5b5061023360c881565b6040519081526020015b60405180910390f35b34801561025257600080fd5b50610266610261366004612cc1565b61091d565b604051901515815260200161023d565b34801561028257600080fd5b50610296610291366004612da3565b610a08565b6040516001600160e01b0319909116815260200161023d565b6102c26102bd366004612f0b565b610bba565b60405161023d9190613063565b6102e26102dd3660046130c5565b610cc6565b60405161023d919061311a565b3480156102fb57600080fd5b506102e261030a36600461312d565b610da9565b34801561031b57600080fd5b506102c261032a366004613146565b610db4565b6102e261033d366004612da3565b61046b565b34801561034e57600080fd5b50610176610f10565b34801561036357600080fd5b5061017661105d565b61017661037a366004612da3565b6111e3565b34801561038b57600080fd5b506000546001600160a01b03165b6040516001600160a01b03909116815260200161023d565b6101766103bf3660046131bb565b6112c6565b3480156103d057600080fd5b506102c26103df366004613215565b611499565b3480156103f057600080fd5b506003546001600160a01b0316610399565b34801561040e57600080fd5b5061017661041d36600461324a565b611544565b34801561042e57600080fd5b506102e26040518060400160405280600681526020017f302e31352e30000000000000000000000000000000000000000000000000000081525081565b6060341580159061049c57507f9c4705229491d365fb5434052e12a386d6771d976bea61070a8c694e8affea3d8314155b15610507576105057f9c4705229491d365fb5434052e12a386d6771d976bea61070a8c694e8affea3d60001b6000368080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061046b92505050565b505b60006105327f0cfc51aec37c55a4d0b1a65c6255c4bf2fbdf6277f3cc0730c45b828b6db8b4761175e565b9050606060148251106105e357600061054a83613265565b60601c905061056081635122dded60e11b611800565b156105e157604051635122dded60e11b81526001600160a01b0382169063a245bbda9061059790339034908b908b906004016132a1565b6000604051808303816000875af11580156105b6573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526105de91908101906132cf565b91505b505b600061060f7f0cfc51aec37c55a4d0b10000000000000000000000000000000000000000000087611889565b9050600061061c8261175e565b9050606060148251106106cd57600061063483613265565b60601c905061064a81635122dded60e11b611800565b156106cb57604051635122dded60e11b81526001600160a01b0382169063a245bbda9061068190339034908e908e906004016132a1565b6000604051808303816000875af11580156106a0573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526106c891908101906132cf565b91505b505b83816040516020016106e092919061333d565b60405160208183030381529060405295508734336001600160a01b03167f9c3ba68eb5742b8e3961aea0afc7371a71bf433c8a67a831803b64c064a178c28a8a60405161072e92919061333d565b60405180910390a4505050505092915050565b606060008061075b6000356001600160e01b0319166118f2565b915091503460001415801561076e575080155b156107d8576107d67f9c4705229491d365fb5434052e12a386d6771d976bea61070a8c694e8affea3d60001b86868080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061046b92505050565b505b6000356001600160e01b0319161580156107f957506001600160a01b038216155b15610817576040518060200160405280600081525092505050610917565b6001600160a01b03821661086a576040517fbb370b2b0000000000000000000000000000000000000000000000000000000081526001600160e01b03196000351660048201526024015b60405180910390fd5b600080836001600160a01b031683610883576000610885565b345b8888333460405160200161089c9493929190613362565b60408051601f19818403018152908290526108b691613392565b60006040518083038185875af1925050503d80600081146108f3576040519150601f19603f3d011682016040523d82523d6000602084013e6108f8565b606091505b5091509150811561090e57935061091792505050565b80518060208301fd5b92915050565b60006001600160e01b03198216630b135d3f60e11b148061096757506001600160e01b031982167f24871b3d00000000000000000000000000000000000000000000000000000000145b8061098257506001600160e01b03198216631aed5a8560e21b145b806109b657506001600160e01b031982167f94be599900000000000000000000000000000000000000000000000000000000145b806109ea57506001600160e01b031982167f1a0eb6a500000000000000000000000000000000000000000000000000000000145b806109f957506109f9826119e9565b80610917575061091782611a27565b600080610a1d6000546001600160a01b031690565b90506001600160a01b0381163b15610b3a57600080826001600160a01b0316631626ba7e60e01b8787604051602401610a579291906133ae565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b0319909416939093179092529051610a959190613392565b600060405180830381855afa9150503d8060008114610ad0576040519150601f19603f3d011682016040523d82523d6000602084013e610ad5565b606091505b50915091506000828015610aea575081516020145b8015610b1157508151630b135d3f60e11b90610b0f90840160209081019085016133c7565b145b905080610b26576001600160e01b0319610b2f565b630b135d3f60e11b5b945050505050610917565b600080610b478686611a65565b90925090506000816004811115610b6057610b606133e0565b14610b7957506001600160e01b03199250610917915050565b826001600160a01b0316826001600160a01b031614610ba0576001600160e01b0319610ba9565b630b135d3f60e11b5b9350505050610917565b5092915050565b60603415610c45576040516001600160e01b03196000351660208201527f9c4705229491d365fb5434052e12a386d6771d976bea61070a8c694e8affea3d90349033907f9c3ba68eb5742b8e3961aea0afc7371a71bf433c8a67a831803b64c064a178c29060240160408051601f1981840301815290829052610c3c916133f6565b60405180910390a45b6000546001600160a01b031633819003610c6d57610c6586868686611aaa565b915050610cbe565b6000610c7882611c3a565b90506000610c8888888888611aaa565b90508115610cb957610cb98382604051602001610ca59190613063565b604051602081830303815290604052611e06565b925050505b949350505050565b60603415610d51576040516001600160e01b03196000351660208201527f9c4705229491d365fb5434052e12a386d6771d976bea61070a8c694e8affea3d90349033907f9c3ba68eb5742b8e3961aea0afc7371a71bf433c8a67a831803b64c064a178c29060240160408051601f1981840301815290829052610d48916133f6565b60405180910390a45b6000546001600160a01b031633819003610d7157610c6586868686611f3c565b6000610d7c82611c3a565b90506000610d8c88888888611f3c565b90508115610cb957610cb98382604051602001610ca5919061311a565b60606109178261175e565b60608167ffffffffffffffff811115610dcf57610dcf612cde565b604051908082528060200260200182016040528015610e0257816020015b6060815260200190600190039081610ded5790505b50905060005b82811015610bb35760008030868685818110610e2657610e26613420565b9050602002810190610e389190613436565b604051610e4692919061347d565b600060405180830381855af49150503d8060008114610e81576040519150601f19603f3d011682016040523d82523d6000602084013e610e86565b606091505b509150915081610ee857805115610ea05780518082602001fd5b60405162461bcd60e51b815260206004820152601960248201527f4c5350303a20626174636843616c6c73207265766572746564000000000000006044820152606401610861565b80848481518110610efb57610efb613420565b60209081029190910101525050600101610e08565b6000546001600160a01b031633819003610fb3576000546001600160a01b0316610f38612092565b6000546001600160a01b0316610faf57604080516001600160a01b0384166020820152600091810191909152610faf907fa4e59c931d14f7c8a7a35027f92ee40b5f2886b9fdcdb78f30bc5ecce5a2f814906060015b60408051601f198184030181529190526001600160a01b038416919061219e565b5050565b6000610fbe82611c3a565b90506000610fd46000546001600160a01b031690565b9050610fde612092565b6000546001600160a01b031661103857604080516001600160a01b0385166020820152600091810191909152611038907fa4e59c931d14f7c8a7a35027f92ee40b5f2886b9fdcdb78f30bc5ecce5a2f81490606001610f8e565b8115611057576110578360405180602001604052806000815250611e06565b50505b50565b600354600160a01b900460ff16156110a1576040517f5758dd0700000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600080546003546001600160a01b03918216929116903382146110ec576110c782611c3a565b90506110d2826116f0565b600380546001600160a01b031916905560006002556110f4565b6110f4612232565b604080516001600160a01b03808616602083015284169181019190915261115c907fa4e59c931d14f7c8a7a35027f92ee40b5f2886b9fdcdb78f30bc5ecce5a2f814906060015b60408051601f198184030181529190526001600160a01b038616919061219e565b604080516001600160a01b0380861660208301528416918101919091526111c4907fceca317f109c43507871523e82dc2a3cc64dfa18f12da0b6db14f6e23f995538906060015b60408051601f198184030181529190526001600160a01b038516919061219e565b8015611057576110578260405180602001604052806000815250611e06565b341561126c576040516001600160e01b03196000351660208201527f9c4705229491d365fb5434052e12a386d6771d976bea61070a8c694e8affea3d90349033907f9c3ba68eb5742b8e3961aea0afc7371a71bf433c8a67a831803b64c064a178c29060240160408051601f1981840301815290829052611263916133f6565b60405180910390a45b6000546001600160a01b03163381900361128a576110578383612298565b600061129582611c3a565b90506112a18484612298565b80156112c0576112c08260405180602001604052806000815250611e06565b50505050565b341561134f576040516001600160e01b03196000351660208201527f9c4705229491d365fb5434052e12a386d6771d976bea61070a8c694e8affea3d90349033907f9c3ba68eb5742b8e3961aea0afc7371a71bf433c8a67a831803b64c064a178c29060240160408051601f1981840301815290829052611346916133f6565b60405180910390a45b805182511461138a576040517f3bcc897900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b81516000036113c5576040517f97da5f9500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6000546001600160a01b0316338190036114295760005b83518110156112c0576114218482815181106113fa576113fa613420565b602002602001015184838151811061141457611414613420565b6020026020010151612298565b6001016113dc565b600061143482611c3a565b905060005b84518110156114795761147185828151811061145757611457613420565b602002602001015185838151811061141457611414613420565b600101611439565b5080156112c0576112c08260405180602001604052806000815250611e06565b6060815167ffffffffffffffff8111156114b5576114b5612cde565b6040519080825280602002602001820160405280156114e857816020015b60608152602001906001900390816114d35790505b50905060005b825181101561153e5761151983828151811061150c5761150c613420565b602002602001015161175e565b82828151811061152b5761152b613420565b60209081029190910101526001016114ee565b50919050565b6000546001600160a01b031633819003611610576003805460ff60a01b1916600160a01b179055611574826122ed565b816001600160a01b0316816001600160a01b03167f38d16b8cac22d99fc7c124b9cd0de2d3fa1faef420bfe791d8c362d765e2270060405160405180910390a3604080516001600160a01b0380841660208301528416918101919091526115ff907fe17117c9d2665d1dbeb479ed8058bbebde3c50ac50e2e65619f60006caac6926906060016111a3565b6003805460ff60a01b191690555050565b600061161b82611c3a565b6003805460ff60a01b1916600160a01b1790559050611639836122ed565b826001600160a01b0316826001600160a01b03167f38d16b8cac22d99fc7c124b9cd0de2d3fa1faef420bfe791d8c362d765e2270060405160405180910390a3604080516001600160a01b0380851660208301528516918101919091526116c4907fe17117c9d2665d1dbeb479ed8058bbebde3c50ac50e2e65619f60006caac69269060600161113b565b6003805460ff60a01b191690558015611057576110578260405180602001604052806000815250611e06565b6000546001600160a01b0382811691161461105a57600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0383166001600160a01b031990911617905550565b600081815260016020526040902080546060919061177b9061348d565b80601f01602080910402602001604051908101604052809291908181526020018280546117a79061348d565b80156117f45780601f106117c9576101008083540402835291602001916117f4565b820191906000526020600020905b8154815290600101906020018083116117d757829003601f168201915b50505050509050919050565b604080516001600160e01b03198316602480830191909152825180830390910181526044909101909152602080820180516001600160e01b03166301ffc9a760e01b178152825160009392849283928392918391908a617530fa92503d91506000519050828015611872575060208210155b801561187e5750600081115b979650505050505050565b604080517fffffffffffffffffffff00000000000000000000000000000000000000000000841660208201526000602a82018190526bffffffffffffffffffffffff198416602c83015291829101604051602081830303815290604052905080610cbe906134c1565b6000808061192a7fcee78b4094da86011096000000000000000000000000000000000000000000006001600160e01b03198616611889565b905060006119378261175e565b9050601481511015611950575060009485945092505050565b80516015036119d1578060148151811061196c5761196c613420565b01602001517fff00000000000000000000000000000000000000000000000000000000000000167f0100000000000000000000000000000000000000000000000000000000000000036119d1576119c281613265565b60601c95600195509350505050565b6119da81613265565b60601c95600095509350505050565b60006001600160e01b031982167fa918fa6b000000000000000000000000000000000000000000000000000000001480610917575061091782612356565b600080611a3a6301ffc9a760e01b6118f2565b5090506001600160a01b038116611a545750600092915050565b611a5e8184611800565b9392505050565b6000808251604103611a9b5760208301516040840151606085015160001a611a8f87828585612394565b94509450505050611aa3565b506000905060025b9250929050565b606083518551141580611acb575082518451141580611acb57508151835114155b15611b02576040517f3ff55f4d00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b8451600003611b3d576040517fe9ad2b5f00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6000855167ffffffffffffffff811115611b5957611b59612cde565b604051908082528060200260200182016040528015611b8c57816020015b6060815260200190600190039081611b775790505b50905060005b8651811015611c3057611c0b878281518110611bb057611bb0613420565b6020026020010151878381518110611bca57611bca613420565b6020026020010151878481518110611be457611be4613420565b6020026020010151878581518110611bfe57611bfe613420565b6020026020010151611f3c565b828281518110611c1d57611c1d613420565b6020908102919091010152600101611b92565b5095945050505050565b6000816001600160a01b03163b600003611c8b576040517f0c3923010000000000000000000000000000000000000000000000000000000081526001600160a01b0383166004820152602401610861565b6040517fde928f140000000000000000000000000000000000000000000000000000000081526001600160a01b0383169063de928f1490611cdb90339030908290349060009036906004016134e5565b6020604051808303816000875af1925050508015611d16575060408051601f3d908101601f19168201909252611d1391810190613542565b60015b611d55573d808015611d44576040519150601f19603f3d011682016040523d82523d6000602084013e611d49565b606091505b5061153e600082612458565b7fffffff000000000000000000000000000000000000000000000000000000000081167fde928f000000000000000000000000000000000000000000000000000000000014611dca57604051639d6741e360e01b8152600060048201526001600160e01b031982166024820152604401610861565b8060031a60f81b7effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916600160f81b14915050919050565b919050565b816001600160a01b031663d3fc45d333303334600036604051602001611e319695949392919061355f565b60405160208183030381529060405280519060200120836040518363ffffffff1660e01b8152600401611e659291906133ae565b6020604051808303816000875af1925050508015611ea0575060408051601f3d908101601f19168201909252611e9d91810190613542565b60015b611edf573d808015611ece576040519150601f19603f3d011682016040523d82523d6000602084013e611ed3565b606091505b50611057600182612458565b6001600160e01b031981167fd3fc45d3000000000000000000000000000000000000000000000000000000001461105757604051639d6741e360e01b8152600160048201526001600160e01b031982166024820152604401610861565b606084611f5557611f4e84848461249e565b9050610cbe565b60018503611f8f576001600160a01b03841615611f8557604051631820c12560e11b815260040160405180910390fd5b611f4e83836125cf565b60028503611fc9576001600160a01b03841615611fbf57604051631820c12560e11b815260040160405180910390fd5b611f4e83836126e9565b60038503612013578215612009576040517f72f2bc6a00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b611f4e84836127d3565b6004850361205d578215612053576040517f5ac8313500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b611f4e84836128d7565b6040517f7583b3bc00000000000000000000000000000000000000000000000000000000815260048101869052602401610861565b60025443906000906120a69060c8906135c5565b905060006120b560c8836135c5565b9050808311806120c55750600254155b1561210d576002839055600380546001600160a01b03191690556040517f81b7f830f1f0084db6497c486cbe6974c86488dcc4e3738eab94ab6d6b1653e790600090a1505050565b81831015612151576040517f1b0809420000000000000000000000000000000000000000000000000000000081526004810183905260248101829052604401610861565b61215b60006116f0565b60006002819055600380546001600160a01b03191690556040517fd1f66c3d2bc1993a86be5e3d33709d98f0442381befcedd29f578b9b2506b1ce9190a1505050565b6121b86001600160a01b038416631aed5a8560e21b611800565b1561105757604051631aed5a8560e21b81526001600160a01b03841690636bb56a14906121eb90859085906004016133ae565b6000604051808303816000875af115801561220a573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526112c091908101906132cf565b6003546001600160a01b03163314612278576040517f451e4528000000000000000000000000000000000000000000000000000000008152336004820152602401610861565b612281336116f0565b600380546001600160a01b03191690556000600255565b60008281526001602052604090206122b08282613626565b50817fece574603820d07bc9b91f2a932baadf4628aabcb8afba49776529c14a6104b2826040516122e1919061311a565b60405180910390a25050565b306001600160a01b0382160361232f576040517fe052a6f800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600380546001600160a01b0319166001600160a01b03929092169190911790556000600255565b60006001600160e01b031982167f629aa694000000000000000000000000000000000000000000000000000000001480610917575061091782612988565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a08311156123cb575060009050600361244f565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa15801561241f573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b0381166124485760006001925092505061244f565b9150600090505b94509492505050565b8051156124685780518082602001fd5b6040517f8c6a8ae30000000000000000000000000000000000000000000000000000000081528215156004820152602401610861565b6060824710156124ca576040516301bf351f60e31b815247600482015260248101849052604401610861565b6124d3826136e6565b6001600160e01b031916846001600160a01b031660007f4810874456b8e6487bd861375cf6abd8e1c8bb5858c8ce36a86a04dabfac199e8660405161251a91815260200190565b60405180910390a4600080856001600160a01b0316858560405161253e9190613392565b60006040518083038185875af1925050503d806000811461257b576040519150601f19603f3d011682016040523d82523d6000602084013e612580565b606091505b50915091506125c582826040518060400160405280601681526020017f455243373235583a20556e6b6e6f776e204572726f72000000000000000000008152506129d6565b9695505050505050565b6060824710156125fb576040516301bf351f60e31b815247600482015260248101849052604401610861565b815160000361261d5760405163b81cd8d960e01b815260040160405180910390fd5b600082516020840185f090506001600160a01b038116612669576040517f0b07489b00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6000801b816001600160a01b031660017fa1fb700aaee2ae4a2ff6f91ce7eba292f89c2f5488b8ec4c5c5c8150692595c3876040516126aa91815260200190565b60405180910390a46040516bffffffffffffffffffffffff19606083901b16602082015260340160405160208183030381529060405291505092915050565b6060815160000361270d5760405163b81cd8d960e01b815260040160405180910390fd5b60006127268360208551612721919061371a565b6129ef565b905060006127438460006020875161273e919061371a565b612a55565b90506000612752868484612b7d565b905082816001600160a01b031660027fa1fb700aaee2ae4a2ff6f91ce7eba292f89c2f5488b8ec4c5c5c8150692595c38960405161279291815260200190565b60405180910390a46040516bffffffffffffffffffffffff19606083901b166020820152603401604051602081830303815290604052935050505092915050565b60606127de826136e6565b6001600160e01b031916836001600160a01b031660037f4810874456b8e6487bd861375cf6abd8e1c8bb5858c8ce36a86a04dabfac199e600060405161282691815260200190565b60405180910390a4600080846001600160a01b0316846040516128499190613392565b600060405180830381855afa9150503d8060008114612884576040519150601f19603f3d011682016040523d82523d6000602084013e612889565b606091505b50915091506128ce82826040518060400160405280601681526020017f455243373235583a20556e6b6e6f776e204572726f72000000000000000000008152506129d6565b95945050505050565b60606128e2826136e6565b6001600160e01b031916836001600160a01b031660047f4810874456b8e6487bd861375cf6abd8e1c8bb5858c8ce36a86a04dabfac199e600060405161292a91815260200190565b60405180910390a4600080846001600160a01b03168460405161294d9190613392565b600060405180830381855af49150503d8060008114612884576040519150601f19603f3d011682016040523d82523d6000602084013e612889565b60006001600160e01b031982167f7545acac00000000000000000000000000000000000000000000000000000000148061091757506301ffc9a760e01b6001600160e01b0319831614610917565b606083156129e5575081611a5e565b611a5e8383612c81565b60006129fc8260206135c5565b83511015612a4c5760405162461bcd60e51b815260206004820152601560248201527f746f427974657333325f6f75744f66426f756e647300000000000000000000006044820152606401610861565b50016020015190565b606081612a6381601f6135c5565b1015612ab15760405162461bcd60e51b815260206004820152600e60248201527f736c6963655f6f766572666c6f770000000000000000000000000000000000006044820152606401610861565b612abb82846135c5565b84511015612b0b5760405162461bcd60e51b815260206004820152601160248201527f736c6963655f6f75744f66426f756e64730000000000000000000000000000006044820152606401610861565b606082158015612b2a5760405191506000825260208201604052612b74565b6040519150601f8416801560200281840101858101878315602002848b0101015b81831015612b63578051835260209283019201612b4b565b5050858452601f01601f1916604052505b50949350505050565b600083471015612bcf5760405162461bcd60e51b815260206004820152601d60248201527f437265617465323a20696e73756666696369656e742062616c616e63650000006044820152606401610861565b8151600003612c205760405162461bcd60e51b815260206004820181905260248201527f437265617465323a2062797465636f6465206c656e677468206973207a65726f6044820152606401610861565b8282516020840186f590506001600160a01b038116611a5e5760405162461bcd60e51b815260206004820152601960248201527f437265617465323a204661696c6564206f6e206465706c6f79000000000000006044820152606401610861565b815115612c915781518083602001fd5b8060405162461bcd60e51b8152600401610861919061311a565b6001600160e01b03198116811461105a57600080fd5b600060208284031215612cd357600080fd5b8135611a5e81612cab565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f1916810167ffffffffffffffff81118282101715612d1d57612d1d612cde565b604052919050565b600067ffffffffffffffff821115612d3f57612d3f612cde565b50601f01601f191660200190565b600082601f830112612d5e57600080fd5b8135612d71612d6c82612d25565b612cf4565b818152846020838601011115612d8657600080fd5b816020850160208301376000918101602001919091529392505050565b60008060408385031215612db657600080fd5b82359150602083013567ffffffffffffffff811115612dd457600080fd5b612de085828601612d4d565b9150509250929050565b600067ffffffffffffffff821115612e0457612e04612cde565b5060051b60200190565b600082601f830112612e1f57600080fd5b81356020612e2f612d6c83612dea565b82815260059290921b84018101918181019086841115612e4e57600080fd5b8286015b84811015612e695780358352918301918301612e52565b509695505050505050565b80356001600160a01b0381168114611e0157600080fd5b600082601f830112612e9c57600080fd5b81356020612eac612d6c83612dea565b82815260059290921b84018101918181019086841115612ecb57600080fd5b8286015b84811015612e6957803567ffffffffffffffff811115612eef5760008081fd5b612efd8986838b0101612d4d565b845250918301918301612ecf565b60008060008060808587031215612f2157600080fd5b843567ffffffffffffffff80821115612f3957600080fd5b612f4588838901612e0e565b9550602091508187013581811115612f5c57600080fd5b8701601f81018913612f6d57600080fd5b8035612f7b612d6c82612dea565b81815260059190911b8201840190848101908b831115612f9a57600080fd5b928501925b82841015612fbf57612fb084612e74565b82529285019290850190612f9f565b97505050506040870135915080821115612fd857600080fd5b612fe488838901612e0e565b93506060870135915080821115612ffa57600080fd5b5061300787828801612e8b565b91505092959194509250565b60005b8381101561302e578181015183820152602001613016565b50506000910152565b6000815180845261304f816020860160208601613013565b601f01601f19169290920160200192915050565b6000602080830181845280855180835260408601915060408160051b870101925083870160005b828110156130b857603f198886030184526130a6858351613037565b9450928501929085019060010161308a565b5092979650505050505050565b600080600080608085870312156130db57600080fd5b843593506130eb60208601612e74565b925060408501359150606085013567ffffffffffffffff81111561310e57600080fd5b61300787828801612d4d565b602081526000611a5e6020830184613037565b60006020828403121561313f57600080fd5b5035919050565b6000806020838503121561315957600080fd5b823567ffffffffffffffff8082111561317157600080fd5b818501915085601f83011261318557600080fd5b81358181111561319457600080fd5b8660208260051b85010111156131a957600080fd5b60209290920196919550909350505050565b600080604083850312156131ce57600080fd5b823567ffffffffffffffff808211156131e657600080fd5b6131f286838701612e0e565b9350602085013591508082111561320857600080fd5b50612de085828601612e8b565b60006020828403121561322757600080fd5b813567ffffffffffffffff81111561323e57600080fd5b610cbe84828501612e0e565b60006020828403121561325c57600080fd5b611a5e82612e74565b805160208201516bffffffffffffffffffffffff1980821692919060148310156132995780818460140360031b1b83161693505b505050919050565b6001600160a01b03851681528360208201528260408201526080606082015260006125c56080830184613037565b6000602082840312156132e157600080fd5b815167ffffffffffffffff8111156132f857600080fd5b8201601f8101841361330957600080fd5b8051613317612d6c82612d25565b81815285602083850101111561332c57600080fd5b6128ce826020830160208601613013565b6040815260006133506040830185613037565b82810360208401526128ce8185613037565b8385823760609290921b6bffffffffffffffffffffffff1916919092019081526014810191909152603401919050565b600082516133a4818460208701613013565b9190910192915050565b828152604060208201526000610cbe6040830184613037565b6000602082840312156133d957600080fd5b5051919050565b634e487b7160e01b600052602160045260246000fd5b6040815260006134096040830184613037565b828103602093840152600081529190910192915050565b634e487b7160e01b600052603260045260246000fd5b6000808335601e1984360301811261344d57600080fd5b83018035915067ffffffffffffffff82111561346857600080fd5b602001915036819003821315611aa357600080fd5b8183823760009101908152919050565b600181811c908216806134a157607f821691505b60208210810361153e57634e487b7160e01b600052602260045260246000fd5b8051602080830151919081101561153e5760001960209190910360031b1b16919050565b60006001600160a01b038089168352808816602084015280871660408401525084606083015260a060808301528260a0830152828460c0840137600060c0848401015260c0601f19601f8501168301019050979650505050505050565b60006020828403121561355457600080fd5b8151611a5e81612cab565b60006bffffffffffffffffffffffff19808960601b168352808860601b166014840152808760601b1660288401525084603c8301528284605c8401375060009101605c0190815295945050505050565b634e487b7160e01b600052601160045260246000fd5b80820180821115610917576109176135af565b601f82111561105757600081815260208120601f850160051c810160208610156135ff5750805b601f850160051c820191505b8181101561361e5782815560010161360b565b505050505050565b815167ffffffffffffffff81111561364057613640612cde565b6136548161364e845461348d565b846135d8565b602080601f83116001811461368957600084156136715750858301515b600019600386901b1c1916600185901b17855561361e565b600085815260208120601f198616915b828110156136b857888601518255948401946001909101908401613699565b50858210156136d65787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b6000815160208301516001600160e01b0319808216935060048310156132995760049290920360031b82901b161692915050565b81810381811115610917576109176135af56fea264697066735822122006e33d3d8bea1ad0623db36ee7fff2bdb6f27117d0c67d1a2271090f14f49cc564736f6c63430008110033"; const isSuperArgs$g = (xs) => xs.length > 1; class LSP0ERC725Account__factory extends ethers.ContractFactory { constructor(...args) { if (isSuperArgs$g(args)) { super(...args); } else { super(_abi$q, _bytecode$g, args[0]); } } getDeployTransaction(initialOwner, overrides) { return super.getDeployTransaction(initialOwner, overrides || {}); } deploy(initialOwner, overrides) { return super.deploy(initialOwner, overrides || {}); } connect(runner) { return super.connect(runner); } static createInterface() { return new ethers.Interface(_abi$q); } static connect(address, runner) { return new ethers.Contract(address, _abi$q, runner); } } __publicField$q(LSP0ERC725Account__factory, "bytecode", _bytecode$g); __publicField$q(LSP0ERC725Account__factory, "abi", _abi$q); var __defProp$p = Object.defineProperty; var __defNormalProp$p = (obj, key, value) => key in obj ? __defProp$p(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$p = (obj, key, value) => { __defNormalProp$p(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$p = [ { inputs: [], stateMutability: "nonpayable", type: "constructor" }, { inputs: [], name: "ERC725X_ContractDeploymentFailed", type: "error" }, { inputs: [], name: "ERC725X_CreateOperationsRequireEmptyRecipientAddress", type: "error" }, { inputs: [], name: "ERC725X_ExecuteParametersEmptyArray", type: "error" }, { inputs: [], name: "ERC725X_ExecuteParametersLengthMismatch", type: "error" }, { inputs: [ { internalType: "uint256", name: "balance", type: "uint256" }, { internalType: "uint256", name: "value", type: "uint256" } ], name: "ERC725X_InsufficientBalance", type: "error" }, { inputs: [], name: "ERC725X_MsgValueDisallowedInDelegateCall", type: "error" }, { inputs: [], name: "ERC725X_MsgValueDisallowedInStaticCall", type: "error" }, { inputs: [], name: "ERC725X_NoContractBytecodeProvided", type: "error" }, { inputs: [ { internalType: "uint256", name: "operationTypeProvided", type: "uint256" } ], name: "ERC725X_UnknownOperationType", type: "error" }, { inputs: [], name: "ERC725Y_DataKeysValuesEmptyArray", type: "error" }, { inputs: [], name: "ERC725Y_DataKeysValuesLengthMismatch", type: "error" }, { inputs: [ { internalType: "address", name: "caller", type: "address" } ], name: "LSP14CallerNotPendingOwner", type: "error" }, { inputs: [], name: "LSP14CannotTransferOwnershipToSelf", type: "error" }, { inputs: [], name: "LSP14MustAcceptOwnershipInSeparateTransaction", type: "error" }, { inputs: [ { internalType: "uint256", name: "renounceOwnershipStart", type: "uint256" }, { internalType: "uint256", name: "renounceOwnershipEnd", type: "uint256" } ], name: "LSP14NotInRenounceOwnershipInterval", type: "error" }, { inputs: [ { internalType: "bool", name: "postCall", type: "bool" }, { internalType: "bytes4", name: "returnedStatus", type: "bytes4" } ], name: "LSP20CallVerificationFailed", type: "error" }, { inputs: [ { internalType: "bool", name: "postCall", type: "bool" } ], name: "LSP20CallingVerifierFailed", type: "error" }, { inputs: [ { internalType: "address", name: "logicVerifier", type: "address" } ], name: "LSP20EOACannotVerifyCall", type: "error" }, { inputs: [ { internalType: "bytes4", name: "functionSelector", type: "bytes4" } ], name: "NoExtensionFoundForFunctionSelector", type: "error" }, { anonymous: false, inputs: [ { indexed: true, internalType: "uint256", name: "operationType", type: "uint256" }, { indexed: true, internalType: "address", name: "contractAddress", type: "address" }, { indexed: false, internalType: "uint256", name: "value", type: "uint256" }, { indexed: true, internalType: "bytes32", name: "salt", type: "bytes32" } ], name: "ContractCreated", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "bytes32", name: "dataKey", type: "bytes32" }, { indexed: false, internalType: "bytes", name: "dataValue", type: "bytes" } ], name: "DataChanged", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "uint256", name: "operationType", type: "uint256" }, { indexed: true, internalType: "address", name: "target", type: "address" }, { indexed: false, internalType: "uint256", name: "value", type: "uint256" }, { indexed: true, internalType: "bytes4", name: "selector", type: "bytes4" } ], name: "Executed", type: "event" }, { anonymous: false, inputs: [ { indexed: false, internalType: "uint8", name: "version", type: "uint8" } ], name: "Initialized", type: "event" }, { anonymous: false, inputs: [], name: "OwnershipRenounced", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "previousOwner", type: "address" }, { indexed: true, internalType: "address", name: "newOwner", type: "address" } ], name: "OwnershipTransferStarted", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "previousOwner", type: "address" }, { indexed: true, internalType: "address", name: "newOwner", type: "address" } ], name: "OwnershipTransferred", type: "event" }, { anonymous: false, inputs: [], name: "RenounceOwnershipStarted", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "from", type: "address" }, { indexed: true, internalType: "uint256", name: "value", type: "uint256" }, { indexed: true, internalType: "bytes32", name: "typeId", type: "bytes32" }, { indexed: false, internalType: "bytes", name: "receivedData", type: "bytes" }, { indexed: false, internalType: "bytes", name: "returnedValue", type: "bytes" } ], name: "UniversalReceiver", type: "event" }, { stateMutability: "payable", type: "fallback" }, { inputs: [], name: "RENOUNCE_OWNERSHIP_CONFIRMATION_DELAY", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "RENOUNCE_OWNERSHIP_CONFIRMATION_PERIOD", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "VERSION", outputs: [ { internalType: "string", name: "", type: "string" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "acceptOwnership", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "bytes[]", name: "data", type: "bytes[]" } ], name: "batchCalls", outputs: [ { internalType: "bytes[]", name: "results", type: "bytes[]" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "uint256", name: "operationType", type: "uint256" }, { internalType: "address", name: "target", type: "address" }, { internalType: "uint256", name: "value", type: "uint256" }, { internalType: "bytes", name: "data", type: "bytes" } ], name: "execute", outputs: [ { internalType: "bytes", name: "", type: "bytes" } ], stateMutability: "payable", type: "function" }, { inputs: [ { internalType: "uint256[]", name: "operationsType", type: "uint256[]" }, { internalType: "address[]", name: "targets", type: "address[]" }, { internalType: "uint256[]", name: "values", type: "uint256[]" }, { internalType: "bytes[]", name: "datas", type: "bytes[]" } ], name: "executeBatch", outputs: [ { internalType: "bytes[]", name: "", type: "bytes[]" } ], stateMutability: "payable", type: "function" }, { inputs: [ { internalType: "bytes32", name: "dataKey", type: "bytes32" } ], name: "getData", outputs: [ { internalType: "bytes", name: "dataValue", type: "bytes" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "bytes32[]", name: "dataKeys", type: "bytes32[]" } ], name: "getDataBatch", outputs: [ { internalType: "bytes[]", name: "dataValues", type: "bytes[]" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "initialOwner", type: "address" } ], name: "initialize", outputs: [], stateMutability: "payable", type: "function" }, { inputs: [ { internalType: "bytes32", name: "dataHash", type: "bytes32" }, { internalType: "bytes", name: "signature", type: "bytes" } ], name: "isValidSignature", outputs: [ { internalType: "bytes4", name: "returnedStatus", type: "bytes4" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "owner", outputs: [ { internalType: "address", name: "", type: "address" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "pendingOwner", outputs: [ { internalType: "address", name: "", type: "address" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "renounceOwnership", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "bytes32", name: "dataKey", type: "bytes32" }, { internalType: "bytes", name: "dataValue", type: "bytes" } ], name: "setData", outputs: [], stateMutability: "payable", type: "function" }, { inputs: [ { internalType: "bytes32[]", name: "dataKeys", type: "bytes32[]" }, { internalType: "bytes[]", name: "dataValues", type: "bytes[]" } ], name: "setDataBatch", outputs: [], stateMutability: "payable", type: "function" }, { inputs: [ { internalType: "bytes4", name: "interfaceId", type: "bytes4" } ], name: "supportsInterface", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "pendingNewOwner", type: "address" } ], name: "transferOwnership", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "bytes32", name: "typeId", type: "bytes32" }, { internalType: "bytes", name: "receivedData", type: "bytes" } ], name: "universalReceiver", outputs: [ { internalType: "bytes", name: "returnedValues", type: "bytes" } ], stateMutability: "payable", type: "function" }, { stateMutability: "payable", type: "receive" } ]; const _bytecode$f = "0x60806040523480156200001157600080fd5b506200001c62000022565b620000e3565b600054610100900460ff16156200008f5760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b60005460ff90811614620000e1576000805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b613a2280620000f36000396000f3fe6080604052600436106101485760003560e01c806379ba5097116100c0578063dedff9c611610074578063ead3fbdf11610059578063ead3fbdf14610239578063f2fde38b14610436578063ffa1ad741461045657610193565b8063dedff9c6146103f8578063e30c39781461041857610193565b80638da5cb5b116100a55780638da5cb5b1461039a57806397902421146103d2578063c4d66de8146103e557610193565b806379ba5097146103725780637f23690c1461038757610193565b806344c028fe116101175780636963d438116100fc5780636963d4381461032a5780636bb56a141461034a578063715018a61461035d57610193565b806344c028fe146102ea57806354f6127f1461030a57610193565b806301bfba611461023957806301ffc9a7146102615780631626ba7e1461029157806331858452146102ca57610193565b366101935734156101915761018f7f9c4705229491d365fb5434052e12a386d6771d976bea61070a8c694e8affea3d60001b6040518060200160405280600081525061049f565b505b005b6000366060600482101561022157341561020c5761020a7f9c4705229491d365fb5434052e12a386d6771d976bea61070a8c694e8affea3d60001b84848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061049f92505050565b505b5060408051602081019091526000815261022e565b61022b8383610775565b90505b915050805190602001f35b34801561024557600080fd5b5061024e60c881565b6040519081526020015b60405180910390f35b34801561026d57600080fd5b5061028161027c366004612f80565b610951565b6040519015158152602001610258565b34801561029d57600080fd5b506102b16102ac366004613062565b610a3c565b6040516001600160e01b03199091168152602001610258565b6102dd6102d83660046131ca565b610be1565b6040516102589190613322565b6102fd6102f8366004613384565b610cf3565b60405161025891906133d9565b34801561031657600080fd5b506102fd6103253660046133ec565b610ddc565b34801561033657600080fd5b506102dd610345366004613405565b610de7565b6102fd610358366004613062565b61049f565b34801561036957600080fd5b50610191610f43565b34801561037e57600080fd5b506101916110af565b610191610395366004613062565b61123b565b3480156103a657600080fd5b506000546201000090046001600160a01b03165b6040516001600160a01b039091168152602001610258565b6101916103e036600461347a565b611324565b6101916103f33660046134d4565b6114fd565b34801561040457600080fd5b506102dd6104133660046134ef565b61161e565b34801561042457600080fd5b506003546001600160a01b03166103ba565b34801561044257600080fd5b506101916104513660046134d4565b6116c9565b34801561046257600080fd5b506102fd6040518060400160405280600681526020017f302e31352e30000000000000000000000000000000000000000000000000000081525081565b606034158015906104d057507f9c4705229491d365fb5434052e12a386d6771d976bea61070a8c694e8affea3d8314155b1561053b576105397f9c4705229491d365fb5434052e12a386d6771d976bea61070a8c694e8affea3d60001b6000368080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061049f92505050565b505b60006105667f0cfc51aec37c55a4d0b1a65c6255c4bf2fbdf6277f3cc0730c45b828b6db8b4761187b565b90506060601482511061061757600061057e83613524565b60601c905061059481635122dded60e11b61191d565b1561061557604051635122dded60e11b81526001600160a01b0382169063a245bbda906105cb90339034908b908b90600401613560565b6000604051808303816000875af11580156105ea573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610612919081019061358e565b91505b505b60006106437f0cfc51aec37c55a4d0b100000000000000000000000000000000000000000000876119a6565b905060006106508261187b565b90506060601482511061070157600061066883613524565b60601c905061067e81635122dded60e11b61191d565b156106ff57604051635122dded60e11b81526001600160a01b0382169063a245bbda906106b590339034908e908e90600401613560565b6000604051808303816000875af11580156106d4573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526106fc919081019061358e565b91505b505b83816040516020016107149291906135fc565b60405160208183030381529060405295508734336001600160a01b03167f9c3ba68eb5742b8e3961aea0afc7371a71bf433c8a67a831803b64c064a178c28a8a6040516107629291906135fc565b60405180910390a4505050505092915050565b606060008061078f6000356001600160e01b031916611a0f565b91509150346000141580156107a2575080155b1561080c5761080a7f9c4705229491d365fb5434052e12a386d6771d976bea61070a8c694e8affea3d60001b86868080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061049f92505050565b505b6000356001600160e01b03191615801561082d57506001600160a01b038216155b1561084b57604051806020016040528060008152509250505061094b565b6001600160a01b03821661089e576040517fbb370b2b0000000000000000000000000000000000000000000000000000000081526001600160e01b03196000351660048201526024015b60405180910390fd5b600080836001600160a01b0316836108b75760006108b9565b345b888833346040516020016108d09493929190613621565b60408051601f19818403018152908290526108ea91613651565b60006040518083038185875af1925050503d8060008114610927576040519150601f19603f3d011682016040523d82523d6000602084013e61092c565b606091505b5091509150811561094257935061094b92505050565b80518060208301fd5b92915050565b60006001600160e01b03198216630b135d3f60e11b148061099b57506001600160e01b031982167f24871b3d00000000000000000000000000000000000000000000000000000000145b806109b657506001600160e01b03198216631aed5a8560e21b145b806109ea57506001600160e01b031982167f94be599900000000000000000000000000000000000000000000000000000000145b80610a1e57506001600160e01b031982167f1a0eb6a500000000000000000000000000000000000000000000000000000000145b80610a2d5750610a2d82611b06565b8061094b575061094b82611b44565b600080546201000090046001600160a01b0316803b15610b6157600080826001600160a01b0316631626ba7e60e01b8787604051602401610a7e92919061366d565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b0319909416939093179092529051610abc9190613651565b600060405180830381855afa9150503d8060008114610af7576040519150601f19603f3d011682016040523d82523d6000602084013e610afc565b606091505b50915091506000828015610b11575081516020145b8015610b3857508151630b135d3f60e11b90610b369084016020908101908501613686565b145b905080610b4d576001600160e01b0319610b56565b630b135d3f60e11b5b94505050505061094b565b600080610b6e8686611b82565b90925090506000816004811115610b8757610b8761369f565b14610ba057506001600160e01b0319925061094b915050565b826001600160a01b0316826001600160a01b031614610bc7576001600160e01b0319610bd0565b630b135d3f60e11b5b935050505061094b565b5092915050565b60603415610c6c576040516001600160e01b03196000351660208201527f9c4705229491d365fb5434052e12a386d6771d976bea61070a8c694e8affea3d90349033907f9c3ba68eb5742b8e3961aea0afc7371a71bf433c8a67a831803b64c064a178c29060240160408051601f1981840301815290829052610c63916136b5565b60405180910390a45b6000546201000090046001600160a01b031633819003610c9a57610c9286868686611bc7565b915050610ceb565b6000610ca582611d57565b90506000610cb588888888611bc7565b90508115610ce657610ce68382604051602001610cd29190613322565b604051602081830303815290604052611f23565b925050505b949350505050565b60603415610d7e576040516001600160e01b03196000351660208201527f9c4705229491d365fb5434052e12a386d6771d976bea61070a8c694e8affea3d90349033907f9c3ba68eb5742b8e3961aea0afc7371a71bf433c8a67a831803b64c064a178c29060240160408051601f1981840301815290829052610d75916136b5565b60405180910390a45b6000546201000090046001600160a01b031633819003610da457610c9286868686612059565b6000610daf82611d57565b90506000610dbf88888888612059565b90508115610ce657610ce68382604051602001610cd291906133d9565b606061094b8261187b565b60608167ffffffffffffffff811115610e0257610e02612f9d565b604051908082528060200260200182016040528015610e3557816020015b6060815260200190600190039081610e205790505b50905060005b82811015610bda5760008030868685818110610e5957610e596136df565b9050602002810190610e6b91906136f5565b604051610e7992919061373c565b600060405180830381855af49150503d8060008114610eb4576040519150601f19603f3d011682016040523d82523d6000602084013e610eb9565b606091505b509150915081610f1b57805115610ed35780518082602001fd5b60405162461bcd60e51b815260206004820152601960248201527f4c5350303a20626174636843616c6c73207265766572746564000000000000006044820152606401610895565b80848481518110610f2e57610f2e6136df565b60209081029190910101525050600101610e3b565b6000546201000090046001600160a01b031633819003610ff8576000546201000090046001600160a01b0316610f776121af565b6000546201000090046001600160a01b0316610ff457604080516001600160a01b0384166020820152600091810191909152610ff4907fa4e59c931d14f7c8a7a35027f92ee40b5f2886b9fdcdb78f30bc5ecce5a2f814906060015b60408051601f198184030181529190526001600160a01b03841691906122bb565b5050565b600061100382611d57565b905060006110206000546001600160a01b03620100009091041690565b905061102a6121af565b6000546201000090046001600160a01b031661108a57604080516001600160a01b038516602082015260009181019190915261108a907fa4e59c931d14f7c8a7a35027f92ee40b5f2886b9fdcdb78f30bc5ecce5a2f81490606001610fd3565b81156110a9576110a98360405180602001604052806000815250611f23565b50505b50565b600354600160a01b900460ff16156110f3576040517f5758dd0700000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600080546003546001600160a01b03620100009092048216929116903382146111445761111f82611d57565b905061112a8261234f565b600380546001600160a01b0319169055600060025561114c565b61114c6123e6565b604080516001600160a01b0380861660208301528416918101919091526111b4907fa4e59c931d14f7c8a7a35027f92ee40b5f2886b9fdcdb78f30bc5ecce5a2f814906060015b60408051601f198184030181529190526001600160a01b03861691906122bb565b604080516001600160a01b03808616602083015284169181019190915261121c907fceca317f109c43507871523e82dc2a3cc64dfa18f12da0b6db14f6e23f995538906060015b60408051601f198184030181529190526001600160a01b03851691906122bb565b80156110a9576110a98260405180602001604052806000815250611f23565b34156112c4576040516001600160e01b03196000351660208201527f9c4705229491d365fb5434052e12a386d6771d976bea61070a8c694e8affea3d90349033907f9c3ba68eb5742b8e3961aea0afc7371a71bf433c8a67a831803b64c064a178c29060240160408051601f19818403018152908290526112bb916136b5565b60405180910390a45b6000546201000090046001600160a01b0316338190036112e8576110a9838361244c565b60006112f382611d57565b90506112ff848461244c565b801561131e5761131e8260405180602001604052806000815250611f23565b50505050565b34156113ad576040516001600160e01b03196000351660208201527f9c4705229491d365fb5434052e12a386d6771d976bea61070a8c694e8affea3d90349033907f9c3ba68eb5742b8e3961aea0afc7371a71bf433c8a67a831803b64c064a178c29060240160408051601f19818403018152908290526113a4916136b5565b60405180910390a45b80518251146113e8576040517f3bcc897900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b8151600003611423576040517f97da5f9500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6000546201000090046001600160a01b03163381900361148d5760005b835181101561131e5761148584828151811061145e5761145e6136df565b6020026020010151848381518110611478576114786136df565b602002602001015161244c565b600101611440565b600061149882611d57565b905060005b84518110156114dd576114d58582815181106114bb576114bb6136df565b6020026020010151858381518110611478576114786136df565b60010161149d565b50801561131e5761131e8260405180602001604052806000815250611f23565b600054610100900460ff161580801561151d5750600054600160ff909116105b806115375750303b158015611537575060005460ff166001145b6115a95760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a65640000000000000000000000000000000000006064820152608401610895565b6000805460ff1916600117905580156115cc576000805461ff0019166101001790555b6115d5826124a1565b8015610ff4576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15050565b6060815167ffffffffffffffff81111561163a5761163a612f9d565b60405190808252806020026020018201604052801561166d57816020015b60608152602001906001900390816116585790505b50905060005b82518110156116c35761169e838281518110611691576116916136df565b602002602001015161187b565b8282815181106116b0576116b06136df565b6020908102919091010152600101611673565b50919050565b6000546201000090046001600160a01b03163381900361179b576003805460ff60a01b1916600160a01b1790556116ff826125ac565b816001600160a01b0316816001600160a01b03167f38d16b8cac22d99fc7c124b9cd0de2d3fa1faef420bfe791d8c362d765e2270060405160405180910390a3604080516001600160a01b03808416602083015284169181019190915261178a907fe17117c9d2665d1dbeb479ed8058bbebde3c50ac50e2e65619f60006caac6926906060016111fb565b6003805460ff60a01b191690555050565b60006117a682611d57565b6003805460ff60a01b1916600160a01b17905590506117c4836125ac565b826001600160a01b0316826001600160a01b03167f38d16b8cac22d99fc7c124b9cd0de2d3fa1faef420bfe791d8c362d765e2270060405160405180910390a3604080516001600160a01b03808516602083015285169181019190915261184f907fe17117c9d2665d1dbeb479ed8058bbebde3c50ac50e2e65619f60006caac692690606001611193565b6003805460ff60a01b1916905580156110a9576110a98260405180602001604052806000815250611f23565b60008181526001602052604090208054606091906118989061374c565b80601f01602080910402602001604051908101604052809291908181526020018280546118c49061374c565b80156119115780601f106118e657610100808354040283529160200191611911565b820191906000526020600020905b8154815290600101906020018083116118f457829003601f168201915b50505050509050919050565b604080516001600160e01b03198316602480830191909152825180830390910181526044909101909152602080820180516001600160e01b03166301ffc9a760e01b178152825160009392849283928392918391908a617530fa92503d9150600051905082801561198f575060208210155b801561199b5750600081115b979650505050505050565b604080517fffffffffffffffffffff00000000000000000000000000000000000000000000841660208201526000602a82018190526bffffffffffffffffffffffff198416602c83015291829101604051602081830303815290604052905080610ceb90613780565b60008080611a477fcee78b4094da86011096000000000000000000000000000000000000000000006001600160e01b031986166119a6565b90506000611a548261187b565b9050601481511015611a6d575060009485945092505050565b8051601503611aee5780601481518110611a8957611a896136df565b01602001517fff00000000000000000000000000000000000000000000000000000000000000167f010000000000000000000000000000000000000000000000000000000000000003611aee57611adf81613524565b60601c95600195509350505050565b611af781613524565b60601c95600095509350505050565b60006001600160e01b031982167fa918fa6b00000000000000000000000000000000000000000000000000000000148061094b575061094b82612615565b600080611b576301ffc9a760e01b611a0f565b5090506001600160a01b038116611b715750600092915050565b611b7b818461191d565b9392505050565b6000808251604103611bb85760208301516040840151606085015160001a611bac87828585612653565b94509450505050611bc0565b506000905060025b9250929050565b606083518551141580611be8575082518451141580611be857508151835114155b15611c1f576040517f3ff55f4d00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b8451600003611c5a576040517fe9ad2b5f00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6000855167ffffffffffffffff811115611c7657611c76612f9d565b604051908082528060200260200182016040528015611ca957816020015b6060815260200190600190039081611c945790505b50905060005b8651811015611d4d57611d28878281518110611ccd57611ccd6136df565b6020026020010151878381518110611ce757611ce76136df565b6020026020010151878481518110611d0157611d016136df565b6020026020010151878581518110611d1b57611d1b6136df565b6020026020010151612059565b828281518110611d3a57611d3a6136df565b6020908102919091010152600101611caf565b5095945050505050565b6000816001600160a01b03163b600003611da8576040517f0c3923010000000000000000000000000000000000000000000000000000000081526001600160a01b0383166004820152602401610895565b6040517fde928f140000000000000000000000000000000000000000000000000000000081526001600160a01b0383169063de928f1490611df890339030908290349060009036906004016137a4565b6020604051808303816000875af1925050508015611e33575060408051601f3d908101601f19168201909252611e3091810190613801565b60015b611e72573d808015611e61576040519150601f19603f3d011682016040523d82523d6000602084013e611e66565b606091505b506116c3600082612717565b7fffffff000000000000000000000000000000000000000000000000000000000081167fde928f000000000000000000000000000000000000000000000000000000000014611ee757604051639d6741e360e01b8152600060048201526001600160e01b031982166024820152604401610895565b8060031a60f81b7effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916600160f81b14915050919050565b919050565b816001600160a01b031663d3fc45d333303334600036604051602001611f4e9695949392919061381e565b60405160208183030381529060405280519060200120836040518363ffffffff1660e01b8152600401611f8292919061366d565b6020604051808303816000875af1925050508015611fbd575060408051601f3d908101601f19168201909252611fba91810190613801565b60015b611ffc573d808015611feb576040519150601f19603f3d011682016040523d82523d6000602084013e611ff0565b606091505b506110a9600182612717565b6001600160e01b031981167fd3fc45d300000000000000000000000000000000000000000000000000000000146110a957604051639d6741e360e01b8152600160048201526001600160e01b031982166024820152604401610895565b6060846120725761206b84848461275d565b9050610ceb565b600185036120ac576001600160a01b038416156120a257604051631820c12560e11b815260040160405180910390fd5b61206b838361288e565b600285036120e6576001600160a01b038416156120dc57604051631820c12560e11b815260040160405180910390fd5b61206b83836129a8565b60038503612130578215612126576040517f72f2bc6a00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b61206b8483612a92565b6004850361217a578215612170576040517f5ac8313500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b61206b8483612b96565b6040517f7583b3bc00000000000000000000000000000000000000000000000000000000815260048101869052602401610895565b60025443906000906121c39060c890613884565b905060006121d260c883613884565b9050808311806121e25750600254155b1561222a576002839055600380546001600160a01b03191690556040517f81b7f830f1f0084db6497c486cbe6974c86488dcc4e3738eab94ab6d6b1653e790600090a1505050565b8183101561226e576040517f1b0809420000000000000000000000000000000000000000000000000000000081526004810183905260248101829052604401610895565b612278600061234f565b60006002819055600380546001600160a01b03191690556040517fd1f66c3d2bc1993a86be5e3d33709d98f0442381befcedd29f578b9b2506b1ce9190a1505050565b6122d56001600160a01b038416631aed5a8560e21b61191d565b156110a957604051631aed5a8560e21b81526001600160a01b03841690636bb56a1490612308908590859060040161366d565b6000604051808303816000875af1158015612327573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261131e919081019061358e565b6000546001600160a01b038281166201000090920416146110ac57600080546040516001600160a01b03808516936201000090930416917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b03831662010000027fffffffffffffffffffff0000000000000000000000000000000000000000ffff90911617905550565b6003546001600160a01b0316331461242c576040517f451e4528000000000000000000000000000000000000000000000000000000008152336004820152602401610895565b6124353361234f565b600380546001600160a01b03191690556000600255565b600082815260016020526040902061246482826138e5565b50817fece574603820d07bc9b91f2a932baadf4628aabcb8afba49776529c14a6104b28260405161249591906133d9565b60405180910390a25050565b600054610100900460ff1661251e5760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610895565b34156125a3577f9c4705229491d365fb5434052e12a386d6771d976bea61070a8c694e8affea3d60001b34336001600160a01b03167f9c3ba68eb5742b8e3961aea0afc7371a71bf433c8a67a831803b64c064a178c260405161259a906040808252600090820181905260606020830181905282015260800190565b60405180910390a45b6110ac8161234f565b306001600160a01b038216036125ee576040517fe052a6f800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600380546001600160a01b0319166001600160a01b03929092169190911790556000600255565b60006001600160e01b031982167f629aa69400000000000000000000000000000000000000000000000000000000148061094b575061094b82612c47565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a083111561268a575060009050600361270e565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa1580156126de573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b0381166127075760006001925092505061270e565b9150600090505b94509492505050565b8051156127275780518082602001fd5b6040517f8c6a8ae30000000000000000000000000000000000000000000000000000000081528215156004820152602401610895565b606082471015612789576040516301bf351f60e31b815247600482015260248101849052604401610895565b612792826139a5565b6001600160e01b031916846001600160a01b031660007f4810874456b8e6487bd861375cf6abd8e1c8bb5858c8ce36a86a04dabfac199e866040516127d991815260200190565b60405180910390a4600080856001600160a01b031685856040516127fd9190613651565b60006040518083038185875af1925050503d806000811461283a576040519150601f19603f3d011682016040523d82523d6000602084013e61283f565b606091505b509150915061288482826040518060400160405280601681526020017f455243373235583a20556e6b6e6f776e204572726f7200000000000000000000815250612c95565b9695505050505050565b6060824710156128ba576040516301bf351f60e31b815247600482015260248101849052604401610895565b81516000036128dc5760405163b81cd8d960e01b815260040160405180910390fd5b600082516020840185f090506001600160a01b038116612928576040517f0b07489b00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6000801b816001600160a01b031660017fa1fb700aaee2ae4a2ff6f91ce7eba292f89c2f5488b8ec4c5c5c8150692595c38760405161296991815260200190565b60405180910390a46040516bffffffffffffffffffffffff19606083901b16602082015260340160405160208183030381529060405291505092915050565b606081516000036129cc5760405163b81cd8d960e01b815260040160405180910390fd5b60006129e583602085516129e091906139d9565b612cae565b90506000612a02846000602087516129fd91906139d9565b612d14565b90506000612a11868484612e3c565b905082816001600160a01b031660027fa1fb700aaee2ae4a2ff6f91ce7eba292f89c2f5488b8ec4c5c5c8150692595c389604051612a5191815260200190565b60405180910390a46040516bffffffffffffffffffffffff19606083901b166020820152603401604051602081830303815290604052935050505092915050565b6060612a9d826139a5565b6001600160e01b031916836001600160a01b031660037f4810874456b8e6487bd861375cf6abd8e1c8bb5858c8ce36a86a04dabfac199e6000604051612ae591815260200190565b60405180910390a4600080846001600160a01b031684604051612b089190613651565b600060405180830381855afa9150503d8060008114612b43576040519150601f19603f3d011682016040523d82523d6000602084013e612b48565b606091505b5091509150612b8d82826040518060400160405280601681526020017f455243373235583a20556e6b6e6f776e204572726f7200000000000000000000815250612c95565b95945050505050565b6060612ba1826139a5565b6001600160e01b031916836001600160a01b031660047f4810874456b8e6487bd861375cf6abd8e1c8bb5858c8ce36a86a04dabfac199e6000604051612be991815260200190565b60405180910390a4600080846001600160a01b031684604051612c0c9190613651565b600060405180830381855af49150503d8060008114612b43576040519150601f19603f3d011682016040523d82523d6000602084013e612b48565b60006001600160e01b031982167f7545acac00000000000000000000000000000000000000000000000000000000148061094b57506301ffc9a760e01b6001600160e01b031983161461094b565b60608315612ca4575081611b7b565b611b7b8383612f40565b6000612cbb826020613884565b83511015612d0b5760405162461bcd60e51b815260206004820152601560248201527f746f427974657333325f6f75744f66426f756e647300000000000000000000006044820152606401610895565b50016020015190565b606081612d2281601f613884565b1015612d705760405162461bcd60e51b815260206004820152600e60248201527f736c6963655f6f766572666c6f770000000000000000000000000000000000006044820152606401610895565b612d7a8284613884565b84511015612dca5760405162461bcd60e51b815260206004820152601160248201527f736c6963655f6f75744f66426f756e64730000000000000000000000000000006044820152606401610895565b606082158015612de95760405191506000825260208201604052612e33565b6040519150601f8416801560200281840101858101878315602002848b0101015b81831015612e22578051835260209283019201612e0a565b5050858452601f01601f1916604052505b50949350505050565b600083471015612e8e5760405162461bcd60e51b815260206004820152601d60248201527f437265617465323a20696e73756666696369656e742062616c616e63650000006044820152606401610895565b8151600003612edf5760405162461bcd60e51b815260206004820181905260248201527f437265617465323a2062797465636f6465206c656e677468206973207a65726f6044820152606401610895565b8282516020840186f590506001600160a01b038116611b7b5760405162461bcd60e51b815260206004820152601960248201527f437265617465323a204661696c6564206f6e206465706c6f79000000000000006044820152606401610895565b815115612f505781518083602001fd5b8060405162461bcd60e51b815260040161089591906133d9565b6001600160e01b0319811681146110ac57600080fd5b600060208284031215612f9257600080fd5b8135611b7b81612f6a565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f1916810167ffffffffffffffff81118282101715612fdc57612fdc612f9d565b604052919050565b600067ffffffffffffffff821115612ffe57612ffe612f9d565b50601f01601f191660200190565b600082601f83011261301d57600080fd5b813561303061302b82612fe4565b612fb3565b81815284602083860101111561304557600080fd5b816020850160208301376000918101602001919091529392505050565b6000806040838503121561307557600080fd5b82359150602083013567ffffffffffffffff81111561309357600080fd5b61309f8582860161300c565b9150509250929050565b600067ffffffffffffffff8211156130c3576130c3612f9d565b5060051b60200190565b600082601f8301126130de57600080fd5b813560206130ee61302b836130a9565b82815260059290921b8401810191818101908684111561310d57600080fd5b8286015b848110156131285780358352918301918301613111565b509695505050505050565b80356001600160a01b0381168114611f1e57600080fd5b600082601f83011261315b57600080fd5b8135602061316b61302b836130a9565b82815260059290921b8401810191818101908684111561318a57600080fd5b8286015b8481101561312857803567ffffffffffffffff8111156131ae5760008081fd5b6131bc8986838b010161300c565b84525091830191830161318e565b600080600080608085870312156131e057600080fd5b843567ffffffffffffffff808211156131f857600080fd5b613204888389016130cd565b955060209150818701358181111561321b57600080fd5b8701601f8101891361322c57600080fd5b803561323a61302b826130a9565b81815260059190911b8201840190848101908b83111561325957600080fd5b928501925b8284101561327e5761326f84613133565b8252928501929085019061325e565b9750505050604087013591508082111561329757600080fd5b6132a3888389016130cd565b935060608701359150808211156132b957600080fd5b506132c68782880161314a565b91505092959194509250565b60005b838110156132ed5781810151838201526020016132d5565b50506000910152565b6000815180845261330e8160208601602086016132d2565b601f01601f19169290920160200192915050565b6000602080830181845280855180835260408601915060408160051b870101925083870160005b8281101561337757603f198886030184526133658583516132f6565b94509285019290850190600101613349565b5092979650505050505050565b6000806000806080858703121561339a57600080fd5b843593506133aa60208601613133565b925060408501359150606085013567ffffffffffffffff8111156133cd57600080fd5b6132c68782880161300c565b602081526000611b7b60208301846132f6565b6000602082840312156133fe57600080fd5b5035919050565b6000806020838503121561341857600080fd5b823567ffffffffffffffff8082111561343057600080fd5b818501915085601f83011261344457600080fd5b81358181111561345357600080fd5b8660208260051b850101111561346857600080fd5b60209290920196919550909350505050565b6000806040838503121561348d57600080fd5b823567ffffffffffffffff808211156134a557600080fd5b6134b1868387016130cd565b935060208501359150808211156134c757600080fd5b5061309f8582860161314a565b6000602082840312156134e657600080fd5b611b7b82613133565b60006020828403121561350157600080fd5b813567ffffffffffffffff81111561351857600080fd5b610ceb848285016130cd565b805160208201516bffffffffffffffffffffffff1980821692919060148310156135585780818460140360031b1b83161693505b505050919050565b6001600160a01b038516815283602082015282604082015260806060820152600061288460808301846132f6565b6000602082840312156135a057600080fd5b815167ffffffffffffffff8111156135b757600080fd5b8201601f810184136135c857600080fd5b80516135d661302b82612fe4565b8181528560208385010111156135eb57600080fd5b612b8d8260208301602086016132d2565b60408152600061360f60408301856132f6565b8281036020840152612b8d81856132f6565b8385823760609290921b6bffffffffffffffffffffffff1916919092019081526014810191909152603401919050565b600082516136638184602087016132d2565b9190910192915050565b828152604060208201526000610ceb60408301846132f6565b60006020828403121561369857600080fd5b5051919050565b634e487b7160e01b600052602160045260246000fd5b6040815260006136c860408301846132f6565b828103602093840152600081529190910192915050565b634e487b7160e01b600052603260045260246000fd5b6000808335601e1984360301811261370c57600080fd5b83018035915067ffffffffffffffff82111561372757600080fd5b602001915036819003821315611bc057600080fd5b8183823760009101908152919050565b600181811c9082168061376057607f821691505b6020821081036116c357634e487b7160e01b600052602260045260246000fd5b805160208083015191908110156116c35760001960209190910360031b1b16919050565b60006001600160a01b038089168352808816602084015280871660408401525084606083015260a060808301528260a0830152828460c0840137600060c0848401015260c0601f19601f8501168301019050979650505050505050565b60006020828403121561381357600080fd5b8151611b7b81612f6a565b60006bffffffffffffffffffffffff19808960601b168352808860601b166014840152808760601b1660288401525084603c8301528284605c8401375060009101605c0190815295945050505050565b634e487b7160e01b600052601160045260246000fd5b8082018082111561094b5761094b61386e565b601f8211156110a957600081815260208120601f850160051c810160208610156138be5750805b601f850160051c820191505b818110156138dd578281556001016138ca565b505050505050565b815167ffffffffffffffff8111156138ff576138ff612f9d565b6139138161390d845461374c565b84613897565b602080601f83116001811461394857600084156139305750858301515b600019600386901b1c1916600185901b1785556138dd565b600085815260208120601f198616915b8281101561397757888601518255948401946001909101908401613958565b50858210156139955787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b6000815160208301516001600160e01b0319808216935060048310156135585760049290920360031b82901b161692915050565b8181038181111561094b5761094b61386e56fea264697066735822122012e11b9724968040497a4b3ca66a5a40f1164ab3ef41f6a6ae1ac1abde096bd664736f6c63430008110033"; const isSuperArgs$f = (xs) => xs.length > 1; class LSP0ERC725AccountInit__factory extends ethers.ContractFactory { constructor(...args) { if (isSuperArgs$f(args)) { super(...args); } else { super(_abi$p, _bytecode$f, args[0]); } } getDeployTransaction(overrides) { return super.getDeployTransaction(overrides || {}); } deploy(overrides) { return super.deploy(overrides || {}); } connect(runner) { return super.connect(runner); } static createInterface() { return new ethers.Interface(_abi$p); } static connect(address, runner) { return new ethers.Contract( address, _abi$p, runner ); } } __publicField$p(LSP0ERC725AccountInit__factory, "bytecode", _bytecode$f); __publicField$p(LSP0ERC725AccountInit__factory, "abi", _abi$p); var __defProp$o = Object.defineProperty; var __defNormalProp$o = (obj, key, value) => key in obj ? __defProp$o(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$o = (obj, key, value) => { __defNormalProp$o(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$o = [ { inputs: [ { internalType: "address", name: "_owner", type: "address" }, { internalType: "address", name: "target_", type: "address" } ], stateMutability: "nonpayable", type: "constructor" }, { inputs: [], name: "AddressZeroNotAllowed", type: "error" }, { inputs: [ { internalType: "address", name: "caller", type: "address" } ], name: "CallerIsNotGuardian", type: "error" }, { inputs: [ { internalType: "address", name: "addressToAdd", type: "address" } ], name: "GuardianAlreadyExist", type: "error" }, { inputs: [ { internalType: "address", name: "addressToRemove", type: "address" } ], name: "GuardianDoNotExist", type: "error" }, { inputs: [ { internalType: "uint256", name: "guardianThreshold", type: "uint256" } ], name: "GuardiansNumberCannotGoBelowThreshold", type: "error" }, { inputs: [ { internalType: "address", name: "callerAddress", type: "address" } ], name: "OwnableCallerNotTheOwner", type: "error" }, { inputs: [], name: "OwnableCannotSetZeroAddressAsOwner", type: "error" }, { inputs: [], name: "SecretHashCannotBeZero", type: "error" }, { inputs: [ { internalType: "uint256", name: "thresholdGiven", type: "uint256" }, { internalType: "uint256", name: "guardianNumber", type: "uint256" } ], name: "ThresholdCannotBeHigherThanGuardiansNumber", type: "error" }, { inputs: [ { internalType: "address", name: "recoverer", type: "address" }, { internalType: "uint256", name: "selections", type: "uint256" }, { internalType: "uint256", name: "guardiansThreshold", type: "uint256" } ], name: "ThresholdNotReachedForRecoverer", type: "error" }, { inputs: [], name: "WrongPlainSecret", type: "error" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "newGuardian", type: "address" } ], name: "GuardianAdded", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "removedGuardian", type: "address" } ], name: "GuardianRemoved", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "uint256", name: "guardianThreshold", type: "uint256" } ], name: "GuardiansThresholdChanged", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "previousOwner", type: "address" }, { indexed: true, internalType: "address", name: "newOwner", type: "address" } ], name: "OwnershipTransferred", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "uint256", name: "recoveryCounter", type: "uint256" }, { indexed: true, internalType: "address", name: "newController", type: "address" }, { indexed: true, internalType: "bytes32", name: "newSecretHash", type: "bytes32" }, { indexed: false, internalType: "address[]", name: "guardians", type: "address[]" } ], name: "RecoveryProcessSuccessful", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "bytes32", name: "secretHash", type: "bytes32" } ], name: "SecretHashChanged", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "uint256", name: "recoveryCounter", type: "uint256" }, { indexed: true, internalType: "address", name: "guardian", type: "address" }, { indexed: true, internalType: "address", name: "addressSelected", type: "address" } ], name: "SelectedNewController", type: "event" }, { inputs: [ { internalType: "address", name: "newGuardian", type: "address" } ], name: "addGuardian", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "guardian", type: "address" } ], name: "getGuardianChoice", outputs: [ { internalType: "address", name: "", type: "address" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "getGuardians", outputs: [ { internalType: "address[]", name: "", type: "address[]" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "getGuardiansThreshold", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "getRecoveryCounter", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "getRecoverySecretHash", outputs: [ { internalType: "bytes32", name: "", type: "bytes32" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "_address", type: "address" } ], name: "isGuardian", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "owner", outputs: [ { internalType: "address", name: "", type: "address" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "recoverer", type: "address" }, { internalType: "string", name: "plainSecret", type: "string" }, { internalType: "bytes32", name: "newSecretHash", type: "bytes32" } ], name: "recoverOwnership", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "existingGuardian", type: "address" } ], name: "removeGuardian", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [], name: "renounceOwnership", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "addressSelected", type: "address" } ], name: "selectNewController", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "uint256", name: "newThreshold", type: "uint256" } ], name: "setGuardiansThreshold", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "bytes32", name: "newRecoverSecretHash", type: "bytes32" } ], name: "setRecoverySecretHash", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "bytes4", name: "_interfaceId", type: "bytes4" } ], name: "supportsInterface", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "target", outputs: [ { internalType: "address", name: "", type: "address" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "newOwner", type: "address" } ], name: "transferOwnership", outputs: [], stateMutability: "nonpayable", type: "function" } ]; const _bytecode$e = "0x60806040523480156200001157600080fd5b5060405162001757380380620017578339810160408190526200003491620000fc565b6200004a826200007160201b620008241760201c565b600180546001600160a01b0319166001600160a01b03929092169190911790555062000134565b6000546001600160a01b03828116911614620000dc57600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0383161790555b50565b80516001600160a01b0381168114620000f757600080fd5b919050565b600080604083850312156200011057600080fd5b6200011b83620000df565b91506200012b60208401620000df565b90509250929050565b61161380620001446000396000f3fe608060405234801561001057600080fd5b506004361061011b5760003560e01c80638f9083bb116100b2578063d4b8399211610081578063f6a22f0211610066578063f6a22f021461023c578063f799e38d14610275578063f79c8b771461028857600080fd5b8063d4b8399214610218578063f2fde38b1461022957600080fd5b80638f9083bb146101d7578063a526d83b146101df578063aa7806d6146101f2578063ae8481b21461020557600080fd5b80636bfed20b116100ee5780636bfed20b146101825780637140415614610197578063715018a6146101aa5780638da5cb5b146101b257600080fd5b806301ffc9a7146101205780630665f04b146101485780630c68ba211461015d578063187c534814610170575b600080fd5b61013361012e36600461116f565b610290565b60405190151581526020015b60405180910390f35b6101506102f9565b60405161013f9190611199565b61013361016b3660046111fb565b61030a565b6002545b60405190815260200161013f565b610195610190366004611218565b61032a565b005b6101956101a53660046111fb565b6103c1565b6101956104b0565b6000546001600160a01b03165b6040516001600160a01b03909116815260200161013f565b600454610174565b6101956101ed3660046111fb565b6104c4565b6101956102003660046111fb565b61056a565b6101956102133660046112a0565b610626565b6001546001600160a01b03166101bf565b6101956102373660046111fb565b610777565b6101bf61024a3660046111fb565b60035460009081526005602090815260408083206001600160a01b0394851684529091529020541690565b610195610283366004611218565b6107cb565b600354610174565b60006001600160e01b031982167f049a28f10000000000000000000000000000000000000000000000000000000014806102f357507f01ffc9a7000000000000000000000000000000000000000000000000000000006001600160e01b03198316145b92915050565b6060610305600661089f565b905090565b6001600160a01b03811660009081526007602052604081205415156102f3565b6103326108b3565b61033c6006610908565b81111561038e578061034e6006610908565b6040517fe3db80bd000000000000000000000000000000000000000000000000000000008152600481019290925260248201526044015b60405180910390fd5b600281905560405181907f7146d20a2c7b7c75c203774c9f241b61698fac43a4a81ccd828f0d816239279090600090a250565b6103c96108b3565b6001600160a01b038116600090815260076020526040902054610423576040517f3d8e524e0000000000000000000000000000000000000000000000000000000081526001600160a01b0382166004820152602401610385565b6002546104306006610908565b0361046d576002546040517f2711377700000000000000000000000000000000000000000000000000000000815260040161038591815260200190565b610478600682610912565b506040516001600160a01b038216907fb8107d0c6b40be480ce3172ee66ba6d64b71f6b1685a851340036e6e2e3e3c5290600090a250565b6104b86108b3565b6104c26000610824565b565b6104cc6108b3565b6001600160a01b03811660009081526007602052604090205415610527576040517fd52858db0000000000000000000000000000000000000000000000000000000081526001600160a01b0382166004820152602401610385565b610532600682610927565b506040516001600160a01b038216907f038596bb31e2e7d3d9f184d4c98b310103f6d7f5830e5eec32bffe6f1728f96990600090a250565b336000908152600760205260409020546105b2576040517f5560e16d000000000000000000000000000000000000000000000000000000008152336004820152602401610385565b6003546000818152600560209081526040808320338085529252808320805473ffffffffffffffffffffffffffffffffffffffff19166001600160a01b0387169081179091559051909284917fe43f3c1093c69ab76b2cf6246090acb2f8eab7f19ba9942dfc8b8ec446e3a3de9190a45050565b6003546000610635600661089f565b6001549091506001600160a01b0316610651868487878661093c565b6003805490600061066183611352565b9091555050600484905560405184907f2e8c5419a62207ade549fe0b66c1c85c16f5e1ed654815dee3a3f3ac41770df390600090a26000816001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156106d6573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106fa919061136b565b905060008061070d848a627f3f7f610ad2565b9150915061071c838383610da9565b5086896001600160a01b0316877ff4ff8803d6b43af46d48c200977209829c2f42f19f27eda1c89dbf26a28009cd886040516107589190611199565b60405180910390a461076c86865187610ea6565b505050505050505050565b61077f6108b3565b6001600160a01b0381166107bf576040517f1ad8836c00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6107c881610824565b50565b6107d36108b3565b806107f157604051633fb0b80160e11b815260040160405180910390fd5b600481905560405181907f2e8c5419a62207ade549fe0b66c1c85c16f5e1ed654815dee3a3f3ac41770df390600090a250565b6000546001600160a01b038281169116146107c857600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b03831673ffffffffffffffffffffffffffffffffffffffff1990911617905550565b606060006108ac83610f24565b9392505050565b336108c66000546001600160a01b031690565b6001600160a01b0316146104c2576040517fbf1169c5000000000000000000000000000000000000000000000000000000008152336004820152602401610385565b60006102f3825490565b60006108ac836001600160a01b038416610f80565b60006108ac836001600160a01b03841661107a565b6001600160a01b03851661097c576040517f0855380c00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6000805b82518110156109f357600086815260056020526040812084516001600160a01b038a1692908690859081106109b7576109b7611388565b6020908102919091018101516001600160a01b039081168352908201929092526040016000205416036109eb576001909101905b600101610980565b5060025480821015610a4a576040517ff78f05070000000000000000000000000000000000000000000000000000000081526001600160a01b03881660048201526024810183905260448101829052606401610385565b83610a6857604051633fb0b80160e11b815260040160405180910390fd5b60045485604051602001610a7c91906113c2565b6040516020818303038152906040528051906020012014610ac9576040517f6fa723c300000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b50505050505050565b604080516003808252608082019092526060918291906020820183803683370190505060408051600380825260808201909252919350816020015b6060815260200190600190039081610b0d579050506040517f54f6127f0000000000000000000000000000000000000000000000000000000081527fdf30dba06db6a30e65354d9a64c609861f089545ca58c6b4dbe31a5f338cb0e360048201529091506000906001600160a01b038716906354f6127f90602401600060405180830381865afa158015610ba5573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610bcd91908101906113de565b610bd69061144c565b60801c90506000610be882600161148d565b90507fdf30dba06db6a30e65354d9a64c609861f089545ca58c6b4dbe31a5f338cb0e360001b84600081518110610c2157610c21611388565b60200260200101818152505080604051602001610c5a919060809190911b6fffffffffffffffffffffffffffffffff1916815260100190565b60405160208183030381529060405283600081518110610c7c57610c7c611388565b6020908102919091010152610cb17fdf30dba06db6a30e65354d9a64c609861f089545ca58c6b4dbe31a5f338cb0e3836110c9565b84600181518110610cc457610cc4611388565b60200260200101818152505085604051602001610cf9919060609190911b6bffffffffffffffffffffffff1916815260140190565b60405160208183030381529060405283600181518110610d1b57610d1b611388565b6020026020010181905250610d40694b80742de2bf82acb36360b01b8760601b61111c565b84600281518110610d5357610d53611388565b60200260200101818152505084604051602001610d7291815260200190565b60405160208183030381529060405283600281518110610d9457610d94611388565b60200260200101819052505050935093915050565b60606000639790242160e01b8484604051602401610dc89291906114e2565b60408051601f198184030181529181526020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff166001600160e01b03199094169390931790925290517f09c5eabe0000000000000000000000000000000000000000000000000000000081529091506001600160a01b038616906309c5eabe90610e5690849060040161157a565b6000604051808303816000875af1158015610e75573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610e9d91908101906113de565b95945050505050565b60005b82811015610f1e57600560008581526020019081526020016000206000838381518110610ed857610ed8611388565b6020908102919091018101516001600160a01b03168252810191909152604001600020805473ffffffffffffffffffffffffffffffffffffffff19169055600101610ea9565b50505050565b606081600001805480602002602001604051908101604052809291908181526020018280548015610f7457602002820191906000526020600020905b815481526020019060010190808311610f60575b50505050509050919050565b60008181526001830160205260408120548015611069576000610fa460018361158d565b8554909150600090610fb89060019061158d565b905081811461101d576000866000018281548110610fd857610fd8611388565b9060005260206000200154905080876000018481548110610ffb57610ffb611388565b6000918252602080832090910192909255918252600188019052604090208390555b855486908061102e5761102e6115a0565b6001900381819060005260206000200160009055905585600101600086815260200190815260200160002060009055600193505050506102f3565b60009150506102f3565b5092915050565b60008181526001830160205260408120546110c1575081546001818101845560008481526020808220909301849055845484825282860190935260409020919091556102f3565b5060006102f3565b604080516fffffffffffffffffffffffffffffffff198085166020830152608084901b1660308201526000918291015b604051602081830303815290604052905080611114906115b6565b949350505050565b604080517fffffffffffffffffffff00000000000000000000000000000000000000000000841660208201526000602a82018190526bffffffffffffffffffffffff198416602c830152918291016110f9565b60006020828403121561118157600080fd5b81356001600160e01b0319811681146108ac57600080fd5b6020808252825182820181905260009190848201906040850190845b818110156111da5783516001600160a01b0316835292840192918401916001016111b5565b50909695505050505050565b6001600160a01b03811681146107c857600080fd5b60006020828403121561120d57600080fd5b81356108ac816111e6565b60006020828403121561122a57600080fd5b5035919050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f1916810167ffffffffffffffff8111828210171561127057611270611231565b604052919050565b600067ffffffffffffffff82111561129257611292611231565b50601f01601f191660200190565b6000806000606084860312156112b557600080fd5b83356112c0816111e6565b9250602084013567ffffffffffffffff8111156112dc57600080fd5b8401601f810186136112ed57600080fd5b80356113006112fb82611278565b611247565b81815287602083850101111561131557600080fd5b81602084016020830137600060208383010152809450505050604084013590509250925092565b634e487b7160e01b600052601160045260246000fd5b6000600182016113645761136461133c565b5060010190565b60006020828403121561137d57600080fd5b81516108ac816111e6565b634e487b7160e01b600052603260045260246000fd5b60005b838110156113b95781810151838201526020016113a1565b50506000910152565b600082516113d481846020870161139e565b9190910192915050565b6000602082840312156113f057600080fd5b815167ffffffffffffffff81111561140757600080fd5b8201601f8101841361141857600080fd5b80516114266112fb82611278565b81815285602083850101111561143b57600080fd5b610e9d82602083016020860161139e565b6000815160208301516fffffffffffffffffffffffffffffffff19808216935060108310156114855780818460100360031b1b83161693505b505050919050565b6fffffffffffffffffffffffffffffffff8181168382160190808211156110735761107361133c565b600081518084526114ce81602086016020860161139e565b601f01601f19169290920160200192915050565b604080825283519082018190526000906020906060840190828701845b8281101561151b578151845292840192908401906001016114ff565b50505083810382850152845180825282820190600581901b8301840187850160005b8381101561156b57601f198684030185526115598383516114b6565b9487019492509086019060010161153d565b50909998505050505050505050565b6020815260006108ac60208301846114b6565b818103818111156102f3576102f361133c565b634e487b7160e01b600052603160045260246000fd5b805160208083015191908110156115d7576000198160200360031b1b821691505b5091905056fea2646970667358221220cf1e67bf9359a9bab91e5491da5774d70ee66dc082ec65d62f445aa96dfe00f064736f6c63430008110033"; const isSuperArgs$e = (xs) => xs.length > 1; class LSP11BasicSocialRecovery__factory extends ethers.ContractFactory { constructor(...args) { if (isSuperArgs$e(args)) { super(...args); } else { super(_abi$o, _bytecode$e, args[0]); } } getDeployTransaction(_owner, target_, overrides) { return super.getDeployTransaction(_owner, target_, overrides || {}); } deploy(_owner, target_, overrides) { return super.deploy(_owner, target_, overrides || {}); } connect(runner) { return super.connect(runner); } static createInterface() { return new ethers.Interface(_abi$o); } static connect(address, runner) { return new ethers.Contract( address, _abi$o, runner ); } } __publicField$o(LSP11BasicSocialRecovery__factory, "bytecode", _bytecode$e); __publicField$o(LSP11BasicSocialRecovery__factory, "abi", _abi$o); var __defProp$n = Object.defineProperty; var __defNormalProp$n = (obj, key, value) => key in obj ? __defProp$n(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$n = (obj, key, value) => { __defNormalProp$n(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$n = [ { inputs: [], stateMutability: "nonpayable", type: "constructor" }, { inputs: [], name: "AddressZeroNotAllowed", type: "error" }, { inputs: [ { internalType: "address", name: "caller", type: "address" } ], name: "CallerIsNotGuardian", type: "error" }, { inputs: [ { internalType: "address", name: "addressToAdd", type: "address" } ], name: "GuardianAlreadyExist", type: "error" }, { inputs: [ { internalType: "address", name: "addressToRemove", type: "address" } ], name: "GuardianDoNotExist", type: "error" }, { inputs: [ { internalType: "uint256", name: "guardianThreshold", type: "uint256" } ], name: "GuardiansNumberCannotGoBelowThreshold", type: "error" }, { inputs: [ { internalType: "address", name: "callerAddress", type: "address" } ], name: "OwnableCallerNotTheOwner", type: "error" }, { inputs: [], name: "OwnableCannotSetZeroAddressAsOwner", type: "error" }, { inputs: [], name: "SecretHashCannotBeZero", type: "error" }, { inputs: [ { internalType: "uint256", name: "thresholdGiven", type: "uint256" }, { internalType: "uint256", name: "guardianNumber", type: "uint256" } ], name: "ThresholdCannotBeHigherThanGuardiansNumber", type: "error" }, { inputs: [ { internalType: "address", name: "recoverer", type: "address" }, { internalType: "uint256", name: "selections", type: "uint256" }, { internalType: "uint256", name: "guardiansThreshold", type: "uint256" } ], name: "ThresholdNotReachedForRecoverer", type: "error" }, { inputs: [], name: "WrongPlainSecret", type: "error" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "newGuardian", type: "address" } ], name: "GuardianAdded", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "removedGuardian", type: "address" } ], name: "GuardianRemoved", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "uint256", name: "guardianThreshold", type: "uint256" } ], name: "GuardiansThresholdChanged", type: "event" }, { anonymous: false, inputs: [ { indexed: false, internalType: "uint8", name: "version", type: "uint8" } ], name: "Initialized", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "previousOwner", type: "address" }, { indexed: true, internalType: "address", name: "newOwner", type: "address" } ], name: "OwnershipTransferred", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "uint256", name: "recoveryCounter", type: "uint256" }, { indexed: true, internalType: "address", name: "newController", type: "address" }, { indexed: true, internalType: "bytes32", name: "newSecretHash", type: "bytes32" }, { indexed: false, internalType: "address[]", name: "guardians", type: "address[]" } ], name: "RecoveryProcessSuccessful", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "bytes32", name: "secretHash", type: "bytes32" } ], name: "SecretHashChanged", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "uint256", name: "recoveryCounter", type: "uint256" }, { indexed: true, internalType: "address", name: "guardian", type: "address" }, { indexed: true, internalType: "address", name: "addressSelected", type: "address" } ], name: "SelectedNewController", type: "event" }, { inputs: [ { internalType: "address", name: "newGuardian", type: "address" } ], name: "addGuardian", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "guardian", type: "address" } ], name: "getGuardianChoice", outputs: [ { internalType: "address", name: "", type: "address" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "getGuardians", outputs: [ { internalType: "address[]", name: "", type: "address[]" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "getGuardiansThreshold", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "getRecoveryCounter", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "getRecoverySecretHash", outputs: [ { internalType: "bytes32", name: "", type: "bytes32" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "target_", type: "address" }, { internalType: "address", name: "_owner", type: "address" } ], name: "initialize", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "_address", type: "address" } ], name: "isGuardian", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "owner", outputs: [ { internalType: "address", name: "", type: "address" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "recoverer", type: "address" }, { internalType: "string", name: "plainSecret", type: "string" }, { internalType: "bytes32", name: "newSecretHash", type: "bytes32" } ], name: "recoverOwnership", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "existingGuardian", type: "address" } ], name: "removeGuardian", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [], name: "renounceOwnership", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "addressSelected", type: "address" } ], name: "selectNewController", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "uint256", name: "newThreshold", type: "uint256" } ], name: "setGuardiansThreshold", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "bytes32", name: "newRecoverSecretHash", type: "bytes32" } ], name: "setRecoverySecretHash", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "bytes4", name: "_interfaceId", type: "bytes4" } ], name: "supportsInterface", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "target", outputs: [ { internalType: "address", name: "", type: "address" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "newOwner", type: "address" } ], name: "transferOwnership", outputs: [], stateMutability: "nonpayable", type: "function" } ]; const _bytecode$d = "0x608060405234801561001057600080fd5b5061001961001e565b6100dd565b600054610100900460ff161561008a5760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b60005460ff908116146100db576000805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b61186e806100ec6000396000f3fe608060405234801561001057600080fd5b50600436106101365760003560e01c80638f9083bb116100b2578063d4b8399211610081578063f6a22f0211610066578063f6a22f0214610270578063f799e38d146102a9578063f79c8b77146102bc57600080fd5b8063d4b839921461024c578063f2fde38b1461025d57600080fd5b80638f9083bb1461020b578063a526d83b14610213578063aa7806d614610226578063ae8481b21461023957600080fd5b8063485cc9551161010957806371404156116100ee57806371404156146101c5578063715018a6146101d85780638da5cb5b146101e057600080fd5b8063485cc9551461019d5780636bfed20b146101b257600080fd5b806301ffc9a71461013b5780630665f04b146101635780630c68ba2114610178578063187c53481461018b575b600080fd5b61014e610149366004611391565b6102c4565b60405190151581526020015b60405180910390f35b61016b61032d565b60405161015a91906113bb565b61014e61018636600461141d565b61033e565b6002545b60405190815260200161015a565b6101b06101ab36600461143a565b61035e565b005b6101b06101c0366004611473565b610487565b6101b06101d336600461141d565b610519565b6101b0610608565b6000546201000090046001600160a01b03165b6040516001600160a01b03909116815260200161015a565b60045461018f565b6101b061022136600461141d565b61061c565b6101b061023436600461141d565b6106c2565b6101b06102473660046114fb565b61077e565b6001546001600160a01b03166101f3565b6101b061026b36600461141d565b6108cf565b6101f361027e36600461141d565b60035460009081526005602090815260408083206001600160a01b0394851684529091529020541690565b6101b06102b7366004611473565b610923565b60035461018f565b60006001600160e01b031982167f049a28f100000000000000000000000000000000000000000000000000000000148061032757507f01ffc9a7000000000000000000000000000000000000000000000000000000006001600160e01b03198316145b92915050565b6060610339600661097c565b905090565b6001600160a01b0381166000908152600760205260408120541515610327565b600054610100900460ff161580801561037e5750600054600160ff909116105b806103985750303b158015610398575060005460ff166001145b61040f5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a656400000000000000000000000000000000000060648201526084015b60405180910390fd5b6000805460ff191660011790558015610432576000805461ff0019166101001790555b61043c8383610990565b8015610482576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b505050565b61048f610a46565b6104996006610a93565b8111156104e657806104ab6006610a93565b6040517fe3db80bd00000000000000000000000000000000000000000000000000000000815260048101929092526024820152604401610406565b600281905560405181907f7146d20a2c7b7c75c203774c9f241b61698fac43a4a81ccd828f0d816239279090600090a250565b610521610a46565b6001600160a01b03811660009081526007602052604090205461057b576040517f3d8e524e0000000000000000000000000000000000000000000000000000000081526001600160a01b0382166004820152602401610406565b6002546105886006610a93565b036105c5576002546040517f2711377700000000000000000000000000000000000000000000000000000000815260040161040691815260200190565b6105d0600682610a9d565b506040516001600160a01b038216907fb8107d0c6b40be480ce3172ee66ba6d64b71f6b1685a851340036e6e2e3e3c5290600090a250565b610610610a46565b61061a6000610ab2565b565b610624610a46565b6001600160a01b0381166000908152600760205260409020541561067f576040517fd52858db0000000000000000000000000000000000000000000000000000000081526001600160a01b0382166004820152602401610406565b61068a600682610b49565b506040516001600160a01b038216907f038596bb31e2e7d3d9f184d4c98b310103f6d7f5830e5eec32bffe6f1728f96990600090a250565b3360009081526007602052604090205461070a576040517f5560e16d000000000000000000000000000000000000000000000000000000008152336004820152602401610406565b6003546000818152600560209081526040808320338085529252808320805473ffffffffffffffffffffffffffffffffffffffff19166001600160a01b0387169081179091559051909284917fe43f3c1093c69ab76b2cf6246090acb2f8eab7f19ba9942dfc8b8ec446e3a3de9190a45050565b600354600061078d600661097c565b6001549091506001600160a01b03166107a98684878786610b5e565b600380549060006107b9836115ad565b9091555050600484905560405184907f2e8c5419a62207ade549fe0b66c1c85c16f5e1ed654815dee3a3f3ac41770df390600090a26000816001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561082e573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061085291906115c6565b9050600080610865848a627f3f7f610cf4565b91509150610874838383610fcb565b5086896001600160a01b0316877ff4ff8803d6b43af46d48c200977209829c2f42f19f27eda1c89dbf26a28009cd886040516108b091906113bb565b60405180910390a46108c4868651876110c8565b505050505050505050565b6108d7610a46565b6001600160a01b038116610917576040517f1ad8836c00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b61092081610ab2565b50565b61092b610a46565b8061094957604051633fb0b80160e11b815260040160405180910390fd5b600481905560405181907f2e8c5419a62207ade549fe0b66c1c85c16f5e1ed654815dee3a3f3ac41770df390600090a250565b6060600061098983611146565b9392505050565b600054610100900460ff16610a0d5760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610406565b610a1682610ab2565b6001805473ffffffffffffffffffffffffffffffffffffffff19166001600160a01b039290921691909117905550565b6000546001600160a01b036201000090910416331461061a576040517fbf1169c5000000000000000000000000000000000000000000000000000000008152336004820152602401610406565b6000610327825490565b6000610989836001600160a01b0384166111a2565b6000546001600160a01b0382811662010000909204161461092057600080546040516001600160a01b03808516936201000090930416917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b03831662010000027fffffffffffffffffffff0000000000000000000000000000000000000000ffff90911617905550565b6000610989836001600160a01b03841661129c565b6001600160a01b038516610b9e576040517f0855380c00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6000805b8251811015610c1557600086815260056020526040812084516001600160a01b038a169290869085908110610bd957610bd96115e3565b6020908102919091018101516001600160a01b03908116835290820192909252604001600020541603610c0d576001909101905b600101610ba2565b5060025480821015610c6c576040517ff78f05070000000000000000000000000000000000000000000000000000000081526001600160a01b03881660048201526024810183905260448101829052606401610406565b83610c8a57604051633fb0b80160e11b815260040160405180910390fd5b60045485604051602001610c9e919061161d565b6040516020818303038152906040528051906020012014610ceb576040517f6fa723c300000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b50505050505050565b604080516003808252608082019092526060918291906020820183803683370190505060408051600380825260808201909252919350816020015b6060815260200190600190039081610d2f579050506040517f54f6127f0000000000000000000000000000000000000000000000000000000081527fdf30dba06db6a30e65354d9a64c609861f089545ca58c6b4dbe31a5f338cb0e360048201529091506000906001600160a01b038716906354f6127f90602401600060405180830381865afa158015610dc7573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610def9190810190611639565b610df8906116a7565b60801c90506000610e0a8260016116e8565b90507fdf30dba06db6a30e65354d9a64c609861f089545ca58c6b4dbe31a5f338cb0e360001b84600081518110610e4357610e436115e3565b60200260200101818152505080604051602001610e7c919060809190911b6fffffffffffffffffffffffffffffffff1916815260100190565b60405160208183030381529060405283600081518110610e9e57610e9e6115e3565b6020908102919091010152610ed37fdf30dba06db6a30e65354d9a64c609861f089545ca58c6b4dbe31a5f338cb0e3836112eb565b84600181518110610ee657610ee66115e3565b60200260200101818152505085604051602001610f1b919060609190911b6bffffffffffffffffffffffff1916815260140190565b60405160208183030381529060405283600181518110610f3d57610f3d6115e3565b6020026020010181905250610f62694b80742de2bf82acb36360b01b8760601b61133e565b84600281518110610f7557610f756115e3565b60200260200101818152505084604051602001610f9491815260200190565b60405160208183030381529060405283600281518110610fb657610fb66115e3565b60200260200101819052505050935093915050565b60606000639790242160e01b8484604051602401610fea92919061173d565b60408051601f198184030181529181526020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff166001600160e01b03199094169390931790925290517f09c5eabe0000000000000000000000000000000000000000000000000000000081529091506001600160a01b038616906309c5eabe906110789084906004016117d5565b6000604051808303816000875af1158015611097573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526110bf9190810190611639565b95945050505050565b60005b82811015611140576005600085815260200190815260200160002060008383815181106110fa576110fa6115e3565b6020908102919091018101516001600160a01b03168252810191909152604001600020805473ffffffffffffffffffffffffffffffffffffffff191690556001016110cb565b50505050565b60608160000180548060200260200160405190810160405280929190818152602001828054801561119657602002820191906000526020600020905b815481526020019060010190808311611182575b50505050509050919050565b6000818152600183016020526040812054801561128b5760006111c66001836117e8565b85549091506000906111da906001906117e8565b905081811461123f5760008660000182815481106111fa576111fa6115e3565b906000526020600020015490508087600001848154811061121d5761121d6115e3565b6000918252602080832090910192909255918252600188019052604090208390555b8554869080611250576112506117fb565b600190038181906000526020600020016000905590558560010160008681526020019081526020016000206000905560019350505050610327565b6000915050610327565b5092915050565b60008181526001830160205260408120546112e357508154600181810184556000848152602080822090930184905584548482528286019093526040902091909155610327565b506000610327565b604080516fffffffffffffffffffffffffffffffff198085166020830152608084901b1660308201526000918291015b60405160208183030381529060405290508061133690611811565b949350505050565b604080517fffffffffffffffffffff00000000000000000000000000000000000000000000841660208201526000602a82018190526bffffffffffffffffffffffff198416602c8301529182910161131b565b6000602082840312156113a357600080fd5b81356001600160e01b03198116811461098957600080fd5b6020808252825182820181905260009190848201906040850190845b818110156113fc5783516001600160a01b0316835292840192918401916001016113d7565b50909695505050505050565b6001600160a01b038116811461092057600080fd5b60006020828403121561142f57600080fd5b813561098981611408565b6000806040838503121561144d57600080fd5b823561145881611408565b9150602083013561146881611408565b809150509250929050565b60006020828403121561148557600080fd5b5035919050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f1916810167ffffffffffffffff811182821017156114cb576114cb61148c565b604052919050565b600067ffffffffffffffff8211156114ed576114ed61148c565b50601f01601f191660200190565b60008060006060848603121561151057600080fd5b833561151b81611408565b9250602084013567ffffffffffffffff81111561153757600080fd5b8401601f8101861361154857600080fd5b803561155b611556826114d3565b6114a2565b81815287602083850101111561157057600080fd5b81602084016020830137600060208383010152809450505050604084013590509250925092565b634e487b7160e01b600052601160045260246000fd5b6000600182016115bf576115bf611597565b5060010190565b6000602082840312156115d857600080fd5b815161098981611408565b634e487b7160e01b600052603260045260246000fd5b60005b838110156116145781810151838201526020016115fc565b50506000910152565b6000825161162f8184602087016115f9565b9190910192915050565b60006020828403121561164b57600080fd5b815167ffffffffffffffff81111561166257600080fd5b8201601f8101841361167357600080fd5b8051611681611556826114d3565b81815285602083850101111561169657600080fd5b6110bf8260208301602086016115f9565b6000815160208301516fffffffffffffffffffffffffffffffff19808216935060108310156116e05780818460100360031b1b83161693505b505050919050565b6fffffffffffffffffffffffffffffffff81811683821601908082111561129557611295611597565b600081518084526117298160208601602086016115f9565b601f01601f19169290920160200192915050565b604080825283519082018190526000906020906060840190828701845b828110156117765781518452928401929084019060010161175a565b50505083810382850152845180825282820190600581901b8301840187850160005b838110156117c657601f198684030185526117b4838351611711565b94870194925090860190600101611798565b50909998505050505050505050565b6020815260006109896020830184611711565b8181038181111561032757610327611597565b634e487b7160e01b600052603160045260246000fd5b80516020808301519190811015611832576000198160200360031b1b821691505b5091905056fea26469706673582212205bd3a716975b09412706da6f57dbee7231e8db92ee8f402dca73e1dad26e4dfa64736f6c63430008110033"; const isSuperArgs$d = (xs) => xs.length > 1; class LSP11BasicSocialRecoveryInit__factory extends ethers.ContractFactory { constructor(...args) { if (isSuperArgs$d(args)) { super(...args); } else { super(_abi$n, _bytecode$d, args[0]); } } getDeployTransaction(overrides) { return super.getDeployTransaction(overrides || {}); } deploy(overrides) { return super.deploy(overrides || {}); } connect(runner) { return super.connect(runner); } static createInterface() { return new ethers.Interface(_abi$n); } static connect(address, runner) { return new ethers.Contract( address, _abi$n, runner ); } } __publicField$n(LSP11BasicSocialRecoveryInit__factory, "bytecode", _bytecode$d); __publicField$n(LSP11BasicSocialRecoveryInit__factory, "abi", _abi$n); var __defProp$m = Object.defineProperty; var __defNormalProp$m = (obj, key, value) => key in obj ? __defProp$m(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$m = (obj, key, value) => { __defNormalProp$m(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$m = [ { inputs: [ { internalType: "address", name: "caller", type: "address" } ], name: "CannotRegisterEOAsAsAssets", type: "error" }, { inputs: [], name: "VERSION", outputs: [ { internalType: "string", name: "", type: "string" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "bytes4", name: "interfaceId", type: "bytes4" } ], name: "supportsInterface", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "notifier", type: "address" }, { internalType: "uint256", name: "", type: "uint256" }, { internalType: "bytes32", name: "typeId", type: "bytes32" }, { internalType: "bytes", name: "", type: "bytes" } ], name: "universalReceiverDelegate", outputs: [ { internalType: "bytes", name: "", type: "bytes" } ], stateMutability: "nonpayable", type: "function" } ]; const _bytecode$c = "0x608060405234801561001057600080fd5b50611cb2806100206000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c806301ffc9a714610046578063a245bbda1461006e578063ffa1ad741461008e575b600080fd5b6100596100543660046117b7565b6100ca565b60405190151581526020015b60405180910390f35b61008161007c366004611857565b610133565b6040516100659190611959565b6100816040518060400160405280600681526020017f302e31352e30000000000000000000000000000000000000000000000000000081525081565b60006001600160e01b031982167fa245bbda00000000000000000000000000000000000000000000000000000000148061012d57507f01ffc9a7000000000000000000000000000000000000000000000000000000006001600160e01b03198316145b92915050565b60607fbd65385f96fc24363ec2034c362ee207e6ba7e05fb8369285be8e038bfd6a716830161016c57610165856102dc565b90506102d4565b7fdf7fb9ee4c1d15de3b7f23b9aebddef530b5db7a6b8abe88f13e0478211b5aa483016101bd57610165857fc52d60080000000000000000000000000000000000000000000000000000000061043e565b7f4dc1518192ea9b4d6a4b3c1c41bfd265d0f8893a8420c9a6fcb690905b7e550083016101ed57610165856102dc565b7ff4f7b5aa1408f02c3f9028aad96253dded3b2c0f0b2f6f8687f405af3e4d67b3830161023e57610165857f3a2717060000000000000000000000000000000000000000000000000000000061043e565b7ff39dd1a71948f7651ca0e50e3792668416d0322736af69adfdd2be559ae96b8f830161026e57610165856105b0565b7f867aa368243da631c6abde26cc2843f9664f0ea9e06770f656179cc02abd01a4830161029e576101658561062f565b5060408051808201909152601981527f4c5350313a20747970654964206f7574206f662073636f70650000000000000060208201525b949350505050565b606081326001600160a01b038216036103185760405163a529534560e01b81526001600160a01b03821660048201526024015b60405180910390fd5b6040516370a0823160e01b81523360048201526001600160a01b038416906370a0823190602401602060405180830381865afa925050508015610378575060408051601f3d908101601f191682019092526103759181019061196c565b60015b61039c576040518060600160405280602d8152602001611c50602d91399150610438565b80156103e0576040518060400160405280601e81526020017f4c5350313a2066756c6c2062616c616e6365206973206e6f742073656e740000815250925050610438565b506000806103ee3386610673565b915091508151600014801561040257508051155b15610429576040518060600160405280602b8152602001611bf9602b913993505050610438565b6104338282610877565b935050505b50919050565b606082326001600160a01b038216036104755760405163a529534560e01b81526001600160a01b038216600482015260240161030f565b6001600160a01b0384163b15610551576040516370a0823160e01b81523360048201526001600160a01b038516906370a0823190602401602060405180830381865afa9250505080156104e5575060408051601f3d908101601f191682019092526104e29181019061196c565b60015b610509576040518060600160405280602d8152602001611c50602d913991506105a9565b8060000361054f576040518060400160405280601581526020017f4c5350313a2062616c616e6365206973207a65726f00000000000000000000008152509250506105a9565b505b60008061055f338787610934565b915091508151600014801561057357508051155b1561059a576040518060600160405280602b8152602001611bf9602b9139935050506105a9565b6105a48282610877565b935050505b5092915050565b606081326001600160a01b038216036105e75760405163a529534560e01b81526001600160a01b038216600482015260240161030f565b6000806105f43386610c48565b915091508151600014801561060857508051155b15610429576040518060600160405280602c8152602001611c24602c913993505050610438565b606081326001600160a01b038216036106665760405163a529534560e01b81526001600160a01b038216600482015260240161030f565b6000806105f43386610e38565b60608083600061068282611151565b905061068d816111e1565b610698575050610870565b60006106a382611985565b6001600160801b031916036106b9575050610870565b600060016106c683611985565b60801c6106d391906119d3565b905060006106f269812c4334633eb816c80d60b01b606089901b6111fc565b6040516354f6127f60e01b8152600481018290529091506000906001600160a01b038616906354f6127f90602401600060405180830381865afa15801561073d573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261076591908101906119f3565b9050805160141461077a575050505050610870565b6000602061078783611a6a565b6bffffffffffffffffffffffff1916901b60801c905060006107c97f6460ee3c0aac563ccbf76d6e1d07bada78e3a9514e6382b736ed3f478ab7b90b83611266565b9050846001600160801b0316826001600160801b031603610820576108107f6460ee3c0aac563ccbf76d6e1d07bada78e3a9514e6382b736ed3f478ab7b90b868387611291565b9850985050505050505050610870565b846001600160801b0316826001600160801b0316101561086857610810877f6460ee3c0aac563ccbf76d6e1d07bada78e3a9514e6382b736ed3f478ab7b90b878486896113f9565b505050505050505b9250929050565b6040517f9790242100000000000000000000000000000000000000000000000000000000815260609033906397902421906108b89086908690600401611aa2565b600060405180830381600087803b1580156108d257600080fd5b505af19250505080156108e3575060015b61091e573d808015610911576040519150601f19603f3d011682016040523d82523d6000602084013e610916565b606091505b50905061012d565b5060408051602081019091526000815292915050565b60608084600061094382611151565b905061094e816111e1565b61098557805160000361097e57604051600060208201526030016040516020818303038152906040529050610985565b5050610c40565b600061099082611985565b60801c90506ffffffffffffffffffffffffffffffffe1981016109b557505050610c40565b60006109d269812c4334633eb816c80d60b01b60608a901b6111fc565b6040516354f6127f60e01b8152600481018290529091506001600160a01b038516906354f6127f90602401600060405180830381865afa158015610a1a573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610a4291908101906119f3565b5115610a515750505050610c40565b6040805160038082526080820190925290602082016060803683370190505060408051600380825260808201909252919750816020015b6060815260200190600190039081610a885790505094507f6460ee3c0aac563ccbf76d6e1d07bada78e3a9514e6382b736ed3f478ab7b90b60001b86600081518110610ad657610ad6611b3a565b6020908102919091010152610aec826001611b50565b604051602001610b0f919060809190911b6001600160801b031916815260100190565b60405160208183030381529060405285600081518110610b3157610b31611b3a565b6020908102919091010152610b667f6460ee3c0aac563ccbf76d6e1d07bada78e3a9514e6382b736ed3f478ab7b90b83611266565b86600181518110610b7957610b79611b3a565b60200260200101818152505087604051602001610bae919060609190911b6bffffffffffffffffffffffff1916815260140190565b60405160208183030381529060405285600181518110610bd057610bd0611b3a565b60200260200101819052508086600281518110610bef57610bef611b3a565b6020026020010181815250508683604051602001610c0e929190611b70565b60405160208183030381529060405285600281518110610c3057610c30611b3a565b6020026020010181905250505050505b935093915050565b606080836000610c5782611768565b9050610c62816111e1565b610c6d575050610870565b80511580610c8d57506000610c8182611985565b6001600160801b031916145b15610c99575050610870565b60006001610ca683611985565b60801c610cb391906119d3565b90506000610cd26906491230f03e231fc8e360b21b606089901b6111fc565b6040516354f6127f60e01b8152600481018290529091506000906001600160a01b038616906354f6127f90602401600060405180830381865afa158015610d1d573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610d4591908101906119f3565b90508051601414610d5a575050505050610870565b60006020610d6783611a6a565b6bffffffffffffffffffffffff1916901b60801c90506000610da97f55482936e01da86729a45d2b87a6b1d3bc582bea0ec00e38bdb340e3af6f9f0683611266565b9050846001600160801b0316826001600160801b031603610df0576108107f55482936e01da86729a45d2b87a6b1d3bc582bea0ec00e38bdb340e3af6f9f06868387611291565b846001600160801b0316826001600160801b0316101561086857610810877f55482936e01da86729a45d2b87a6b1d3bc582bea0ec00e38bdb340e3af6f9f06878486896113f9565b606080836000610e4782611768565b9050610e52816111e1565b610e89578051600003610e8257604051600060208201526030016040516020818303038152906040529050610e89565b5050610870565b6000610e9482611985565b60801c90506ffffffffffffffffffffffffffffffffe198101610eb957505050610870565b6000610ed66906491230f03e231fc8e360b21b606089901b6111fc565b6040516354f6127f60e01b8152600481018290529091506001600160a01b038516906354f6127f90602401600060405180830381865afa158015610f1e573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610f4691908101906119f3565b5115610f555750505050610870565b6040805160038082526080820190925290602082016060803683370190505060408051600380825260808201909252919750816020015b6060815260200190600190039081610f8c5790505094507f55482936e01da86729a45d2b87a6b1d3bc582bea0ec00e38bdb340e3af6f9f0660001b86600081518110610fda57610fda611b3a565b6020908102919091010152610ff0826001611b50565b604051602001611013919060809190911b6001600160801b031916815260100190565b6040516020818303038152906040528560008151811061103557611035611b3a565b602090810291909101015261106a7f55482936e01da86729a45d2b87a6b1d3bc582bea0ec00e38bdb340e3af6f9f0683611266565b8660018151811061107d5761107d611b3a565b602002602001018181525050866040516020016110b2919060609190911b6bffffffffffffffffffffffff1916815260140190565b604051602081830303815290604052856001815181106110d4576110d4611b3a565b602002602001018190525080866002815181106110f3576110f3611b3a565b6020026020010181815250506328af17e660e01b83604051602001611119929190611b70565b6040516020818303038152906040528560028151811061113b5761113b611b3a565b6020026020010181905250505050509250929050565b6040516354f6127f60e01b81527f6460ee3c0aac563ccbf76d6e1d07bada78e3a9514e6382b736ed3f478ab7b90b60048201526060906001600160a01b038316906354f6127f906024015b600060405180830381865afa1580156111b9573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261012d91908101906119f3565b600081516010036111f457506001919050565b506000919050565b604080517fffffffffffffffffffff00000000000000000000000000000000000000000000841660208201526000602a82018190526bffffffffffffffffffffffff198416602c830152918291015b6040516020818303038152906040529050806102d490611ba0565b604080516001600160801b03198085166020830152608084901b16603082015260009182910161124b565b604080516003808252608082019092526060918291906020820183803683370190505060408051600380825260808201909252919350816020015b60608152602001906001900390816112cc57905050905085826000815181106112f7576112f7611b3a565b60200260200101818152505084604051602001611327919060809190911b6001600160801b031916815260100190565b6040516020818303038152906040528160008151811061134957611349611b3a565b6020026020010181905250828260018151811061136857611368611b3a565b602002602001018181525050604051806020016040528060008152508160018151811061139757611397611b3a565b602002602001018190525083826002815181106113b6576113b6611b3a565b60200260200101818152505060405180602001604052806000815250816002815181106113e5576113e5611b3a565b602002602001018190525094509492505050565b60408051600580825260c082019092526060918291906020820160a0803683370190505060408051600580825260c08201909252919350816020015b6060815260200190600190039081611435579050509050868260008151811061146057611460611b3a565b60200260200101818152505085604051602001611490919060809190911b6001600160801b031916815260100190565b604051602081830303815290604052816000815181106114b2576114b2611b3a565b602002602001018190525082826001815181106114d1576114d1611b3a565b602002602001018181525050604051806020016040528060008152508160018151811061150057611500611b3a565b602002602001018190525060006115178888611266565b6040516354f6127f60e01b8152600481018290529091506000906001600160a01b038b16906354f6127f90602401600060405180830381865afa158015611562573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261158a91908101906119f3565b61159390611a6a565b905086846002815181106115a9576115a9611b3a565b602002602001018181525050806040516020016115db91906bffffffffffffffffffffffff1991909116815260140190565b604051602081830303815290604052836002815181106115fd576115fd611b3a565b6020026020010181905250818460038151811061161c5761161c611b3a565b602002602001018181525050604051806020016040528060008152508360038151811061164b5761164b611b3a565b6020026020010181905250600061166286836111fc565b6040516354f6127f60e01b8152600481018290529091506000906001600160a01b038d16906354f6127f90602401600060405180830381865afa1580156116ad573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526116d591908101906119f3565b6116de90611bc4565b6040516001600160e01b031990911660208201526001600160801b031960808a901b1660248201526034016040516020818303038152906040529050818660048151811061172e5761172e611b3a565b602002602001018181525050808560048151811061174e5761174e611b3a565b602002602001018190525050505050965096945050505050565b6040516354f6127f60e01b81527f55482936e01da86729a45d2b87a6b1d3bc582bea0ec00e38bdb340e3af6f9f0660048201526060906001600160a01b038316906354f6127f9060240161119c565b6000602082840312156117c957600080fd5b81356001600160e01b0319811681146117e157600080fd5b9392505050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f1916810167ffffffffffffffff81118282101715611827576118276117e8565b604052919050565b600067ffffffffffffffff821115611849576118496117e8565b50601f01601f191660200190565b6000806000806080858703121561186d57600080fd5b84356001600160a01b038116811461188457600080fd5b93506020850135925060408501359150606085013567ffffffffffffffff8111156118ae57600080fd5b8501601f810187136118bf57600080fd5b80356118d26118cd8261182f565b6117fe565b8181528860208385010111156118e757600080fd5b8160208401602083013760006020838301015280935050505092959194509250565b60005b8381101561192457818101518382015260200161190c565b50506000910152565b60008151808452611945816020860160208601611909565b601f01601f19169290920160200192915050565b6020815260006117e1602083018461192d565b60006020828403121561197e57600080fd5b5051919050565b6000815160208301516001600160801b0319808216935060108310156119b55780818460100360031b1b83161693505b505050919050565b634e487b7160e01b600052601160045260246000fd5b6001600160801b038281168282160390808211156105a9576105a96119bd565b600060208284031215611a0557600080fd5b815167ffffffffffffffff811115611a1c57600080fd5b8201601f81018413611a2d57600080fd5b8051611a3b6118cd8261182f565b818152856020838501011115611a5057600080fd5b611a61826020830160208601611909565b95945050505050565b805160208201516bffffffffffffffffffffffff1980821692919060148310156119b55760149290920360031b82901b161692915050565b604080825283519082018190526000906020906060840190828701845b82811015611adb57815184529284019290840190600101611abf565b50505083810382850152845180825282820190600581901b8301840187850160005b83811015611b2b57601f19868403018552611b1983835161192d565b94870194925090860190600101611afd565b50909998505050505050505050565b634e487b7160e01b600052603260045260246000fd5b6001600160801b038181168382160190808211156105a9576105a96119bd565b6001600160e01b03198316815260008251611b92816004850160208701611909565b919091016004019392505050565b805160208083015191908110156104385760001960209190910360031b1b16919050565b6000815160208301516001600160e01b0319808216935060048310156119b55760049290920360031b82901b16169291505056fe4c5350353a204572726f722067656e65726174696e672064617461206b65792f76616c75652070616972734c535031303a204572726f722067656e65726174696e672064617461206b65792f76616c75652070616972734c5350313a206062616c616e63654f66286164647265737329602066756e6374696f6e206e6f7420666f756e64a2646970667358221220352ab33e65a8d9357ee70ea3764d281f67254069c7c98b7d1b3ead649ef51aac64736f6c63430008110033"; const isSuperArgs$c = (xs) => xs.length > 1; class LSP1UniversalReceiverDelegateUP__factory extends ethers.ContractFactory { constructor(...args) { if (isSuperArgs$c(args)) { super(...args); } else { super(_abi$m, _bytecode$c, args[0]); } } getDeployTransaction(overrides) { return super.getDeployTransaction(overrides || {}); } deploy(overrides) { return super.deploy(overrides || {}); } connect(runner) { return super.connect(runner); } static createInterface() { return new ethers.Interface(_abi$m); } static connect(address, runner) { return new ethers.Contract( address, _abi$m, runner ); } } __publicField$m(LSP1UniversalReceiverDelegateUP__factory, "bytecode", _bytecode$c); __publicField$m(LSP1UniversalReceiverDelegateUP__factory, "abi", _abi$m); var __defProp$l = Object.defineProperty; var __defNormalProp$l = (obj, key, value) => key in obj ? __defProp$l(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$l = (obj, key, value) => { __defNormalProp$l(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$l = [ { inputs: [ { internalType: "address", name: "caller", type: "address" } ], name: "CannotRegisterEOAsAsAssets", type: "error" }, { inputs: [], name: "VERSION", outputs: [ { internalType: "string", name: "", type: "string" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "bytes4", name: "interfaceId", type: "bytes4" } ], name: "supportsInterface", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "notifier", type: "address" }, { internalType: "uint256", name: "", type: "uint256" }, { internalType: "bytes32", name: "typeId", type: "bytes32" }, { internalType: "bytes", name: "", type: "bytes" } ], name: "universalReceiverDelegate", outputs: [ { internalType: "bytes", name: "", type: "bytes" } ], stateMutability: "nonpayable", type: "function" } ]; const _bytecode$b = "0x608060405234801561001057600080fd5b5061164f806100206000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c806301ffc9a714610046578063a245bbda1461006e578063ffa1ad741461008e575b600080fd5b61005961005436600461116e565b6100ca565b60405190151581526020015b60405180910390f35b61008161007c36600461120e565b610133565b6040516100659190611310565b6100816040518060400160405280600681526020017f302e31352e30000000000000000000000000000000000000000000000000000081525081565b60006001600160e01b031982167fa245bbda00000000000000000000000000000000000000000000000000000000148061012d57507f01ffc9a7000000000000000000000000000000000000000000000000000000006001600160e01b03198316145b92915050565b60607fbd65385f96fc24363ec2034c362ee207e6ba7e05fb8369285be8e038bfd6a716830161016c576101658561027c565b9050610274565b7fdf7fb9ee4c1d15de3b7f23b9aebddef530b5db7a6b8abe88f13e0478211b5aa483016101bd57610165857fc52d6008000000000000000000000000000000000000000000000000000000006103de565b7f4dc1518192ea9b4d6a4b3c1c41bfd265d0f8893a8420c9a6fcb690905b7e550083016101ed576101658561027c565b7ff4f7b5aa1408f02c3f9028aad96253dded3b2c0f0b2f6f8687f405af3e4d67b3830161023e57610165857f3a271706000000000000000000000000000000000000000000000000000000006103de565b5060408051808201909152601981527f4c5350313a20747970654964206f7574206f662073636f70650000000000000060208201525b949350505050565b606081326001600160a01b038216036102b85760405163a529534560e01b81526001600160a01b03821660048201526024015b60405180910390fd5b6040516370a0823160e01b81523360048201526001600160a01b038416906370a0823190602401602060405180830381865afa925050508015610318575060408051601f3d908101601f1916820190925261031591810190611323565b60015b61033c576040518060600160405280602d81526020016115ed602d913991506103d8565b8015610380576040518060400160405280601e81526020017f4c5350313a2066756c6c2062616c616e6365206973206e6f742073656e7400008152509250506103d8565b5060008061038e3386610550565b91509150815160001480156103a257508051155b156103c9576040518060600160405280602b81526020016115c2602b9139935050506103d8565b6103d38282610778565b935050505b50919050565b606082326001600160a01b038216036104155760405163a529534560e01b81526001600160a01b03821660048201526024016102af565b6001600160a01b0384163b156104f1576040516370a0823160e01b81523360048201526001600160a01b038516906370a0823190602401602060405180830381865afa925050508015610485575060408051601f3d908101601f1916820190925261048291810190611323565b60015b6104a9576040518060600160405280602d81526020016115ed602d91399150610549565b806000036104ef576040518060400160405280601581526020017f4c5350313a2062616c616e6365206973207a65726f0000000000000000000000815250925050610549565b505b6000806104ff338787610835565b915091508151600014801561051357508051155b1561053a576040518060600160405280602b81526020016115c2602b913993505050610549565b6105448282610778565b935050505b5092915050565b60608083600061055f82610b58565b905061056a81610be7565b610575575050610771565b60006105808261133c565b6001600160801b03191603610596575050610771565b600060016105a38361133c565b60801c6105b0919061138a565b905060006105cf69812c4334633eb816c80d60b01b606089901b610c02565b6040516354f6127f60e01b8152600481018290529091506000906001600160a01b038616906354f6127f90602401600060405180830381865afa15801561061a573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261064291908101906113b3565b90508051601414610657575050505050610771565b600060206106648361142a565b6bffffffffffffffffffffffff1916901b60801c905060006106a67f6460ee3c0aac563ccbf76d6e1d07bada78e3a9514e6382b736ed3f478ab7b90b83610c6c565b9050846fffffffffffffffffffffffffffffffff16826fffffffffffffffffffffffffffffffff160361070f576106ff7f6460ee3c0aac563ccbf76d6e1d07bada78e3a9514e6382b736ed3f478ab7b90b868387610c97565b9850985050505050505050610771565b846fffffffffffffffffffffffffffffffff16826fffffffffffffffffffffffffffffffff161015610769576106ff877f6460ee3c0aac563ccbf76d6e1d07bada78e3a9514e6382b736ed3f478ab7b90b87848689610dff565b505050505050505b9250929050565b6040517f9790242100000000000000000000000000000000000000000000000000000000815260609033906397902421906107b99086908690600401611462565b600060405180830381600087803b1580156107d357600080fd5b505af19250505080156107e4575060015b61081f573d808015610812576040519150601f19603f3d011682016040523d82523d6000602084013e610817565b606091505b50905061012d565b5060408051602081019091526000815292915050565b60608084600061084482610b58565b905061084f81610be7565b61088657805160000361087f57604051600060208201526030016040516020818303038152906040529050610886565b5050610b50565b60006108918261133c565b60801c90507fffffffffffffffffffffffffffffffff0000000000000000000000000000000181016108c557505050610b50565b60006108e269812c4334633eb816c80d60b01b60608a901b610c02565b6040516354f6127f60e01b8152600481018290529091506001600160a01b038516906354f6127f90602401600060405180830381865afa15801561092a573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261095291908101906113b3565b51156109615750505050610b50565b6040805160038082526080820190925290602082016060803683370190505060408051600380825260808201909252919750816020015b60608152602001906001900390816109985790505094507f6460ee3c0aac563ccbf76d6e1d07bada78e3a9514e6382b736ed3f478ab7b90b60001b866000815181106109e6576109e66114fa565b60209081029190910101526109fc826001611510565b604051602001610a1f919060809190911b6001600160801b031916815260100190565b60405160208183030381529060405285600081518110610a4157610a416114fa565b6020908102919091010152610a767f6460ee3c0aac563ccbf76d6e1d07bada78e3a9514e6382b736ed3f478ab7b90b83610c6c565b86600181518110610a8957610a896114fa565b60200260200101818152505087604051602001610abe919060609190911b6bffffffffffffffffffffffff1916815260140190565b60405160208183030381529060405285600181518110610ae057610ae06114fa565b60200260200101819052508086600281518110610aff57610aff6114fa565b6020026020010181815250508683604051602001610b1e929190611539565b60405160208183030381529060405285600281518110610b4057610b406114fa565b6020026020010181905250505050505b935093915050565b6040516354f6127f60e01b81527f6460ee3c0aac563ccbf76d6e1d07bada78e3a9514e6382b736ed3f478ab7b90b60048201526060906001600160a01b038316906354f6127f90602401600060405180830381865afa158015610bbf573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261012d91908101906113b3565b60008151601003610bfa57506001919050565b506000919050565b604080517fffffffffffffffffffff00000000000000000000000000000000000000000000841660208201526000602a82018190526bffffffffffffffffffffffff198416602c830152918291015b60405160208183030381529060405290508061027490611569565b604080516001600160801b03198085166020830152608084901b166030820152600091829101610c51565b604080516003808252608082019092526060918291906020820183803683370190505060408051600380825260808201909252919350816020015b6060815260200190600190039081610cd25790505090508582600081518110610cfd57610cfd6114fa565b60200260200101818152505084604051602001610d2d919060809190911b6001600160801b031916815260100190565b60405160208183030381529060405281600081518110610d4f57610d4f6114fa565b60200260200101819052508282600181518110610d6e57610d6e6114fa565b6020026020010181815250506040518060200160405280600081525081600181518110610d9d57610d9d6114fa565b60200260200101819052508382600281518110610dbc57610dbc6114fa565b6020026020010181815250506040518060200160405280600081525081600281518110610deb57610deb6114fa565b602002602001018190525094509492505050565b60408051600580825260c082019092526060918291906020820160a0803683370190505060408051600580825260c08201909252919350816020015b6060815260200190600190039081610e3b5790505090508682600081518110610e6657610e666114fa565b60200260200101818152505085604051602001610e96919060809190911b6001600160801b031916815260100190565b60405160208183030381529060405281600081518110610eb857610eb86114fa565b60200260200101819052508282600181518110610ed757610ed76114fa565b6020026020010181815250506040518060200160405280600081525081600181518110610f0657610f066114fa565b60200260200101819052506000610f1d8888610c6c565b6040516354f6127f60e01b8152600481018290529091506000906001600160a01b038b16906354f6127f90602401600060405180830381865afa158015610f68573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610f9091908101906113b3565b610f999061142a565b90508684600281518110610faf57610faf6114fa565b60200260200101818152505080604051602001610fe191906bffffffffffffffffffffffff1991909116815260140190565b60405160208183030381529060405283600281518110611003576110036114fa565b60200260200101819052508184600381518110611022576110226114fa565b6020026020010181815250506040518060200160405280600081525083600381518110611051576110516114fa565b602002602001018190525060006110688683610c02565b6040516354f6127f60e01b8152600481018290529091506000906001600160a01b038d16906354f6127f90602401600060405180830381865afa1580156110b3573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526110db91908101906113b3565b6110e49061158d565b6040516001600160e01b031990911660208201526001600160801b031960808a901b16602482015260340160405160208183030381529060405290508186600481518110611134576111346114fa565b6020026020010181815250508085600481518110611154576111546114fa565b602002602001018190525050505050965096945050505050565b60006020828403121561118057600080fd5b81356001600160e01b03198116811461119857600080fd5b9392505050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f1916810167ffffffffffffffff811182821017156111de576111de61119f565b604052919050565b600067ffffffffffffffff8211156112005761120061119f565b50601f01601f191660200190565b6000806000806080858703121561122457600080fd5b84356001600160a01b038116811461123b57600080fd5b93506020850135925060408501359150606085013567ffffffffffffffff81111561126557600080fd5b8501601f8101871361127657600080fd5b8035611289611284826111e6565b6111b5565b81815288602083850101111561129e57600080fd5b8160208401602083013760006020838301015280935050505092959194509250565b60005b838110156112db5781810151838201526020016112c3565b50506000910152565b600081518084526112fc8160208601602086016112c0565b601f01601f19169290920160200192915050565b60208152600061119860208301846112e4565b60006020828403121561133557600080fd5b5051919050565b6000815160208301516001600160801b03198082169350601083101561136c5780818460100360031b1b83161693505b505050919050565b634e487b7160e01b600052601160045260246000fd5b6fffffffffffffffffffffffffffffffff82811682821603908082111561054957610549611374565b6000602082840312156113c557600080fd5b815167ffffffffffffffff8111156113dc57600080fd5b8201601f810184136113ed57600080fd5b80516113fb611284826111e6565b81815285602083850101111561141057600080fd5b6114218260208301602086016112c0565b95945050505050565b805160208201516bffffffffffffffffffffffff19808216929190601483101561136c5760149290920360031b82901b161692915050565b604080825283519082018190526000906020906060840190828701845b8281101561149b5781518452928401929084019060010161147f565b50505083810382850152845180825282820190600581901b8301840187850160005b838110156114eb57601f198684030185526114d98383516112e4565b948701949250908601906001016114bd565b50909998505050505050505050565b634e487b7160e01b600052603260045260246000fd5b6fffffffffffffffffffffffffffffffff81811683821601908082111561054957610549611374565b6001600160e01b0319831681526000825161155b8160048501602087016112c0565b919091016004019392505050565b805160208083015191908110156103d85760001960209190910360031b1b16919050565b6000815160208301516001600160e01b03198082169350600483101561136c5760049290920360031b82901b16169291505056fe4c5350353a204572726f722067656e65726174696e672064617461206b65792f76616c75652070616972734c5350313a206062616c616e63654f66286164647265737329602066756e6374696f6e206e6f7420666f756e64a26469706673582212200e06aa8b97708f2395be0811c48615cf9e436cd7a4dc26d0afa6a07c868c808d64736f6c63430008110033"; const isSuperArgs$b = (xs) => xs.length > 1; class LSP1UniversalReceiverDelegateVault__factory extends ethers.ContractFactory { constructor(...args) { if (isSuperArgs$b(args)) { super(...args); } else { super(_abi$l, _bytecode$b, args[0]); } } getDeployTransaction(overrides) { return super.getDeployTransaction(overrides || {}); } deploy(overrides) { return super.deploy(overrides || {}); } connect(runner) { return super.connect(runner); } static createInterface() { return new ethers.Interface(_abi$l); } static connect(address, runner) { return new ethers.Contract( address, _abi$l, runner ); } } __publicField$l(LSP1UniversalReceiverDelegateVault__factory, "bytecode", _bytecode$b); __publicField$l(LSP1UniversalReceiverDelegateVault__factory, "abi", _abi$l); var __defProp$k = Object.defineProperty; var __defNormalProp$k = (obj, key, value) => key in obj ? __defProp$k(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$k = (obj, key, value) => { __defNormalProp$k(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$k = [ { inputs: [], name: "InvalidValueSum", type: "error" }, { inputs: [ { internalType: "bytes", name: "errorData", type: "bytes" } ], name: "PrimaryContractProxyInitFailureError", type: "error" }, { inputs: [ { internalType: "bytes", name: "errorData", type: "bytes" } ], name: "SecondaryContractProxyInitFailureError", type: "error" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "primaryContract", type: "address" }, { indexed: true, internalType: "address", name: "secondaryContract", type: "address" }, { components: [ { internalType: "bytes32", name: "salt", type: "bytes32" }, { internalType: "uint256", name: "fundingAmount", type: "uint256" }, { internalType: "bytes", name: "creationBytecode", type: "bytes" } ], indexed: false, internalType: "struct ILSP23LinkedContractsFactory.PrimaryContractDeployment", name: "primaryContractDeployment", type: "tuple" }, { components: [ { internalType: "uint256", name: "fundingAmount", type: "uint256" }, { internalType: "bytes", name: "creationBytecode", type: "bytes" }, { internalType: "bool", name: "addPrimaryContractAddress", type: "bool" }, { internalType: "bytes", name: "extraConstructorParams", type: "bytes" } ], indexed: false, internalType: "struct ILSP23LinkedContractsFactory.SecondaryContractDeployment", name: "secondaryContractDeployment", type: "tuple" }, { indexed: false, internalType: "address", name: "postDeploymentModule", type: "address" }, { indexed: false, internalType: "bytes", name: "postDeploymentModuleCalldata", type: "bytes" } ], name: "DeployedContracts", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "primaryContract", type: "address" }, { indexed: true, internalType: "address", name: "secondaryContract", type: "address" }, { components: [ { internalType: "bytes32", name: "salt", type: "bytes32" }, { internalType: "uint256", name: "fundingAmount", type: "uint256" }, { internalType: "address", name: "implementationContract", type: "address" }, { internalType: "bytes", name: "initializationCalldata", type: "bytes" } ], indexed: false, internalType: "struct ILSP23LinkedContractsFactory.PrimaryContractDeploymentInit", name: "primaryContractDeploymentInit", type: "tuple" }, { components: [ { internalType: "uint256", name: "fundingAmount", type: "uint256" }, { internalType: "address", name: "implementationContract", type: "address" }, { internalType: "bytes", name: "initializationCalldata", type: "bytes" }, { internalType: "bool", name: "addPrimaryContractAddress", type: "bool" }, { internalType: "bytes", name: "extraInitializationParams", type: "bytes" } ], indexed: false, internalType: "struct ILSP23LinkedContractsFactory.SecondaryContractDeploymentInit", name: "secondaryContractDeploymentInit", type: "tuple" }, { indexed: false, internalType: "address", name: "postDeploymentModule", type: "address" }, { indexed: false, internalType: "bytes", name: "postDeploymentModuleCalldata", type: "bytes" } ], name: "DeployedERC1167Proxies", type: "event" }, { inputs: [ { components: [ { internalType: "bytes32", name: "salt", type: "bytes32" }, { internalType: "uint256", name: "fundingAmount", type: "uint256" }, { internalType: "bytes", name: "creationBytecode", type: "bytes" } ], internalType: "struct ILSP23LinkedContractsFactory.PrimaryContractDeployment", name: "primaryContractDeployment", type: "tuple" }, { components: [ { internalType: "uint256", name: "fundingAmount", type: "uint256" }, { internalType: "bytes", name: "creationBytecode", type: "bytes" }, { internalType: "bool", name: "addPrimaryContractAddress", type: "bool" }, { internalType: "bytes", name: "extraConstructorParams", type: "bytes" } ], internalType: "struct ILSP23LinkedContractsFactory.SecondaryContractDeployment", name: "secondaryContractDeployment", type: "tuple" }, { internalType: "address", name: "postDeploymentModule", type: "address" }, { internalType: "bytes", name: "postDeploymentModuleCalldata", type: "bytes" } ], name: "computeAddresses", outputs: [ { internalType: "address", name: "primaryContractAddress", type: "address" }, { internalType: "address", name: "secondaryContractAddress", type: "address" } ], stateMutability: "view", type: "function" }, { inputs: [ { components: [ { internalType: "bytes32", name: "salt", type: "bytes32" }, { internalType: "uint256", name: "fundingAmount", type: "uint256" }, { internalType: "address", name: "implementationContract", type: "address" }, { internalType: "bytes", name: "initializationCalldata", type: "bytes" } ], internalType: "struct ILSP23LinkedContractsFactory.PrimaryContractDeploymentInit", name: "primaryContractDeploymentInit", type: "tuple" }, { components: [ { internalType: "uint256", name: "fundingAmount", type: "uint256" }, { internalType: "address", name: "implementationContract", type: "address" }, { internalType: "bytes", name: "initializationCalldata", type: "bytes" }, { internalType: "bool", name: "addPrimaryContractAddress", type: "bool" }, { internalType: "bytes", name: "extraInitializationParams", type: "bytes" } ], internalType: "struct ILSP23LinkedContractsFactory.SecondaryContractDeploymentInit", name: "secondaryContractDeploymentInit", type: "tuple" }, { internalType: "address", name: "postDeploymentModule", type: "address" }, { internalType: "bytes", name: "postDeploymentModuleCalldata", type: "bytes" } ], name: "computeERC1167Addresses", outputs: [ { internalType: "address", name: "primaryContractAddress", type: "address" }, { internalType: "address", name: "secondaryContractAddress", type: "address" } ], stateMutability: "view", type: "function" }, { inputs: [ { components: [ { internalType: "bytes32", name: "salt", type: "bytes32" }, { internalType: "uint256", name: "fundingAmount", type: "uint256" }, { internalType: "bytes", name: "creationBytecode", type: "bytes" } ], internalType: "struct ILSP23LinkedContractsFactory.PrimaryContractDeployment", name: "primaryContractDeployment", type: "tuple" }, { components: [ { internalType: "uint256", name: "fundingAmount", type: "uint256" }, { internalType: "bytes", name: "creationBytecode", type: "bytes" }, { internalType: "bool", name: "addPrimaryContractAddress", type: "bool" }, { internalType: "bytes", name: "extraConstructorParams", type: "bytes" } ], internalType: "struct ILSP23LinkedContractsFactory.SecondaryContractDeployment", name: "secondaryContractDeployment", type: "tuple" }, { internalType: "address", name: "postDeploymentModule", type: "address" }, { internalType: "bytes", name: "postDeploymentModuleCalldata", type: "bytes" } ], name: "deployContracts", outputs: [ { internalType: "address", name: "primaryContractAddress", type: "address" }, { internalType: "address", name: "secondaryContractAddress", type: "address" } ], stateMutability: "payable", type: "function" }, { inputs: [ { components: [ { internalType: "bytes32", name: "salt", type: "bytes32" }, { internalType: "uint256", name: "fundingAmount", type: "uint256" }, { internalType: "address", name: "implementationContract", type: "address" }, { internalType: "bytes", name: "initializationCalldata", type: "bytes" } ], internalType: "struct ILSP23LinkedContractsFactory.PrimaryContractDeploymentInit", name: "primaryContractDeploymentInit", type: "tuple" }, { components: [ { internalType: "uint256", name: "fundingAmount", type: "uint256" }, { internalType: "address", name: "implementationContract", type: "address" }, { internalType: "bytes", name: "initializationCalldata", type: "bytes" }, { internalType: "bool", name: "addPrimaryContractAddress", type: "bool" }, { internalType: "bytes", name: "extraInitializationParams", type: "bytes" } ], internalType: "struct ILSP23LinkedContractsFactory.SecondaryContractDeploymentInit", name: "secondaryContractDeploymentInit", type: "tuple" }, { internalType: "address", name: "postDeploymentModule", type: "address" }, { internalType: "bytes", name: "postDeploymentModuleCalldata", type: "bytes" } ], name: "deployERC1167Proxies", outputs: [ { internalType: "address", name: "primaryContractAddress", type: "address" }, { internalType: "address", name: "secondaryContractAddress", type: "address" } ], stateMutability: "payable", type: "function" } ]; const _bytecode$a = "0x608060405234801561001057600080fd5b50611247806100206000396000f3fe60806040526004361061003f5760003560e01c80636a66a7531461004457806372b19d361461007b578063754b86b51461009b578063dd5940f3146100ae575b600080fd5b610057610052366004610c0b565b6100ce565b604080516001600160a01b0393841681529290911660208301520160405180910390f35b34801561008757600080fd5b50610057610096366004610c0b565b610204565b6100576100a9366004610cb4565b61028d565b3480156100ba57600080fd5b506100576100c9366004610cb4565b610324565b6000806100e086356020890135610d28565b34146100ff57604051632fd9ca9160e01b815260040160405180910390fd5b61010c878787878761047d565b9150610118868361056c565b9050806001600160a01b0316826001600160a01b03167fe20570ed9bda3b93eea277b4e5d975c8933fd5f85f2c824d0845ae96c55a54fe8989898989604051610165959493929190610de1565b60405180910390a36001600160a01b038516156101fa576040517f28c4d14e0000000000000000000000000000000000000000000000000000000081526001600160a01b038616906328c4d14e906101c7908590859089908990600401610eed565b600060405180830381600087803b1580156101e157600080fd5b505af11580156101f5573d6000803e3d6000fd5b505050505b9550959350505050565b6000806000610216888888888861071a565b905061023161022b60608a0160408b01610f24565b82610795565b92506102806102466040890160208a01610f24565b6040516bffffffffffffffffffffffff19606087901b16602082015260340160405160208183030381529060405280519060200120610795565b9150509550959350505050565b60008061029f86356020890135610d28565b34146102be57604051632fd9ca9160e01b815260040160405180910390fd5b6102cb87878787876107fa565b91506102d78683610867565b9050806001600160a01b0316826001600160a01b03167f0e20ea3d6273aab49a7dabafc15cc94971c12dd63a07185ca810e497e4e87aa68989898989604051610165959493929190610f3f565b60008060006103368888888888610966565b90506103648161034960408b018b610fdf565b604051610357929190611026565b60405180910390206109af565b9250606061037788820160408a01611036565b156103e4576103896020890189610fdf565b604080516001600160a01b03881660208201520160408051601f198184030181529190526103ba60608c018c610fdf565b6040516020016103ce959493929190611075565b6040516020818303038152906040529050610429565b6103f16020890189610fdf565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509293505050505b6040516bffffffffffffffffffffffff19606086901b16602082015261046f906034016040516020818303038152906040528051906020012082805190602001206109af565b925050509550959350505050565b60008061048d878787878761071a565b90506104a86104a26060890160408a01610f24565b826109bc565b91506000806001600160a01b03841660208a01356104c960608c018c610fdf565b6040516104d7929190611026565b60006040518083038185875af1925050503d8060008114610514576040519150601f19603f3d011682016040523d82523d6000602084013e610519565b606091505b50915091508161056057806040517f4364b6ee00000000000000000000000000000000000000000000000000000000815260040161055791906110a9565b60405180910390fd5b50505095945050505050565b60006105bb6105816040850160208601610f24565b6040516bffffffffffffffffffffffff19606086901b166020820152603401604051602081830303815290604052805190602001206109bc565b905060006105cc6040850185610fdf565b8080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929350610614925050506080850160608601611036565b1561067157604080516001600160a01b038516602082015282910160408051601f1981840301815291905261064c6080870187610fdf565b60405160200161065f94939291906110dc565b60405160208183030381529060405290505b600080836001600160a01b03168660000135846040516106919190611118565b60006040518083038185875af1925050503d80600081146106ce576040519150601f19603f3d011682016040523d82523d6000602084013e6106d3565b606091505b50915091508161071157806040517f9654a85400000000000000000000000000000000000000000000000000000000815260040161055791906110a9565b50505092915050565b6000853561072e6040870160208801610f24565b61073b6040880188610fdf565b61074b60808a0160608b01611036565b61075860808b018b610fdf565b8a8a8a6040516020016107749a99989796959493929190611134565b60405160208183030381529060405280519060200120905095945050505050565b6040513060388201526f5af43d82803e903d91602b57fd5bf3ff602482015260148101839052733d602d80600a3d3981f3363d3d373d3d3d363d738152605881018290526037600c820120607882015260556043909101206000905b90505b92915050565b60008061080a8787878787610966565b905061085c60208801358261082260408b018b610fdf565b8080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250610a5992505050565b979650505050505050565b6000806108776020850185610fdf565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509293506108bf925050506060850160408601611036565b1561091c57604080516001600160a01b038516602082015282910160408051601f198184030181529190526108f76060870187610fdf565b60405160200161090a94939291906110dc565b60405160208183030381529060405290505b6040516bffffffffffffffffffffffff19606085901b16602082015261095e908535906034016040516020818303038152906040528051906020012083610a59565b949350505050565b600085356109776020870187610fdf565b6109876060890160408a01611036565b61099460608a018a610fdf565b898989604051602001610774999897969594939291906111a8565b60006107f1838330610b64565b6000763d602d80600a3d3981f3363d3d373d3d3d363d730000008360601b60e81c176000526e5af43d82803e903d91602b57fd5bf38360781b1760205281603760096000f590506001600160a01b0381166107f45760405162461bcd60e51b815260206004820152601760248201527f455243313136373a2063726561746532206661696c65640000000000000000006044820152606401610557565b600083471015610aab5760405162461bcd60e51b815260206004820152601d60248201527f437265617465323a20696e73756666696369656e742062616c616e63650000006044820152606401610557565b8151600003610afc5760405162461bcd60e51b815260206004820181905260248201527f437265617465323a2062797465636f6465206c656e677468206973207a65726f6044820152606401610557565b8282516020840186f590506001600160a01b038116610b5d5760405162461bcd60e51b815260206004820152601960248201527f437265617465323a204661696c6564206f6e206465706c6f79000000000000006044820152606401610557565b9392505050565b6000604051836040820152846020820152828152600b8101905060ff815360559020949350505050565b600060808284031215610ba057600080fd5b50919050565b80356001600160a01b0381168114610bbd57600080fd5b919050565b60008083601f840112610bd457600080fd5b50813567ffffffffffffffff811115610bec57600080fd5b602083019150836020828501011115610c0457600080fd5b9250929050565b600080600080600060808688031215610c2357600080fd5b853567ffffffffffffffff80821115610c3b57600080fd5b610c4789838a01610b8e565b96506020880135915080821115610c5d57600080fd5b9087019060a0828a031215610c7157600080fd5b819550610c8060408901610ba6565b94506060880135915080821115610c9657600080fd5b50610ca388828901610bc2565b969995985093965092949392505050565b600080600080600060808688031215610ccc57600080fd5b853567ffffffffffffffff80821115610ce457600080fd5b908701906060828a031215610cf857600080fd5b90955060208701359080821115610d0e57600080fd5b610d1a89838a01610b8e565b9550610c8060408901610ba6565b808201808211156107f4577f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000808335601e19843603018112610d7957600080fd5b830160208101925035905067ffffffffffffffff811115610d9957600080fd5b803603821315610c0457600080fd5b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b80358015158114610bbd57600080fd5b6080815285356080820152602086013560a08201526000610e0460408801610ba6565b6001600160a01b0380821660c0850152610e2160608a018a610d62565b9250608060e0860152610e3961010086018483610da8565b92505083820360208501528735825280610e5560208a01610ba6565b16602083015250610e696040880188610d62565b60a06040840152610e7e60a084018284610da8565b915050610e8d60608901610dd1565b15156060830152610ea16080890189610d62565b8383036080850152610eb4838284610da8565b9350505050610ece60408401876001600160a01b03169052565b8281036060840152610ee1818587610da8565b98975050505050505050565b60006001600160a01b03808716835280861660208401525060606040830152610f1a606083018486610da8565b9695505050505050565b600060208284031215610f3657600080fd5b6107f182610ba6565b6080815285356080820152602086013560a08201526000610f636040880188610d62565b606060c0850152610f7860e085018284610da8565b915050828103602084015286358152610f946020880188610d62565b60806020840152610fa9608084018284610da8565b915050610fb860408901610dd1565b15156040830152610fcc6060890189610d62565b8383036060850152610eb4838284610da8565b6000808335601e19843603018112610ff657600080fd5b83018035915067ffffffffffffffff82111561101157600080fd5b602001915036819003821315610c0457600080fd5b8183823760009101908152919050565b60006020828403121561104857600080fd5b6107f182610dd1565b60005b8381101561106c578181015183820152602001611054565b50506000910152565b848682376000858201600081528551611092818360208a01611051565b018385823760009301928352509095945050505050565b60208152600082518060208401526110c8816040850160208701611051565b601f01601f19169190910160400192915050565b600085516110ee818460208a01611051565b855190830190611102818360208a01611051565b0183858237600093019283525090949350505050565b6000825161112a818460208701611051565b9190910192915050565b8a815260006001600160a01b03808c16602084015260e0604084015261115e60e084018b8d610da8565b8915156060850152838103608085015261117981898b610da8565b905081871660a085015283810360c0850152611196818688610da8565b9e9d5050505050505050505050505050565b89815260c0602082015260006111c260c083018a8c610da8565b881515604084015282810360608401526111dd81888a610da8565b90506001600160a01b038616608084015282810360a0840152611201818587610da8565b9c9b50505050505050505050505056fea2646970667358221220a9ef6b7df5219623aa72bf0533ee6dd52be8cb44641407edcca52223e31b40db64736f6c63430008110033"; const isSuperArgs$a = (xs) => xs.length > 1; class LSP23LinkedContractsFactory__factory extends ethers.ContractFactory { constructor(...args) { if (isSuperArgs$a(args)) { super(...args); } else { super(_abi$k, _bytecode$a, args[0]); } } getDeployTransaction(overrides) { return super.getDeployTransaction(overrides || {}); } deploy(overrides) { return super.deploy(overrides || {}); } connect(runner) { return super.connect(runner); } static createInterface() { return new ethers.Interface(_abi$k); } static connect(address, runner) { return new ethers.Contract( address, _abi$k, runner ); } } __publicField$k(LSP23LinkedContractsFactory__factory, "bytecode", _bytecode$a); __publicField$k(LSP23LinkedContractsFactory__factory, "abi", _abi$k); var __defProp$j = Object.defineProperty; var __defNormalProp$j = (obj, key, value) => key in obj ? __defProp$j(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$j = (obj, key, value) => { __defNormalProp$j(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$j = [ { inputs: [], name: "ERC725Y_DataKeysValuesEmptyArray", type: "error" }, { inputs: [], name: "ERC725Y_DataKeysValuesLengthMismatch", type: "error" }, { inputs: [], name: "ERC725Y_MsgValueDisallowed", type: "error" }, { inputs: [], name: "LSP4TokenNameNotEditable", type: "error" }, { inputs: [], name: "LSP4TokenSymbolNotEditable", type: "error" }, { inputs: [], name: "LSP4TokenTypeNotEditable", type: "error" }, { inputs: [ { internalType: "address", name: "callerAddress", type: "address" } ], name: "OwnableCallerNotTheOwner", type: "error" }, { inputs: [], name: "OwnableCannotSetZeroAddressAsOwner", type: "error" }, { anonymous: false, inputs: [ { indexed: true, internalType: "bytes32", name: "dataKey", type: "bytes32" }, { indexed: false, internalType: "bytes", name: "dataValue", type: "bytes" } ], name: "DataChanged", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "previousOwner", type: "address" }, { indexed: true, internalType: "address", name: "newOwner", type: "address" } ], name: "OwnershipTransferred", type: "event" }, { inputs: [ { internalType: "bytes32", name: "dataKey", type: "bytes32" } ], name: "getData", outputs: [ { internalType: "bytes", name: "dataValue", type: "bytes" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "bytes32[]", name: "dataKeys", type: "bytes32[]" } ], name: "getDataBatch", outputs: [ { internalType: "bytes[]", name: "dataValues", type: "bytes[]" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "owner", outputs: [ { internalType: "address", name: "", type: "address" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "renounceOwnership", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "bytes32", name: "dataKey", type: "bytes32" }, { internalType: "bytes", name: "dataValue", type: "bytes" } ], name: "setData", outputs: [], stateMutability: "payable", type: "function" }, { inputs: [ { internalType: "bytes32[]", name: "dataKeys", type: "bytes32[]" }, { internalType: "bytes[]", name: "dataValues", type: "bytes[]" } ], name: "setDataBatch", outputs: [], stateMutability: "payable", type: "function" }, { inputs: [ { internalType: "bytes4", name: "interfaceId", type: "bytes4" } ], name: "supportsInterface", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "newOwner", type: "address" } ], name: "transferOwnership", outputs: [], stateMutability: "nonpayable", type: "function" } ]; class LSP4DigitalAssetMetadata__factory { static createInterface() { return new ethers.Interface(_abi$j); } static connect(address, runner) { return new ethers.Contract( address, _abi$j, runner ); } } __publicField$j(LSP4DigitalAssetMetadata__factory, "abi", _abi$j); var __defProp$i = Object.defineProperty; var __defNormalProp$i = (obj, key, value) => key in obj ? __defProp$i(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$i = (obj, key, value) => { __defNormalProp$i(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$i = [ { inputs: [], name: "ERC725Y_DataKeysValuesEmptyArray", type: "error" }, { inputs: [], name: "ERC725Y_DataKeysValuesLengthMismatch", type: "error" }, { inputs: [], name: "ERC725Y_MsgValueDisallowed", type: "error" }, { inputs: [], name: "LSP4TokenNameNotEditable", type: "error" }, { inputs: [], name: "LSP4TokenSymbolNotEditable", type: "error" }, { inputs: [], name: "LSP4TokenTypeNotEditable", type: "error" }, { inputs: [ { internalType: "address", name: "callerAddress", type: "address" } ], name: "OwnableCallerNotTheOwner", type: "error" }, { inputs: [], name: "OwnableCannotSetZeroAddressAsOwner", type: "error" }, { anonymous: false, inputs: [ { indexed: true, internalType: "bytes32", name: "dataKey", type: "bytes32" }, { indexed: false, internalType: "bytes", name: "dataValue", type: "bytes" } ], name: "DataChanged", type: "event" }, { anonymous: false, inputs: [ { indexed: false, internalType: "uint8", name: "version", type: "uint8" } ], name: "Initialized", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "previousOwner", type: "address" }, { indexed: true, internalType: "address", name: "newOwner", type: "address" } ], name: "OwnershipTransferred", type: "event" }, { inputs: [ { internalType: "bytes32", name: "dataKey", type: "bytes32" } ], name: "getData", outputs: [ { internalType: "bytes", name: "dataValue", type: "bytes" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "bytes32[]", name: "dataKeys", type: "bytes32[]" } ], name: "getDataBatch", outputs: [ { internalType: "bytes[]", name: "dataValues", type: "bytes[]" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "owner", outputs: [ { internalType: "address", name: "", type: "address" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "renounceOwnership", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "bytes32", name: "dataKey", type: "bytes32" }, { internalType: "bytes", name: "dataValue", type: "bytes" } ], name: "setData", outputs: [], stateMutability: "payable", type: "function" }, { inputs: [ { internalType: "bytes32[]", name: "dataKeys", type: "bytes32[]" }, { internalType: "bytes[]", name: "dataValues", type: "bytes[]" } ], name: "setDataBatch", outputs: [], stateMutability: "payable", type: "function" }, { inputs: [ { internalType: "bytes4", name: "interfaceId", type: "bytes4" } ], name: "supportsInterface", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "newOwner", type: "address" } ], name: "transferOwnership", outputs: [], stateMutability: "nonpayable", type: "function" } ]; class LSP4DigitalAssetMetadataInitAbstract__factory { static createInterface() { return new ethers.Interface(_abi$i); } static connect(address, runner) { return new ethers.Contract( address, _abi$i, runner ); } } __publicField$i(LSP4DigitalAssetMetadataInitAbstract__factory, "abi", _abi$i); var __defProp$h = Object.defineProperty; var __defNormalProp$h = (obj, key, value) => key in obj ? __defProp$h(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$h = (obj, key, value) => { __defNormalProp$h(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$h = [ { inputs: [ { internalType: "address", name: "target_", type: "address" } ], stateMutability: "nonpayable", type: "constructor" }, { inputs: [], name: "BatchExecuteParamsLengthMismatch", type: "error" }, { inputs: [], name: "BatchExecuteRelayCallParamsLengthMismatch", type: "error" }, { inputs: [], name: "CallingKeyManagerNotAllowed", type: "error" }, { inputs: [], name: "DelegateCallDisallowedViaKeyManager", type: "error" }, { inputs: [], name: "ERC725X_ExecuteParametersEmptyArray", type: "error" }, { inputs: [], name: "ERC725X_ExecuteParametersLengthMismatch", type: "error" }, { inputs: [], name: "ERC725Y_DataKeysValuesLengthMismatch", type: "error" }, { inputs: [ { internalType: "bytes32", name: "dataKey", type: "bytes32" }, { internalType: "bytes", name: "dataValue", type: "bytes" } ], name: "InvalidDataValuesForDataKeys", type: "error" }, { inputs: [ { internalType: "bytes4", name: "invalidFunction", type: "bytes4" } ], name: "InvalidERC725Function", type: "error" }, { inputs: [ { internalType: "bytes", name: "allowedCallsValue", type: "bytes" } ], name: "InvalidEncodedAllowedCalls", type: "error" }, { inputs: [ { internalType: "bytes", name: "value", type: "bytes" }, { internalType: "string", name: "context", type: "string" } ], name: "InvalidEncodedAllowedERC725YDataKeys", type: "error" }, { inputs: [], name: "InvalidLSP6Target", type: "error" }, { inputs: [ { internalType: "bytes", name: "payload", type: "bytes" } ], name: "InvalidPayload", type: "error" }, { inputs: [ { internalType: "address", name: "signer", type: "address" }, { internalType: "uint256", name: "invalidNonce", type: "uint256" }, { internalType: "bytes", name: "signature", type: "bytes" } ], name: "InvalidRelayNonce", type: "error" }, { inputs: [ { internalType: "address", name: "from", type: "address" } ], name: "InvalidWhitelistedCall", type: "error" }, { inputs: [], name: "KeyManagerCannotBeSetAsExtensionForLSP20Functions", type: "error" }, { inputs: [ { internalType: "uint256", name: "totalValues", type: "uint256" }, { internalType: "uint256", name: "msgValue", type: "uint256" } ], name: "LSP6BatchExcessiveValueSent", type: "error" }, { inputs: [ { internalType: "uint256", name: "totalValues", type: "uint256" }, { internalType: "uint256", name: "msgValue", type: "uint256" } ], name: "LSP6BatchInsufficientValueSent", type: "error" }, { inputs: [ { internalType: "address", name: "from", type: "address" } ], name: "NoCallsAllowed", type: "error" }, { inputs: [ { internalType: "address", name: "from", type: "address" } ], name: "NoERC725YDataKeysAllowed", type: "error" }, { inputs: [ { internalType: "address", name: "from", type: "address" } ], name: "NoPermissionsSet", type: "error" }, { inputs: [ { internalType: "address", name: "from", type: "address" }, { internalType: "address", name: "to", type: "address" }, { internalType: "bytes4", name: "selector", type: "bytes4" } ], name: "NotAllowedCall", type: "error" }, { inputs: [ { internalType: "address", name: "from", type: "address" }, { internalType: "bytes32", name: "disallowedKey", type: "bytes32" } ], name: "NotAllowedERC725YDataKey", type: "error" }, { inputs: [ { internalType: "address", name: "from", type: "address" }, { internalType: "string", name: "permission", type: "string" } ], name: "NotAuthorised", type: "error" }, { inputs: [ { internalType: "bytes32", name: "dataKey", type: "bytes32" } ], name: "NotRecognisedPermissionKey", type: "error" }, { inputs: [], name: "RelayCallBeforeStartTime", type: "error" }, { inputs: [], name: "RelayCallExpired", type: "error" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "signer", type: "address" }, { indexed: true, internalType: "uint256", name: "value", type: "uint256" }, { indexed: true, internalType: "bytes4", name: "selector", type: "bytes4" } ], name: "PermissionsVerified", type: "event" }, { inputs: [], name: "VERSION", outputs: [ { internalType: "string", name: "", type: "string" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "bytes", name: "payload", type: "bytes" } ], name: "execute", outputs: [ { internalType: "bytes", name: "", type: "bytes" } ], stateMutability: "payable", type: "function" }, { inputs: [ { internalType: "uint256[]", name: "values", type: "uint256[]" }, { internalType: "bytes[]", name: "payloads", type: "bytes[]" } ], name: "executeBatch", outputs: [ { internalType: "bytes[]", name: "", type: "bytes[]" } ], stateMutability: "payable", type: "function" }, { inputs: [ { internalType: "bytes", name: "signature", type: "bytes" }, { internalType: "uint256", name: "nonce", type: "uint256" }, { internalType: "uint256", name: "validityTimestamps", type: "uint256" }, { internalType: "bytes", name: "payload", type: "bytes" } ], name: "executeRelayCall", outputs: [ { internalType: "bytes", name: "", type: "bytes" } ], stateMutability: "payable", type: "function" }, { inputs: [ { internalType: "bytes[]", name: "signatures", type: "bytes[]" }, { internalType: "uint256[]", name: "nonces", type: "uint256[]" }, { internalType: "uint256[]", name: "validityTimestamps", type: "uint256[]" }, { internalType: "uint256[]", name: "values", type: "uint256[]" }, { internalType: "bytes[]", name: "payloads", type: "bytes[]" } ], name: "executeRelayCallBatch", outputs: [ { internalType: "bytes[]", name: "", type: "bytes[]" } ], stateMutability: "payable", type: "function" }, { inputs: [ { internalType: "address", name: "from", type: "address" }, { internalType: "uint128", name: "channelId", type: "uint128" } ], name: "getNonce", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "bytes32", name: "dataHash", type: "bytes32" }, { internalType: "bytes", name: "signature", type: "bytes" } ], name: "isValidSignature", outputs: [ { internalType: "bytes4", name: "returnedStatus", type: "bytes4" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "", type: "address" }, { internalType: "address", name: "targetContract", type: "address" }, { internalType: "address", name: "caller", type: "address" }, { internalType: "uint256", name: "msgValue", type: "uint256" }, { internalType: "bytes", name: "callData", type: "bytes" } ], name: "lsp20VerifyCall", outputs: [ { internalType: "bytes4", name: "", type: "bytes4" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "bytes32", name: "", type: "bytes32" }, { internalType: "bytes", name: "", type: "bytes" } ], name: "lsp20VerifyCallResult", outputs: [ { internalType: "bytes4", name: "", type: "bytes4" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "bytes4", name: "interfaceId", type: "bytes4" } ], name: "supportsInterface", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "target", outputs: [ { internalType: "address", name: "", type: "address" } ], stateMutability: "view", type: "function" } ]; const _bytecode$9 = "0x60806040523480156200001157600080fd5b50604051620041e1380380620041e1833981016040819052620000349162000082565b6001600160a01b0381166200005c5760405163fc85457960e01b815260040160405180910390fd5b600180546001600160a01b0319166001600160a01b0392909216919091179055620000b4565b6000602082840312156200009557600080fd5b81516001600160a01b0381168114620000ad57600080fd5b9392505050565b61411d80620000c46000396000f3fe6080604052600436106100bc5760003560e01c8063b44581d911610074578063d4b839921161004e578063d4b83992146101e3578063de928f141461020b578063ffa1ad741461022b57600080fd5b8063b44581d914610182578063bf0176ff146101b0578063d3fc45d3146101c357600080fd5b80631626ba7e116100a55780631626ba7e146101165780634c8a4e741461014f578063a20856a51461016257600080fd5b806301ffc9a7146100c157806309c5eabe146100f6575b600080fd5b3480156100cd57600080fd5b506100e16100dc3660046133ab565b610274565b60405190151581526020015b60405180910390f35b610109610104366004613417565b610347565b6040516100ed91906134a9565b34801561012257600080fd5b50610136610131366004613581565b61035b565b6040516001600160e01b031990911681526020016100ed565b61010961015d3660046135c8565b6103e4565b61017561017036600461373a565b6103fe565b6040516100ed9190613825565b34801561018e57600080fd5b506101a261019d36600461389c565b610600565b6040519081526020016100ed565b6101756101be3660046138ea565b610652565b3480156101cf57600080fd5b506101366101de366004613581565b6107db565b3480156101ef57600080fd5b506001546040516001600160a01b0390911681526020016100ed565b34801561021757600080fd5b50610136610226366004613956565b610817565b34801561023757600080fd5b506101096040518060400160405280600681526020017f302e31352e30000000000000000000000000000000000000000000000000000081525081565b60006001600160e01b031982167f23f34c620000000000000000000000000000000000000000000000000000000014806102be57506001600160e01b03198216630b135d3f60e11b145b806102f257506001600160e01b031982167f0d6ecac700000000000000000000000000000000000000000000000000000000145b8061032657506001600160e01b031982167f5ac7990800000000000000000000000000000000000000000000000000000000145b8061034157506301ffc9a760e01b6001600160e01b03198316145b92915050565b6060610354348484610981565b9392505050565b600080600061036a8585610ab4565b90925090506000816004811115610383576103836139db565b1461039b57506001600160e01b031991506103419050565b6001546103c09062200000906103ba906001600160a01b031685610af9565b81161490565b6103d2576001600160e01b03196103db565b630b135d3f60e11b5b95945050505050565b60606103f4868686348787610bba565b9695505050505050565b8851606090881415806104115750878614155b8061041c5750858414155b806104275750838214155b1561045e576040517fb4d50d2100000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60008267ffffffffffffffff811115610479576104796134bc565b6040519080825280602002602001820160405280156104ac57816020015b60608152602001906001900390816104975790505b5090506000805b848110156105c657348888838181106104ce576104ce6139f1565b90506020020135836104e09190613a1d565b925082111561051057604051630c28c92b60e21b8152600481018390523460248201526044015b60405180910390fd5b6105a18d8281518110610525576105256139f1565b60200260200101518d8d8481811061053f5761053f6139f1565b905060200201358c8c85818110610558576105586139f1565b905060200201358b8b86818110610571576105716139f1565b905060200201358a8a8781811061058a5761058a6139f1565b905060200281019061059c9190613a30565b610bba565b8382815181106105b3576105b36139f1565b60209081029190910101526001016104b3565b50348110156105f15760405163528c345b60e11b815260048101829052346024820152604401610507565b509a9950505050505050505050565b6001600160a01b0382166000908152602081815260408083206fffffffffffffffffffffffffffffffff85168452909152812054608083901b6fffffffffffffffffffffffffffffffff191617610354565b606083821461068d576040517f55a187db00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60008267ffffffffffffffff8111156106a8576106a86134bc565b6040519080825280602002602001820160405280156106db57816020015b60608152602001906001900390816106c65790505b5090506000805b848110156107a457348888838181106106fd576106fd6139f1565b905060200201358361070f9190613a1d565b925082111561073a57604051630c28c92b60e21b815260048101839052346024820152604401610507565b61077f88888381811061074f5761074f6139f1565b90506020020135878784818110610768576107686139f1565b905060200281019061077a9190613a30565b610981565b838281518110610791576107916139f1565b60209081029190910101526001016106e2565b50348110156107cf5760405163528c345b60e11b815260048101829052346024820152604401610507565b5090505b949350505050565b6001546000906001600160a01b0316330361080857336000908152600260205260409020805460ff191690555b5063d3fc45d360e01b92915050565b600080631fc8da4360e21b61082c8486613a77565b6001600160e01b031916148061085b5750639790242160e01b61084f8486613a77565b6001600160e01b031916145b90506001600160a01b038716330361091a57600061087a888389610db8565b905061088a888860008888610e25565b6108948486613a77565b6001600160e01b03191686886001600160a01b03167fc0a62328f6bf5e3172bb1fcb2019f54b2c523b6a48e3513a2298fbf0150b781e60405160405180910390a481806108de5750805b6108ef5763de928f0160e01b610911565b7fde928f00000000000000000000000000000000000000000000000000000000005b925050506103f4565b6001600160a01b03871660009081526002602052604090205460ff16801561095a5761095a876109536001600160a01b038b1682610af9565b6080611246565b610968888860008888610e25565b81806108de5750806108ef5763de928f0160e01b610911565b606060048210156109a9578282604051630d886ef360e21b8152600401610507929190613aa7565b6000631fc8da4360e21b6109bd8486613a77565b6001600160e01b03191614806109ec5750639790242160e01b6109e08486613a77565b6001600160e01b031916145b6001549091506001600160a01b03166000610a08828433610db8565b9050610a18823360008989610e25565b610a228587613a77565b6001600160e01b03191687336001600160a01b03167fc0a62328f6bf5e3172bb1fcb2019f54b2c523b6a48e3513a2298fbf0150b781e60405160405180910390a46000610a7183898989611256565b905081158015610a7f575083155b15610aa957610aa9836001600160a01b03166000908152600260205260409020805460ff19169055565b979650505050505050565b6000808251604103610aea5760208301516040840151606085015160001a610ade8782858561130e565b94509450505050610af2565b506000905060025b9250929050565b6000806001600160a01b0384166354f6127f610b397f4b80742de2bf82acb36300000000000000000000000000000000000000000000606087901b6113d2565b6040518263ffffffff1660e01b8152600401610b5791815260200190565b600060405180830381865afa158015610b74573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610b9c9190810190613ad6565b90508051602014610bb1575060009050610341565b6107d381613b44565b60606004821015610be2578282604051630d886ef360e21b8152600401610507929190613aa7565b6001546001600160a01b03166000610bfe89898989898961143b565b6001600160a01b03811660009081526020818152604080832060808d901c84529091529020549091506fffffffffffffffffffffffffffffffff891614610c775780888a6040517fc9bd9eb900000000000000000000000000000000000000000000000000000000815260040161050793929190613b6b565b6001600160a01b03811660009081526020818152604080832060808c901c84529091528120805491610ca883613b93565b9190505550610cb687611493565b6000631fc8da4360e21b610cca8688613a77565b6001600160e01b0319161480610cf95750639790242160e01b610ced8688613a77565b6001600160e01b031916145b90506000610d08848385610db8565b9050610d18848460018a8a610e25565b610d228688613a77565b6001600160e01b03191688846001600160a01b03167fc0a62328f6bf5e3172bb1fcb2019f54b2c523b6a48e3513a2298fbf0150b781e60405160405180910390a46000610d71858a8a8a611256565b905081158015610d7f575082155b15610da957610da9856001600160a01b03166000908152600260205260409020805460ff19169055565b9b9a5050505050505050505050565b6001600160a01b03831660009081526002602052604090205460ff168015610df657610df1826109536001600160a01b03871682610af9565b610354565b82610354576001600160a01b0384166000908152600260205260409020805460ff191660011790559392505050565b6000610e3a6001600160a01b03871686610af9565b905080610e7e576040517ff292052a0000000000000000000000000000000000000000000000000000000081526001600160a01b0386166004820152602401610507565b8315610e8e57610e8e8582611548565b6000610e9a8385613a77565b90507f80dc96f4000000000000000000000000000000000000000000000000000000006001600160e01b0319821601610f0257600080610edd8560048189613bac565b810190610eea9190613581565b91509150610efb89898685856115b2565b505061123d565b7f686fdbdf000000000000000000000000000000000000000000000000000000006001600160e01b0319821601610f6157600080610f438560048189613bac565b810190610f509190613bd6565b91509150610efb898986858561162e565b7fbb3fd702000000000000000000000000000000000000000000000000000000006001600160e01b0319821601610fd1576000808080610fa4876004818b613bac565b810190610fb19190613c85565b9350935093509350610fc88b8b88878787876117b1565b5050505061123d565b7fce7a7bae000000000000000000000000000000000000000000000000000000006001600160e01b0319821601611156576000808080611014876004818b613bac565b8101906110219190613d43565b93509350935093508251845114158061103c57508151835114155b8061104957508051825114155b15611080576040517f3ff55f4d00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b83516000036110bb576040517fe9ad2b5f00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60005b845181101561114c5761113a8c8c898885815181106110df576110df6139f1565b60200260200101518886815181106110f9576110f96139f1565b6020026020010151888781518110611113576111136139f1565b602002602001015188888151811061112d5761112d6139f1565b60200260200101516117b1565b8061114481613b93565b9150506110be565b505050505061123d565b6001600160e01b031981167ff2fde38b0000000000000000000000000000000000000000000000000000000014806111b757506001600160e01b031981167f79ba509700000000000000000000000000000000000000000000000000000000145b806111eb57506001600160e01b031981167f715018a600000000000000000000000000000000000000000000000000000000145b156111ff576111fa868361187e565b61123d565b6040517f2ba8851c0000000000000000000000000000000000000000000000000000000081526001600160e01b031982166004820152602401610507565b50505050505050565b6112518383836118b3565b505050565b6060600080866001600160a01b0316865a908787604051611278929190613e41565b600060405180830381858888f193505050503d80600081146112b6576040519150601f19603f3d011682016040523d82523d6000602084013e6112bb565b606091505b5091509150600061130283836040518060400160405280601e81526020017f4c5350363a206661696c656420657865637574696e67207061796c6f616400008152506118e6565b98975050505050505050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a083111561134557506000905060036113c9565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015611399573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b0381166113c2576000600192509250506113c9565b9150600090505b94509492505050565b604080517fffffffffffffffffffff00000000000000000000000000000000000000000000841660208201526000602a82018190526bffffffffffffffffffffffff198416602c830152918291016040516020818303038152906040529050806107d390613b44565b600080601946888888888860405160200161145c9796959493929190613e51565b60408051601f198184030181529190529050600061147a30836118ff565b9050611486818a611932565b9998505050505050505050565b8060000361149e5750565b608081901c81428211156114dd576040517ede4b8a00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b806fffffffffffffffffffffffffffffffff166000036114fc57505050565b806fffffffffffffffffffffffffffffffff16421115611251576040517f5c53a98c00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b62400000808216146115ae5760408051631ded6b7360e11b81526001600160a01b03841660048201526024810191909152601260448201527f455845435554455f52454c41595f43414c4c00000000000000000000000000006064820152608401610507565b5050565b60006115c086858585611956565b90506203ffff19810161160f5762020000808516036115df5750611627565b6115ed858562040000611246565b61160a85846116056001600160a01b038a1683611d0d565b611dad565b611625565b8061161a5750611627565b611625858583611246565b505b5050505050565b8051825114611669576040517f3bcc897900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600080835167ffffffffffffffff811115611686576116866134bc565b6040519080825280602002602001820160405280156116af578160200160208202803683370190505b509050600080805b6116f58a898984815181106116ce576116ce6139f1565b60200260200101518985815181106116e8576116e86139f1565b6020026020010151611956565b91506203ffff19820161170b576001945061174e565b811561171c5761171c898984611246565b6001848281518110611730576117306139f1565b911515602092830291909101909101528261174a81613b93565b9350505b806001019050865181106116b75784156117a5576202000080891603611778575050505050611627565b611786898962040000611246565b6117a5898861179e6001600160a01b038e1683611d0d565b8787611f0d565b50505050505050505050565b306001600160a01b038416036117f3576040517fa431b23600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b83611806576111fa878787868686612151565b60018414806118155750600284145b1561182e5781151561182887878361222d565b5061123d565b60038403611844576111fa8787878686866122b2565b6004840361123d576040517f80d6ebae00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6001808216146115ae57600061189460016122e1565b90508281604051631ded6b7360e11b8152600401610507929190613e87565b80821681146112515760006118c7826122e1565b90508381604051631ded6b7360e11b8152600401610507929190613e87565b606083156118f5575081610354565b61035483836126de565b60008282604051602001611914929190613ea9565b60405160208183030381529060405280519060200120905092915050565b60008060006119418585610ab4565b9150915061194e81612708565b509392505050565b60007f20cf245f92495cf19acab2659b39f67a000000000000000000000000000000006fffffffffffffffffffffffffffffffff198416016119ac576006848116146119a486858584612870565b9150506107d3565b7fb47f8bd21d4100000000000000000000000000000000000000000000000000007fffffffffffff0000000000000000000000000000000000000000000000000000841601611b29576006848116146001600160a01b031984167fb47f8bd21d407d534c9d0000000000000000000000000000000000000000000001611a7a578251602014158015611a3e5750825115155b15611a60578383604051631fa4139760e01b8152600401610507929190613f07565b8015611a705750600090506107d3565b6119a48685612a5a565b7fb47f8bd21d40c6c59b39000000000000000000000000000000000000000000006001600160a01b0319851601611ab7576119a486858584612a90565b7fb47f8bd21d407993d6ef000000000000000000000000000000000000000000006001600160a01b0319851601611af4576119a486858584612afb565b6040517f0f7d735b00000000000000000000000000000000000000000000000000000000815260048101859052602401610507565b7f0cfc51aec37c55a4d0b1a65c6255c4bf2fbdf6277f3cc0730c45b828b6db8b47831480611b8057506001600160a01b031983167f0cfc51aec37c55a4d0b100000000000000000000000000000000000000000000145b15611bdc578151601414158015611b975750815115155b15611bb9578282604051631fa4139760e01b8152600401610507929190613f07565b606080851603611bcb575060006107d3565b611bd58584612b25565b90506107d3565b7f311874bf6b2579feef6a000000000000000000000000000000000000000000006001600160a01b0319841601611d03578151601414158015611c2157508151601514155b8015611c2d5750815115155b15611c4f578282604051631fa4139760e01b8152600401610507929190613f07565b606083901b6001600160e01b031981167fde928f14000000000000000000000000000000000000000000000000000000001480611c9c57506001600160e01b0319811663d3fc45d360e01b145b15611ce55730611cab84613f20565b60601c03611ce5576040517f4a9fa8cf00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b601880861603611cf95750600090506107d3565b6119a48685612bab565b50620400006107d3565b60606001600160a01b0383166354f6127f611d4a7f4b80742de2bf866c29110000000000000000000000000000000000000000000085851b6113d2565b6040518263ffffffff1660e01b8152600401611d6891815260200190565b600060405180830381865afa158015611d85573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526103549190810190613ad6565b8051600003611dda5760405163ed7fa50960e01b81526001600160a01b0384166004820152602401610507565b6000806000805b8451841015611ee257848481518110611dfc57611dfc6139f1565b01602001516001600160f81b03191685611e17866001613a1d565b81518110611e2757611e276139f1565b016020908101516040516001600160f81b031993841692810192909252919091166021820152602201604051602081830303815290604052611e6890613f5c565b60f01c9250821580611e7a5750602083115b15611e9a578460405163ae6cbd3760e01b81526004016105079190613fa8565b611ea5836020613ffa565b611eb090600861400d565b8585016022015160001990911b908116925090508581168203611ed65750505050505050565b92820160020192611de1565b60405163557ae07960e01b81526001600160a01b038816600482015260248101879052604401610507565b8251600003611f3a5760405163ed7fa50960e01b81526001600160a01b0386166004820152602401610507565b835160008080805b87518410156120cb57878481518110611f5d57611f5d6139f1565b01602001516001600160f81b03191688611f78866001613a1d565b81518110611f8857611f886139f1565b016020908101516040516001600160f81b031993841692810192909252919091166021820152602201604051602081830303815290604052611fc990613f5c565b60f01c9250821580611fdb5750602083115b15611ffb578760405163ae6cbd3760e01b81526004016105079190613fa8565b612006836020613ffa565b61201190600861400d565b8885016022015160001990911b9081169250905060005b858110156120be57878181518110612042576120426139f1565b60200260200101511561205757600101612028565b82828b838151811061206b5761206b6139f1565b602002602001015116036120b657600188828151811061208d5761208d6139f1565b91151560209283029190910190910152600180880197879003016120b657505050505050611627565b600101612028565b5092820160020192611f42565b60005b85811015612144578781815181106120e8576120e86139f1565b602002602001015161213c578a8a8281518110612107576121076139f1565b602090810291909101015160405163557ae07960e01b81526001600160a01b0390921660048301526024820152604401610507565b6001016120ce565b5050505050505050505050565b80518215801591610100878116149190159061040080891614908490612175575082155b15612187576121878989610200611246565b818015612192575083155b801561219c575080155b156121ae576121ae8989610800611246565b811580156121ba575080155b156121cc576121cc8989610800611246565b831580156121d75750805b156121e55750505050611625565b8180156121ef5750835b80156121f85750825b156122065750505050611625565b8080156122105750825b1561221e5750505050611625565b6117a58a8a60008a8a8a612c31565b61223b838362010000611246565b6101008281161481801561224d575080155b156122ac5760408051631ded6b7360e11b81526001600160a01b03861660048201526024810191909152601360448201527f53555045525f5452414e5346455256414c5545000000000000000000000000006064820152608401610507565b50505050565b6110008481161480156122c55750611625565b6122d28686612000611246565b61123d87876003878787612c31565b6060600019820161232557505060408051808201909152601181527f5452414e534645524f574e455253484950000000000000000000000000000000602082015290565b600319820161236757505060408051808201909152600f81527f454449545045524d495353494f4e530000000000000000000000000000000000602082015290565b60011982016123a957505060408051808201909152600d81527f414444434f4e54524f4c4c455200000000000000000000000000000000000000602082015290565b60071982016123eb57505060408051808201909152600d81527f414444455854454e53494f4e5300000000000000000000000000000000000000602082015290565b600f19820161242d57505060408051808201909152601081527f4348414e4745455854454e53494f4e5300000000000000000000000000000000602082015290565b601f19820161246f57505060408051808201909152601c81527f414444554e4956455253414c524543454956455244454c454741544500000000602082015290565b603f1982016124b157505060408051808201909152601f81527f4348414e4745554e4956455253414c524543454956455244454c454741544500602082015290565b607f1982016124f357505060408051808201909152600a81527f5245454e5452414e435900000000000000000000000000000000000000000000602082015290565b6203ffff19820161253757505060408051808201909152600781527f5345544441544100000000000000000000000000000000000000000000000000602082015290565b6107ff19820161257a57505060408051808201909152600481527f43414c4c00000000000000000000000000000000000000000000000000000000602082015290565b611fff1982016125bd57505060408051808201909152600a81527f53544154494343414c4c00000000000000000000000000000000000000000000602082015290565b617fff19820161260057505060408051808201909152600c81527f44454c454741544543414c4c0000000000000000000000000000000000000000602082015290565b61ffff19820161264357505060408051808201909152600681527f4445504c4f590000000000000000000000000000000000000000000000000000602082015290565b6101ff19820161268657505060408051808201909152600d81527f5452414e5346455256414c554500000000000000000000000000000000000000602082015290565b621fffff1982016126ca57505060408051808201909152600481527f5349474e00000000000000000000000000000000000000000000000000000000602082015290565b505060408051602081019091526000815290565b8151156126ee5781518083602001fd5b8060405162461bcd60e51b815260040161050791906134a9565b600081600481111561271c5761271c6139db565b036127245750565b6001816004811115612738576127386139db565b036127855760405162461bcd60e51b815260206004820152601860248201527f45434453413a20696e76616c6964207369676e617475726500000000000000006044820152606401610507565b6002816004811115612799576127996139db565b036127e65760405162461bcd60e51b815260206004820152601f60248201527f45434453413a20696e76616c6964207369676e6174757265206c656e677468006044820152606401610507565b60038160048111156127fa576127fa6139db565b0361286d5760405162461bcd60e51b815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202773272076616c60448201527f75650000000000000000000000000000000000000000000000000000000000006064820152608401610507565b50565b60007f20cf245f92495cf19acab2659b39f679e0f76aba35a7394b241ce5a0cc734f1d84016129935782516010141580156128ab5750825115155b156128cd578383604051631fa4139760e01b8152600401610507929190613f07565b81156128db575060006107d3565b60006128e684614024565b60801c9050856001600160a01b03166354f6127f866040518263ffffffff1660e01b815260040161291991815260200190565b600060405180830381865afa158015612936573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261295e9190810190613ad6565b61296790614024565b60801c6fffffffffffffffffffffffffffffffff8216116129895760046119a4565b60029150506107d3565b8251158015906129a557508251601414155b156129c7578383604051631fa4139760e01b8152600401610507929190613f07565b81156129d5575060006107d3565b6040516354f6127f60e01b8152600481018590526001600160a01b038616906354f6127f90602401600060405180830381865afa158015612a1a573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052612a429190810190613ad6565b5115612a4f5760046103db565b600295945050505050565b60006001600160a01b03808316908290612a7690861683610af9565b90508015612a855760046103db565b506002949350505050565b6000612a9b83612e0d565b612aba578260405163187e77ab60e01b815260040161050791906134a9565b8115612ac8575060006107d3565b6001600160a01b0380851690600090612ae390881683610af9565b14612aef5760046103f4565b60029695505050505050565b6000612b0683612f03565b612aba578260405163ae6cbd3760e01b81526004016105079190614061565b6040516354f6127f60e01b8152600481018290526000906001600160a01b038416906354f6127f90602401600060405180830381865afa158015612b6d573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052612b959190810190613ad6565b5115612ba2576040610354565b50602092915050565b6040516354f6127f60e01b8152600481018290526000906001600160a01b038416906354f6127f90602401600060405180830381865afa158015612bf3573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052612c1b9190810190613ad6565b5115612c28576010610354565b50600892915050565b6000612c466001600160a01b03881687612fe9565b90508051600003612c8e576040517f6cb605870000000000000000000000000000000000000000000000000000000081526001600160a01b0387166004820152602401610507565b6000612c9b868585613026565b905060005b8251811015612dab578251612cb6826022613a1d565b1115612cd7578260405163187e77ab60e01b815260040161050791906134a9565b6000612cef84612ce8846002613a1d565b6020613102565b905063ffffffff196020612d0283613b44565b63ffffffff19911b1603612d4d576040517f6fd203c50000000000000000000000000000000000000000000000000000000081526001600160a01b038a166004820152602401610507565b612d57818461322a565b8015612d685750612d688188613251565b8015612d795750612d798188613294565b8015612d8a5750612d8a81866132cc565b15612d985750505050611625565b50612da4602282613a1d565b9050612ca0565b508685612db7856140b3565b6040517f45147bce0000000000000000000000000000000000000000000000000000000081526001600160a01b0393841660048201529290911660248301526001600160e01b0319166044820152606401610507565b6000805b8251811015612ee9578251612e27826001613a1d565b10612e355750600092915050565b6000838281518110612e4957612e496139f1565b01602001516001600160f81b03191684612e64846001613a1d565b81518110612e7457612e746139f1565b016020908101516040516001600160f81b031993841692810192909252919091166021820152602201604051602081830303815290604052612eb590613f5c565b60f01c905060208114612ecc575060009392505050565b612ed7816002613a1d565b612ee19083613a1d565b915050612e11565b82518103612efa5750600192915050565b50600092915050565b6000805b8251811015612ee9578251612f1d826001613a1d565b10612f2b5750600092915050565b6000838281518110612f3f57612f3f6139f1565b01602001516001600160f81b03191684612f5a846001613a1d565b81518110612f6a57612f6a6139f1565b016020908101516040516001600160f81b031993841692810192909252919091166021820152602201604051602081830303815290604052612fab90613f5c565b60f01c9050801580612fbd5750602081115b15612fcc575060009392505050565b612fd7816002613a1d565b612fe19083613a1d565b915050612f07565b60606001600160a01b0383166354f6127f611d4a7f4b80742de2bf393a64c70000000000000000000000000000000000000000000085851b6113d2565b6000821561304e577c0100000000000000000000000000000000000000000000000000000000175b81511580159060009082613060575084155b9050818061306b5750805b156130f9578561309d577c020000000000000000000000000000000000000000000000000000000092909217916130f9565b600386036130cd577c040000000000000000000000000000000000000000000000000000000092909217916130f9565b600486036130f9577c080000000000000000000000000000000000000000000000000000000092909217915b50509392505050565b60608161311081601f613a1d565b101561315e5760405162461bcd60e51b815260206004820152600e60248201527f736c6963655f6f766572666c6f770000000000000000000000000000000000006044820152606401610507565b6131688284613a1d565b845110156131b85760405162461bcd60e51b815260206004820152601160248201527f736c6963655f6f75744f66426f756e64730000000000000000000000000000006044820152606401610507565b6060821580156131d75760405191506000825260208201604052613221565b6040519150601f8416801560200281840101858101878315602002848b0101015b818310156132105780518352602092830192016131f8565b5050858452601f01601f1916604052505b50949350505050565b600080613236846140b3565b83166001600160e01b03199081169084161491505092915050565b600080602061325f85613b44565b901b60601c90506001600160a01b038114806107d35750806001600160a01b0316836001600160a01b03161491505092915050565b60008060c06132a285613b44565b901b90506001600160e01b031980821614806107d357506107d36001600160a01b03841682613326565b60008060e06132da85613b44565b8451911b91506004111560006132ef856140b3565b90506001600160e01b031983811614806103f457508180156103f457506001600160e01b0319818116908416149695505050505050565b604080516001600160e01b03198316602480830191909152825180830390910181526044909101909152602080820180516001600160e01b03166301ffc9a760e01b178152825160009392849283928392918391908a617530fa92503d91506000519050828015613398575060208210155b8015610aa9575015159695505050505050565b6000602082840312156133bd57600080fd5b81356001600160e01b03198116811461035457600080fd5b60008083601f8401126133e757600080fd5b50813567ffffffffffffffff8111156133ff57600080fd5b602083019150836020828501011115610af257600080fd5b6000806020838503121561342a57600080fd5b823567ffffffffffffffff81111561344157600080fd5b61344d858286016133d5565b90969095509350505050565b60005b8381101561347457818101518382015260200161345c565b50506000910152565b60008151808452613495816020860160208601613459565b601f01601f19169290920160200192915050565b602081526000610354602083018461347d565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f1916810167ffffffffffffffff811182821017156134fb576134fb6134bc565b604052919050565b600067ffffffffffffffff82111561351d5761351d6134bc565b50601f01601f191660200190565b600082601f83011261353c57600080fd5b813561354f61354a82613503565b6134d2565b81815284602083860101111561356457600080fd5b816020850160208301376000918101602001919091529392505050565b6000806040838503121561359457600080fd5b82359150602083013567ffffffffffffffff8111156135b257600080fd5b6135be8582860161352b565b9150509250929050565b6000806000806000608086880312156135e057600080fd5b853567ffffffffffffffff808211156135f857600080fd5b61360489838a0161352b565b96506020880135955060408801359450606088013591508082111561362857600080fd5b50613635888289016133d5565b969995985093965092949392505050565b600067ffffffffffffffff821115613660576136606134bc565b5060051b60200190565b600082601f83011261367b57600080fd5b8135602061368b61354a83613646565b82815260059290921b840181019181810190868411156136aa57600080fd5b8286015b848110156136ea57803567ffffffffffffffff8111156136ce5760008081fd5b6136dc8986838b010161352b565b8452509183019183016136ae565b509695505050505050565b60008083601f84011261370757600080fd5b50813567ffffffffffffffff81111561371f57600080fd5b6020830191508360208260051b8501011115610af257600080fd5b600080600080600080600080600060a08a8c03121561375857600080fd5b893567ffffffffffffffff8082111561377057600080fd5b61377c8d838e0161366a565b9a5060208c013591508082111561379257600080fd5b61379e8d838e016136f5565b909a50985060408c01359150808211156137b757600080fd5b6137c38d838e016136f5565b909850965060608c01359150808211156137dc57600080fd5b6137e88d838e016136f5565b909650945060808c013591508082111561380157600080fd5b5061380e8c828d016136f5565b915080935050809150509295985092959850929598565b6000602080830181845280855180835260408601915060408160051b870101925083870160005b8281101561387a57603f1988860301845261386885835161347d565b9450928501929085019060010161384c565b5092979650505050505050565b6001600160a01b038116811461286d57600080fd5b600080604083850312156138af57600080fd5b82356138ba81613887565b915060208301356fffffffffffffffffffffffffffffffff811681146138df57600080fd5b809150509250929050565b6000806000806040858703121561390057600080fd5b843567ffffffffffffffff8082111561391857600080fd5b613924888389016136f5565b9096509450602087013591508082111561393d57600080fd5b5061394a878288016136f5565b95989497509550505050565b60008060008060008060a0878903121561396f57600080fd5b863561397a81613887565b9550602087013561398a81613887565b9450604087013561399a81613887565b935060608701359250608087013567ffffffffffffffff8111156139bd57600080fd5b6139c989828a016133d5565b979a9699509497509295939492505050565b634e487b7160e01b600052602160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b8082018082111561034157610341613a07565b6000808335601e19843603018112613a4757600080fd5b83018035915067ffffffffffffffff821115613a6257600080fd5b602001915036819003821315610af257600080fd5b6001600160e01b03198135818116916004851015613a9f5780818660040360031b1b83161692505b505092915050565b60208152816020820152818360408301376000818301604090810191909152601f909201601f19160101919050565b600060208284031215613ae857600080fd5b815167ffffffffffffffff811115613aff57600080fd5b8201601f81018413613b1057600080fd5b8051613b1e61354a82613503565b818152856020838501011115613b3357600080fd5b6103db826020830160208601613459565b80516020808301519190811015613b65576000198160200360031b1b821691505b50919050565b6001600160a01b03841681528260208201526060604082015260006103db606083018461347d565b600060018201613ba557613ba5613a07565b5060010190565b60008085851115613bbc57600080fd5b83861115613bc957600080fd5b5050820193919092039150565b60008060408385031215613be957600080fd5b823567ffffffffffffffff80821115613c0157600080fd5b818501915085601f830112613c1557600080fd5b81356020613c2561354a83613646565b82815260059290921b84018101918181019089841115613c4457600080fd5b948201945b83861015613c6257853582529482019490820190613c49565b96505086013592505080821115613c7857600080fd5b506135be8582860161366a565b60008060008060808587031215613c9b57600080fd5b843593506020850135613cad81613887565b925060408501359150606085013567ffffffffffffffff811115613cd057600080fd5b613cdc8782880161352b565b91505092959194509250565b600082601f830112613cf957600080fd5b81356020613d0961354a83613646565b82815260059290921b84018101918181019086841115613d2857600080fd5b8286015b848110156136ea5780358352918301918301613d2c565b60008060008060808587031215613d5957600080fd5b843567ffffffffffffffff80821115613d7157600080fd5b613d7d88838901613ce8565b9550602091508187013581811115613d9457600080fd5b8701601f81018913613da557600080fd5b8035613db361354a82613646565b81815260059190911b8201840190848101908b831115613dd257600080fd5b928501925b82841015613df9578335613dea81613887565b82529285019290850190613dd7565b97505050506040870135915080821115613e1257600080fd5b613e1e88838901613ce8565b93506060870135915080821115613e3457600080fd5b50613cdc8782880161366a565b8183823760009101908152919050565b878152866020820152856040820152846060820152836080820152818360a08301376000910160a0019081529695505050505050565b6001600160a01b03831681526040602082015260006107d3604083018461347d565b7f190000000000000000000000000000000000000000000000000000000000000081526bffffffffffffffffffffffff198360601b16600282015260008251613ef9816016850160208701613459565b919091016016019392505050565b8281526040602082015260006107d3604083018461347d565b805160208201516bffffffffffffffffffffffff198082169291906014831015613f545780818460140360031b1b83161693505b505050919050565b6000815160208301517fffff00000000000000000000000000000000000000000000000000000000000080821693506002831015613f545760029290920360031b82901b161692915050565b604081526000613fbb604083018461347d565b8281036020840152601c81527f636f756c646e2774204445434f44452066726f6d2073746f726167650000000060208201526040810191505092915050565b8181038181111561034157610341613a07565b808202811582820484141761034157610341613a07565b6000815160208301516fffffffffffffffffffffffffffffffff1980821693506010831015613f545760109290920360031b82901b161692915050565b604081526000614074604083018461347d565b8281036020840152602081527f636f756c646e27742056414c49444154452074686520646174612076616c756560208201526040810191505092915050565b6000815160208301516001600160e01b031980821693506004831015613f545760049290920360031b82901b16169291505056fea2646970667358221220633c28f60f0e0053b8bb8cf8673bca90bfc83568dcc66789c5c2e677db17f15864736f6c63430008110033"; const isSuperArgs$9 = (xs) => xs.length > 1; class LSP6KeyManager__factory extends ethers.ContractFactory { constructor(...args) { if (isSuperArgs$9(args)) { super(...args); } else { super(_abi$h, _bytecode$9, args[0]); } } getDeployTransaction(target_, overrides) { return super.getDeployTransaction(target_, overrides || {}); } deploy(target_, overrides) { return super.deploy(target_, overrides || {}); } connect(runner) { return super.connect(runner); } static createInterface() { return new ethers.Interface(_abi$h); } static connect(address, runner) { return new ethers.Contract(address, _abi$h, runner); } } __publicField$h(LSP6KeyManager__factory, "bytecode", _bytecode$9); __publicField$h(LSP6KeyManager__factory, "abi", _abi$h); var __defProp$g = Object.defineProperty; var __defNormalProp$g = (obj, key, value) => key in obj ? __defProp$g(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$g = (obj, key, value) => { __defNormalProp$g(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$g = [ { inputs: [], stateMutability: "nonpayable", type: "constructor" }, { inputs: [], name: "BatchExecuteParamsLengthMismatch", type: "error" }, { inputs: [], name: "BatchExecuteRelayCallParamsLengthMismatch", type: "error" }, { inputs: [], name: "CallingKeyManagerNotAllowed", type: "error" }, { inputs: [], name: "DelegateCallDisallowedViaKeyManager", type: "error" }, { inputs: [], name: "ERC725X_ExecuteParametersEmptyArray", type: "error" }, { inputs: [], name: "ERC725X_ExecuteParametersLengthMismatch", type: "error" }, { inputs: [], name: "ERC725Y_DataKeysValuesLengthMismatch", type: "error" }, { inputs: [ { internalType: "bytes32", name: "dataKey", type: "bytes32" }, { internalType: "bytes", name: "dataValue", type: "bytes" } ], name: "InvalidDataValuesForDataKeys", type: "error" }, { inputs: [ { internalType: "bytes4", name: "invalidFunction", type: "bytes4" } ], name: "InvalidERC725Function", type: "error" }, { inputs: [ { internalType: "bytes", name: "allowedCallsValue", type: "bytes" } ], name: "InvalidEncodedAllowedCalls", type: "error" }, { inputs: [ { internalType: "bytes", name: "value", type: "bytes" }, { internalType: "string", name: "context", type: "string" } ], name: "InvalidEncodedAllowedERC725YDataKeys", type: "error" }, { inputs: [], name: "InvalidLSP6Target", type: "error" }, { inputs: [ { internalType: "bytes", name: "payload", type: "bytes" } ], name: "InvalidPayload", type: "error" }, { inputs: [ { internalType: "address", name: "signer", type: "address" }, { internalType: "uint256", name: "invalidNonce", type: "uint256" }, { internalType: "bytes", name: "signature", type: "bytes" } ], name: "InvalidRelayNonce", type: "error" }, { inputs: [ { internalType: "address", name: "from", type: "address" } ], name: "InvalidWhitelistedCall", type: "error" }, { inputs: [], name: "KeyManagerCannotBeSetAsExtensionForLSP20Functions", type: "error" }, { inputs: [ { internalType: "uint256", name: "totalValues", type: "uint256" }, { internalType: "uint256", name: "msgValue", type: "uint256" } ], name: "LSP6BatchExcessiveValueSent", type: "error" }, { inputs: [ { internalType: "uint256", name: "totalValues", type: "uint256" }, { internalType: "uint256", name: "msgValue", type: "uint256" } ], name: "LSP6BatchInsufficientValueSent", type: "error" }, { inputs: [ { internalType: "address", name: "from", type: "address" } ], name: "NoCallsAllowed", type: "error" }, { inputs: [ { internalType: "address", name: "from", type: "address" } ], name: "NoERC725YDataKeysAllowed", type: "error" }, { inputs: [ { internalType: "address", name: "from", type: "address" } ], name: "NoPermissionsSet", type: "error" }, { inputs: [ { internalType: "address", name: "from", type: "address" }, { internalType: "address", name: "to", type: "address" }, { internalType: "bytes4", name: "selector", type: "bytes4" } ], name: "NotAllowedCall", type: "error" }, { inputs: [ { internalType: "address", name: "from", type: "address" }, { internalType: "bytes32", name: "disallowedKey", type: "bytes32" } ], name: "NotAllowedERC725YDataKey", type: "error" }, { inputs: [ { internalType: "address", name: "from", type: "address" }, { internalType: "string", name: "permission", type: "string" } ], name: "NotAuthorised", type: "error" }, { inputs: [ { internalType: "bytes32", name: "dataKey", type: "bytes32" } ], name: "NotRecognisedPermissionKey", type: "error" }, { inputs: [], name: "RelayCallBeforeStartTime", type: "error" }, { inputs: [], name: "RelayCallExpired", type: "error" }, { anonymous: false, inputs: [ { indexed: false, internalType: "uint8", name: "version", type: "uint8" } ], name: "Initialized", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "signer", type: "address" }, { indexed: true, internalType: "uint256", name: "value", type: "uint256" }, { indexed: true, internalType: "bytes4", name: "selector", type: "bytes4" } ], name: "PermissionsVerified", type: "event" }, { inputs: [], name: "VERSION", outputs: [ { internalType: "string", name: "", type: "string" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "bytes", name: "payload", type: "bytes" } ], name: "execute", outputs: [ { internalType: "bytes", name: "", type: "bytes" } ], stateMutability: "payable", type: "function" }, { inputs: [ { internalType: "uint256[]", name: "values", type: "uint256[]" }, { internalType: "bytes[]", name: "payloads", type: "bytes[]" } ], name: "executeBatch", outputs: [ { internalType: "bytes[]", name: "", type: "bytes[]" } ], stateMutability: "payable", type: "function" }, { inputs: [ { internalType: "bytes", name: "signature", type: "bytes" }, { internalType: "uint256", name: "nonce", type: "uint256" }, { internalType: "uint256", name: "validityTimestamps", type: "uint256" }, { internalType: "bytes", name: "payload", type: "bytes" } ], name: "executeRelayCall", outputs: [ { internalType: "bytes", name: "", type: "bytes" } ], stateMutability: "payable", type: "function" }, { inputs: [ { internalType: "bytes[]", name: "signatures", type: "bytes[]" }, { internalType: "uint256[]", name: "nonces", type: "uint256[]" }, { internalType: "uint256[]", name: "validityTimestamps", type: "uint256[]" }, { internalType: "uint256[]", name: "values", type: "uint256[]" }, { internalType: "bytes[]", name: "payloads", type: "bytes[]" } ], name: "executeRelayCallBatch", outputs: [ { internalType: "bytes[]", name: "", type: "bytes[]" } ], stateMutability: "payable", type: "function" }, { inputs: [ { internalType: "address", name: "from", type: "address" }, { internalType: "uint128", name: "channelId", type: "uint128" } ], name: "getNonce", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "target_", type: "address" } ], name: "initialize", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "bytes32", name: "dataHash", type: "bytes32" }, { internalType: "bytes", name: "signature", type: "bytes" } ], name: "isValidSignature", outputs: [ { internalType: "bytes4", name: "returnedStatus", type: "bytes4" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "", type: "address" }, { internalType: "address", name: "targetContract", type: "address" }, { internalType: "address", name: "caller", type: "address" }, { internalType: "uint256", name: "msgValue", type: "uint256" }, { internalType: "bytes", name: "callData", type: "bytes" } ], name: "lsp20VerifyCall", outputs: [ { internalType: "bytes4", name: "", type: "bytes4" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "bytes32", name: "", type: "bytes32" }, { internalType: "bytes", name: "", type: "bytes" } ], name: "lsp20VerifyCallResult", outputs: [ { internalType: "bytes4", name: "", type: "bytes4" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "bytes4", name: "interfaceId", type: "bytes4" } ], name: "supportsInterface", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "target", outputs: [ { internalType: "address", name: "", type: "address" } ], stateMutability: "view", type: "function" } ]; const _bytecode$8 = "0x60806040523480156200001157600080fd5b506200001c62000022565b620000e3565b600054610100900460ff16156200008f5760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b60005460ff90811614620000e1576000805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b61436a80620000f36000396000f3fe6080604052600436106100c75760003560e01c8063bf0176ff11610074578063d4b839921161004e578063d4b8399214610210578063de928f1414610238578063ffa1ad741461025857600080fd5b8063bf0176ff146101bb578063c4d66de8146101ce578063d3fc45d3146101f057600080fd5b80634c8a4e74116100a55780634c8a4e741461015a578063a20856a51461016d578063b44581d91461018d57600080fd5b806301ffc9a7146100cc57806309c5eabe146101015780631626ba7e14610121575b600080fd5b3480156100d857600080fd5b506100ec6100e73660046135db565b6102a1565b60405190151581526020015b60405180910390f35b61011461010f366004613647565b610374565b6040516100f891906136d9565b34801561012d57600080fd5b5061014161013c3660046137b1565b610388565b6040516001600160e01b031990911681526020016100f8565b6101146101683660046137f8565b610411565b61018061017b36600461396a565b61042b565b6040516100f89190613a55565b34801561019957600080fd5b506101ad6101a8366004613acc565b61062d565b6040519081526020016100f8565b6101806101c9366004613b1a565b610681565b3480156101da57600080fd5b506101ee6101e9366004613b86565b61080a565b005b3480156101fc57600080fd5b5061014161020b3660046137b1565b61092c565b34801561021c57600080fd5b506002546040516001600160a01b0390911681526020016100f8565b34801561024457600080fd5b50610141610253366004613ba3565b610968565b34801561026457600080fd5b506101146040518060400160405280600681526020017f302e31352e30000000000000000000000000000000000000000000000000000081525081565b60006001600160e01b031982167f23f34c620000000000000000000000000000000000000000000000000000000014806102eb57506001600160e01b03198216630b135d3f60e11b145b8061031f57506001600160e01b031982167f0d6ecac700000000000000000000000000000000000000000000000000000000145b8061035357506001600160e01b031982167f5ac7990800000000000000000000000000000000000000000000000000000000145b8061036e57506301ffc9a760e01b6001600160e01b03198316145b92915050565b6060610381348484610ad2565b9392505050565b60008060006103978585610c05565b909250905060008160048111156103b0576103b0613c28565b146103c857506001600160e01b0319915061036e9050565b6002546103ed9062200000906103e7906001600160a01b031685610c4a565b81161490565b6103ff576001600160e01b0319610408565b630b135d3f60e11b5b95945050505050565b6060610421868686348787610d0b565b9695505050505050565b88516060908814158061043e5750878614155b806104495750858414155b806104545750838214155b1561048b576040517fb4d50d2100000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60008267ffffffffffffffff8111156104a6576104a66136ec565b6040519080825280602002602001820160405280156104d957816020015b60608152602001906001900390816104c45790505b5090506000805b848110156105f357348888838181106104fb576104fb613c3e565b905060200201358361050d9190613c6a565b925082111561053d57604051630c28c92b60e21b8152600481018390523460248201526044015b60405180910390fd5b6105ce8d828151811061055257610552613c3e565b60200260200101518d8d8481811061056c5761056c613c3e565b905060200201358c8c8581811061058557610585613c3e565b905060200201358b8b8681811061059e5761059e613c3e565b905060200201358a8a878181106105b7576105b7613c3e565b90506020028101906105c99190613c7d565b610d0b565b8382815181106105e0576105e0613c3e565b60209081029190910101526001016104e0565b503481101561061e5760405163528c345b60e11b815260048101829052346024820152604401610534565b509a9950505050505050505050565b6001600160a01b03821660009081526001602090815260408083206fffffffffffffffffffffffffffffffff85168452909152812054608083901b6fffffffffffffffffffffffffffffffff191617610381565b60608382146106bc576040517f55a187db00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60008267ffffffffffffffff8111156106d7576106d76136ec565b60405190808252806020026020018201604052801561070a57816020015b60608152602001906001900390816106f55790505b5090506000805b848110156107d3573488888381811061072c5761072c613c3e565b905060200201358361073e9190613c6a565b925082111561076957604051630c28c92b60e21b815260048101839052346024820152604401610534565b6107ae88888381811061077e5761077e613c3e565b9050602002013587878481811061079757610797613c3e565b90506020028101906107a99190613c7d565b610ad2565b8382815181106107c0576107c0613c3e565b6020908102919091010152600101610711565b50348110156107fe5760405163528c345b60e11b815260048101829052346024820152604401610534565b5090505b949350505050565b600054610100900460ff161580801561082a5750600054600160ff909116105b806108445750303b158015610844575060005460ff166001145b6108b65760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a65640000000000000000000000000000000000006064820152608401610534565b6000805460ff1916600117905580156108d9576000805461ff0019166101001790555b6108e282610f0d565b8015610928576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b5050565b6002546000906001600160a01b0316330361095957336000908152600360205260409020805460ff191690555b5063d3fc45d360e01b92915050565b600080631fc8da4360e21b61097d8486613cc4565b6001600160e01b03191614806109ac5750639790242160e01b6109a08486613cc4565b6001600160e01b031916145b90506001600160a01b0387163303610a6b5760006109cb888389610fec565b90506109db888860008888611059565b6109e58486613cc4565b6001600160e01b03191686886001600160a01b03167fc0a62328f6bf5e3172bb1fcb2019f54b2c523b6a48e3513a2298fbf0150b781e60405160405180910390a48180610a2f5750805b610a405763de928f0160e01b610a62565b7fde928f00000000000000000000000000000000000000000000000000000000005b92505050610421565b6001600160a01b03871660009081526003602052604090205460ff168015610aab57610aab87610aa46001600160a01b038b1682610c4a565b608061147a565b610ab9888860008888611059565b8180610a2f575080610a405763de928f0160e01b610a62565b60606004821015610afa578282604051630d886ef360e21b8152600401610534929190613cf4565b6000631fc8da4360e21b610b0e8486613cc4565b6001600160e01b0319161480610b3d5750639790242160e01b610b318486613cc4565b6001600160e01b031916145b6002549091506001600160a01b03166000610b59828433610fec565b9050610b69823360008989611059565b610b738587613cc4565b6001600160e01b03191687336001600160a01b03167fc0a62328f6bf5e3172bb1fcb2019f54b2c523b6a48e3513a2298fbf0150b781e60405160405180910390a46000610bc28389898961148a565b905081158015610bd0575083155b15610bfa57610bfa836001600160a01b03166000908152600360205260409020805460ff19169055565b979650505050505050565b6000808251604103610c3b5760208301516040840151606085015160001a610c2f87828585611542565b94509450505050610c43565b506000905060025b9250929050565b6000806001600160a01b0384166354f6127f610c8a7f4b80742de2bf82acb36300000000000000000000000000000000000000000000606087901b611606565b6040518263ffffffff1660e01b8152600401610ca891815260200190565b600060405180830381865afa158015610cc5573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610ced9190810190613d23565b90508051602014610d0257506000905061036e565b61080281613d91565b60606004821015610d33578282604051630d886ef360e21b8152600401610534929190613cf4565b6002546001600160a01b03166000610d4f89898989898961166f565b6001600160a01b038116600090815260016020908152604080832060808d901c84529091529020549091506fffffffffffffffffffffffffffffffff891614610dca5780888a6040517fc9bd9eb900000000000000000000000000000000000000000000000000000000815260040161053493929190613db8565b6001600160a01b038116600090815260016020908152604080832060808c901c84529091528120805491610dfd83613de0565b9190505550610e0b876116c7565b6000631fc8da4360e21b610e1f8688613cc4565b6001600160e01b0319161480610e4e5750639790242160e01b610e428688613cc4565b6001600160e01b031916145b90506000610e5d848385610fec565b9050610e6d848460018a8a611059565b610e778688613cc4565b6001600160e01b03191688846001600160a01b03167fc0a62328f6bf5e3172bb1fcb2019f54b2c523b6a48e3513a2298fbf0150b781e60405160405180910390a46000610ec6858a8a8a61148a565b905081158015610ed4575082155b15610efe57610efe856001600160a01b03166000908152600360205260409020805460ff19169055565b9b9a5050505050505050505050565b600054610100900460ff16610f8a5760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610534565b6001600160a01b038116610fca576040517ffc85457900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600280546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b03831660009081526003602052604090205460ff16801561102a5761102582610aa46001600160a01b03871682610c4a565b610381565b82610381576001600160a01b0384166000908152600360205260409020805460ff191660011790559392505050565b600061106e6001600160a01b03871686610c4a565b9050806110b2576040517ff292052a0000000000000000000000000000000000000000000000000000000081526001600160a01b0386166004820152602401610534565b83156110c2576110c2858261177c565b60006110ce8385613cc4565b90507f80dc96f4000000000000000000000000000000000000000000000000000000006001600160e01b0319821601611136576000806111118560048189613df9565b81019061111e91906137b1565b9150915061112f89898685856117e2565b5050611471565b7f686fdbdf000000000000000000000000000000000000000000000000000000006001600160e01b0319821601611195576000806111778560048189613df9565b8101906111849190613e23565b9150915061112f898986858561185e565b7fbb3fd702000000000000000000000000000000000000000000000000000000006001600160e01b03198216016112055760008080806111d8876004818b613df9565b8101906111e59190613ed2565b93509350935093506111fc8b8b88878787876119e1565b50505050611471565b7fce7a7bae000000000000000000000000000000000000000000000000000000006001600160e01b031982160161138a576000808080611248876004818b613df9565b8101906112559190613f90565b93509350935093508251845114158061127057508151835114155b8061127d57508051825114155b156112b4576040517f3ff55f4d00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b83516000036112ef576040517fe9ad2b5f00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60005b84518110156113805761136e8c8c8988858151811061131357611313613c3e565b602002602001015188868151811061132d5761132d613c3e565b602002602001015188878151811061134757611347613c3e565b602002602001015188888151811061136157611361613c3e565b60200260200101516119e1565b8061137881613de0565b9150506112f2565b5050505050611471565b6001600160e01b031981167ff2fde38b0000000000000000000000000000000000000000000000000000000014806113eb57506001600160e01b031981167f79ba509700000000000000000000000000000000000000000000000000000000145b8061141f57506001600160e01b031981167f715018a600000000000000000000000000000000000000000000000000000000145b156114335761142e8683611aae565b611471565b6040517f2ba8851c0000000000000000000000000000000000000000000000000000000081526001600160e01b031982166004820152602401610534565b50505050505050565b611485838383611ae3565b505050565b6060600080866001600160a01b0316865a9087876040516114ac92919061408e565b600060405180830381858888f193505050503d80600081146114ea576040519150601f19603f3d011682016040523d82523d6000602084013e6114ef565b606091505b5091509150600061153683836040518060400160405280601e81526020017f4c5350363a206661696c656420657865637574696e67207061796c6f61640000815250611b16565b98975050505050505050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a083111561157957506000905060036115fd565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa1580156115cd573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b0381166115f6576000600192509250506115fd565b9150600090505b94509492505050565b604080517fffffffffffffffffffff00000000000000000000000000000000000000000000841660208201526000602a82018190526bffffffffffffffffffffffff198416602c8301529182910160405160208183030381529060405290508061080290613d91565b6000806019468888888888604051602001611690979695949392919061409e565b60408051601f19818403018152919052905060006116ae3083611b2f565b90506116ba818a611b62565b9998505050505050505050565b806000036116d25750565b608081901c8142821115611711576040517ede4b8a00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b806fffffffffffffffffffffffffffffffff1660000361173057505050565b806fffffffffffffffffffffffffffffffff16421115611485576040517f5c53a98c00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b62400000808216146109285760408051631ded6b7360e11b81526001600160a01b03841660048201526024810191909152601260448201527f455845435554455f52454c41595f43414c4c00000000000000000000000000006064820152608401610534565b60006117f086858585611b86565b90506203ffff19810161183f57620200008085160361180f5750611857565b61181d85856204000061147a565b61183a85846118356001600160a01b038a1683611f3d565b611fdd565b611855565b8061184a5750611857565b61185585858361147a565b505b5050505050565b8051825114611899576040517f3bcc897900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600080835167ffffffffffffffff8111156118b6576118b66136ec565b6040519080825280602002602001820160405280156118df578160200160208202803683370190505b509050600080805b6119258a898984815181106118fe576118fe613c3e565b602002602001015189858151811061191857611918613c3e565b6020026020010151611b86565b91506203ffff19820161193b576001945061197e565b811561194c5761194c89898461147a565b600184828151811061196057611960613c3e565b911515602092830291909101909101528261197a81613de0565b9350505b806001019050865181106118e75784156119d55762020000808916036119a8575050505050611857565b6119b689896204000061147a565b6119d589886119ce6001600160a01b038e1683611f3d565b878761213d565b50505050505050505050565b306001600160a01b03841603611a23576040517fa431b23600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b83611a365761142e878787868686612381565b6001841480611a455750600284145b15611a5e57811515611a5887878361245d565b50611471565b60038403611a745761142e8787878686866124e2565b60048403611471576040517f80d6ebae00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600180821614610928576000611ac46001612511565b90508281604051631ded6b7360e11b81526004016105349291906140d4565b8082168114611485576000611af782612511565b90508381604051631ded6b7360e11b81526004016105349291906140d4565b60608315611b25575081610381565b610381838361290e565b60008282604051602001611b449291906140f6565b60405160208183030381529060405280519060200120905092915050565b6000806000611b718585610c05565b91509150611b7e81612938565b509392505050565b60007f20cf245f92495cf19acab2659b39f67a000000000000000000000000000000006fffffffffffffffffffffffffffffffff19841601611bdc57600684811614611bd486858584612aa0565b915050610802565b7fb47f8bd21d4100000000000000000000000000000000000000000000000000007fffffffffffff0000000000000000000000000000000000000000000000000000841601611d59576006848116146001600160a01b031984167fb47f8bd21d407d534c9d0000000000000000000000000000000000000000000001611caa578251602014158015611c6e5750825115155b15611c90578383604051631fa4139760e01b8152600401610534929190614154565b8015611ca0575060009050610802565b611bd48685612c8a565b7fb47f8bd21d40c6c59b39000000000000000000000000000000000000000000006001600160a01b0319851601611ce757611bd486858584612cc0565b7fb47f8bd21d407993d6ef000000000000000000000000000000000000000000006001600160a01b0319851601611d2457611bd486858584612d2b565b6040517f0f7d735b00000000000000000000000000000000000000000000000000000000815260048101859052602401610534565b7f0cfc51aec37c55a4d0b1a65c6255c4bf2fbdf6277f3cc0730c45b828b6db8b47831480611db057506001600160a01b031983167f0cfc51aec37c55a4d0b100000000000000000000000000000000000000000000145b15611e0c578151601414158015611dc75750815115155b15611de9578282604051631fa4139760e01b8152600401610534929190614154565b606080851603611dfb57506000610802565b611e058584612d55565b9050610802565b7f311874bf6b2579feef6a000000000000000000000000000000000000000000006001600160a01b0319841601611f33578151601414158015611e5157508151601514155b8015611e5d5750815115155b15611e7f578282604051631fa4139760e01b8152600401610534929190614154565b606083901b6001600160e01b031981167fde928f14000000000000000000000000000000000000000000000000000000001480611ecc57506001600160e01b0319811663d3fc45d360e01b145b15611f155730611edb8461416d565b60601c03611f15576040517f4a9fa8cf00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b601880861603611f29575060009050610802565b611bd48685612ddb565b5062040000610802565b60606001600160a01b0383166354f6127f611f7a7f4b80742de2bf866c29110000000000000000000000000000000000000000000085851b611606565b6040518263ffffffff1660e01b8152600401611f9891815260200190565b600060405180830381865afa158015611fb5573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526103819190810190613d23565b805160000361200a5760405163ed7fa50960e01b81526001600160a01b0384166004820152602401610534565b6000806000805b84518410156121125784848151811061202c5761202c613c3e565b01602001516001600160f81b03191685612047866001613c6a565b8151811061205757612057613c3e565b016020908101516040516001600160f81b031993841692810192909252919091166021820152602201604051602081830303815290604052612098906141a9565b60f01c92508215806120aa5750602083115b156120ca578460405163ae6cbd3760e01b815260040161053491906141f5565b6120d5836020614247565b6120e090600861425a565b8585016022015160001990911b9081169250905085811682036121065750505050505050565b92820160020192612011565b60405163557ae07960e01b81526001600160a01b038816600482015260248101879052604401610534565b825160000361216a5760405163ed7fa50960e01b81526001600160a01b0386166004820152602401610534565b835160008080805b87518410156122fb5787848151811061218d5761218d613c3e565b01602001516001600160f81b031916886121a8866001613c6a565b815181106121b8576121b8613c3e565b016020908101516040516001600160f81b0319938416928101929092529190911660218201526022016040516020818303038152906040526121f9906141a9565b60f01c925082158061220b5750602083115b1561222b578760405163ae6cbd3760e01b815260040161053491906141f5565b612236836020614247565b61224190600861425a565b8885016022015160001990911b9081169250905060005b858110156122ee5787818151811061227257612272613c3e565b60200260200101511561228757600101612258565b82828b838151811061229b5761229b613c3e565b602002602001015116036122e65760018882815181106122bd576122bd613c3e565b91151560209283029190910190910152600180880197879003016122e657505050505050611857565b600101612258565b5092820160020192612172565b60005b858110156123745787818151811061231857612318613c3e565b602002602001015161236c578a8a828151811061233757612337613c3e565b602090810291909101015160405163557ae07960e01b81526001600160a01b0390921660048301526024820152604401610534565b6001016122fe565b5050505050505050505050565b805182158015916101008781161491901590610400808916149084906123a5575082155b156123b7576123b7898961020061147a565b8180156123c2575083155b80156123cc575080155b156123de576123de898961080061147a565b811580156123ea575080155b156123fc576123fc898961080061147a565b831580156124075750805b156124155750505050611855565b81801561241f5750835b80156124285750825b156124365750505050611855565b8080156124405750825b1561244e5750505050611855565b6119d58a8a60008a8a8a612e61565b61246b83836201000061147a565b6101008281161481801561247d575080155b156124dc5760408051631ded6b7360e11b81526001600160a01b03861660048201526024810191909152601360448201527f53555045525f5452414e5346455256414c5545000000000000000000000000006064820152608401610534565b50505050565b6110008481161480156124f55750611855565b612502868661200061147a565b61147187876003878787612e61565b6060600019820161255557505060408051808201909152601181527f5452414e534645524f574e455253484950000000000000000000000000000000602082015290565b600319820161259757505060408051808201909152600f81527f454449545045524d495353494f4e530000000000000000000000000000000000602082015290565b60011982016125d957505060408051808201909152600d81527f414444434f4e54524f4c4c455200000000000000000000000000000000000000602082015290565b600719820161261b57505060408051808201909152600d81527f414444455854454e53494f4e5300000000000000000000000000000000000000602082015290565b600f19820161265d57505060408051808201909152601081527f4348414e4745455854454e53494f4e5300000000000000000000000000000000602082015290565b601f19820161269f57505060408051808201909152601c81527f414444554e4956455253414c524543454956455244454c454741544500000000602082015290565b603f1982016126e157505060408051808201909152601f81527f4348414e4745554e4956455253414c524543454956455244454c454741544500602082015290565b607f19820161272357505060408051808201909152600a81527f5245454e5452414e435900000000000000000000000000000000000000000000602082015290565b6203ffff19820161276757505060408051808201909152600781527f5345544441544100000000000000000000000000000000000000000000000000602082015290565b6107ff1982016127aa57505060408051808201909152600481527f43414c4c00000000000000000000000000000000000000000000000000000000602082015290565b611fff1982016127ed57505060408051808201909152600a81527f53544154494343414c4c00000000000000000000000000000000000000000000602082015290565b617fff19820161283057505060408051808201909152600c81527f44454c454741544543414c4c0000000000000000000000000000000000000000602082015290565b61ffff19820161287357505060408051808201909152600681527f4445504c4f590000000000000000000000000000000000000000000000000000602082015290565b6101ff1982016128b657505060408051808201909152600d81527f5452414e5346455256414c554500000000000000000000000000000000000000602082015290565b621fffff1982016128fa57505060408051808201909152600481527f5349474e00000000000000000000000000000000000000000000000000000000602082015290565b505060408051602081019091526000815290565b81511561291e5781518083602001fd5b8060405162461bcd60e51b815260040161053491906136d9565b600081600481111561294c5761294c613c28565b036129545750565b600181600481111561296857612968613c28565b036129b55760405162461bcd60e51b815260206004820152601860248201527f45434453413a20696e76616c6964207369676e617475726500000000000000006044820152606401610534565b60028160048111156129c9576129c9613c28565b03612a165760405162461bcd60e51b815260206004820152601f60248201527f45434453413a20696e76616c6964207369676e6174757265206c656e677468006044820152606401610534565b6003816004811115612a2a57612a2a613c28565b03612a9d5760405162461bcd60e51b815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202773272076616c60448201527f75650000000000000000000000000000000000000000000000000000000000006064820152608401610534565b50565b60007f20cf245f92495cf19acab2659b39f679e0f76aba35a7394b241ce5a0cc734f1d8401612bc3578251601014158015612adb5750825115155b15612afd578383604051631fa4139760e01b8152600401610534929190614154565b8115612b0b57506000610802565b6000612b1684614271565b60801c9050856001600160a01b03166354f6127f866040518263ffffffff1660e01b8152600401612b4991815260200190565b600060405180830381865afa158015612b66573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052612b8e9190810190613d23565b612b9790614271565b60801c6fffffffffffffffffffffffffffffffff821611612bb9576004611bd4565b6002915050610802565b825115801590612bd557508251601414155b15612bf7578383604051631fa4139760e01b8152600401610534929190614154565b8115612c0557506000610802565b6040516354f6127f60e01b8152600481018590526001600160a01b038616906354f6127f90602401600060405180830381865afa158015612c4a573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052612c729190810190613d23565b5115612c7f576004610408565b600295945050505050565b60006001600160a01b03808316908290612ca690861683610c4a565b90508015612cb5576004610408565b506002949350505050565b6000612ccb8361303d565b612cea578260405163187e77ab60e01b815260040161053491906136d9565b8115612cf857506000610802565b6001600160a01b0380851690600090612d1390881683610c4a565b14612d1f576004610421565b60029695505050505050565b6000612d3683613133565b612cea578260405163ae6cbd3760e01b815260040161053491906142ae565b6040516354f6127f60e01b8152600481018290526000906001600160a01b038416906354f6127f90602401600060405180830381865afa158015612d9d573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052612dc59190810190613d23565b5115612dd2576040610381565b50602092915050565b6040516354f6127f60e01b8152600481018290526000906001600160a01b038416906354f6127f90602401600060405180830381865afa158015612e23573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052612e4b9190810190613d23565b5115612e58576010610381565b50600892915050565b6000612e766001600160a01b03881687613219565b90508051600003612ebe576040517f6cb605870000000000000000000000000000000000000000000000000000000081526001600160a01b0387166004820152602401610534565b6000612ecb868585613256565b905060005b8251811015612fdb578251612ee6826022613c6a565b1115612f07578260405163187e77ab60e01b815260040161053491906136d9565b6000612f1f84612f18846002613c6a565b6020613332565b905063ffffffff196020612f3283613d91565b63ffffffff19911b1603612f7d576040517f6fd203c50000000000000000000000000000000000000000000000000000000081526001600160a01b038a166004820152602401610534565b612f87818461345a565b8015612f985750612f988188613481565b8015612fa95750612fa981886134c4565b8015612fba5750612fba81866134fc565b15612fc85750505050611855565b50612fd4602282613c6a565b9050612ed0565b508685612fe785614300565b6040517f45147bce0000000000000000000000000000000000000000000000000000000081526001600160a01b0393841660048201529290911660248301526001600160e01b0319166044820152606401610534565b6000805b8251811015613119578251613057826001613c6a565b106130655750600092915050565b600083828151811061307957613079613c3e565b01602001516001600160f81b03191684613094846001613c6a565b815181106130a4576130a4613c3e565b016020908101516040516001600160f81b0319938416928101929092529190911660218201526022016040516020818303038152906040526130e5906141a9565b60f01c9050602081146130fc575060009392505050565b613107816002613c6a565b6131119083613c6a565b915050613041565b8251810361312a5750600192915050565b50600092915050565b6000805b825181101561311957825161314d826001613c6a565b1061315b5750600092915050565b600083828151811061316f5761316f613c3e565b01602001516001600160f81b0319168461318a846001613c6a565b8151811061319a5761319a613c3e565b016020908101516040516001600160f81b0319938416928101929092529190911660218201526022016040516020818303038152906040526131db906141a9565b60f01c90508015806131ed5750602081115b156131fc575060009392505050565b613207816002613c6a565b6132119083613c6a565b915050613137565b60606001600160a01b0383166354f6127f611f7a7f4b80742de2bf393a64c70000000000000000000000000000000000000000000085851b611606565b6000821561327e577c0100000000000000000000000000000000000000000000000000000000175b81511580159060009082613290575084155b9050818061329b5750805b1561332957856132cd577c02000000000000000000000000000000000000000000000000000000009290921791613329565b600386036132fd577c04000000000000000000000000000000000000000000000000000000009290921791613329565b60048603613329577c080000000000000000000000000000000000000000000000000000000092909217915b50509392505050565b60608161334081601f613c6a565b101561338e5760405162461bcd60e51b815260206004820152600e60248201527f736c6963655f6f766572666c6f770000000000000000000000000000000000006044820152606401610534565b6133988284613c6a565b845110156133e85760405162461bcd60e51b815260206004820152601160248201527f736c6963655f6f75744f66426f756e64730000000000000000000000000000006044820152606401610534565b6060821580156134075760405191506000825260208201604052613451565b6040519150601f8416801560200281840101858101878315602002848b0101015b81831015613440578051835260209283019201613428565b5050858452601f01601f1916604052505b50949350505050565b60008061346684614300565b83166001600160e01b03199081169084161491505092915050565b600080602061348f85613d91565b901b60601c90506001600160a01b038114806108025750806001600160a01b0316836001600160a01b03161491505092915050565b60008060c06134d285613d91565b901b90506001600160e01b0319808216148061080257506108026001600160a01b03841682613556565b60008060e061350a85613d91565b8451911b915060041115600061351f85614300565b90506001600160e01b03198381161480610421575081801561042157506001600160e01b0319818116908416149695505050505050565b604080516001600160e01b03198316602480830191909152825180830390910181526044909101909152602080820180516001600160e01b03166301ffc9a760e01b178152825160009392849283928392918391908a617530fa92503d915060005190508280156135c8575060208210155b8015610bfa575015159695505050505050565b6000602082840312156135ed57600080fd5b81356001600160e01b03198116811461038157600080fd5b60008083601f84011261361757600080fd5b50813567ffffffffffffffff81111561362f57600080fd5b602083019150836020828501011115610c4357600080fd5b6000806020838503121561365a57600080fd5b823567ffffffffffffffff81111561367157600080fd5b61367d85828601613605565b90969095509350505050565b60005b838110156136a457818101518382015260200161368c565b50506000910152565b600081518084526136c5816020860160208601613689565b601f01601f19169290920160200192915050565b60208152600061038160208301846136ad565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f1916810167ffffffffffffffff8111828210171561372b5761372b6136ec565b604052919050565b600067ffffffffffffffff82111561374d5761374d6136ec565b50601f01601f191660200190565b600082601f83011261376c57600080fd5b813561377f61377a82613733565b613702565b81815284602083860101111561379457600080fd5b816020850160208301376000918101602001919091529392505050565b600080604083850312156137c457600080fd5b82359150602083013567ffffffffffffffff8111156137e257600080fd5b6137ee8582860161375b565b9150509250929050565b60008060008060006080868803121561381057600080fd5b853567ffffffffffffffff8082111561382857600080fd5b61383489838a0161375b565b96506020880135955060408801359450606088013591508082111561385857600080fd5b5061386588828901613605565b969995985093965092949392505050565b600067ffffffffffffffff821115613890576138906136ec565b5060051b60200190565b600082601f8301126138ab57600080fd5b813560206138bb61377a83613876565b82815260059290921b840181019181810190868411156138da57600080fd5b8286015b8481101561391a57803567ffffffffffffffff8111156138fe5760008081fd5b61390c8986838b010161375b565b8452509183019183016138de565b509695505050505050565b60008083601f84011261393757600080fd5b50813567ffffffffffffffff81111561394f57600080fd5b6020830191508360208260051b8501011115610c4357600080fd5b600080600080600080600080600060a08a8c03121561398857600080fd5b893567ffffffffffffffff808211156139a057600080fd5b6139ac8d838e0161389a565b9a5060208c01359150808211156139c257600080fd5b6139ce8d838e01613925565b909a50985060408c01359150808211156139e757600080fd5b6139f38d838e01613925565b909850965060608c0135915080821115613a0c57600080fd5b613a188d838e01613925565b909650945060808c0135915080821115613a3157600080fd5b50613a3e8c828d01613925565b915080935050809150509295985092959850929598565b6000602080830181845280855180835260408601915060408160051b870101925083870160005b82811015613aaa57603f19888603018452613a988583516136ad565b94509285019290850190600101613a7c565b5092979650505050505050565b6001600160a01b0381168114612a9d57600080fd5b60008060408385031215613adf57600080fd5b8235613aea81613ab7565b915060208301356fffffffffffffffffffffffffffffffff81168114613b0f57600080fd5b809150509250929050565b60008060008060408587031215613b3057600080fd5b843567ffffffffffffffff80821115613b4857600080fd5b613b5488838901613925565b90965094506020870135915080821115613b6d57600080fd5b50613b7a87828801613925565b95989497509550505050565b600060208284031215613b9857600080fd5b813561038181613ab7565b60008060008060008060a08789031215613bbc57600080fd5b8635613bc781613ab7565b95506020870135613bd781613ab7565b94506040870135613be781613ab7565b935060608701359250608087013567ffffffffffffffff811115613c0a57600080fd5b613c1689828a01613605565b979a9699509497509295939492505050565b634e487b7160e01b600052602160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b8082018082111561036e5761036e613c54565b6000808335601e19843603018112613c9457600080fd5b83018035915067ffffffffffffffff821115613caf57600080fd5b602001915036819003821315610c4357600080fd5b6001600160e01b03198135818116916004851015613cec5780818660040360031b1b83161692505b505092915050565b60208152816020820152818360408301376000818301604090810191909152601f909201601f19160101919050565b600060208284031215613d3557600080fd5b815167ffffffffffffffff811115613d4c57600080fd5b8201601f81018413613d5d57600080fd5b8051613d6b61377a82613733565b818152856020838501011115613d8057600080fd5b610408826020830160208601613689565b80516020808301519190811015613db2576000198160200360031b1b821691505b50919050565b6001600160a01b038416815282602082015260606040820152600061040860608301846136ad565b600060018201613df257613df2613c54565b5060010190565b60008085851115613e0957600080fd5b83861115613e1657600080fd5b5050820193919092039150565b60008060408385031215613e3657600080fd5b823567ffffffffffffffff80821115613e4e57600080fd5b818501915085601f830112613e6257600080fd5b81356020613e7261377a83613876565b82815260059290921b84018101918181019089841115613e9157600080fd5b948201945b83861015613eaf57853582529482019490820190613e96565b96505086013592505080821115613ec557600080fd5b506137ee8582860161389a565b60008060008060808587031215613ee857600080fd5b843593506020850135613efa81613ab7565b925060408501359150606085013567ffffffffffffffff811115613f1d57600080fd5b613f298782880161375b565b91505092959194509250565b600082601f830112613f4657600080fd5b81356020613f5661377a83613876565b82815260059290921b84018101918181019086841115613f7557600080fd5b8286015b8481101561391a5780358352918301918301613f79565b60008060008060808587031215613fa657600080fd5b843567ffffffffffffffff80821115613fbe57600080fd5b613fca88838901613f35565b9550602091508187013581811115613fe157600080fd5b8701601f81018913613ff257600080fd5b803561400061377a82613876565b81815260059190911b8201840190848101908b83111561401f57600080fd5b928501925b8284101561404657833561403781613ab7565b82529285019290850190614024565b9750505050604087013591508082111561405f57600080fd5b61406b88838901613f35565b9350606087013591508082111561408157600080fd5b50613f298782880161389a565b8183823760009101908152919050565b878152866020820152856040820152846060820152836080820152818360a08301376000910160a0019081529695505050505050565b6001600160a01b038316815260406020820152600061080260408301846136ad565b7f190000000000000000000000000000000000000000000000000000000000000081526bffffffffffffffffffffffff198360601b16600282015260008251614146816016850160208701613689565b919091016016019392505050565b82815260406020820152600061080260408301846136ad565b805160208201516bffffffffffffffffffffffff1980821692919060148310156141a15780818460140360031b1b83161693505b505050919050565b6000815160208301517fffff000000000000000000000000000000000000000000000000000000000000808216935060028310156141a15760029290920360031b82901b161692915050565b60408152600061420860408301846136ad565b8281036020840152601c81527f636f756c646e2774204445434f44452066726f6d2073746f726167650000000060208201526040810191505092915050565b8181038181111561036e5761036e613c54565b808202811582820484141761036e5761036e613c54565b6000815160208301516fffffffffffffffffffffffffffffffff19808216935060108310156141a15760109290920360031b82901b161692915050565b6040815260006142c160408301846136ad565b8281036020840152602081527f636f756c646e27742056414c49444154452074686520646174612076616c756560208201526040810191505092915050565b6000815160208301516001600160e01b0319808216935060048310156141a15760049290920360031b82901b16169291505056fea2646970667358221220b1326f0a970afaa3b30344489b8c7b7732f976ed4aabfe0199e3d6973aa9c2ff64736f6c63430008110033"; const isSuperArgs$8 = (xs) => xs.length > 1; class LSP6KeyManagerInit__factory extends ethers.ContractFactory { constructor(...args) { if (isSuperArgs$8(args)) { super(...args); } else { super(_abi$g, _bytecode$8, args[0]); } } getDeployTransaction(overrides) { return super.getDeployTransaction(overrides || {}); } deploy(overrides) { return super.deploy(overrides || {}); } connect(runner) { return super.connect(runner); } static createInterface() { return new ethers.Interface(_abi$g); } static connect(address, runner) { return new ethers.Contract(address, _abi$g, runner); } } __publicField$g(LSP6KeyManagerInit__factory, "bytecode", _bytecode$8); __publicField$g(LSP6KeyManagerInit__factory, "abi", _abi$g); var __defProp$f = Object.defineProperty; var __defNormalProp$f = (obj, key, value) => key in obj ? __defProp$f(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$f = (obj, key, value) => { __defNormalProp$f(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$f = [ { inputs: [], name: "ERC725Y_DataKeysValuesEmptyArray", type: "error" }, { inputs: [], name: "ERC725Y_DataKeysValuesLengthMismatch", type: "error" }, { inputs: [], name: "ERC725Y_MsgValueDisallowed", type: "error" }, { inputs: [ { internalType: "bytes", name: "storedData", type: "bytes" } ], name: "InvalidExtensionAddress", type: "error" }, { inputs: [ { internalType: "bytes", name: "data", type: "bytes" } ], name: "InvalidFunctionSelector", type: "error" }, { inputs: [], name: "LSP4TokenNameNotEditable", type: "error" }, { inputs: [], name: "LSP4TokenSymbolNotEditable", type: "error" }, { inputs: [], name: "LSP4TokenTypeNotEditable", type: "error" }, { inputs: [ { internalType: "address", name: "tokenOwner", type: "address" }, { internalType: "uint256", name: "authorizedAmount", type: "uint256" }, { internalType: "address", name: "operator", type: "address" }, { internalType: "uint256", name: "amount", type: "uint256" } ], name: "LSP7AmountExceedsAuthorizedAmount", type: "error" }, { inputs: [ { internalType: "uint256", name: "balance", type: "uint256" }, { internalType: "address", name: "tokenOwner", type: "address" }, { internalType: "uint256", name: "amount", type: "uint256" } ], name: "LSP7AmountExceedsBalance", type: "error" }, { inputs: [ { internalType: "uint256", name: "callIndex", type: "uint256" } ], name: "LSP7BatchCallFailed", type: "error" }, { inputs: [], name: "LSP7CannotSendWithAddressZero", type: "error" }, { inputs: [], name: "LSP7CannotUseAddressZeroAsOperator", type: "error" }, { inputs: [], name: "LSP7CappedSupplyCannotMintOverCap", type: "error" }, { inputs: [], name: "LSP7CappedSupplyRequired", type: "error" }, { inputs: [ { internalType: "address", name: "caller", type: "address" }, { internalType: "address", name: "tokenOwner", type: "address" }, { internalType: "address", name: "operator", type: "address" } ], name: "LSP7DecreaseAllowanceNotAuthorized", type: "error" }, { inputs: [], name: "LSP7DecreasedAllowanceBelowZero", type: "error" }, { inputs: [], name: "LSP7InvalidTransferBatch", type: "error" }, { inputs: [ { internalType: "address", name: "tokenReceiver", type: "address" } ], name: "LSP7NotifyTokenReceiverContractMissingLSP1Interface", type: "error" }, { inputs: [ { internalType: "address", name: "tokenReceiver", type: "address" } ], name: "LSP7NotifyTokenReceiverIsEOA", type: "error" }, { inputs: [ { internalType: "address", name: "caller", type: "address" }, { internalType: "address", name: "tokenOwner", type: "address" }, { internalType: "address", name: "operator", type: "address" } ], name: "LSP7RevokeOperatorNotAuthorized", type: "error" }, { inputs: [], name: "LSP7TokenContractCannotHoldValue", type: "error" }, { inputs: [], name: "LSP7TokenOwnerCannotBeOperator", type: "error" }, { inputs: [ { internalType: "bytes4", name: "functionSelector", type: "bytes4" } ], name: "NoExtensionFoundForFunctionSelector", type: "error" }, { inputs: [ { internalType: "address", name: "operator", type: "address" } ], name: "OperatorAllowanceCannotBeIncreasedFromZero", type: "error" }, { inputs: [ { internalType: "address", name: "callerAddress", type: "address" } ], name: "OwnableCallerNotTheOwner", type: "error" }, { inputs: [], name: "OwnableCannotSetZeroAddressAsOwner", type: "error" }, { anonymous: false, inputs: [ { indexed: true, internalType: "bytes32", name: "dataKey", type: "bytes32" }, { indexed: false, internalType: "bytes", name: "dataValue", type: "bytes" } ], name: "DataChanged", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "operator", type: "address" }, { indexed: true, internalType: "address", name: "tokenOwner", type: "address" }, { indexed: true, internalType: "uint256", name: "amount", type: "uint256" }, { indexed: false, internalType: "bytes", name: "operatorNotificationData", type: "bytes" } ], name: "OperatorAuthorizationChanged", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "operator", type: "address" }, { indexed: true, internalType: "address", name: "tokenOwner", type: "address" }, { indexed: true, internalType: "bool", name: "notified", type: "bool" }, { indexed: false, internalType: "bytes", name: "operatorNotificationData", type: "bytes" } ], name: "OperatorRevoked", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "previousOwner", type: "address" }, { indexed: true, internalType: "address", name: "newOwner", type: "address" } ], name: "OwnershipTransferred", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "operator", type: "address" }, { indexed: true, internalType: "address", name: "from", type: "address" }, { indexed: true, internalType: "address", name: "to", type: "address" }, { indexed: false, internalType: "uint256", name: "amount", type: "uint256" }, { indexed: false, internalType: "bool", name: "force", type: "bool" }, { indexed: false, internalType: "bytes", name: "data", type: "bytes" } ], name: "Transfer", type: "event" }, { stateMutability: "payable", type: "fallback" }, { inputs: [ { internalType: "address", name: "operator", type: "address" }, { internalType: "uint256", name: "amount", type: "uint256" }, { internalType: "bytes", name: "operatorNotificationData", type: "bytes" } ], name: "authorizeOperator", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "operator", type: "address" }, { internalType: "address", name: "tokenOwner", type: "address" } ], name: "authorizedAmountFor", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "tokenOwner", type: "address" } ], name: "balanceOf", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "bytes[]", name: "data", type: "bytes[]" } ], name: "batchCalls", outputs: [ { internalType: "bytes[]", name: "results", type: "bytes[]" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [], name: "decimals", outputs: [ { internalType: "uint8", name: "", type: "uint8" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "operator", type: "address" }, { internalType: "address", name: "tokenOwner", type: "address" }, { internalType: "uint256", name: "subtractedAmount", type: "uint256" }, { internalType: "bytes", name: "operatorNotificationData", type: "bytes" } ], name: "decreaseAllowance", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "bytes32", name: "dataKey", type: "bytes32" } ], name: "getData", outputs: [ { internalType: "bytes", name: "dataValue", type: "bytes" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "bytes32[]", name: "dataKeys", type: "bytes32[]" } ], name: "getDataBatch", outputs: [ { internalType: "bytes[]", name: "dataValues", type: "bytes[]" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "tokenOwner", type: "address" } ], name: "getOperatorsOf", outputs: [ { internalType: "address[]", name: "", type: "address[]" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "operator", type: "address" }, { internalType: "uint256", name: "addedAmount", type: "uint256" }, { internalType: "bytes", name: "operatorNotificationData", type: "bytes" } ], name: "increaseAllowance", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [], name: "owner", outputs: [ { internalType: "address", name: "", type: "address" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "renounceOwnership", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "operator", type: "address" }, { internalType: "address", name: "tokenOwner", type: "address" }, { internalType: "bool", name: "notify", type: "bool" }, { internalType: "bytes", name: "operatorNotificationData", type: "bytes" } ], name: "revokeOperator", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "bytes32", name: "dataKey", type: "bytes32" }, { internalType: "bytes", name: "dataValue", type: "bytes" } ], name: "setData", outputs: [], stateMutability: "payable", type: "function" }, { inputs: [ { internalType: "bytes32[]", name: "dataKeys", type: "bytes32[]" }, { internalType: "bytes[]", name: "dataValues", type: "bytes[]" } ], name: "setDataBatch", outputs: [], stateMutability: "payable", type: "function" }, { inputs: [ { internalType: "bytes4", name: "interfaceId", type: "bytes4" } ], name: "supportsInterface", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "tokenSupplyCap", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "totalSupply", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "from", type: "address" }, { internalType: "address", name: "to", type: "address" }, { internalType: "uint256", name: "amount", type: "uint256" }, { internalType: "bool", name: "force", type: "bool" }, { internalType: "bytes", name: "data", type: "bytes" } ], name: "transfer", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address[]", name: "from", type: "address[]" }, { internalType: "address[]", name: "to", type: "address[]" }, { internalType: "uint256[]", name: "amount", type: "uint256[]" }, { internalType: "bool[]", name: "force", type: "bool[]" }, { internalType: "bytes[]", name: "data", type: "bytes[]" } ], name: "transferBatch", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "newOwner", type: "address" } ], name: "transferOwnership", outputs: [], stateMutability: "nonpayable", type: "function" }, { stateMutability: "payable", type: "receive" } ]; class LSP7CappedSupply__factory { static createInterface() { return new ethers.Interface(_abi$f); } static connect(address, runner) { return new ethers.Contract(address, _abi$f, runner); } } __publicField$f(LSP7CappedSupply__factory, "abi", _abi$f); var __defProp$e = Object.defineProperty; var __defNormalProp$e = (obj, key, value) => key in obj ? __defProp$e(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$e = (obj, key, value) => { __defNormalProp$e(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$e = [ { inputs: [], name: "ERC725Y_DataKeysValuesEmptyArray", type: "error" }, { inputs: [], name: "ERC725Y_DataKeysValuesLengthMismatch", type: "error" }, { inputs: [], name: "ERC725Y_MsgValueDisallowed", type: "error" }, { inputs: [ { internalType: "bytes", name: "storedData", type: "bytes" } ], name: "InvalidExtensionAddress", type: "error" }, { inputs: [ { internalType: "bytes", name: "data", type: "bytes" } ], name: "InvalidFunctionSelector", type: "error" }, { inputs: [], name: "LSP4TokenNameNotEditable", type: "error" }, { inputs: [], name: "LSP4TokenSymbolNotEditable", type: "error" }, { inputs: [], name: "LSP4TokenTypeNotEditable", type: "error" }, { inputs: [ { internalType: "address", name: "tokenOwner", type: "address" }, { internalType: "uint256", name: "authorizedAmount", type: "uint256" }, { internalType: "address", name: "operator", type: "address" }, { internalType: "uint256", name: "amount", type: "uint256" } ], name: "LSP7AmountExceedsAuthorizedAmount", type: "error" }, { inputs: [ { internalType: "uint256", name: "balance", type: "uint256" }, { internalType: "address", name: "tokenOwner", type: "address" }, { internalType: "uint256", name: "amount", type: "uint256" } ], name: "LSP7AmountExceedsBalance", type: "error" }, { inputs: [ { internalType: "uint256", name: "callIndex", type: "uint256" } ], name: "LSP7BatchCallFailed", type: "error" }, { inputs: [], name: "LSP7CannotSendWithAddressZero", type: "error" }, { inputs: [], name: "LSP7CannotUseAddressZeroAsOperator", type: "error" }, { inputs: [], name: "LSP7CappedSupplyCannotMintOverCap", type: "error" }, { inputs: [], name: "LSP7CappedSupplyRequired", type: "error" }, { inputs: [ { internalType: "address", name: "caller", type: "address" }, { internalType: "address", name: "tokenOwner", type: "address" }, { internalType: "address", name: "operator", type: "address" } ], name: "LSP7DecreaseAllowanceNotAuthorized", type: "error" }, { inputs: [], name: "LSP7DecreasedAllowanceBelowZero", type: "error" }, { inputs: [], name: "LSP7InvalidTransferBatch", type: "error" }, { inputs: [ { internalType: "address", name: "tokenReceiver", type: "address" } ], name: "LSP7NotifyTokenReceiverContractMissingLSP1Interface", type: "error" }, { inputs: [ { internalType: "address", name: "tokenReceiver", type: "address" } ], name: "LSP7NotifyTokenReceiverIsEOA", type: "error" }, { inputs: [ { internalType: "address", name: "caller", type: "address" }, { internalType: "address", name: "tokenOwner", type: "address" }, { internalType: "address", name: "operator", type: "address" } ], name: "LSP7RevokeOperatorNotAuthorized", type: "error" }, { inputs: [], name: "LSP7TokenContractCannotHoldValue", type: "error" }, { inputs: [], name: "LSP7TokenOwnerCannotBeOperator", type: "error" }, { inputs: [ { internalType: "bytes4", name: "functionSelector", type: "bytes4" } ], name: "NoExtensionFoundForFunctionSelector", type: "error" }, { inputs: [ { internalType: "address", name: "operator", type: "address" } ], name: "OperatorAllowanceCannotBeIncreasedFromZero", type: "error" }, { inputs: [ { internalType: "address", name: "callerAddress", type: "address" } ], name: "OwnableCallerNotTheOwner", type: "error" }, { inputs: [], name: "OwnableCannotSetZeroAddressAsOwner", type: "error" }, { anonymous: false, inputs: [ { indexed: true, internalType: "bytes32", name: "dataKey", type: "bytes32" }, { indexed: false, internalType: "bytes", name: "dataValue", type: "bytes" } ], name: "DataChanged", type: "event" }, { anonymous: false, inputs: [ { indexed: false, internalType: "uint8", name: "version", type: "uint8" } ], name: "Initialized", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "operator", type: "address" }, { indexed: true, internalType: "address", name: "tokenOwner", type: "address" }, { indexed: true, internalType: "uint256", name: "amount", type: "uint256" }, { indexed: false, internalType: "bytes", name: "operatorNotificationData", type: "bytes" } ], name: "OperatorAuthorizationChanged", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "operator", type: "address" }, { indexed: true, internalType: "address", name: "tokenOwner", type: "address" }, { indexed: true, internalType: "bool", name: "notified", type: "bool" }, { indexed: false, internalType: "bytes", name: "operatorNotificationData", type: "bytes" } ], name: "OperatorRevoked", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "previousOwner", type: "address" }, { indexed: true, internalType: "address", name: "newOwner", type: "address" } ], name: "OwnershipTransferred", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "operator", type: "address" }, { indexed: true, internalType: "address", name: "from", type: "address" }, { indexed: true, internalType: "address", name: "to", type: "address" }, { indexed: false, internalType: "uint256", name: "amount", type: "uint256" }, { indexed: false, internalType: "bool", name: "force", type: "bool" }, { indexed: false, internalType: "bytes", name: "data", type: "bytes" } ], name: "Transfer", type: "event" }, { stateMutability: "payable", type: "fallback" }, { inputs: [ { internalType: "address", name: "operator", type: "address" }, { internalType: "uint256", name: "amount", type: "uint256" }, { internalType: "bytes", name: "operatorNotificationData", type: "bytes" } ], name: "authorizeOperator", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "operator", type: "address" }, { internalType: "address", name: "tokenOwner", type: "address" } ], name: "authorizedAmountFor", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "tokenOwner", type: "address" } ], name: "balanceOf", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "bytes[]", name: "data", type: "bytes[]" } ], name: "batchCalls", outputs: [ { internalType: "bytes[]", name: "results", type: "bytes[]" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [], name: "decimals", outputs: [ { internalType: "uint8", name: "", type: "uint8" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "operator", type: "address" }, { internalType: "address", name: "tokenOwner", type: "address" }, { internalType: "uint256", name: "subtractedAmount", type: "uint256" }, { internalType: "bytes", name: "operatorNotificationData", type: "bytes" } ], name: "decreaseAllowance", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "bytes32", name: "dataKey", type: "bytes32" } ], name: "getData", outputs: [ { internalType: "bytes", name: "dataValue", type: "bytes" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "bytes32[]", name: "dataKeys", type: "bytes32[]" } ], name: "getDataBatch", outputs: [ { internalType: "bytes[]", name: "dataValues", type: "bytes[]" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "tokenOwner", type: "address" } ], name: "getOperatorsOf", outputs: [ { internalType: "address[]", name: "", type: "address[]" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "operator", type: "address" }, { internalType: "uint256", name: "addedAmount", type: "uint256" }, { internalType: "bytes", name: "operatorNotificationData", type: "bytes" } ], name: "increaseAllowance", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [], name: "owner", outputs: [ { internalType: "address", name: "", type: "address" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "renounceOwnership", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "operator", type: "address" }, { internalType: "address", name: "tokenOwner", type: "address" }, { internalType: "bool", name: "notify", type: "bool" }, { internalType: "bytes", name: "operatorNotificationData", type: "bytes" } ], name: "revokeOperator", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "bytes32", name: "dataKey", type: "bytes32" }, { internalType: "bytes", name: "dataValue", type: "bytes" } ], name: "setData", outputs: [], stateMutability: "payable", type: "function" }, { inputs: [ { internalType: "bytes32[]", name: "dataKeys", type: "bytes32[]" }, { internalType: "bytes[]", name: "dataValues", type: "bytes[]" } ], name: "setDataBatch", outputs: [], stateMutability: "payable", type: "function" }, { inputs: [ { internalType: "bytes4", name: "interfaceId", type: "bytes4" } ], name: "supportsInterface", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "tokenSupplyCap", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "totalSupply", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "from", type: "address" }, { internalType: "address", name: "to", type: "address" }, { internalType: "uint256", name: "amount", type: "uint256" }, { internalType: "bool", name: "force", type: "bool" }, { internalType: "bytes", name: "data", type: "bytes" } ], name: "transfer", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address[]", name: "from", type: "address[]" }, { internalType: "address[]", name: "to", type: "address[]" }, { internalType: "uint256[]", name: "amount", type: "uint256[]" }, { internalType: "bool[]", name: "force", type: "bool[]" }, { internalType: "bytes[]", name: "data", type: "bytes[]" } ], name: "transferBatch", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "newOwner", type: "address" } ], name: "transferOwnership", outputs: [], stateMutability: "nonpayable", type: "function" }, { stateMutability: "payable", type: "receive" } ]; class LSP7CappedSupplyInitAbstract__factory { static createInterface() { return new ethers.Interface(_abi$e); } static connect(address, runner) { return new ethers.Contract( address, _abi$e, runner ); } } __publicField$e(LSP7CappedSupplyInitAbstract__factory, "abi", _abi$e); var __defProp$d = Object.defineProperty; var __defNormalProp$d = (obj, key, value) => key in obj ? __defProp$d(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$d = (obj, key, value) => { __defNormalProp$d(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$d = [ { inputs: [], name: "ERC725Y_DataKeysValuesEmptyArray", type: "error" }, { inputs: [], name: "ERC725Y_DataKeysValuesLengthMismatch", type: "error" }, { inputs: [], name: "ERC725Y_MsgValueDisallowed", type: "error" }, { inputs: [ { internalType: "bytes", name: "storedData", type: "bytes" } ], name: "InvalidExtensionAddress", type: "error" }, { inputs: [ { internalType: "bytes", name: "data", type: "bytes" } ], name: "InvalidFunctionSelector", type: "error" }, { inputs: [], name: "LSP4TokenNameNotEditable", type: "error" }, { inputs: [], name: "LSP4TokenSymbolNotEditable", type: "error" }, { inputs: [], name: "LSP4TokenTypeNotEditable", type: "error" }, { inputs: [ { internalType: "address", name: "tokenOwner", type: "address" }, { internalType: "uint256", name: "authorizedAmount", type: "uint256" }, { internalType: "address", name: "operator", type: "address" }, { internalType: "uint256", name: "amount", type: "uint256" } ], name: "LSP7AmountExceedsAuthorizedAmount", type: "error" }, { inputs: [ { internalType: "uint256", name: "balance", type: "uint256" }, { internalType: "address", name: "tokenOwner", type: "address" }, { internalType: "uint256", name: "amount", type: "uint256" } ], name: "LSP7AmountExceedsBalance", type: "error" }, { inputs: [ { internalType: "uint256", name: "callIndex", type: "uint256" } ], name: "LSP7BatchCallFailed", type: "error" }, { inputs: [], name: "LSP7CannotSendWithAddressZero", type: "error" }, { inputs: [], name: "LSP7CannotUseAddressZeroAsOperator", type: "error" }, { inputs: [ { internalType: "address", name: "caller", type: "address" }, { internalType: "address", name: "tokenOwner", type: "address" }, { internalType: "address", name: "operator", type: "address" } ], name: "LSP7DecreaseAllowanceNotAuthorized", type: "error" }, { inputs: [], name: "LSP7DecreasedAllowanceBelowZero", type: "error" }, { inputs: [], name: "LSP7InvalidTransferBatch", type: "error" }, { inputs: [ { internalType: "address", name: "tokenReceiver", type: "address" } ], name: "LSP7NotifyTokenReceiverContractMissingLSP1Interface", type: "error" }, { inputs: [ { internalType: "address", name: "tokenReceiver", type: "address" } ], name: "LSP7NotifyTokenReceiverIsEOA", type: "error" }, { inputs: [ { internalType: "address", name: "caller", type: "address" }, { internalType: "address", name: "tokenOwner", type: "address" }, { internalType: "address", name: "operator", type: "address" } ], name: "LSP7RevokeOperatorNotAuthorized", type: "error" }, { inputs: [], name: "LSP7TokenContractCannotHoldValue", type: "error" }, { inputs: [], name: "LSP7TokenOwnerCannotBeOperator", type: "error" }, { inputs: [ { internalType: "bytes4", name: "functionSelector", type: "bytes4" } ], name: "NoExtensionFoundForFunctionSelector", type: "error" }, { inputs: [ { internalType: "address", name: "operator", type: "address" } ], name: "OperatorAllowanceCannotBeIncreasedFromZero", type: "error" }, { inputs: [ { internalType: "address", name: "callerAddress", type: "address" } ], name: "OwnableCallerNotTheOwner", type: "error" }, { inputs: [], name: "OwnableCannotSetZeroAddressAsOwner", type: "error" }, { anonymous: false, inputs: [ { indexed: true, internalType: "bytes32", name: "dataKey", type: "bytes32" }, { indexed: false, internalType: "bytes", name: "dataValue", type: "bytes" } ], name: "DataChanged", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "operator", type: "address" }, { indexed: true, internalType: "address", name: "tokenOwner", type: "address" }, { indexed: true, internalType: "uint256", name: "amount", type: "uint256" }, { indexed: false, internalType: "bytes", name: "operatorNotificationData", type: "bytes" } ], name: "OperatorAuthorizationChanged", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "operator", type: "address" }, { indexed: true, internalType: "address", name: "tokenOwner", type: "address" }, { indexed: true, internalType: "bool", name: "notified", type: "bool" }, { indexed: false, internalType: "bytes", name: "operatorNotificationData", type: "bytes" } ], name: "OperatorRevoked", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "previousOwner", type: "address" }, { indexed: true, internalType: "address", name: "newOwner", type: "address" } ], name: "OwnershipTransferred", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "operator", type: "address" }, { indexed: true, internalType: "address", name: "from", type: "address" }, { indexed: true, internalType: "address", name: "to", type: "address" }, { indexed: false, internalType: "uint256", name: "amount", type: "uint256" }, { indexed: false, internalType: "bool", name: "force", type: "bool" }, { indexed: false, internalType: "bytes", name: "data", type: "bytes" } ], name: "Transfer", type: "event" }, { stateMutability: "payable", type: "fallback" }, { inputs: [ { internalType: "address", name: "operator", type: "address" }, { internalType: "uint256", name: "amount", type: "uint256" }, { internalType: "bytes", name: "operatorNotificationData", type: "bytes" } ], name: "authorizeOperator", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "operator", type: "address" }, { internalType: "address", name: "tokenOwner", type: "address" } ], name: "authorizedAmountFor", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "tokenOwner", type: "address" } ], name: "balanceOf", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "bytes[]", name: "data", type: "bytes[]" } ], name: "batchCalls", outputs: [ { internalType: "bytes[]", name: "results", type: "bytes[]" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [], name: "decimals", outputs: [ { internalType: "uint8", name: "", type: "uint8" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "operator", type: "address" }, { internalType: "address", name: "tokenOwner", type: "address" }, { internalType: "uint256", name: "subtractedAmount", type: "uint256" }, { internalType: "bytes", name: "operatorNotificationData", type: "bytes" } ], name: "decreaseAllowance", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "bytes32", name: "dataKey", type: "bytes32" } ], name: "getData", outputs: [ { internalType: "bytes", name: "dataValue", type: "bytes" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "bytes32[]", name: "dataKeys", type: "bytes32[]" } ], name: "getDataBatch", outputs: [ { internalType: "bytes[]", name: "dataValues", type: "bytes[]" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "tokenOwner", type: "address" } ], name: "getOperatorsOf", outputs: [ { internalType: "address[]", name: "", type: "address[]" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "operator", type: "address" }, { internalType: "uint256", name: "addedAmount", type: "uint256" }, { internalType: "bytes", name: "operatorNotificationData", type: "bytes" } ], name: "increaseAllowance", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [], name: "owner", outputs: [ { internalType: "address", name: "", type: "address" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "renounceOwnership", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "operator", type: "address" }, { internalType: "address", name: "tokenOwner", type: "address" }, { internalType: "bool", name: "notify", type: "bool" }, { internalType: "bytes", name: "operatorNotificationData", type: "bytes" } ], name: "revokeOperator", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "bytes32", name: "dataKey", type: "bytes32" }, { internalType: "bytes", name: "dataValue", type: "bytes" } ], name: "setData", outputs: [], stateMutability: "payable", type: "function" }, { inputs: [ { internalType: "bytes32[]", name: "dataKeys", type: "bytes32[]" }, { internalType: "bytes[]", name: "dataValues", type: "bytes[]" } ], name: "setDataBatch", outputs: [], stateMutability: "payable", type: "function" }, { inputs: [ { internalType: "bytes4", name: "interfaceId", type: "bytes4" } ], name: "supportsInterface", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "totalSupply", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "from", type: "address" }, { internalType: "address", name: "to", type: "address" }, { internalType: "uint256", name: "amount", type: "uint256" }, { internalType: "bool", name: "force", type: "bool" }, { internalType: "bytes", name: "data", type: "bytes" } ], name: "transfer", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address[]", name: "from", type: "address[]" }, { internalType: "address[]", name: "to", type: "address[]" }, { internalType: "uint256[]", name: "amount", type: "uint256[]" }, { internalType: "bool[]", name: "force", type: "bool[]" }, { internalType: "bytes[]", name: "data", type: "bytes[]" } ], name: "transferBatch", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "newOwner", type: "address" } ], name: "transferOwnership", outputs: [], stateMutability: "nonpayable", type: "function" }, { stateMutability: "payable", type: "receive" } ]; class LSP7DigitalAsset__factory { static createInterface() { return new ethers.Interface(_abi$d); } static connect(address, runner) { return new ethers.Contract(address, _abi$d, runner); } } __publicField$d(LSP7DigitalAsset__factory, "abi", _abi$d); var __defProp$c = Object.defineProperty; var __defNormalProp$c = (obj, key, value) => key in obj ? __defProp$c(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$c = (obj, key, value) => { __defNormalProp$c(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$c = [ { inputs: [], name: "ERC725Y_DataKeysValuesEmptyArray", type: "error" }, { inputs: [], name: "ERC725Y_DataKeysValuesLengthMismatch", type: "error" }, { inputs: [], name: "ERC725Y_MsgValueDisallowed", type: "error" }, { inputs: [ { internalType: "bytes", name: "storedData", type: "bytes" } ], name: "InvalidExtensionAddress", type: "error" }, { inputs: [ { internalType: "bytes", name: "data", type: "bytes" } ], name: "InvalidFunctionSelector", type: "error" }, { inputs: [], name: "LSP4TokenNameNotEditable", type: "error" }, { inputs: [], name: "LSP4TokenSymbolNotEditable", type: "error" }, { inputs: [], name: "LSP4TokenTypeNotEditable", type: "error" }, { inputs: [ { internalType: "address", name: "tokenOwner", type: "address" }, { internalType: "uint256", name: "authorizedAmount", type: "uint256" }, { internalType: "address", name: "operator", type: "address" }, { internalType: "uint256", name: "amount", type: "uint256" } ], name: "LSP7AmountExceedsAuthorizedAmount", type: "error" }, { inputs: [ { internalType: "uint256", name: "balance", type: "uint256" }, { internalType: "address", name: "tokenOwner", type: "address" }, { internalType: "uint256", name: "amount", type: "uint256" } ], name: "LSP7AmountExceedsBalance", type: "error" }, { inputs: [ { internalType: "uint256", name: "callIndex", type: "uint256" } ], name: "LSP7BatchCallFailed", type: "error" }, { inputs: [], name: "LSP7CannotSendWithAddressZero", type: "error" }, { inputs: [], name: "LSP7CannotUseAddressZeroAsOperator", type: "error" }, { inputs: [ { internalType: "address", name: "caller", type: "address" }, { internalType: "address", name: "tokenOwner", type: "address" }, { internalType: "address", name: "operator", type: "address" } ], name: "LSP7DecreaseAllowanceNotAuthorized", type: "error" }, { inputs: [], name: "LSP7DecreasedAllowanceBelowZero", type: "error" }, { inputs: [], name: "LSP7InvalidTransferBatch", type: "error" }, { inputs: [ { internalType: "address", name: "tokenReceiver", type: "address" } ], name: "LSP7NotifyTokenReceiverContractMissingLSP1Interface", type: "error" }, { inputs: [ { internalType: "address", name: "tokenReceiver", type: "address" } ], name: "LSP7NotifyTokenReceiverIsEOA", type: "error" }, { inputs: [ { internalType: "address", name: "caller", type: "address" }, { internalType: "address", name: "tokenOwner", type: "address" }, { internalType: "address", name: "operator", type: "address" } ], name: "LSP7RevokeOperatorNotAuthorized", type: "error" }, { inputs: [], name: "LSP7TokenContractCannotHoldValue", type: "error" }, { inputs: [], name: "LSP7TokenOwnerCannotBeOperator", type: "error" }, { inputs: [ { internalType: "bytes4", name: "functionSelector", type: "bytes4" } ], name: "NoExtensionFoundForFunctionSelector", type: "error" }, { inputs: [ { internalType: "address", name: "operator", type: "address" } ], name: "OperatorAllowanceCannotBeIncreasedFromZero", type: "error" }, { inputs: [ { internalType: "address", name: "callerAddress", type: "address" } ], name: "OwnableCallerNotTheOwner", type: "error" }, { inputs: [], name: "OwnableCannotSetZeroAddressAsOwner", type: "error" }, { anonymous: false, inputs: [ { indexed: true, internalType: "bytes32", name: "dataKey", type: "bytes32" }, { indexed: false, internalType: "bytes", name: "dataValue", type: "bytes" } ], name: "DataChanged", type: "event" }, { anonymous: false, inputs: [ { indexed: false, internalType: "uint8", name: "version", type: "uint8" } ], name: "Initialized", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "operator", type: "address" }, { indexed: true, internalType: "address", name: "tokenOwner", type: "address" }, { indexed: true, internalType: "uint256", name: "amount", type: "uint256" }, { indexed: false, internalType: "bytes", name: "operatorNotificationData", type: "bytes" } ], name: "OperatorAuthorizationChanged", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "operator", type: "address" }, { indexed: true, internalType: "address", name: "tokenOwner", type: "address" }, { indexed: true, internalType: "bool", name: "notified", type: "bool" }, { indexed: false, internalType: "bytes", name: "operatorNotificationData", type: "bytes" } ], name: "OperatorRevoked", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "previousOwner", type: "address" }, { indexed: true, internalType: "address", name: "newOwner", type: "address" } ], name: "OwnershipTransferred", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "operator", type: "address" }, { indexed: true, internalType: "address", name: "from", type: "address" }, { indexed: true, internalType: "address", name: "to", type: "address" }, { indexed: false, internalType: "uint256", name: "amount", type: "uint256" }, { indexed: false, internalType: "bool", name: "force", type: "bool" }, { indexed: false, internalType: "bytes", name: "data", type: "bytes" } ], name: "Transfer", type: "event" }, { stateMutability: "payable", type: "fallback" }, { inputs: [ { internalType: "address", name: "operator", type: "address" }, { internalType: "uint256", name: "amount", type: "uint256" }, { internalType: "bytes", name: "operatorNotificationData", type: "bytes" } ], name: "authorizeOperator", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "operator", type: "address" }, { internalType: "address", name: "tokenOwner", type: "address" } ], name: "authorizedAmountFor", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "tokenOwner", type: "address" } ], name: "balanceOf", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "bytes[]", name: "data", type: "bytes[]" } ], name: "batchCalls", outputs: [ { internalType: "bytes[]", name: "results", type: "bytes[]" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [], name: "decimals", outputs: [ { internalType: "uint8", name: "", type: "uint8" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "operator", type: "address" }, { internalType: "address", name: "tokenOwner", type: "address" }, { internalType: "uint256", name: "subtractedAmount", type: "uint256" }, { internalType: "bytes", name: "operatorNotificationData", type: "bytes" } ], name: "decreaseAllowance", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "bytes32", name: "dataKey", type: "bytes32" } ], name: "getData", outputs: [ { internalType: "bytes", name: "dataValue", type: "bytes" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "bytes32[]", name: "dataKeys", type: "bytes32[]" } ], name: "getDataBatch", outputs: [ { internalType: "bytes[]", name: "dataValues", type: "bytes[]" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "tokenOwner", type: "address" } ], name: "getOperatorsOf", outputs: [ { internalType: "address[]", name: "", type: "address[]" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "operator", type: "address" }, { internalType: "uint256", name: "addedAmount", type: "uint256" }, { internalType: "bytes", name: "operatorNotificationData", type: "bytes" } ], name: "increaseAllowance", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [], name: "owner", outputs: [ { internalType: "address", name: "", type: "address" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "renounceOwnership", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "operator", type: "address" }, { internalType: "address", name: "tokenOwner", type: "address" }, { internalType: "bool", name: "notify", type: "bool" }, { internalType: "bytes", name: "operatorNotificationData", type: "bytes" } ], name: "revokeOperator", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "bytes32", name: "dataKey", type: "bytes32" }, { internalType: "bytes", name: "dataValue", type: "bytes" } ], name: "setData", outputs: [], stateMutability: "payable", type: "function" }, { inputs: [ { internalType: "bytes32[]", name: "dataKeys", type: "bytes32[]" }, { internalType: "bytes[]", name: "dataValues", type: "bytes[]" } ], name: "setDataBatch", outputs: [], stateMutability: "payable", type: "function" }, { inputs: [ { internalType: "bytes4", name: "interfaceId", type: "bytes4" } ], name: "supportsInterface", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "totalSupply", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "from", type: "address" }, { internalType: "address", name: "to", type: "address" }, { internalType: "uint256", name: "amount", type: "uint256" }, { internalType: "bool", name: "force", type: "bool" }, { internalType: "bytes", name: "data", type: "bytes" } ], name: "transfer", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address[]", name: "from", type: "address[]" }, { internalType: "address[]", name: "to", type: "address[]" }, { internalType: "uint256[]", name: "amount", type: "uint256[]" }, { internalType: "bool[]", name: "force", type: "bool[]" }, { internalType: "bytes[]", name: "data", type: "bytes[]" } ], name: "transferBatch", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "newOwner", type: "address" } ], name: "transferOwnership", outputs: [], stateMutability: "nonpayable", type: "function" }, { stateMutability: "payable", type: "receive" } ]; class LSP7DigitalAssetInitAbstract__factory { static createInterface() { return new ethers.Interface(_abi$c); } static connect(address, runner) { return new ethers.Contract( address, _abi$c, runner ); } } __publicField$c(LSP7DigitalAssetInitAbstract__factory, "abi", _abi$c); var __defProp$b = Object.defineProperty; var __defNormalProp$b = (obj, key, value) => key in obj ? __defProp$b(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$b = (obj, key, value) => { __defNormalProp$b(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$b = [ { inputs: [ { internalType: "string", name: "name_", type: "string" }, { internalType: "string", name: "symbol_", type: "string" }, { internalType: "address", name: "newOwner_", type: "address" }, { internalType: "uint256", name: "lsp4TokenType_", type: "uint256" }, { internalType: "bool", name: "isNonDivisible_", type: "bool" } ], stateMutability: "nonpayable", type: "constructor" }, { inputs: [], name: "ERC725Y_DataKeysValuesEmptyArray", type: "error" }, { inputs: [], name: "ERC725Y_DataKeysValuesLengthMismatch", type: "error" }, { inputs: [], name: "ERC725Y_MsgValueDisallowed", type: "error" }, { inputs: [ { internalType: "bytes", name: "storedData", type: "bytes" } ], name: "InvalidExtensionAddress", type: "error" }, { inputs: [ { internalType: "bytes", name: "data", type: "bytes" } ], name: "InvalidFunctionSelector", type: "error" }, { inputs: [], name: "LSP4TokenNameNotEditable", type: "error" }, { inputs: [], name: "LSP4TokenSymbolNotEditable", type: "error" }, { inputs: [], name: "LSP4TokenTypeNotEditable", type: "error" }, { inputs: [ { internalType: "address", name: "tokenOwner", type: "address" }, { internalType: "uint256", name: "authorizedAmount", type: "uint256" }, { internalType: "address", name: "operator", type: "address" }, { internalType: "uint256", name: "amount", type: "uint256" } ], name: "LSP7AmountExceedsAuthorizedAmount", type: "error" }, { inputs: [ { internalType: "uint256", name: "balance", type: "uint256" }, { internalType: "address", name: "tokenOwner", type: "address" }, { internalType: "uint256", name: "amount", type: "uint256" } ], name: "LSP7AmountExceedsBalance", type: "error" }, { inputs: [ { internalType: "uint256", name: "callIndex", type: "uint256" } ], name: "LSP7BatchCallFailed", type: "error" }, { inputs: [], name: "LSP7CannotSendWithAddressZero", type: "error" }, { inputs: [], name: "LSP7CannotUseAddressZeroAsOperator", type: "error" }, { inputs: [ { internalType: "address", name: "caller", type: "address" }, { internalType: "address", name: "tokenOwner", type: "address" }, { internalType: "address", name: "operator", type: "address" } ], name: "LSP7DecreaseAllowanceNotAuthorized", type: "error" }, { inputs: [], name: "LSP7DecreasedAllowanceBelowZero", type: "error" }, { inputs: [], name: "LSP7InvalidTransferBatch", type: "error" }, { inputs: [ { internalType: "address", name: "tokenReceiver", type: "address" } ], name: "LSP7NotifyTokenReceiverContractMissingLSP1Interface", type: "error" }, { inputs: [ { internalType: "address", name: "tokenReceiver", type: "address" } ], name: "LSP7NotifyTokenReceiverIsEOA", type: "error" }, { inputs: [ { internalType: "address", name: "caller", type: "address" }, { internalType: "address", name: "tokenOwner", type: "address" }, { internalType: "address", name: "operator", type: "address" } ], name: "LSP7RevokeOperatorNotAuthorized", type: "error" }, { inputs: [], name: "LSP7TokenContractCannotHoldValue", type: "error" }, { inputs: [], name: "LSP7TokenOwnerCannotBeOperator", type: "error" }, { inputs: [ { internalType: "bytes4", name: "functionSelector", type: "bytes4" } ], name: "NoExtensionFoundForFunctionSelector", type: "error" }, { inputs: [ { internalType: "address", name: "operator", type: "address" } ], name: "OperatorAllowanceCannotBeIncreasedFromZero", type: "error" }, { inputs: [ { internalType: "address", name: "callerAddress", type: "address" } ], name: "OwnableCallerNotTheOwner", type: "error" }, { inputs: [], name: "OwnableCannotSetZeroAddressAsOwner", type: "error" }, { anonymous: false, inputs: [ { indexed: true, internalType: "bytes32", name: "dataKey", type: "bytes32" }, { indexed: false, internalType: "bytes", name: "dataValue", type: "bytes" } ], name: "DataChanged", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "operator", type: "address" }, { indexed: true, internalType: "address", name: "tokenOwner", type: "address" }, { indexed: true, internalType: "uint256", name: "amount", type: "uint256" }, { indexed: false, internalType: "bytes", name: "operatorNotificationData", type: "bytes" } ], name: "OperatorAuthorizationChanged", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "operator", type: "address" }, { indexed: true, internalType: "address", name: "tokenOwner", type: "address" }, { indexed: true, internalType: "bool", name: "notified", type: "bool" }, { indexed: false, internalType: "bytes", name: "operatorNotificationData", type: "bytes" } ], name: "OperatorRevoked", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "previousOwner", type: "address" }, { indexed: true, internalType: "address", name: "newOwner", type: "address" } ], name: "OwnershipTransferred", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "operator", type: "address" }, { indexed: true, internalType: "address", name: "from", type: "address" }, { indexed: true, internalType: "address", name: "to", type: "address" }, { indexed: false, internalType: "uint256", name: "amount", type: "uint256" }, { indexed: false, internalType: "bool", name: "force", type: "bool" }, { indexed: false, internalType: "bytes", name: "data", type: "bytes" } ], name: "Transfer", type: "event" }, { stateMutability: "payable", type: "fallback" }, { inputs: [ { internalType: "address", name: "operator", type: "address" }, { internalType: "uint256", name: "amount", type: "uint256" }, { internalType: "bytes", name: "operatorNotificationData", type: "bytes" } ], name: "authorizeOperator", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "operator", type: "address" }, { internalType: "address", name: "tokenOwner", type: "address" } ], name: "authorizedAmountFor", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "tokenOwner", type: "address" } ], name: "balanceOf", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "bytes[]", name: "data", type: "bytes[]" } ], name: "batchCalls", outputs: [ { internalType: "bytes[]", name: "results", type: "bytes[]" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [], name: "decimals", outputs: [ { internalType: "uint8", name: "", type: "uint8" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "operator", type: "address" }, { internalType: "address", name: "tokenOwner", type: "address" }, { internalType: "uint256", name: "subtractedAmount", type: "uint256" }, { internalType: "bytes", name: "operatorNotificationData", type: "bytes" } ], name: "decreaseAllowance", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "bytes32", name: "dataKey", type: "bytes32" } ], name: "getData", outputs: [ { internalType: "bytes", name: "dataValue", type: "bytes" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "bytes32[]", name: "dataKeys", type: "bytes32[]" } ], name: "getDataBatch", outputs: [ { internalType: "bytes[]", name: "dataValues", type: "bytes[]" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "tokenOwner", type: "address" } ], name: "getOperatorsOf", outputs: [ { internalType: "address[]", name: "", type: "address[]" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "operator", type: "address" }, { internalType: "uint256", name: "addedAmount", type: "uint256" }, { internalType: "bytes", name: "operatorNotificationData", type: "bytes" } ], name: "increaseAllowance", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "to", type: "address" }, { internalType: "uint256", name: "amount", type: "uint256" }, { internalType: "bool", name: "force", type: "bool" }, { internalType: "bytes", name: "data", type: "bytes" } ], name: "mint", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [], name: "owner", outputs: [ { internalType: "address", name: "", type: "address" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "renounceOwnership", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "operator", type: "address" }, { internalType: "address", name: "tokenOwner", type: "address" }, { internalType: "bool", name: "notify", type: "bool" }, { internalType: "bytes", name: "operatorNotificationData", type: "bytes" } ], name: "revokeOperator", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "bytes32", name: "dataKey", type: "bytes32" }, { internalType: "bytes", name: "dataValue", type: "bytes" } ], name: "setData", outputs: [], stateMutability: "payable", type: "function" }, { inputs: [ { internalType: "bytes32[]", name: "dataKeys", type: "bytes32[]" }, { internalType: "bytes[]", name: "dataValues", type: "bytes[]" } ], name: "setDataBatch", outputs: [], stateMutability: "payable", type: "function" }, { inputs: [ { internalType: "bytes4", name: "interfaceId", type: "bytes4" } ], name: "supportsInterface", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "totalSupply", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "from", type: "address" }, { internalType: "address", name: "to", type: "address" }, { internalType: "uint256", name: "amount", type: "uint256" }, { internalType: "bool", name: "force", type: "bool" }, { internalType: "bytes", name: "data", type: "bytes" } ], name: "transfer", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address[]", name: "from", type: "address[]" }, { internalType: "address[]", name: "to", type: "address[]" }, { internalType: "uint256[]", name: "amount", type: "uint256[]" }, { internalType: "bool[]", name: "force", type: "bool[]" }, { internalType: "bytes[]", name: "data", type: "bytes[]" } ], name: "transferBatch", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "newOwner", type: "address" } ], name: "transferOwnership", outputs: [], stateMutability: "nonpayable", type: "function" }, { stateMutability: "payable", type: "receive" } ]; const _bytecode$7 = "0x60806040523480156200001157600080fd5b5060405162002e9b38038062002e9b833981016040819052620000349162000354565b848484848484848484816001600160a01b03811662000066576040516306b620db60e21b815260040160405180910390fd5b6200007c81620001c060201b62000e7f1760201c565b50620000d37feafec4d89fa9619884b60000a4d96624a38f7ac2d8d9a604ecf07c12c77e480c60001b604051806040016040528060048152602001632936598960e21b8152506200022e60201b62000f051760201c565b6200010d7fdeba1e292f8ba88238e10ab3c7f88bd4be4fac56cad5194b6ecceaf653468af160001b856200022e60201b62000f051760201c565b620001477f2f0a68ab07768e01943a599e73362a0e17a63a72e94dd2e384d2c1d4db93275660001b846200022e60201b62000f051760201c565b60408051602081018390526200019a917fe0261fa95db2eb3b5439bd033cda66d56b96f92f243a8228fd87550ed7bdfdb391016040516020818303038152906040526200022e60201b62000f051760201c565b50506002805460ff19169315159390931790925550620005959950505050505050505050565b6000546001600160a01b038281169116146200022b57600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0383161790555b50565b600082815260016020526040902062000248828262000494565b50817fece574603820d07bc9b91f2a932baadf4628aabcb8afba49776529c14a6104b2826040516200027b919062000560565b60405180910390a25050565b634e487b7160e01b600052604160045260246000fd5b60005b83811015620002ba578181015183820152602001620002a0565b50506000910152565b600082601f830112620002d557600080fd5b81516001600160401b0380821115620002f257620002f262000287565b604051601f8301601f19908116603f011681019082821181831017156200031d576200031d62000287565b816040528381528660208588010111156200033757600080fd5b6200034a8460208301602089016200029d565b9695505050505050565b600080600080600060a086880312156200036d57600080fd5b85516001600160401b03808211156200038557600080fd5b6200039389838a01620002c3565b96506020880151915080821115620003aa57600080fd5b50620003b988828901620002c3565b604088015190955090506001600160a01b0381168114620003d957600080fd5b6060870151608088015191945092508015158114620003f757600080fd5b809150509295509295909350565b600181811c908216806200041a57607f821691505b6020821081036200043b57634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200048f57600081815260208120601f850160051c810160208610156200046a5750805b601f850160051c820191505b818110156200048b5782815560010162000476565b5050505b505050565b81516001600160401b03811115620004b057620004b062000287565b620004c881620004c1845462000405565b8462000441565b602080601f831160018114620005005760008415620004e75750858301515b600019600386901b1c1916600185901b1785556200048b565b600085815260208120601f198616915b82811015620005315788860151825594840194600190910190840162000510565b5085821015620005505787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b6020815260008251806020840152620005818160408501602087016200029d565b601f01601f19169190910160400192915050565b6128f680620005a56000396000f3fe60806040526004361061016e5760003560e01c8063715018a6116100cb5780638da5cb5b1161007f578063d72fc29a11610059578063d72fc29a14610493578063dedff9c6146104c0578063f2fde38b146104e0576101e2565b80638da5cb5b146104385780639790242114610460578063b49506fd14610473576101e2565b8063760d9bba116100b0578063760d9bba146103e557806378381670146104055780637f23690c14610425576101e2565b8063715018a6146103b05780637580d920146103c5576101e2565b8063313ce5671161012257806365aeaa951161010757806365aeaa951461032d5780636963d4381461034d57806370a082311461037a576101e2565b8063313ce567146102d957806354f6127f14610300576101e2565b80632bc1da82116101535780632bc1da82146102775780632d7667c91461029957806330d0dc37146102b9576101e2565b806301ffc9a71461022357806318160ddd14610258576101e2565b366101e257346000036101b05760405163e5099ee360e01b81526004016101a79060208082526004908201526000604082015260600190565b60405180910390fd5b6040517f388f5adc00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6000366060600482101561020d57828260405163e5099ee360e01b81526004016101a7929190611c72565b6102178383610500565b80519350602001915050f35b34801561022f57600080fd5b5061024361023e366004611ca1565b61060f565b60405190151581526020015b60405180910390f35b34801561026457600080fd5b506003545b60405190815260200161024f565b34801561028357600080fd5b50610297610292366004611dac565b61065c565b005b3480156102a557600080fd5b506102976102b4366004611fe1565b610705565b3480156102c557600080fd5b506102976102d43660046120b3565b61080d565b3480156102e557600080fd5b506102ee6108ce565b60405160ff909116815260200161024f565b34801561030c57600080fd5b5061032061031b366004612122565b6108e7565b60405161024f919061218b565b34801561033957600080fd5b5061026961034836600461219e565b6108f2565b34801561035957600080fd5b5061036d6103683660046121d1565b610958565b60405161024f9190612246565b34801561038657600080fd5b506102696103953660046122a8565b6001600160a01b031660009081526004602052604090205490565b3480156103bc57600080fd5b50610297610aa8565b3480156103d157600080fd5b506102976103e03660046122c3565b610abc565b3480156103f157600080fd5b506102976104003660046122f7565b610ad0565b34801561041157600080fd5b50610297610420366004612363565b610af8565b6102976104333660046123b3565b610bf5565b34801561044457600080fd5b506000546040516001600160a01b03909116815260200161024f565b61029761046e3660046123fa565b610c2a565b34801561047f57600080fd5b5061029761048e366004611dac565b610d1c565b34801561049f57600080fd5b506104b36104ae3660046122a8565b610d5c565b60405161024f9190612454565b3480156104cc57600080fd5b5061036d6104db3660046124a1565b610d80565b3480156104ec57600080fd5b506102976104fb3660046122a8565b610e2b565b606060006105196000356001600160e01b031916610f5a565b5090506001600160a01b03811661056a576040517fbb370b2b0000000000000000000000000000000000000000000000000000000081526001600160e01b03196000351660048201526024016101a7565b600080826001600160a01b0316348787333460405160200161058f94939291906124d6565b60408051601f19818403018152908290526105a991612506565b60006040518083038185875af1925050503d80600081146105e6576040519150601f19603f3d011682016040523d82523d6000602084013e6105eb565b606091505b50915091508115610600579250610609915050565b80518060208301fd5b92915050565b60006001600160e01b031982167fc52d600800000000000000000000000000000000000000000000000000000000148061064d575061064d82611004565b80610609575061060982611042565b600061066884336108f2565b9050806000036106af576040517fcba6e9770000000000000000000000000000000000000000000000000000000081526001600160a01b03851660048201526024016101a7565b60006106bb8483612538565b90506106cb338683600187611080565b60003382856040516020016106e29392919061254b565b60405160208183030381529060405290506106fd8682611225565b505050505050565b8451845181141580610718575083518114155b80610724575082518114155b80610730575081518114155b15610767576040517f263eee8d00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60005b81811015610804576107fc8782815181106107875761078761257c565b60200260200101518783815181106107a1576107a161257c565b60200260200101518784815181106107bb576107bb61257c565b60200260200101518785815181106107d5576107d561257c565b60200260200101518786815181106107ef576107ef61257c565b6020026020010151610ad0565b60010161076a565b50505050505050565b336001600160a01b0384161480159061082f5750336001600160a01b03851614155b1561087f576040517f1a525b320000000000000000000000000000000000000000000000000000000081523360048201526001600160a01b038085166024830152851660448201526064016101a7565b61088d838560008585611080565b81156108c8576000836000836040516020016108ab93929190612592565b60405160208183030381529060405290506108c68582611225565b505b50505050565b60025460009060ff166108e15750601290565b50600090565b606061060982611250565b6000826001600160a01b0316826001600160a01b03160361092c57506001600160a01b038116600090815260046020526040902054610609565b506001600160a01b03808216600090815260066020908152604080832093861683529290522054610609565b60608167ffffffffffffffff81111561097357610973611ce7565b6040519080825280602002602001820160405280156109a657816020015b60608152602001906001900390816109915790505b50905060005b82811015610aa157600080308686858181106109ca576109ca61257c565b90506020028101906109dc91906125bd565b6040516109ea92919061260b565b600060405180830381855af49150503d8060008114610a25576040519150601f19603f3d011682016040523d82523d6000602084013e610a2a565b606091505b509150915081610a7957805115610a445780518082602001fd5b6040517fb774c284000000000000000000000000000000000000000000000000000000008152600481018490526024016101a7565b80848481518110610a8c57610a8c61257c565b602090810291909101015250506001016109ac565b5092915050565b610ab06112f2565b610aba6000610e7f565b565b610ac46112f2565b6108c884848484611347565b336001600160a01b03861614610aeb57610aeb338685611436565b6108c685858585856114dd565b336001600160a01b03841614801590610b1a5750336001600160a01b03851614155b15610b6a576040517f98ce29450000000000000000000000000000000000000000000000000000000081523360048201526001600160a01b038085166024830152851660448201526064016101a7565b6000610b7685856108f2565b905082811015610bb2576040517f0ef76c3500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b828103610bc3858783600187611080565b6000858285604051602001610bda9392919061254b565b60405160208183030381529060405290506108048782611225565b610bfd6112f2565b3415610c1c5760405163f36ba73760e01b815260040160405180910390fd5b610c26828261167a565b5050565b610c326112f2565b3415610c515760405163f36ba73760e01b815260040160405180910390fd5b8051825114610c8c576040517f3bcc897900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b8151600003610cc7576040517f97da5f9500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60005b8251811015610d1757610d0f838281518110610ce857610ce861257c565b6020026020010151838381518110610d0257610d0261257c565b602002602001015161167a565b600101610cca565b505050565b610d2a338484600185611080565b6000338383604051602001610d419392919061254b565b60405160208183030381529060405290506108c88482611225565b6001600160a01b038116600090815260056020526040902060609061060990611684565b6060815167ffffffffffffffff811115610d9c57610d9c611ce7565b604051908082528060200260200182016040528015610dcf57816020015b6060815260200190600190039081610dba5790505b50905060005b8251811015610e2557610e00838281518110610df357610df361257c565b6020026020010151611250565b828281518110610e1257610e1261257c565b6020908102919091010152600101610dd5565b50919050565b610e336112f2565b6001600160a01b038116610e73576040517f1ad8836c00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b610e7c81610e7f565b50565b6000546001600160a01b03828116911614610e7c57600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0383167fffffffffffffffffffffffff000000000000000000000000000000000000000090911617905550565b6000828152600160205260409020610f1d8282612695565b50817fece574603820d07bc9b91f2a932baadf4628aabcb8afba49776529c14a6104b282604051610f4e919061218b565b60405180910390a25050565b60008080610f927fcee78b4094da86011096000000000000000000000000000000000000000000006001600160e01b03198616611691565b90506000610f9f82611250565b90508051601414158015610fb35750805115155b15610fec57806040517f42bfe79f0000000000000000000000000000000000000000000000000000000081526004016101a7919061218b565b610ff581612755565b60601c95600195509350505050565b60006001600160e01b031982167fa918fa6b000000000000000000000000000000000000000000000000000000001480610609575061060982611702565b6000806110556301ffc9a760e01b610f5a565b5090506001600160a01b03811661106f5750600092915050565b6110798184611750565b9392505050565b6001600160a01b0384166110c0576040517f6355e76600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b846001600160a01b0316846001600160a01b03160361110b576040517fdab7504700000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6001600160a01b03808616600090815260066020908152604080832093881683529290522083905582156111ad576001600160a01b038516600090815260056020526040902061115b90856117ee565b5082856001600160a01b0316856001600160a01b03167ff772a43bfdf4729b196e3fb54a818b91a2ca6c49d10b2e16278752f9f515c25d846040516111a0919061218b565b60405180910390a46108c6565b6001600160a01b03851660009081526005602052604090206111cf9085611803565b50811515856001600160a01b0316856001600160a01b03167f0ebf5762d8855cbe012d2ca42fb33a81175e17c8a8751f8859931ba453bd416784604051611216919061218b565b60405180910390a45050505050565b610c26827f386072cc5a58e61263b434c722725f21031cd06e7c552cfaa06db5de8a320dbc83611818565b600081815260016020526040902080546060919061126d9061261b565b80601f01602080910402602001604051908101604052809291908181526020018280546112999061261b565b80156112e65780601f106112bb576101008083540402835291602001916112e6565b820191906000526020600020905b8154815290600101906020018083116112c957829003601f168201915b50505050509050919050565b336113056000546001600160a01b031690565b6001600160a01b031614610aba576040517fbf1169c50000000000000000000000000000000000000000000000000000000081523360048201526024016101a7565b6001600160a01b03841661136e57604051630d2d5ec360e41b815260040160405180910390fd5b82600360008282546113809190612538565b90915550506001600160a01b038416600090815260046020526040812080548592906113ad908490612538565b90915550506040516001600160a01b0385169060009033907f3997e418d2cef0b3b0e907b1e39605c3f7d32dbd061e82ea5b4a770d46a160a6906113f690889088908890612791565b60405180910390a4600033600086868560405160200161141a9594939291906127b2565b60405160208183030381529060405290506108c68584836118ac565b6001600160a01b03808316600090815260066020908152604080832093871683529290522054808211156114b7576040517ff3a6b6910000000000000000000000000000000000000000000000000000000081526001600160a01b0380851660048301526024820183905285166044820152606481018390526084016101a7565b6108c883856114c685856127ec565b600060405180602001604052806000815250611080565b6001600160a01b03851615806114fa57506001600160a01b038416155b1561151857604051630d2d5ec360e41b815260040160405180910390fd5b6001600160a01b03851660009081526004602052604090205480841115611584576040517f08d47949000000000000000000000000000000000000000000000000000000008152600481018290526001600160a01b0387166024820152604481018590526064016101a7565b6001600160a01b038616600090815260046020526040812080548692906115ac9084906127ec565b90915550506001600160a01b038516600090815260046020526040812080548692906115d9908490612538565b92505081905550846001600160a01b0316866001600160a01b0316336001600160a01b03167f3997e418d2cef0b3b0e907b1e39605c3f7d32dbd061e82ea5b4a770d46a160a687878760405161163193929190612791565b60405180910390a4600033878787866040516020016116549594939291906127b2565b604051602081830303815290604052905061166f878261199f565b6108048685836118ac565b610c2682826119ca565b6060600061107983611ad5565b604080517fffffffffffffffffffff00000000000000000000000000000000000000000000841660208201526000602a82018190526bffffffffffffffffffffffff198416602c830152918291016040516020818303038152906040529050806116fa906127ff565b949350505050565b60006001600160e01b031982167f629aa69400000000000000000000000000000000000000000000000000000000148061060957506301ffc9a760e01b6001600160e01b0319831614610609565b604080516001600160e01b03198316602480830191909152825180830390910181526044909101909152602080820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff166301ffc9a760e01b178152825160009392849283928392918391908a617530fa92503d915060005190508280156117d7575060208210155b80156117e35750600081115b979650505050505050565b6000611079836001600160a01b038416611b30565b6000611079836001600160a01b038416611b7f565b6118326001600160a01b038416631aed5a8560e21b611750565b15610d1757604051631aed5a8560e21b81526001600160a01b03841690636bb56a14906118659085908590600401612823565b6000604051808303816000875af1158015611884573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526108c8919081019061283c565b6118bd83631aed5a8560e21b611750565b1561191057604051631aed5a8560e21b81526001600160a01b03841690636bb56a1490611865907f20804611b3e2ea21c480dc465142210acf4a2485947541770ec1fb87dee4a55c908590600401612823565b81610d17576001600160a01b0383163b15611962576040517fa608fbb60000000000000000000000000000000000000000000000000000000081526001600160a01b03841660048201526024016101a7565b6040517f26c247f40000000000000000000000000000000000000000000000000000000081526001600160a01b03841660048201526024016101a7565b610c26827f429ac7a06903dbc9c13dfcb3c9d11df8194581fa047c96d7a4171fc7402958ea83611818565b7f2145e1d6d074577dc71ef54c3807742b41b053a9352ae6b491331509acb9750f8201611a23576040517f85c169bd00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b7fd0f59754f88971fe6bc5a6618cc9d5f1e859c58d16b22d1c7b2d3e2b246cd8aa8201611a7c576040517f76755b3800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b7f1fd9e056a24d14c4abc642fcc325992a946906d0dbc57dd70278aaf12842024d8201610f05576040517f4ef6d7fb00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6060816000018054806020026020016040519081016040528092919081815260200182805480156112e657602002820191906000526020600020905b815481526020019060010190808311611b115750505050509050919050565b6000818152600183016020526040812054611b7757508154600181810184556000848152602080822090930184905584548482528286019093526040902091909155610609565b506000610609565b60008181526001830160205260408120548015611c68576000611ba36001836127ec565b8554909150600090611bb7906001906127ec565b9050818114611c1c576000866000018281548110611bd757611bd761257c565b9060005260206000200154905080876000018481548110611bfa57611bfa61257c565b6000918252602080832090910192909255918252600188019052604090208390555b8554869080611c2d57611c2d6128aa565b600190038181906000526020600020016000905590558560010160008681526020019081526020016000206000905560019350505050610609565b6000915050610609565b60208152816020820152818360408301376000818301604090810191909152601f909201601f19160101919050565b600060208284031215611cb357600080fd5b81356001600160e01b03198116811461107957600080fd5b80356001600160a01b0381168114611ce257600080fd5b919050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f1916810167ffffffffffffffff81118282101715611d2657611d26611ce7565b604052919050565b600067ffffffffffffffff821115611d4857611d48611ce7565b50601f01601f191660200190565b600082601f830112611d6757600080fd5b8135611d7a611d7582611d2e565b611cfd565b818152846020838601011115611d8f57600080fd5b816020850160208301376000918101602001919091529392505050565b600080600060608486031215611dc157600080fd5b611dca84611ccb565b925060208401359150604084013567ffffffffffffffff811115611ded57600080fd5b611df986828701611d56565b9150509250925092565b600067ffffffffffffffff821115611e1d57611e1d611ce7565b5060051b60200190565b600082601f830112611e3857600080fd5b81356020611e48611d7583611e03565b82815260059290921b84018101918181019086841115611e6757600080fd5b8286015b84811015611e8957611e7c81611ccb565b8352918301918301611e6b565b509695505050505050565b600082601f830112611ea557600080fd5b81356020611eb5611d7583611e03565b82815260059290921b84018101918181019086841115611ed457600080fd5b8286015b84811015611e895780358352918301918301611ed8565b80358015158114611ce257600080fd5b600082601f830112611f1057600080fd5b81356020611f20611d7583611e03565b82815260059290921b84018101918181019086841115611f3f57600080fd5b8286015b84811015611e8957611f5481611eef565b8352918301918301611f43565b600082601f830112611f7257600080fd5b81356020611f82611d7583611e03565b82815260059290921b84018101918181019086841115611fa157600080fd5b8286015b84811015611e8957803567ffffffffffffffff811115611fc55760008081fd5b611fd38986838b0101611d56565b845250918301918301611fa5565b600080600080600060a08688031215611ff957600080fd5b853567ffffffffffffffff8082111561201157600080fd5b61201d89838a01611e27565b9650602088013591508082111561203357600080fd5b61203f89838a01611e27565b9550604088013591508082111561205557600080fd5b61206189838a01611e94565b9450606088013591508082111561207757600080fd5b61208389838a01611eff565b9350608088013591508082111561209957600080fd5b506120a688828901611f61565b9150509295509295909350565b600080600080608085870312156120c957600080fd5b6120d285611ccb565b93506120e060208601611ccb565b92506120ee60408601611eef565b9150606085013567ffffffffffffffff81111561210a57600080fd5b61211687828801611d56565b91505092959194509250565b60006020828403121561213457600080fd5b5035919050565b60005b8381101561215657818101518382015260200161213e565b50506000910152565b6000815180845261217781602086016020860161213b565b601f01601f19169290920160200192915050565b602081526000611079602083018461215f565b600080604083850312156121b157600080fd5b6121ba83611ccb565b91506121c860208401611ccb565b90509250929050565b600080602083850312156121e457600080fd5b823567ffffffffffffffff808211156121fc57600080fd5b818501915085601f83011261221057600080fd5b81358181111561221f57600080fd5b8660208260051b850101111561223457600080fd5b60209290920196919550909350505050565b6000602080830181845280855180835260408601915060408160051b870101925083870160005b8281101561229b57603f1988860301845261228985835161215f565b9450928501929085019060010161226d565b5092979650505050505050565b6000602082840312156122ba57600080fd5b61107982611ccb565b600080600080608085870312156122d957600080fd5b6122e285611ccb565b9350602085013592506120ee60408601611eef565b600080600080600060a0868803121561230f57600080fd5b61231886611ccb565b945061232660208701611ccb565b93506040860135925061233b60608701611eef565b9150608086013567ffffffffffffffff81111561235757600080fd5b6120a688828901611d56565b6000806000806080858703121561237957600080fd5b61238285611ccb565b935061239060208601611ccb565b925060408501359150606085013567ffffffffffffffff81111561210a57600080fd5b600080604083850312156123c657600080fd5b82359150602083013567ffffffffffffffff8111156123e457600080fd5b6123f085828601611d56565b9150509250929050565b6000806040838503121561240d57600080fd5b823567ffffffffffffffff8082111561242557600080fd5b61243186838701611e94565b9350602085013591508082111561244757600080fd5b506123f085828601611f61565b6020808252825182820181905260009190848201906040850190845b818110156124955783516001600160a01b031683529284019291840191600101612470565b50909695505050505050565b6000602082840312156124b357600080fd5b813567ffffffffffffffff8111156124ca57600080fd5b6116fa84828501611e94565b8385823760609290921b6bffffffffffffffffffffffff1916919092019081526014810191909152603401919050565b6000825161251881846020870161213b565b9190910192915050565b634e487b7160e01b600052601160045260246000fd5b8082018082111561060957610609612522565b6001600160a01b0384168152826020820152606060408201526000612573606083018461215f565b95945050505050565b634e487b7160e01b600052603260045260246000fd5b6001600160a01b038416815260ff83166020820152606060408201526000612573606083018461215f565b6000808335601e198436030181126125d457600080fd5b83018035915067ffffffffffffffff8211156125ef57600080fd5b60200191503681900382131561260457600080fd5b9250929050565b8183823760009101908152919050565b600181811c9082168061262f57607f821691505b602082108103610e2557634e487b7160e01b600052602260045260246000fd5b601f821115610d1757600081815260208120601f850160051c810160208610156126765750805b601f850160051c820191505b818110156106fd57828155600101612682565b815167ffffffffffffffff8111156126af576126af611ce7565b6126c3816126bd845461261b565b8461264f565b602080601f8311600181146126f857600084156126e05750858301515b600019600386901b1c1916600185901b1785556106fd565b600085815260208120601f198616915b8281101561272757888601518255948401946001909101908401612708565b50858210156127455787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b805160208201516bffffffffffffffffffffffff1980821692919060148310156127895780818460140360031b1b83161693505b505050919050565b8381528215156020820152606060408201526000612573606083018461215f565b60006001600160a01b038088168352808716602084015280861660408401525083606083015260a060808301526117e360a083018461215f565b8181038181111561060957610609612522565b80516020808301519190811015610e255760001960209190910360031b1b16919050565b8281526040602082015260006116fa604083018461215f565b60006020828403121561284e57600080fd5b815167ffffffffffffffff81111561286557600080fd5b8201601f8101841361287657600080fd5b8051612884611d7582611d2e565b81815285602083850101111561289957600080fd5b61257382602083016020860161213b565b634e487b7160e01b600052603160045260246000fdfea26469706673582212204eb75891fc20565c56f0583ce7d41348775dc7f95f698ff4a945fe3588209e3064736f6c63430008110033"; const isSuperArgs$7 = (xs) => xs.length > 1; class LSP7Mintable__factory extends ethers.ContractFactory { constructor(...args) { if (isSuperArgs$7(args)) { super(...args); } else { super(_abi$b, _bytecode$7, args[0]); } } getDeployTransaction(name_, symbol_, newOwner_, lsp4TokenType_, isNonDivisible_, overrides) { return super.getDeployTransaction( name_, symbol_, newOwner_, lsp4TokenType_, isNonDivisible_, overrides || {} ); } deploy(name_, symbol_, newOwner_, lsp4TokenType_, isNonDivisible_, overrides) { return super.deploy( name_, symbol_, newOwner_, lsp4TokenType_, isNonDivisible_, overrides || {} ); } connect(runner) { return super.connect(runner); } static createInterface() { return new ethers.Interface(_abi$b); } static connect(address, runner) { return new ethers.Contract(address, _abi$b, runner); } } __publicField$b(LSP7Mintable__factory, "bytecode", _bytecode$7); __publicField$b(LSP7Mintable__factory, "abi", _abi$b); var __defProp$a = Object.defineProperty; var __defNormalProp$a = (obj, key, value) => key in obj ? __defProp$a(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$a = (obj, key, value) => { __defNormalProp$a(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$a = [ { inputs: [], stateMutability: "nonpayable", type: "constructor" }, { inputs: [], name: "ERC725Y_DataKeysValuesEmptyArray", type: "error" }, { inputs: [], name: "ERC725Y_DataKeysValuesLengthMismatch", type: "error" }, { inputs: [], name: "ERC725Y_MsgValueDisallowed", type: "error" }, { inputs: [ { internalType: "bytes", name: "storedData", type: "bytes" } ], name: "InvalidExtensionAddress", type: "error" }, { inputs: [ { internalType: "bytes", name: "data", type: "bytes" } ], name: "InvalidFunctionSelector", type: "error" }, { inputs: [], name: "LSP4TokenNameNotEditable", type: "error" }, { inputs: [], name: "LSP4TokenSymbolNotEditable", type: "error" }, { inputs: [], name: "LSP4TokenTypeNotEditable", type: "error" }, { inputs: [ { internalType: "address", name: "tokenOwner", type: "address" }, { internalType: "uint256", name: "authorizedAmount", type: "uint256" }, { internalType: "address", name: "operator", type: "address" }, { internalType: "uint256", name: "amount", type: "uint256" } ], name: "LSP7AmountExceedsAuthorizedAmount", type: "error" }, { inputs: [ { internalType: "uint256", name: "balance", type: "uint256" }, { internalType: "address", name: "tokenOwner", type: "address" }, { internalType: "uint256", name: "amount", type: "uint256" } ], name: "LSP7AmountExceedsBalance", type: "error" }, { inputs: [ { internalType: "uint256", name: "callIndex", type: "uint256" } ], name: "LSP7BatchCallFailed", type: "error" }, { inputs: [], name: "LSP7CannotSendWithAddressZero", type: "error" }, { inputs: [], name: "LSP7CannotUseAddressZeroAsOperator", type: "error" }, { inputs: [ { internalType: "address", name: "caller", type: "address" }, { internalType: "address", name: "tokenOwner", type: "address" }, { internalType: "address", name: "operator", type: "address" } ], name: "LSP7DecreaseAllowanceNotAuthorized", type: "error" }, { inputs: [], name: "LSP7DecreasedAllowanceBelowZero", type: "error" }, { inputs: [], name: "LSP7InvalidTransferBatch", type: "error" }, { inputs: [ { internalType: "address", name: "tokenReceiver", type: "address" } ], name: "LSP7NotifyTokenReceiverContractMissingLSP1Interface", type: "error" }, { inputs: [ { internalType: "address", name: "tokenReceiver", type: "address" } ], name: "LSP7NotifyTokenReceiverIsEOA", type: "error" }, { inputs: [ { internalType: "address", name: "caller", type: "address" }, { internalType: "address", name: "tokenOwner", type: "address" }, { internalType: "address", name: "operator", type: "address" } ], name: "LSP7RevokeOperatorNotAuthorized", type: "error" }, { inputs: [], name: "LSP7TokenContractCannotHoldValue", type: "error" }, { inputs: [], name: "LSP7TokenOwnerCannotBeOperator", type: "error" }, { inputs: [ { internalType: "bytes4", name: "functionSelector", type: "bytes4" } ], name: "NoExtensionFoundForFunctionSelector", type: "error" }, { inputs: [ { internalType: "address", name: "operator", type: "address" } ], name: "OperatorAllowanceCannotBeIncreasedFromZero", type: "error" }, { inputs: [ { internalType: "address", name: "callerAddress", type: "address" } ], name: "OwnableCallerNotTheOwner", type: "error" }, { inputs: [], name: "OwnableCannotSetZeroAddressAsOwner", type: "error" }, { anonymous: false, inputs: [ { indexed: true, internalType: "bytes32", name: "dataKey", type: "bytes32" }, { indexed: false, internalType: "bytes", name: "dataValue", type: "bytes" } ], name: "DataChanged", type: "event" }, { anonymous: false, inputs: [ { indexed: false, internalType: "uint8", name: "version", type: "uint8" } ], name: "Initialized", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "operator", type: "address" }, { indexed: true, internalType: "address", name: "tokenOwner", type: "address" }, { indexed: true, internalType: "uint256", name: "amount", type: "uint256" }, { indexed: false, internalType: "bytes", name: "operatorNotificationData", type: "bytes" } ], name: "OperatorAuthorizationChanged", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "operator", type: "address" }, { indexed: true, internalType: "address", name: "tokenOwner", type: "address" }, { indexed: true, internalType: "bool", name: "notified", type: "bool" }, { indexed: false, internalType: "bytes", name: "operatorNotificationData", type: "bytes" } ], name: "OperatorRevoked", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "previousOwner", type: "address" }, { indexed: true, internalType: "address", name: "newOwner", type: "address" } ], name: "OwnershipTransferred", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "operator", type: "address" }, { indexed: true, internalType: "address", name: "from", type: "address" }, { indexed: true, internalType: "address", name: "to", type: "address" }, { indexed: false, internalType: "uint256", name: "amount", type: "uint256" }, { indexed: false, internalType: "bool", name: "force", type: "bool" }, { indexed: false, internalType: "bytes", name: "data", type: "bytes" } ], name: "Transfer", type: "event" }, { stateMutability: "payable", type: "fallback" }, { inputs: [ { internalType: "address", name: "operator", type: "address" }, { internalType: "uint256", name: "amount", type: "uint256" }, { internalType: "bytes", name: "operatorNotificationData", type: "bytes" } ], name: "authorizeOperator", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "operator", type: "address" }, { internalType: "address", name: "tokenOwner", type: "address" } ], name: "authorizedAmountFor", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "tokenOwner", type: "address" } ], name: "balanceOf", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "bytes[]", name: "data", type: "bytes[]" } ], name: "batchCalls", outputs: [ { internalType: "bytes[]", name: "results", type: "bytes[]" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [], name: "decimals", outputs: [ { internalType: "uint8", name: "", type: "uint8" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "operator", type: "address" }, { internalType: "address", name: "tokenOwner", type: "address" }, { internalType: "uint256", name: "subtractedAmount", type: "uint256" }, { internalType: "bytes", name: "operatorNotificationData", type: "bytes" } ], name: "decreaseAllowance", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "bytes32", name: "dataKey", type: "bytes32" } ], name: "getData", outputs: [ { internalType: "bytes", name: "dataValue", type: "bytes" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "bytes32[]", name: "dataKeys", type: "bytes32[]" } ], name: "getDataBatch", outputs: [ { internalType: "bytes[]", name: "dataValues", type: "bytes[]" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "tokenOwner", type: "address" } ], name: "getOperatorsOf", outputs: [ { internalType: "address[]", name: "", type: "address[]" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "operator", type: "address" }, { internalType: "uint256", name: "addedAmount", type: "uint256" }, { internalType: "bytes", name: "operatorNotificationData", type: "bytes" } ], name: "increaseAllowance", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "string", name: "name_", type: "string" }, { internalType: "string", name: "symbol_", type: "string" }, { internalType: "address", name: "newOwner_", type: "address" }, { internalType: "uint256", name: "lsp4TokenType_", type: "uint256" }, { internalType: "bool", name: "isNonDivisible_", type: "bool" } ], name: "initialize", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "to", type: "address" }, { internalType: "uint256", name: "amount", type: "uint256" }, { internalType: "bool", name: "force", type: "bool" }, { internalType: "bytes", name: "data", type: "bytes" } ], name: "mint", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [], name: "owner", outputs: [ { internalType: "address", name: "", type: "address" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "renounceOwnership", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "operator", type: "address" }, { internalType: "address", name: "tokenOwner", type: "address" }, { internalType: "bool", name: "notify", type: "bool" }, { internalType: "bytes", name: "operatorNotificationData", type: "bytes" } ], name: "revokeOperator", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "bytes32", name: "dataKey", type: "bytes32" }, { internalType: "bytes", name: "dataValue", type: "bytes" } ], name: "setData", outputs: [], stateMutability: "payable", type: "function" }, { inputs: [ { internalType: "bytes32[]", name: "dataKeys", type: "bytes32[]" }, { internalType: "bytes[]", name: "dataValues", type: "bytes[]" } ], name: "setDataBatch", outputs: [], stateMutability: "payable", type: "function" }, { inputs: [ { internalType: "bytes4", name: "interfaceId", type: "bytes4" } ], name: "supportsInterface", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "totalSupply", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "from", type: "address" }, { internalType: "address", name: "to", type: "address" }, { internalType: "uint256", name: "amount", type: "uint256" }, { internalType: "bool", name: "force", type: "bool" }, { internalType: "bytes", name: "data", type: "bytes" } ], name: "transfer", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address[]", name: "from", type: "address[]" }, { internalType: "address[]", name: "to", type: "address[]" }, { internalType: "uint256[]", name: "amount", type: "uint256[]" }, { internalType: "bool[]", name: "force", type: "bool[]" }, { internalType: "bytes[]", name: "data", type: "bytes[]" } ], name: "transferBatch", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "newOwner", type: "address" } ], name: "transferOwnership", outputs: [], stateMutability: "nonpayable", type: "function" }, { stateMutability: "payable", type: "receive" } ]; const _bytecode$6 = "0x60806040523480156200001157600080fd5b506200001c62000022565b620000e3565b600054610100900460ff16156200008f5760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b60005460ff90811614620000e1576000805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b612dcb80620000f36000396000f3fe6080604052600436106101795760003560e01c8063715018a6116100cb5780638da5cb5b1161007f578063d72fc29a11610059578063d72fc29a146104cd578063dedff9c6146104fa578063f2fde38b1461051a576101ed565b80638da5cb5b14610463578063979024211461049a578063b49506fd146104ad576101ed565b8063760d9bba116100b0578063760d9bba1461041057806378381670146104305780637f23690c14610450576101ed565b8063715018a6146103db5780637580d920146103f0576101ed565b806330d0dc371161012d57806365aeaa951161010757806365aeaa95146103585780636963d4381461037857806370a08231146103a5576101ed565b806330d0dc37146102e4578063313ce5671461030457806354f6127f1461032b576101ed565b806318160ddd1161015e57806318160ddd146102855780632bc1da82146102a45780632d7667c9146102c4576101ed565b806301ffc9a71461022e57806304689a8114610263576101ed565b366101ed57346000036101bb5760405163e5099ee360e01b81526004016101b29060208082526004908201526000604082015260600190565b60405180910390fd5b6040517f388f5adc00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6000366060600482101561021857828260405163e5099ee360e01b81526004016101b29291906120b8565b610222838361053a565b80519350602001915050f35b34801561023a57600080fd5b5061024e6102493660046120e7565b610649565b60405190151581526020015b60405180910390f35b34801561026f57600080fd5b5061028361027e366004612202565b610696565b005b34801561029157600080fd5b506003545b60405190815260200161025a565b3480156102b057600080fd5b506102836102bf366004612291565b6107c0565b3480156102d057600080fd5b506102836102df3660046124b6565b610861565b3480156102f057600080fd5b506102836102ff366004612588565b610969565b34801561031057600080fd5b50610319610a2a565b60405160ff909116815260200161025a565b34801561033757600080fd5b5061034b6103463660046125f7565b610a43565b60405161025a9190612660565b34801561036457600080fd5b50610296610373366004612673565b610a4e565b34801561038457600080fd5b506103986103933660046126a6565b610ab4565b60405161025a919061271b565b3480156103b157600080fd5b506102966103c036600461277d565b6001600160a01b031660009081526004602052604090205490565b3480156103e757600080fd5b50610283610c04565b3480156103fc57600080fd5b5061028361040b366004612798565b610c18565b34801561041c57600080fd5b5061028361042b3660046127cc565b610c2c565b34801561043c57600080fd5b5061028361044b366004612838565b610c54565b61028361045e366004612888565b610d51565b34801561046f57600080fd5b506000546201000090046001600160a01b03166040516001600160a01b03909116815260200161025a565b6102836104a83660046128cf565b610d86565b3480156104b957600080fd5b506102836104c8366004612291565b610e78565b3480156104d957600080fd5b506104ed6104e836600461277d565b610eb8565b60405161025a9190612929565b34801561050657600080fd5b50610398610515366004612976565b610edc565b34801561052657600080fd5b5061028361053536600461277d565b610f87565b606060006105536000356001600160e01b031916610fdb565b5090506001600160a01b0381166105a4576040517fbb370b2b0000000000000000000000000000000000000000000000000000000081526001600160e01b03196000351660048201526024016101b2565b600080826001600160a01b031634878733346040516020016105c994939291906129ab565b60408051601f19818403018152908290526105e3916129db565b60006040518083038185875af1925050503d8060008114610620576040519150601f19603f3d011682016040523d82523d6000602084013e610625565b606091505b5091509150811561063a579250610643915050565b80518060208301fd5b92915050565b60006001600160e01b031982167fc52d6008000000000000000000000000000000000000000000000000000000001480610687575061068782611085565b806106435750610643826110c3565b600054610100900460ff16158080156106b65750600054600160ff909116105b806106d05750303b1580156106d0575060005460ff166001145b6107425760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a656400000000000000000000000000000000000060648201526084016101b2565b6000805460ff191660011790558015610765576000805461ff0019166101001790555b6107728686868686611101565b80156107b8576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b505050505050565b60006107cc8433610a4e565b905080600003610813576040517fcba6e9770000000000000000000000000000000000000000000000000000000081526001600160a01b03851660048201526024016101b2565b600061081f8483612a0d565b905061082f338683600187611179565b600033828560405160200161084693929190612a20565b60405160208183030381529060405290506107b8868261131e565b8451845181141580610874575083518114155b80610880575082518114155b8061088c575081518114155b156108c3576040517f263eee8d00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60005b81811015610960576109588782815181106108e3576108e3612a51565b60200260200101518783815181106108fd576108fd612a51565b602002602001015187848151811061091757610917612a51565b602002602001015187858151811061093157610931612a51565b602002602001015187868151811061094b5761094b612a51565b6020026020010151610c2c565b6001016108c6565b50505050505050565b336001600160a01b0384161480159061098b5750336001600160a01b03851614155b156109db576040517f1a525b320000000000000000000000000000000000000000000000000000000081523360048201526001600160a01b038085166024830152851660448201526064016101b2565b6109e9838560008585611179565b8115610a2457600083600083604051602001610a0793929190612a67565b6040516020818303038152906040529050610a22858261131e565b505b50505050565b60025460009060ff16610a3d5750601290565b50600090565b606061064382611349565b6000826001600160a01b0316826001600160a01b031603610a8857506001600160a01b038116600090815260046020526040902054610643565b506001600160a01b03808216600090815260066020908152604080832093861683529290522054610643565b60608167ffffffffffffffff811115610acf57610acf612111565b604051908082528060200260200182016040528015610b0257816020015b6060815260200190600190039081610aed5790505b50905060005b82811015610bfd5760008030868685818110610b2657610b26612a51565b9050602002810190610b389190612a92565b604051610b46929190612ae0565b600060405180830381855af49150503d8060008114610b81576040519150601f19603f3d011682016040523d82523d6000602084013e610b86565b606091505b509150915081610bd557805115610ba05780518082602001fd5b6040517fb774c284000000000000000000000000000000000000000000000000000000008152600481018490526024016101b2565b80848481518110610be857610be8612a51565b60209081029190910101525050600101610b08565b5092915050565b610c0c6113eb565b610c166000611438565b565b610c206113eb565b610a24848484846114cf565b336001600160a01b03861614610c4757610c473386856115be565b610a228585858585611665565b336001600160a01b03841614801590610c765750336001600160a01b03851614155b15610cc6576040517f98ce29450000000000000000000000000000000000000000000000000000000081523360048201526001600160a01b038085166024830152851660448201526064016101b2565b6000610cd28585610a4e565b905082811015610d0e576040517f0ef76c3500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b828103610d1f858783600187611179565b6000858285604051602001610d3693929190612a20565b6040516020818303038152906040529050610960878261131e565b610d596113eb565b3415610d785760405163f36ba73760e01b815260040160405180910390fd5b610d828282611802565b5050565b610d8e6113eb565b3415610dad5760405163f36ba73760e01b815260040160405180910390fd5b8051825114610de8576040517f3bcc897900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b8151600003610e23576040517f97da5f9500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60005b8251811015610e7357610e6b838281518110610e4457610e44612a51565b6020026020010151838381518110610e5e57610e5e612a51565b6020026020010151611802565b600101610e26565b505050565b610e86338484600185611179565b6000338383604051602001610e9d93929190612a20565b6040516020818303038152906040529050610a24848261131e565b6001600160a01b03811660009081526005602052604090206060906106439061180c565b6060815167ffffffffffffffff811115610ef857610ef8612111565b604051908082528060200260200182016040528015610f2b57816020015b6060815260200190600190039081610f165790505b50905060005b8251811015610f8157610f5c838281518110610f4f57610f4f612a51565b6020026020010151611349565b828281518110610f6e57610f6e612a51565b6020908102919091010152600101610f31565b50919050565b610f8f6113eb565b6001600160a01b038116610fcf576040517f1ad8836c00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b610fd881611438565b50565b600080806110137fcee78b4094da86011096000000000000000000000000000000000000000000006001600160e01b03198616611819565b9050600061102082611349565b905080516014141580156110345750805115155b1561106d57806040517f42bfe79f0000000000000000000000000000000000000000000000000000000081526004016101b29190612660565b61107681612af0565b60601c95600195509350505050565b60006001600160e01b031982167fa918fa6b00000000000000000000000000000000000000000000000000000000148061064357506106438261188a565b6000806110d66301ffc9a760e01b610fdb565b5090506001600160a01b0381166110f05750600092915050565b6110fa81846118d8565b9392505050565b600054610100900460ff1661116c5760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b60648201526084016101b2565b610a228585858585611976565b6001600160a01b0384166111b9576040517f6355e76600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b846001600160a01b0316846001600160a01b031603611204576040517fdab7504700000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6001600160a01b03808616600090815260066020908152604080832093881683529290522083905582156112a6576001600160a01b03851660009081526005602052604090206112549085611a04565b5082856001600160a01b0316856001600160a01b03167ff772a43bfdf4729b196e3fb54a818b91a2ca6c49d10b2e16278752f9f515c25d846040516112999190612660565b60405180910390a4610a22565b6001600160a01b03851660009081526005602052604090206112c89085611a19565b50811515856001600160a01b0316856001600160a01b03167f0ebf5762d8855cbe012d2ca42fb33a81175e17c8a8751f8859931ba453bd41678460405161130f9190612660565b60405180910390a45050505050565b610d82827f386072cc5a58e61263b434c722725f21031cd06e7c552cfaa06db5de8a320dbc83611a2e565b600081815260016020526040902080546060919061136690612b2c565b80601f016020809104026020016040519081016040528092919081815260200182805461139290612b2c565b80156113df5780601f106113b4576101008083540402835291602001916113df565b820191906000526020600020905b8154815290600101906020018083116113c257829003601f168201915b50505050509050919050565b6000546001600160a01b0362010000909104163314610c16576040517fbf1169c50000000000000000000000000000000000000000000000000000000081523360048201526024016101b2565b6000546001600160a01b03828116620100009092041614610fd857600080546040516001600160a01b03808516936201000090930416917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b03831662010000027fffffffffffffffffffff0000000000000000000000000000000000000000ffff90911617905550565b6001600160a01b0384166114f657604051630d2d5ec360e41b815260040160405180910390fd5b82600360008282546115089190612a0d565b90915550506001600160a01b03841660009081526004602052604081208054859290611535908490612a0d565b90915550506040516001600160a01b0385169060009033907f3997e418d2cef0b3b0e907b1e39605c3f7d32dbd061e82ea5b4a770d46a160a69061157e90889088908890612b60565b60405180910390a460003360008686856040516020016115a2959493929190612b81565b6040516020818303038152906040529050610a22858483611ac2565b6001600160a01b038083166000908152600660209081526040808320938716835292905220548082111561163f576040517ff3a6b6910000000000000000000000000000000000000000000000000000000081526001600160a01b0380851660048301526024820183905285166044820152606481018390526084016101b2565b610a24838561164e8585612bbb565b600060405180602001604052806000815250611179565b6001600160a01b038516158061168257506001600160a01b038416155b156116a057604051630d2d5ec360e41b815260040160405180910390fd5b6001600160a01b0385166000908152600460205260409020548084111561170c576040517f08d47949000000000000000000000000000000000000000000000000000000008152600481018290526001600160a01b0387166024820152604481018590526064016101b2565b6001600160a01b03861660009081526004602052604081208054869290611734908490612bbb565b90915550506001600160a01b03851660009081526004602052604081208054869290611761908490612a0d565b92505081905550846001600160a01b0316866001600160a01b0316336001600160a01b03167f3997e418d2cef0b3b0e907b1e39605c3f7d32dbd061e82ea5b4a770d46a160a68787876040516117b993929190612b60565b60405180910390a4600033878787866040516020016117dc959493929190612b81565b60405160208183030381529060405290506117f78782611bb5565b610960868583611ac2565b610d828282611be0565b606060006110fa83611d40565b604080517fffffffffffffffffffff00000000000000000000000000000000000000000000841660208201526000602a82018190526bffffffffffffffffffffffff198416602c8301529182910160405160208183030381529060405290508061188290612bce565b949350505050565b60006001600160e01b031982167f629aa69400000000000000000000000000000000000000000000000000000000148061064357506301ffc9a760e01b6001600160e01b0319831614610643565b604080516001600160e01b03198316602480830191909152825180830390910181526044909101909152602080820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff166301ffc9a760e01b178152825160009392849283928392918391908a617530fa92503d9150600051905082801561195f575060208210155b801561196b5750600081115b979650505050505050565b600054610100900460ff166119e15760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b60648201526084016101b2565b6119ed85858585611d9b565b6002805460ff191691151591909117905550505050565b60006110fa836001600160a01b038416611f0b565b60006110fa836001600160a01b038416611f5a565b611a486001600160a01b038416631aed5a8560e21b6118d8565b15610e7357604051631aed5a8560e21b81526001600160a01b03841690636bb56a1490611a7b9085908590600401612bf2565b6000604051808303816000875af1158015611a9a573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610a249190810190612c0b565b611ad383631aed5a8560e21b6118d8565b15611b2657604051631aed5a8560e21b81526001600160a01b03841690636bb56a1490611a7b907f20804611b3e2ea21c480dc465142210acf4a2485947541770ec1fb87dee4a55c908590600401612bf2565b81610e73576001600160a01b0383163b15611b78576040517fa608fbb60000000000000000000000000000000000000000000000000000000081526001600160a01b03841660048201526024016101b2565b6040517f26c247f40000000000000000000000000000000000000000000000000000000081526001600160a01b03841660048201526024016101b2565b610d82827f429ac7a06903dbc9c13dfcb3c9d11df8194581fa047c96d7a4171fc7402958ea83611a2e565b7f2145e1d6d074577dc71ef54c3807742b41b053a9352ae6b491331509acb9750f8201611c39576040517f85c169bd00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b7fd0f59754f88971fe6bc5a6618cc9d5f1e859c58d16b22d1c7b2d3e2b246cd8aa8201611c92576040517f76755b3800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b7f1fd9e056a24d14c4abc642fcc325992a946906d0dbc57dd70278aaf12842024d8201611ceb576040517f4ef6d7fb00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6000828152600160205260409020611d038282612cbf565b50817fece574603820d07bc9b91f2a932baadf4628aabcb8afba49776529c14a6104b282604051611d349190612660565b60405180910390a25050565b6060816000018054806020026020016040519081016040528092919081815260200182805480156113df57602002820191906000526020600020905b815481526020019060010190808311611d7c5750505050509050919050565b600054610100900460ff16611e065760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b60648201526084016101b2565b611e0f8261204d565b611e717feafec4d89fa9619884b60000a4d96624a38f7ac2d8d9a604ecf07c12c77e480c60001b6040518060400160405280600481526020017fa4d9662400000000000000000000000000000000000000000000000000000000815250611ceb565b611e9b7fdeba1e292f8ba88238e10ab3c7f88bd4be4fac56cad5194b6ecceaf653468af185611ceb565b611ec57f2f0a68ab07768e01943a599e73362a0e17a63a72e94dd2e384d2c1d4db93275684611ceb565b6040805160208101839052610a24917fe0261fa95db2eb3b5439bd033cda66d56b96f92f243a8228fd87550ed7bdfdb39101604051602081830303815290604052611ceb565b6000818152600183016020526040812054611f5257508154600181810184556000848152602080822090930184905584548482528286019093526040902091909155610643565b506000610643565b60008181526001830160205260408120548015612043576000611f7e600183612bbb565b8554909150600090611f9290600190612bbb565b9050818114611ff7576000866000018281548110611fb257611fb2612a51565b9060005260206000200154905080876000018481548110611fd557611fd5612a51565b6000918252602080832090910192909255918252600188019052604090208390555b855486908061200857612008612d7f565b600190038181906000526020600020016000905590558560010160008681526020019081526020016000206000905560019350505050610643565b6000915050610643565b600054610100900460ff16610f8f5760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b60648201526084016101b2565b60208152816020820152818360408301376000818301604090810191909152601f909201601f19160101919050565b6000602082840312156120f957600080fd5b81356001600160e01b0319811681146110fa57600080fd5b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f1916810167ffffffffffffffff8111828210171561215057612150612111565b604052919050565b600067ffffffffffffffff82111561217257612172612111565b50601f01601f191660200190565b600082601f83011261219157600080fd5b81356121a461219f82612158565b612127565b8181528460208386010111156121b957600080fd5b816020850160208301376000918101602001919091529392505050565b80356001600160a01b03811681146121ed57600080fd5b919050565b803580151581146121ed57600080fd5b600080600080600060a0868803121561221a57600080fd5b853567ffffffffffffffff8082111561223257600080fd5b61223e89838a01612180565b9650602088013591508082111561225457600080fd5b5061226188828901612180565b945050612270604087016121d6565b925060608601359150612285608087016121f2565b90509295509295909350565b6000806000606084860312156122a657600080fd5b6122af846121d6565b925060208401359150604084013567ffffffffffffffff8111156122d257600080fd5b6122de86828701612180565b9150509250925092565b600067ffffffffffffffff82111561230257612302612111565b5060051b60200190565b600082601f83011261231d57600080fd5b8135602061232d61219f836122e8565b82815260059290921b8401810191818101908684111561234c57600080fd5b8286015b8481101561236e57612361816121d6565b8352918301918301612350565b509695505050505050565b600082601f83011261238a57600080fd5b8135602061239a61219f836122e8565b82815260059290921b840181019181810190868411156123b957600080fd5b8286015b8481101561236e57803583529183019183016123bd565b600082601f8301126123e557600080fd5b813560206123f561219f836122e8565b82815260059290921b8401810191818101908684111561241457600080fd5b8286015b8481101561236e57612429816121f2565b8352918301918301612418565b600082601f83011261244757600080fd5b8135602061245761219f836122e8565b82815260059290921b8401810191818101908684111561247657600080fd5b8286015b8481101561236e57803567ffffffffffffffff81111561249a5760008081fd5b6124a88986838b0101612180565b84525091830191830161247a565b600080600080600060a086880312156124ce57600080fd5b853567ffffffffffffffff808211156124e657600080fd5b6124f289838a0161230c565b9650602088013591508082111561250857600080fd5b61251489838a0161230c565b9550604088013591508082111561252a57600080fd5b61253689838a01612379565b9450606088013591508082111561254c57600080fd5b61255889838a016123d4565b9350608088013591508082111561256e57600080fd5b5061257b88828901612436565b9150509295509295909350565b6000806000806080858703121561259e57600080fd5b6125a7856121d6565b93506125b5602086016121d6565b92506125c3604086016121f2565b9150606085013567ffffffffffffffff8111156125df57600080fd5b6125eb87828801612180565b91505092959194509250565b60006020828403121561260957600080fd5b5035919050565b60005b8381101561262b578181015183820152602001612613565b50506000910152565b6000815180845261264c816020860160208601612610565b601f01601f19169290920160200192915050565b6020815260006110fa6020830184612634565b6000806040838503121561268657600080fd5b61268f836121d6565b915061269d602084016121d6565b90509250929050565b600080602083850312156126b957600080fd5b823567ffffffffffffffff808211156126d157600080fd5b818501915085601f8301126126e557600080fd5b8135818111156126f457600080fd5b8660208260051b850101111561270957600080fd5b60209290920196919550909350505050565b6000602080830181845280855180835260408601915060408160051b870101925083870160005b8281101561277057603f1988860301845261275e858351612634565b94509285019290850190600101612742565b5092979650505050505050565b60006020828403121561278f57600080fd5b6110fa826121d6565b600080600080608085870312156127ae57600080fd5b6127b7856121d6565b9350602085013592506125c3604086016121f2565b600080600080600060a086880312156127e457600080fd5b6127ed866121d6565b94506127fb602087016121d6565b935060408601359250612810606087016121f2565b9150608086013567ffffffffffffffff81111561282c57600080fd5b61257b88828901612180565b6000806000806080858703121561284e57600080fd5b612857856121d6565b9350612865602086016121d6565b925060408501359150606085013567ffffffffffffffff8111156125df57600080fd5b6000806040838503121561289b57600080fd5b82359150602083013567ffffffffffffffff8111156128b957600080fd5b6128c585828601612180565b9150509250929050565b600080604083850312156128e257600080fd5b823567ffffffffffffffff808211156128fa57600080fd5b61290686838701612379565b9350602085013591508082111561291c57600080fd5b506128c585828601612436565b6020808252825182820181905260009190848201906040850190845b8181101561296a5783516001600160a01b031683529284019291840191600101612945565b50909695505050505050565b60006020828403121561298857600080fd5b813567ffffffffffffffff81111561299f57600080fd5b61188284828501612379565b8385823760609290921b6bffffffffffffffffffffffff1916919092019081526014810191909152603401919050565b600082516129ed818460208701612610565b9190910192915050565b634e487b7160e01b600052601160045260246000fd5b80820180821115610643576106436129f7565b6001600160a01b0384168152826020820152606060408201526000612a486060830184612634565b95945050505050565b634e487b7160e01b600052603260045260246000fd5b6001600160a01b038416815260ff83166020820152606060408201526000612a486060830184612634565b6000808335601e19843603018112612aa957600080fd5b83018035915067ffffffffffffffff821115612ac457600080fd5b602001915036819003821315612ad957600080fd5b9250929050565b8183823760009101908152919050565b805160208201516bffffffffffffffffffffffff198082169291906014831015612b245780818460140360031b1b83161693505b505050919050565b600181811c90821680612b4057607f821691505b602082108103610f8157634e487b7160e01b600052602260045260246000fd5b8381528215156020820152606060408201526000612a486060830184612634565b60006001600160a01b038088168352808716602084015280861660408401525083606083015260a0608083015261196b60a0830184612634565b81810381811115610643576106436129f7565b80516020808301519190811015610f815760001960209190910360031b1b16919050565b8281526040602082015260006118826040830184612634565b600060208284031215612c1d57600080fd5b815167ffffffffffffffff811115612c3457600080fd5b8201601f81018413612c4557600080fd5b8051612c5361219f82612158565b818152856020838501011115612c6857600080fd5b612a48826020830160208601612610565b601f821115610e7357600081815260208120601f850160051c81016020861015612ca05750805b601f850160051c820191505b818110156107b857828155600101612cac565b815167ffffffffffffffff811115612cd957612cd9612111565b612ced81612ce78454612b2c565b84612c79565b602080601f831160018114612d225760008415612d0a5750858301515b600019600386901b1c1916600185901b1785556107b8565b600085815260208120601f198616915b82811015612d5157888601518255948401946001909101908401612d32565b5085821015612d6f5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b634e487b7160e01b600052603160045260246000fdfea2646970667358221220f3d611a010659ef1f2cc48d08686cd35d550f9786aa59a9a3fe8907c3e04160c64736f6c63430008110033"; const isSuperArgs$6 = (xs) => xs.length > 1; class LSP7MintableInit__factory extends ethers.ContractFactory { constructor(...args) { if (isSuperArgs$6(args)) { super(...args); } else { super(_abi$a, _bytecode$6, args[0]); } } getDeployTransaction(overrides) { return super.getDeployTransaction(overrides || {}); } deploy(overrides) { return super.deploy(overrides || {}); } connect(runner) { return super.connect(runner); } static createInterface() { return new ethers.Interface(_abi$a); } static connect(address, runner) { return new ethers.Contract(address, _abi$a, runner); } } __publicField$a(LSP7MintableInit__factory, "bytecode", _bytecode$6); __publicField$a(LSP7MintableInit__factory, "abi", _abi$a); var __defProp$9 = Object.defineProperty; var __defNormalProp$9 = (obj, key, value) => key in obj ? __defProp$9(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$9 = (obj, key, value) => { __defNormalProp$9(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$9 = [ { inputs: [], name: "ERC725Y_DataKeysValuesEmptyArray", type: "error" }, { inputs: [], name: "ERC725Y_DataKeysValuesLengthMismatch", type: "error" }, { inputs: [], name: "ERC725Y_MsgValueDisallowed", type: "error" }, { inputs: [ { internalType: "bytes", name: "storedData", type: "bytes" } ], name: "InvalidExtensionAddress", type: "error" }, { inputs: [ { internalType: "bytes", name: "data", type: "bytes" } ], name: "InvalidFunctionSelector", type: "error" }, { inputs: [], name: "LSP4TokenNameNotEditable", type: "error" }, { inputs: [], name: "LSP4TokenSymbolNotEditable", type: "error" }, { inputs: [], name: "LSP4TokenTypeNotEditable", type: "error" }, { inputs: [ { internalType: "uint256", name: "callIndex", type: "uint256" } ], name: "LSP8BatchCallFailed", type: "error" }, { inputs: [], name: "LSP8CannotSendToAddressZero", type: "error" }, { inputs: [], name: "LSP8CannotUseAddressZeroAsOperator", type: "error" }, { inputs: [], name: "LSP8CappedSupplyCannotMintOverCap", type: "error" }, { inputs: [], name: "LSP8CappedSupplyRequired", type: "error" }, { inputs: [], name: "LSP8InvalidTransferBatch", type: "error" }, { inputs: [ { internalType: "bytes32", name: "tokenId", type: "bytes32" } ], name: "LSP8NonExistentTokenId", type: "error" }, { inputs: [ { internalType: "address", name: "operator", type: "address" }, { internalType: "bytes32", name: "tokenId", type: "bytes32" } ], name: "LSP8NonExistingOperator", type: "error" }, { inputs: [ { internalType: "bytes32", name: "tokenId", type: "bytes32" }, { internalType: "address", name: "caller", type: "address" } ], name: "LSP8NotTokenOperator", type: "error" }, { inputs: [ { internalType: "address", name: "tokenOwner", type: "address" }, { internalType: "bytes32", name: "tokenId", type: "bytes32" }, { internalType: "address", name: "caller", type: "address" } ], name: "LSP8NotTokenOwner", type: "error" }, { inputs: [ { internalType: "address", name: "tokenReceiver", type: "address" } ], name: "LSP8NotifyTokenReceiverContractMissingLSP1Interface", type: "error" }, { inputs: [ { internalType: "address", name: "tokenReceiver", type: "address" } ], name: "LSP8NotifyTokenReceiverIsEOA", type: "error" }, { inputs: [ { internalType: "address", name: "operator", type: "address" }, { internalType: "bytes32", name: "tokenId", type: "bytes32" } ], name: "LSP8OperatorAlreadyAuthorized", type: "error" }, { inputs: [ { internalType: "address", name: "caller", type: "address" }, { internalType: "address", name: "tokenOwner", type: "address" }, { internalType: "bytes32", name: "tokenId", type: "bytes32" } ], name: "LSP8RevokeOperatorNotAuthorized", type: "error" }, { inputs: [], name: "LSP8TokenContractCannotHoldValue", type: "error" }, { inputs: [], name: "LSP8TokenIdFormatNotEditable", type: "error" }, { inputs: [], name: "LSP8TokenIdsDataEmptyArray", type: "error" }, { inputs: [], name: "LSP8TokenIdsDataLengthMismatch", type: "error" }, { inputs: [], name: "LSP8TokenOwnerCannotBeOperator", type: "error" }, { inputs: [ { internalType: "bytes32", name: "tokenId", type: "bytes32" }, { internalType: "address", name: "oldOwner", type: "address" }, { internalType: "address", name: "newOwner", type: "address" } ], name: "LSP8TokenOwnerChanged", type: "error" }, { inputs: [ { internalType: "bytes4", name: "functionSelector", type: "bytes4" } ], name: "NoExtensionFoundForFunctionSelector", type: "error" }, { inputs: [ { internalType: "address", name: "callerAddress", type: "address" } ], name: "OwnableCallerNotTheOwner", type: "error" }, { inputs: [], name: "OwnableCannotSetZeroAddressAsOwner", type: "error" }, { anonymous: false, inputs: [ { indexed: true, internalType: "bytes32", name: "dataKey", type: "bytes32" }, { indexed: false, internalType: "bytes", name: "dataValue", type: "bytes" } ], name: "DataChanged", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "operator", type: "address" }, { indexed: true, internalType: "address", name: "tokenOwner", type: "address" }, { indexed: true, internalType: "bytes32", name: "tokenId", type: "bytes32" }, { indexed: false, internalType: "bytes", name: "operatorNotificationData", type: "bytes" } ], name: "OperatorAuthorizationChanged", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "operator", type: "address" }, { indexed: true, internalType: "address", name: "tokenOwner", type: "address" }, { indexed: true, internalType: "bytes32", name: "tokenId", type: "bytes32" }, { indexed: false, internalType: "bool", name: "notified", type: "bool" }, { indexed: false, internalType: "bytes", name: "operatorNotificationData", type: "bytes" } ], name: "OperatorRevoked", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "previousOwner", type: "address" }, { indexed: true, internalType: "address", name: "newOwner", type: "address" } ], name: "OwnershipTransferred", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "bytes32", name: "tokenId", type: "bytes32" }, { indexed: true, internalType: "bytes32", name: "dataKey", type: "bytes32" }, { indexed: false, internalType: "bytes", name: "dataValue", type: "bytes" } ], name: "TokenIdDataChanged", type: "event" }, { anonymous: false, inputs: [ { indexed: false, internalType: "address", name: "operator", type: "address" }, { indexed: true, internalType: "address", name: "from", type: "address" }, { indexed: true, internalType: "address", name: "to", type: "address" }, { indexed: true, internalType: "bytes32", name: "tokenId", type: "bytes32" }, { indexed: false, internalType: "bool", name: "force", type: "bool" }, { indexed: false, internalType: "bytes", name: "data", type: "bytes" } ], name: "Transfer", type: "event" }, { stateMutability: "payable", type: "fallback" }, { inputs: [ { internalType: "address", name: "operator", type: "address" }, { internalType: "bytes32", name: "tokenId", type: "bytes32" }, { internalType: "bytes", name: "operatorNotificationData", type: "bytes" } ], name: "authorizeOperator", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "tokenOwner", type: "address" } ], name: "balanceOf", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "bytes[]", name: "data", type: "bytes[]" } ], name: "batchCalls", outputs: [ { internalType: "bytes[]", name: "results", type: "bytes[]" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "bytes32", name: "dataKey", type: "bytes32" } ], name: "getData", outputs: [ { internalType: "bytes", name: "dataValue", type: "bytes" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "bytes32[]", name: "dataKeys", type: "bytes32[]" } ], name: "getDataBatch", outputs: [ { internalType: "bytes[]", name: "dataValues", type: "bytes[]" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "bytes32[]", name: "tokenIds", type: "bytes32[]" }, { internalType: "bytes32[]", name: "dataKeys", type: "bytes32[]" } ], name: "getDataBatchForTokenIds", outputs: [ { internalType: "bytes[]", name: "dataValues", type: "bytes[]" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "bytes32", name: "tokenId", type: "bytes32" }, { internalType: "bytes32", name: "dataKey", type: "bytes32" } ], name: "getDataForTokenId", outputs: [ { internalType: "bytes", name: "dataValue", type: "bytes" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "bytes32", name: "tokenId", type: "bytes32" } ], name: "getOperatorsOf", outputs: [ { internalType: "address[]", name: "", type: "address[]" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "operator", type: "address" }, { internalType: "bytes32", name: "tokenId", type: "bytes32" } ], name: "isOperatorFor", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "owner", outputs: [ { internalType: "address", name: "", type: "address" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "renounceOwnership", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "operator", type: "address" }, { internalType: "bytes32", name: "tokenId", type: "bytes32" }, { internalType: "bool", name: "notify", type: "bool" }, { internalType: "bytes", name: "operatorNotificationData", type: "bytes" } ], name: "revokeOperator", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "bytes32", name: "dataKey", type: "bytes32" }, { internalType: "bytes", name: "dataValue", type: "bytes" } ], name: "setData", outputs: [], stateMutability: "payable", type: "function" }, { inputs: [ { internalType: "bytes32[]", name: "dataKeys", type: "bytes32[]" }, { internalType: "bytes[]", name: "dataValues", type: "bytes[]" } ], name: "setDataBatch", outputs: [], stateMutability: "payable", type: "function" }, { inputs: [ { internalType: "bytes32[]", name: "tokenIds", type: "bytes32[]" }, { internalType: "bytes32[]", name: "dataKeys", type: "bytes32[]" }, { internalType: "bytes[]", name: "dataValues", type: "bytes[]" } ], name: "setDataBatchForTokenIds", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "bytes32", name: "tokenId", type: "bytes32" }, { internalType: "bytes32", name: "dataKey", type: "bytes32" }, { internalType: "bytes", name: "dataValue", type: "bytes" } ], name: "setDataForTokenId", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "bytes4", name: "interfaceId", type: "bytes4" } ], name: "supportsInterface", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "tokenOwner", type: "address" } ], name: "tokenIdsOf", outputs: [ { internalType: "bytes32[]", name: "", type: "bytes32[]" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "bytes32", name: "tokenId", type: "bytes32" } ], name: "tokenOwnerOf", outputs: [ { internalType: "address", name: "", type: "address" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "tokenSupplyCap", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "totalSupply", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "from", type: "address" }, { internalType: "address", name: "to", type: "address" }, { internalType: "bytes32", name: "tokenId", type: "bytes32" }, { internalType: "bool", name: "force", type: "bool" }, { internalType: "bytes", name: "data", type: "bytes" } ], name: "transfer", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address[]", name: "from", type: "address[]" }, { internalType: "address[]", name: "to", type: "address[]" }, { internalType: "bytes32[]", name: "tokenId", type: "bytes32[]" }, { internalType: "bool[]", name: "force", type: "bool[]" }, { internalType: "bytes[]", name: "data", type: "bytes[]" } ], name: "transferBatch", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "newOwner", type: "address" } ], name: "transferOwnership", outputs: [], stateMutability: "nonpayable", type: "function" }, { stateMutability: "payable", type: "receive" } ]; class LSP8CappedSupply__factory { static createInterface() { return new ethers.Interface(_abi$9); } static connect(address, runner) { return new ethers.Contract(address, _abi$9, runner); } } __publicField$9(LSP8CappedSupply__factory, "abi", _abi$9); var __defProp$8 = Object.defineProperty; var __defNormalProp$8 = (obj, key, value) => key in obj ? __defProp$8(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$8 = (obj, key, value) => { __defNormalProp$8(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$8 = [ { inputs: [], name: "ERC725Y_DataKeysValuesEmptyArray", type: "error" }, { inputs: [], name: "ERC725Y_DataKeysValuesLengthMismatch", type: "error" }, { inputs: [], name: "ERC725Y_MsgValueDisallowed", type: "error" }, { inputs: [ { internalType: "bytes", name: "storedData", type: "bytes" } ], name: "InvalidExtensionAddress", type: "error" }, { inputs: [ { internalType: "bytes", name: "data", type: "bytes" } ], name: "InvalidFunctionSelector", type: "error" }, { inputs: [], name: "LSP4TokenNameNotEditable", type: "error" }, { inputs: [], name: "LSP4TokenSymbolNotEditable", type: "error" }, { inputs: [], name: "LSP4TokenTypeNotEditable", type: "error" }, { inputs: [ { internalType: "uint256", name: "callIndex", type: "uint256" } ], name: "LSP8BatchCallFailed", type: "error" }, { inputs: [], name: "LSP8CannotSendToAddressZero", type: "error" }, { inputs: [], name: "LSP8CannotUseAddressZeroAsOperator", type: "error" }, { inputs: [], name: "LSP8CappedSupplyCannotMintOverCap", type: "error" }, { inputs: [], name: "LSP8CappedSupplyRequired", type: "error" }, { inputs: [], name: "LSP8InvalidTransferBatch", type: "error" }, { inputs: [ { internalType: "bytes32", name: "tokenId", type: "bytes32" } ], name: "LSP8NonExistentTokenId", type: "error" }, { inputs: [ { internalType: "address", name: "operator", type: "address" }, { internalType: "bytes32", name: "tokenId", type: "bytes32" } ], name: "LSP8NonExistingOperator", type: "error" }, { inputs: [ { internalType: "bytes32", name: "tokenId", type: "bytes32" }, { internalType: "address", name: "caller", type: "address" } ], name: "LSP8NotTokenOperator", type: "error" }, { inputs: [ { internalType: "address", name: "tokenOwner", type: "address" }, { internalType: "bytes32", name: "tokenId", type: "bytes32" }, { internalType: "address", name: "caller", type: "address" } ], name: "LSP8NotTokenOwner", type: "error" }, { inputs: [ { internalType: "address", name: "tokenReceiver", type: "address" } ], name: "LSP8NotifyTokenReceiverContractMissingLSP1Interface", type: "error" }, { inputs: [ { internalType: "address", name: "tokenReceiver", type: "address" } ], name: "LSP8NotifyTokenReceiverIsEOA", type: "error" }, { inputs: [ { internalType: "address", name: "operator", type: "address" }, { internalType: "bytes32", name: "tokenId", type: "bytes32" } ], name: "LSP8OperatorAlreadyAuthorized", type: "error" }, { inputs: [ { internalType: "address", name: "caller", type: "address" }, { internalType: "address", name: "tokenOwner", type: "address" }, { internalType: "bytes32", name: "tokenId", type: "bytes32" } ], name: "LSP8RevokeOperatorNotAuthorized", type: "error" }, { inputs: [], name: "LSP8TokenContractCannotHoldValue", type: "error" }, { inputs: [], name: "LSP8TokenIdFormatNotEditable", type: "error" }, { inputs: [], name: "LSP8TokenIdsDataEmptyArray", type: "error" }, { inputs: [], name: "LSP8TokenIdsDataLengthMismatch", type: "error" }, { inputs: [], name: "LSP8TokenOwnerCannotBeOperator", type: "error" }, { inputs: [ { internalType: "bytes32", name: "tokenId", type: "bytes32" }, { internalType: "address", name: "oldOwner", type: "address" }, { internalType: "address", name: "newOwner", type: "address" } ], name: "LSP8TokenOwnerChanged", type: "error" }, { inputs: [ { internalType: "bytes4", name: "functionSelector", type: "bytes4" } ], name: "NoExtensionFoundForFunctionSelector", type: "error" }, { inputs: [ { internalType: "address", name: "callerAddress", type: "address" } ], name: "OwnableCallerNotTheOwner", type: "error" }, { inputs: [], name: "OwnableCannotSetZeroAddressAsOwner", type: "error" }, { anonymous: false, inputs: [ { indexed: true, internalType: "bytes32", name: "dataKey", type: "bytes32" }, { indexed: false, internalType: "bytes", name: "dataValue", type: "bytes" } ], name: "DataChanged", type: "event" }, { anonymous: false, inputs: [ { indexed: false, internalType: "uint8", name: "version", type: "uint8" } ], name: "Initialized", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "operator", type: "address" }, { indexed: true, internalType: "address", name: "tokenOwner", type: "address" }, { indexed: true, internalType: "bytes32", name: "tokenId", type: "bytes32" }, { indexed: false, internalType: "bytes", name: "operatorNotificationData", type: "bytes" } ], name: "OperatorAuthorizationChanged", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "operator", type: "address" }, { indexed: true, internalType: "address", name: "tokenOwner", type: "address" }, { indexed: true, internalType: "bytes32", name: "tokenId", type: "bytes32" }, { indexed: false, internalType: "bool", name: "notified", type: "bool" }, { indexed: false, internalType: "bytes", name: "operatorNotificationData", type: "bytes" } ], name: "OperatorRevoked", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "previousOwner", type: "address" }, { indexed: true, internalType: "address", name: "newOwner", type: "address" } ], name: "OwnershipTransferred", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "bytes32", name: "tokenId", type: "bytes32" }, { indexed: true, internalType: "bytes32", name: "dataKey", type: "bytes32" }, { indexed: false, internalType: "bytes", name: "dataValue", type: "bytes" } ], name: "TokenIdDataChanged", type: "event" }, { anonymous: false, inputs: [ { indexed: false, internalType: "address", name: "operator", type: "address" }, { indexed: true, internalType: "address", name: "from", type: "address" }, { indexed: true, internalType: "address", name: "to", type: "address" }, { indexed: true, internalType: "bytes32", name: "tokenId", type: "bytes32" }, { indexed: false, internalType: "bool", name: "force", type: "bool" }, { indexed: false, internalType: "bytes", name: "data", type: "bytes" } ], name: "Transfer", type: "event" }, { stateMutability: "payable", type: "fallback" }, { inputs: [ { internalType: "address", name: "operator", type: "address" }, { internalType: "bytes32", name: "tokenId", type: "bytes32" }, { internalType: "bytes", name: "operatorNotificationData", type: "bytes" } ], name: "authorizeOperator", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "tokenOwner", type: "address" } ], name: "balanceOf", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "bytes[]", name: "data", type: "bytes[]" } ], name: "batchCalls", outputs: [ { internalType: "bytes[]", name: "results", type: "bytes[]" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "bytes32", name: "dataKey", type: "bytes32" } ], name: "getData", outputs: [ { internalType: "bytes", name: "dataValue", type: "bytes" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "bytes32[]", name: "dataKeys", type: "bytes32[]" } ], name: "getDataBatch", outputs: [ { internalType: "bytes[]", name: "dataValues", type: "bytes[]" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "bytes32[]", name: "tokenIds", type: "bytes32[]" }, { internalType: "bytes32[]", name: "dataKeys", type: "bytes32[]" } ], name: "getDataBatchForTokenIds", outputs: [ { internalType: "bytes[]", name: "dataValues", type: "bytes[]" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "bytes32", name: "tokenId", type: "bytes32" }, { internalType: "bytes32", name: "dataKey", type: "bytes32" } ], name: "getDataForTokenId", outputs: [ { internalType: "bytes", name: "dataValue", type: "bytes" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "bytes32", name: "tokenId", type: "bytes32" } ], name: "getOperatorsOf", outputs: [ { internalType: "address[]", name: "", type: "address[]" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "operator", type: "address" }, { internalType: "bytes32", name: "tokenId", type: "bytes32" } ], name: "isOperatorFor", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "owner", outputs: [ { internalType: "address", name: "", type: "address" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "renounceOwnership", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "operator", type: "address" }, { internalType: "bytes32", name: "tokenId", type: "bytes32" }, { internalType: "bool", name: "notify", type: "bool" }, { internalType: "bytes", name: "operatorNotificationData", type: "bytes" } ], name: "revokeOperator", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "bytes32", name: "dataKey", type: "bytes32" }, { internalType: "bytes", name: "dataValue", type: "bytes" } ], name: "setData", outputs: [], stateMutability: "payable", type: "function" }, { inputs: [ { internalType: "bytes32[]", name: "dataKeys", type: "bytes32[]" }, { internalType: "bytes[]", name: "dataValues", type: "bytes[]" } ], name: "setDataBatch", outputs: [], stateMutability: "payable", type: "function" }, { inputs: [ { internalType: "bytes32[]", name: "tokenIds", type: "bytes32[]" }, { internalType: "bytes32[]", name: "dataKeys", type: "bytes32[]" }, { internalType: "bytes[]", name: "dataValues", type: "bytes[]" } ], name: "setDataBatchForTokenIds", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "bytes32", name: "tokenId", type: "bytes32" }, { internalType: "bytes32", name: "dataKey", type: "bytes32" }, { internalType: "bytes", name: "dataValue", type: "bytes" } ], name: "setDataForTokenId", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "bytes4", name: "interfaceId", type: "bytes4" } ], name: "supportsInterface", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "tokenOwner", type: "address" } ], name: "tokenIdsOf", outputs: [ { internalType: "bytes32[]", name: "", type: "bytes32[]" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "bytes32", name: "tokenId", type: "bytes32" } ], name: "tokenOwnerOf", outputs: [ { internalType: "address", name: "", type: "address" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "tokenSupplyCap", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "totalSupply", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "from", type: "address" }, { internalType: "address", name: "to", type: "address" }, { internalType: "bytes32", name: "tokenId", type: "bytes32" }, { internalType: "bool", name: "force", type: "bool" }, { internalType: "bytes", name: "data", type: "bytes" } ], name: "transfer", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address[]", name: "from", type: "address[]" }, { internalType: "address[]", name: "to", type: "address[]" }, { internalType: "bytes32[]", name: "tokenId", type: "bytes32[]" }, { internalType: "bool[]", name: "force", type: "bool[]" }, { internalType: "bytes[]", name: "data", type: "bytes[]" } ], name: "transferBatch", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "newOwner", type: "address" } ], name: "transferOwnership", outputs: [], stateMutability: "nonpayable", type: "function" }, { stateMutability: "payable", type: "receive" } ]; class LSP8CappedSupplyInitAbstract__factory { static createInterface() { return new ethers.Interface(_abi$8); } static connect(address, runner) { return new ethers.Contract( address, _abi$8, runner ); } } __publicField$8(LSP8CappedSupplyInitAbstract__factory, "abi", _abi$8); var __defProp$7 = Object.defineProperty; var __defNormalProp$7 = (obj, key, value) => key in obj ? __defProp$7(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$7 = (obj, key, value) => { __defNormalProp$7(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$7 = [ { inputs: [], name: "ERC725Y_DataKeysValuesEmptyArray", type: "error" }, { inputs: [], name: "ERC725Y_DataKeysValuesLengthMismatch", type: "error" }, { inputs: [], name: "ERC725Y_MsgValueDisallowed", type: "error" }, { inputs: [ { internalType: "bytes", name: "storedData", type: "bytes" } ], name: "InvalidExtensionAddress", type: "error" }, { inputs: [ { internalType: "bytes", name: "data", type: "bytes" } ], name: "InvalidFunctionSelector", type: "error" }, { inputs: [], name: "LSP4TokenNameNotEditable", type: "error" }, { inputs: [], name: "LSP4TokenSymbolNotEditable", type: "error" }, { inputs: [], name: "LSP4TokenTypeNotEditable", type: "error" }, { inputs: [ { internalType: "uint256", name: "callIndex", type: "uint256" } ], name: "LSP8BatchCallFailed", type: "error" }, { inputs: [], name: "LSP8CannotSendToAddressZero", type: "error" }, { inputs: [], name: "LSP8CannotUseAddressZeroAsOperator", type: "error" }, { inputs: [], name: "LSP8InvalidTransferBatch", type: "error" }, { inputs: [ { internalType: "bytes32", name: "tokenId", type: "bytes32" } ], name: "LSP8NonExistentTokenId", type: "error" }, { inputs: [ { internalType: "address", name: "operator", type: "address" }, { internalType: "bytes32", name: "tokenId", type: "bytes32" } ], name: "LSP8NonExistingOperator", type: "error" }, { inputs: [ { internalType: "bytes32", name: "tokenId", type: "bytes32" }, { internalType: "address", name: "caller", type: "address" } ], name: "LSP8NotTokenOperator", type: "error" }, { inputs: [ { internalType: "address", name: "tokenOwner", type: "address" }, { internalType: "bytes32", name: "tokenId", type: "bytes32" }, { internalType: "address", name: "caller", type: "address" } ], name: "LSP8NotTokenOwner", type: "error" }, { inputs: [ { internalType: "address", name: "tokenReceiver", type: "address" } ], name: "LSP8NotifyTokenReceiverContractMissingLSP1Interface", type: "error" }, { inputs: [ { internalType: "address", name: "tokenReceiver", type: "address" } ], name: "LSP8NotifyTokenReceiverIsEOA", type: "error" }, { inputs: [ { internalType: "address", name: "operator", type: "address" }, { internalType: "bytes32", name: "tokenId", type: "bytes32" } ], name: "LSP8OperatorAlreadyAuthorized", type: "error" }, { inputs: [ { internalType: "address", name: "caller", type: "address" }, { internalType: "address", name: "tokenOwner", type: "address" }, { internalType: "bytes32", name: "tokenId", type: "bytes32" } ], name: "LSP8RevokeOperatorNotAuthorized", type: "error" }, { inputs: [], name: "LSP8TokenContractCannotHoldValue", type: "error" }, { inputs: [], name: "LSP8TokenIdFormatNotEditable", type: "error" }, { inputs: [], name: "LSP8TokenIdsDataEmptyArray", type: "error" }, { inputs: [], name: "LSP8TokenIdsDataLengthMismatch", type: "error" }, { inputs: [], name: "LSP8TokenOwnerCannotBeOperator", type: "error" }, { inputs: [ { internalType: "bytes32", name: "tokenId", type: "bytes32" }, { internalType: "address", name: "oldOwner", type: "address" }, { internalType: "address", name: "newOwner", type: "address" } ], name: "LSP8TokenOwnerChanged", type: "error" }, { inputs: [ { internalType: "bytes4", name: "functionSelector", type: "bytes4" } ], name: "NoExtensionFoundForFunctionSelector", type: "error" }, { inputs: [ { internalType: "address", name: "callerAddress", type: "address" } ], name: "OwnableCallerNotTheOwner", type: "error" }, { inputs: [], name: "OwnableCannotSetZeroAddressAsOwner", type: "error" }, { anonymous: false, inputs: [ { indexed: true, internalType: "bytes32", name: "dataKey", type: "bytes32" }, { indexed: false, internalType: "bytes", name: "dataValue", type: "bytes" } ], name: "DataChanged", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "operator", type: "address" }, { indexed: true, internalType: "address", name: "tokenOwner", type: "address" }, { indexed: true, internalType: "bytes32", name: "tokenId", type: "bytes32" }, { indexed: false, internalType: "bytes", name: "operatorNotificationData", type: "bytes" } ], name: "OperatorAuthorizationChanged", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "operator", type: "address" }, { indexed: true, internalType: "address", name: "tokenOwner", type: "address" }, { indexed: true, internalType: "bytes32", name: "tokenId", type: "bytes32" }, { indexed: false, internalType: "bool", name: "notified", type: "bool" }, { indexed: false, internalType: "bytes", name: "operatorNotificationData", type: "bytes" } ], name: "OperatorRevoked", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "previousOwner", type: "address" }, { indexed: true, internalType: "address", name: "newOwner", type: "address" } ], name: "OwnershipTransferred", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "bytes32", name: "tokenId", type: "bytes32" }, { indexed: true, internalType: "bytes32", name: "dataKey", type: "bytes32" }, { indexed: false, internalType: "bytes", name: "dataValue", type: "bytes" } ], name: "TokenIdDataChanged", type: "event" }, { anonymous: false, inputs: [ { indexed: false, internalType: "address", name: "operator", type: "address" }, { indexed: true, internalType: "address", name: "from", type: "address" }, { indexed: true, internalType: "address", name: "to", type: "address" }, { indexed: true, internalType: "bytes32", name: "tokenId", type: "bytes32" }, { indexed: false, internalType: "bool", name: "force", type: "bool" }, { indexed: false, internalType: "bytes", name: "data", type: "bytes" } ], name: "Transfer", type: "event" }, { stateMutability: "payable", type: "fallback" }, { inputs: [ { internalType: "address", name: "operator", type: "address" }, { internalType: "bytes32", name: "tokenId", type: "bytes32" }, { internalType: "bytes", name: "operatorNotificationData", type: "bytes" } ], name: "authorizeOperator", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "tokenOwner", type: "address" } ], name: "balanceOf", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "bytes[]", name: "data", type: "bytes[]" } ], name: "batchCalls", outputs: [ { internalType: "bytes[]", name: "results", type: "bytes[]" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "bytes32", name: "dataKey", type: "bytes32" } ], name: "getData", outputs: [ { internalType: "bytes", name: "dataValue", type: "bytes" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "bytes32[]", name: "dataKeys", type: "bytes32[]" } ], name: "getDataBatch", outputs: [ { internalType: "bytes[]", name: "dataValues", type: "bytes[]" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "bytes32[]", name: "tokenIds", type: "bytes32[]" }, { internalType: "bytes32[]", name: "dataKeys", type: "bytes32[]" } ], name: "getDataBatchForTokenIds", outputs: [ { internalType: "bytes[]", name: "dataValues", type: "bytes[]" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "bytes32", name: "tokenId", type: "bytes32" }, { internalType: "bytes32", name: "dataKey", type: "bytes32" } ], name: "getDataForTokenId", outputs: [ { internalType: "bytes", name: "dataValue", type: "bytes" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "bytes32", name: "tokenId", type: "bytes32" } ], name: "getOperatorsOf", outputs: [ { internalType: "address[]", name: "", type: "address[]" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "operator", type: "address" }, { internalType: "bytes32", name: "tokenId", type: "bytes32" } ], name: "isOperatorFor", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "owner", outputs: [ { internalType: "address", name: "", type: "address" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "renounceOwnership", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "operator", type: "address" }, { internalType: "bytes32", name: "tokenId", type: "bytes32" }, { internalType: "bool", name: "notify", type: "bool" }, { internalType: "bytes", name: "operatorNotificationData", type: "bytes" } ], name: "revokeOperator", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "bytes32", name: "dataKey", type: "bytes32" }, { internalType: "bytes", name: "dataValue", type: "bytes" } ], name: "setData", outputs: [], stateMutability: "payable", type: "function" }, { inputs: [ { internalType: "bytes32[]", name: "dataKeys", type: "bytes32[]" }, { internalType: "bytes[]", name: "dataValues", type: "bytes[]" } ], name: "setDataBatch", outputs: [], stateMutability: "payable", type: "function" }, { inputs: [ { internalType: "bytes32[]", name: "tokenIds", type: "bytes32[]" }, { internalType: "bytes32[]", name: "dataKeys", type: "bytes32[]" }, { internalType: "bytes[]", name: "dataValues", type: "bytes[]" } ], name: "setDataBatchForTokenIds", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "bytes32", name: "tokenId", type: "bytes32" }, { internalType: "bytes32", name: "dataKey", type: "bytes32" }, { internalType: "bytes", name: "dataValue", type: "bytes" } ], name: "setDataForTokenId", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "bytes4", name: "interfaceId", type: "bytes4" } ], name: "supportsInterface", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "tokenOwner", type: "address" } ], name: "tokenIdsOf", outputs: [ { internalType: "bytes32[]", name: "", type: "bytes32[]" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "bytes32", name: "tokenId", type: "bytes32" } ], name: "tokenOwnerOf", outputs: [ { internalType: "address", name: "", type: "address" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "totalSupply", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "from", type: "address" }, { internalType: "address", name: "to", type: "address" }, { internalType: "bytes32", name: "tokenId", type: "bytes32" }, { internalType: "bool", name: "force", type: "bool" }, { internalType: "bytes", name: "data", type: "bytes" } ], name: "transfer", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address[]", name: "from", type: "address[]" }, { internalType: "address[]", name: "to", type: "address[]" }, { internalType: "bytes32[]", name: "tokenId", type: "bytes32[]" }, { internalType: "bool[]", name: "force", type: "bool[]" }, { internalType: "bytes[]", name: "data", type: "bytes[]" } ], name: "transferBatch", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "newOwner", type: "address" } ], name: "transferOwnership", outputs: [], stateMutability: "nonpayable", type: "function" }, { stateMutability: "payable", type: "receive" } ]; class LSP8IdentifiableDigitalAsset__factory { static createInterface() { return new ethers.Interface(_abi$7); } static connect(address, runner) { return new ethers.Contract( address, _abi$7, runner ); } } __publicField$7(LSP8IdentifiableDigitalAsset__factory, "abi", _abi$7); var __defProp$6 = Object.defineProperty; var __defNormalProp$6 = (obj, key, value) => key in obj ? __defProp$6(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$6 = (obj, key, value) => { __defNormalProp$6(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$6 = [ { inputs: [], name: "ERC725Y_DataKeysValuesEmptyArray", type: "error" }, { inputs: [], name: "ERC725Y_DataKeysValuesLengthMismatch", type: "error" }, { inputs: [], name: "ERC725Y_MsgValueDisallowed", type: "error" }, { inputs: [ { internalType: "bytes", name: "storedData", type: "bytes" } ], name: "InvalidExtensionAddress", type: "error" }, { inputs: [ { internalType: "bytes", name: "data", type: "bytes" } ], name: "InvalidFunctionSelector", type: "error" }, { inputs: [], name: "LSP4TokenNameNotEditable", type: "error" }, { inputs: [], name: "LSP4TokenSymbolNotEditable", type: "error" }, { inputs: [], name: "LSP4TokenTypeNotEditable", type: "error" }, { inputs: [ { internalType: "uint256", name: "callIndex", type: "uint256" } ], name: "LSP8BatchCallFailed", type: "error" }, { inputs: [], name: "LSP8CannotSendToAddressZero", type: "error" }, { inputs: [], name: "LSP8CannotUseAddressZeroAsOperator", type: "error" }, { inputs: [], name: "LSP8InvalidTransferBatch", type: "error" }, { inputs: [ { internalType: "bytes32", name: "tokenId", type: "bytes32" } ], name: "LSP8NonExistentTokenId", type: "error" }, { inputs: [ { internalType: "address", name: "operator", type: "address" }, { internalType: "bytes32", name: "tokenId", type: "bytes32" } ], name: "LSP8NonExistingOperator", type: "error" }, { inputs: [ { internalType: "bytes32", name: "tokenId", type: "bytes32" }, { internalType: "address", name: "caller", type: "address" } ], name: "LSP8NotTokenOperator", type: "error" }, { inputs: [ { internalType: "address", name: "tokenOwner", type: "address" }, { internalType: "bytes32", name: "tokenId", type: "bytes32" }, { internalType: "address", name: "caller", type: "address" } ], name: "LSP8NotTokenOwner", type: "error" }, { inputs: [ { internalType: "address", name: "tokenReceiver", type: "address" } ], name: "LSP8NotifyTokenReceiverContractMissingLSP1Interface", type: "error" }, { inputs: [ { internalType: "address", name: "tokenReceiver", type: "address" } ], name: "LSP8NotifyTokenReceiverIsEOA", type: "error" }, { inputs: [ { internalType: "address", name: "operator", type: "address" }, { internalType: "bytes32", name: "tokenId", type: "bytes32" } ], name: "LSP8OperatorAlreadyAuthorized", type: "error" }, { inputs: [ { internalType: "address", name: "caller", type: "address" }, { internalType: "address", name: "tokenOwner", type: "address" }, { internalType: "bytes32", name: "tokenId", type: "bytes32" } ], name: "LSP8RevokeOperatorNotAuthorized", type: "error" }, { inputs: [], name: "LSP8TokenContractCannotHoldValue", type: "error" }, { inputs: [], name: "LSP8TokenIdFormatNotEditable", type: "error" }, { inputs: [], name: "LSP8TokenIdsDataEmptyArray", type: "error" }, { inputs: [], name: "LSP8TokenIdsDataLengthMismatch", type: "error" }, { inputs: [], name: "LSP8TokenOwnerCannotBeOperator", type: "error" }, { inputs: [ { internalType: "bytes32", name: "tokenId", type: "bytes32" }, { internalType: "address", name: "oldOwner", type: "address" }, { internalType: "address", name: "newOwner", type: "address" } ], name: "LSP8TokenOwnerChanged", type: "error" }, { inputs: [ { internalType: "bytes4", name: "functionSelector", type: "bytes4" } ], name: "NoExtensionFoundForFunctionSelector", type: "error" }, { inputs: [ { internalType: "address", name: "callerAddress", type: "address" } ], name: "OwnableCallerNotTheOwner", type: "error" }, { inputs: [], name: "OwnableCannotSetZeroAddressAsOwner", type: "error" }, { anonymous: false, inputs: [ { indexed: true, internalType: "bytes32", name: "dataKey", type: "bytes32" }, { indexed: false, internalType: "bytes", name: "dataValue", type: "bytes" } ], name: "DataChanged", type: "event" }, { anonymous: false, inputs: [ { indexed: false, internalType: "uint8", name: "version", type: "uint8" } ], name: "Initialized", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "operator", type: "address" }, { indexed: true, internalType: "address", name: "tokenOwner", type: "address" }, { indexed: true, internalType: "bytes32", name: "tokenId", type: "bytes32" }, { indexed: false, internalType: "bytes", name: "operatorNotificationData", type: "bytes" } ], name: "OperatorAuthorizationChanged", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "operator", type: "address" }, { indexed: true, internalType: "address", name: "tokenOwner", type: "address" }, { indexed: true, internalType: "bytes32", name: "tokenId", type: "bytes32" }, { indexed: false, internalType: "bool", name: "notified", type: "bool" }, { indexed: false, internalType: "bytes", name: "operatorNotificationData", type: "bytes" } ], name: "OperatorRevoked", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "previousOwner", type: "address" }, { indexed: true, internalType: "address", name: "newOwner", type: "address" } ], name: "OwnershipTransferred", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "bytes32", name: "tokenId", type: "bytes32" }, { indexed: true, internalType: "bytes32", name: "dataKey", type: "bytes32" }, { indexed: false, internalType: "bytes", name: "dataValue", type: "bytes" } ], name: "TokenIdDataChanged", type: "event" }, { anonymous: false, inputs: [ { indexed: false, internalType: "address", name: "operator", type: "address" }, { indexed: true, internalType: "address", name: "from", type: "address" }, { indexed: true, internalType: "address", name: "to", type: "address" }, { indexed: true, internalType: "bytes32", name: "tokenId", type: "bytes32" }, { indexed: false, internalType: "bool", name: "force", type: "bool" }, { indexed: false, internalType: "bytes", name: "data", type: "bytes" } ], name: "Transfer", type: "event" }, { stateMutability: "payable", type: "fallback" }, { inputs: [ { internalType: "address", name: "operator", type: "address" }, { internalType: "bytes32", name: "tokenId", type: "bytes32" }, { internalType: "bytes", name: "operatorNotificationData", type: "bytes" } ], name: "authorizeOperator", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "tokenOwner", type: "address" } ], name: "balanceOf", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "bytes[]", name: "data", type: "bytes[]" } ], name: "batchCalls", outputs: [ { internalType: "bytes[]", name: "results", type: "bytes[]" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "bytes32", name: "dataKey", type: "bytes32" } ], name: "getData", outputs: [ { internalType: "bytes", name: "dataValue", type: "bytes" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "bytes32[]", name: "dataKeys", type: "bytes32[]" } ], name: "getDataBatch", outputs: [ { internalType: "bytes[]", name: "dataValues", type: "bytes[]" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "bytes32[]", name: "tokenIds", type: "bytes32[]" }, { internalType: "bytes32[]", name: "dataKeys", type: "bytes32[]" } ], name: "getDataBatchForTokenIds", outputs: [ { internalType: "bytes[]", name: "dataValues", type: "bytes[]" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "bytes32", name: "tokenId", type: "bytes32" }, { internalType: "bytes32", name: "dataKey", type: "bytes32" } ], name: "getDataForTokenId", outputs: [ { internalType: "bytes", name: "dataValue", type: "bytes" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "bytes32", name: "tokenId", type: "bytes32" } ], name: "getOperatorsOf", outputs: [ { internalType: "address[]", name: "", type: "address[]" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "operator", type: "address" }, { internalType: "bytes32", name: "tokenId", type: "bytes32" } ], name: "isOperatorFor", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "owner", outputs: [ { internalType: "address", name: "", type: "address" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "renounceOwnership", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "operator", type: "address" }, { internalType: "bytes32", name: "tokenId", type: "bytes32" }, { internalType: "bool", name: "notify", type: "bool" }, { internalType: "bytes", name: "operatorNotificationData", type: "bytes" } ], name: "revokeOperator", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "bytes32", name: "dataKey", type: "bytes32" }, { internalType: "bytes", name: "dataValue", type: "bytes" } ], name: "setData", outputs: [], stateMutability: "payable", type: "function" }, { inputs: [ { internalType: "bytes32[]", name: "dataKeys", type: "bytes32[]" }, { internalType: "bytes[]", name: "dataValues", type: "bytes[]" } ], name: "setDataBatch", outputs: [], stateMutability: "payable", type: "function" }, { inputs: [ { internalType: "bytes32[]", name: "tokenIds", type: "bytes32[]" }, { internalType: "bytes32[]", name: "dataKeys", type: "bytes32[]" }, { internalType: "bytes[]", name: "dataValues", type: "bytes[]" } ], name: "setDataBatchForTokenIds", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "bytes32", name: "tokenId", type: "bytes32" }, { internalType: "bytes32", name: "dataKey", type: "bytes32" }, { internalType: "bytes", name: "dataValue", type: "bytes" } ], name: "setDataForTokenId", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "bytes4", name: "interfaceId", type: "bytes4" } ], name: "supportsInterface", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "tokenOwner", type: "address" } ], name: "tokenIdsOf", outputs: [ { internalType: "bytes32[]", name: "", type: "bytes32[]" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "bytes32", name: "tokenId", type: "bytes32" } ], name: "tokenOwnerOf", outputs: [ { internalType: "address", name: "", type: "address" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "totalSupply", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "from", type: "address" }, { internalType: "address", name: "to", type: "address" }, { internalType: "bytes32", name: "tokenId", type: "bytes32" }, { internalType: "bool", name: "force", type: "bool" }, { internalType: "bytes", name: "data", type: "bytes" } ], name: "transfer", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address[]", name: "from", type: "address[]" }, { internalType: "address[]", name: "to", type: "address[]" }, { internalType: "bytes32[]", name: "tokenId", type: "bytes32[]" }, { internalType: "bool[]", name: "force", type: "bool[]" }, { internalType: "bytes[]", name: "data", type: "bytes[]" } ], name: "transferBatch", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "newOwner", type: "address" } ], name: "transferOwnership", outputs: [], stateMutability: "nonpayable", type: "function" }, { stateMutability: "payable", type: "receive" } ]; class LSP8IdentifiableDigitalAssetInitAbstract__factory { static createInterface() { return new ethers.Interface( _abi$6 ); } static connect(address, runner) { return new ethers.Contract( address, _abi$6, runner ); } } __publicField$6(LSP8IdentifiableDigitalAssetInitAbstract__factory, "abi", _abi$6); var __defProp$5 = Object.defineProperty; var __defNormalProp$5 = (obj, key, value) => key in obj ? __defProp$5(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$5 = (obj, key, value) => { __defNormalProp$5(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$5 = [ { inputs: [ { internalType: "string", name: "name_", type: "string" }, { internalType: "string", name: "symbol_", type: "string" }, { internalType: "address", name: "newOwner_", type: "address" }, { internalType: "uint256", name: "lsp4TokenType_", type: "uint256" }, { internalType: "uint256", name: "lsp8TokenIdFormat_", type: "uint256" } ], stateMutability: "nonpayable", type: "constructor" }, { inputs: [], name: "ERC725Y_DataKeysValuesEmptyArray", type: "error" }, { inputs: [], name: "ERC725Y_DataKeysValuesLengthMismatch", type: "error" }, { inputs: [], name: "ERC725Y_MsgValueDisallowed", type: "error" }, { inputs: [ { internalType: "bytes", name: "storedData", type: "bytes" } ], name: "InvalidExtensionAddress", type: "error" }, { inputs: [ { internalType: "bytes", name: "data", type: "bytes" } ], name: "InvalidFunctionSelector", type: "error" }, { inputs: [], name: "LSP4TokenNameNotEditable", type: "error" }, { inputs: [], name: "LSP4TokenSymbolNotEditable", type: "error" }, { inputs: [], name: "LSP4TokenTypeNotEditable", type: "error" }, { inputs: [ { internalType: "uint256", name: "callIndex", type: "uint256" } ], name: "LSP8BatchCallFailed", type: "error" }, { inputs: [], name: "LSP8CannotSendToAddressZero", type: "error" }, { inputs: [], name: "LSP8CannotUseAddressZeroAsOperator", type: "error" }, { inputs: [], name: "LSP8InvalidTransferBatch", type: "error" }, { inputs: [ { internalType: "bytes32", name: "tokenId", type: "bytes32" } ], name: "LSP8NonExistentTokenId", type: "error" }, { inputs: [ { internalType: "address", name: "operator", type: "address" }, { internalType: "bytes32", name: "tokenId", type: "bytes32" } ], name: "LSP8NonExistingOperator", type: "error" }, { inputs: [ { internalType: "bytes32", name: "tokenId", type: "bytes32" }, { internalType: "address", name: "caller", type: "address" } ], name: "LSP8NotTokenOperator", type: "error" }, { inputs: [ { internalType: "address", name: "tokenOwner", type: "address" }, { internalType: "bytes32", name: "tokenId", type: "bytes32" }, { internalType: "address", name: "caller", type: "address" } ], name: "LSP8NotTokenOwner", type: "error" }, { inputs: [ { internalType: "address", name: "tokenReceiver", type: "address" } ], name: "LSP8NotifyTokenReceiverContractMissingLSP1Interface", type: "error" }, { inputs: [ { internalType: "address", name: "tokenReceiver", type: "address" } ], name: "LSP8NotifyTokenReceiverIsEOA", type: "error" }, { inputs: [ { internalType: "address", name: "operator", type: "address" }, { internalType: "bytes32", name: "tokenId", type: "bytes32" } ], name: "LSP8OperatorAlreadyAuthorized", type: "error" }, { inputs: [ { internalType: "address", name: "caller", type: "address" }, { internalType: "address", name: "tokenOwner", type: "address" }, { internalType: "bytes32", name: "tokenId", type: "bytes32" } ], name: "LSP8RevokeOperatorNotAuthorized", type: "error" }, { inputs: [], name: "LSP8TokenContractCannotHoldValue", type: "error" }, { inputs: [ { internalType: "bytes32", name: "tokenId", type: "bytes32" } ], name: "LSP8TokenIdAlreadyMinted", type: "error" }, { inputs: [], name: "LSP8TokenIdFormatNotEditable", type: "error" }, { inputs: [], name: "LSP8TokenIdsDataEmptyArray", type: "error" }, { inputs: [], name: "LSP8TokenIdsDataLengthMismatch", type: "error" }, { inputs: [], name: "LSP8TokenOwnerCannotBeOperator", type: "error" }, { inputs: [ { internalType: "bytes32", name: "tokenId", type: "bytes32" }, { internalType: "address", name: "oldOwner", type: "address" }, { internalType: "address", name: "newOwner", type: "address" } ], name: "LSP8TokenOwnerChanged", type: "error" }, { inputs: [ { internalType: "bytes4", name: "functionSelector", type: "bytes4" } ], name: "NoExtensionFoundForFunctionSelector", type: "error" }, { inputs: [ { internalType: "address", name: "callerAddress", type: "address" } ], name: "OwnableCallerNotTheOwner", type: "error" }, { inputs: [], name: "OwnableCannotSetZeroAddressAsOwner", type: "error" }, { anonymous: false, inputs: [ { indexed: true, internalType: "bytes32", name: "dataKey", type: "bytes32" }, { indexed: false, internalType: "bytes", name: "dataValue", type: "bytes" } ], name: "DataChanged", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "operator", type: "address" }, { indexed: true, internalType: "address", name: "tokenOwner", type: "address" }, { indexed: true, internalType: "bytes32", name: "tokenId", type: "bytes32" }, { indexed: false, internalType: "bytes", name: "operatorNotificationData", type: "bytes" } ], name: "OperatorAuthorizationChanged", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "operator", type: "address" }, { indexed: true, internalType: "address", name: "tokenOwner", type: "address" }, { indexed: true, internalType: "bytes32", name: "tokenId", type: "bytes32" }, { indexed: false, internalType: "bool", name: "notified", type: "bool" }, { indexed: false, internalType: "bytes", name: "operatorNotificationData", type: "bytes" } ], name: "OperatorRevoked", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "previousOwner", type: "address" }, { indexed: true, internalType: "address", name: "newOwner", type: "address" } ], name: "OwnershipTransferred", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "bytes32", name: "tokenId", type: "bytes32" }, { indexed: true, internalType: "bytes32", name: "dataKey", type: "bytes32" }, { indexed: false, internalType: "bytes", name: "dataValue", type: "bytes" } ], name: "TokenIdDataChanged", type: "event" }, { anonymous: false, inputs: [ { indexed: false, internalType: "address", name: "operator", type: "address" }, { indexed: true, internalType: "address", name: "from", type: "address" }, { indexed: true, internalType: "address", name: "to", type: "address" }, { indexed: true, internalType: "bytes32", name: "tokenId", type: "bytes32" }, { indexed: false, internalType: "bool", name: "force", type: "bool" }, { indexed: false, internalType: "bytes", name: "data", type: "bytes" } ], name: "Transfer", type: "event" }, { stateMutability: "payable", type: "fallback" }, { inputs: [ { internalType: "address", name: "operator", type: "address" }, { internalType: "bytes32", name: "tokenId", type: "bytes32" }, { internalType: "bytes", name: "operatorNotificationData", type: "bytes" } ], name: "authorizeOperator", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "tokenOwner", type: "address" } ], name: "balanceOf", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "bytes[]", name: "data", type: "bytes[]" } ], name: "batchCalls", outputs: [ { internalType: "bytes[]", name: "results", type: "bytes[]" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "bytes32", name: "dataKey", type: "bytes32" } ], name: "getData", outputs: [ { internalType: "bytes", name: "dataValue", type: "bytes" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "bytes32[]", name: "dataKeys", type: "bytes32[]" } ], name: "getDataBatch", outputs: [ { internalType: "bytes[]", name: "dataValues", type: "bytes[]" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "bytes32[]", name: "tokenIds", type: "bytes32[]" }, { internalType: "bytes32[]", name: "dataKeys", type: "bytes32[]" } ], name: "getDataBatchForTokenIds", outputs: [ { internalType: "bytes[]", name: "dataValues", type: "bytes[]" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "bytes32", name: "tokenId", type: "bytes32" }, { internalType: "bytes32", name: "dataKey", type: "bytes32" } ], name: "getDataForTokenId", outputs: [ { internalType: "bytes", name: "dataValue", type: "bytes" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "bytes32", name: "tokenId", type: "bytes32" } ], name: "getOperatorsOf", outputs: [ { internalType: "address[]", name: "", type: "address[]" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "operator", type: "address" }, { internalType: "bytes32", name: "tokenId", type: "bytes32" } ], name: "isOperatorFor", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "to", type: "address" }, { internalType: "bytes32", name: "tokenId", type: "bytes32" }, { internalType: "bool", name: "force", type: "bool" }, { internalType: "bytes", name: "data", type: "bytes" } ], name: "mint", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [], name: "owner", outputs: [ { internalType: "address", name: "", type: "address" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "renounceOwnership", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "operator", type: "address" }, { internalType: "bytes32", name: "tokenId", type: "bytes32" }, { internalType: "bool", name: "notify", type: "bool" }, { internalType: "bytes", name: "operatorNotificationData", type: "bytes" } ], name: "revokeOperator", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "bytes32", name: "dataKey", type: "bytes32" }, { internalType: "bytes", name: "dataValue", type: "bytes" } ], name: "setData", outputs: [], stateMutability: "payable", type: "function" }, { inputs: [ { internalType: "bytes32[]", name: "dataKeys", type: "bytes32[]" }, { internalType: "bytes[]", name: "dataValues", type: "bytes[]" } ], name: "setDataBatch", outputs: [], stateMutability: "payable", type: "function" }, { inputs: [ { internalType: "bytes32[]", name: "tokenIds", type: "bytes32[]" }, { internalType: "bytes32[]", name: "dataKeys", type: "bytes32[]" }, { internalType: "bytes[]", name: "dataValues", type: "bytes[]" } ], name: "setDataBatchForTokenIds", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "bytes32", name: "tokenId", type: "bytes32" }, { internalType: "bytes32", name: "dataKey", type: "bytes32" }, { internalType: "bytes", name: "dataValue", type: "bytes" } ], name: "setDataForTokenId", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "bytes4", name: "interfaceId", type: "bytes4" } ], name: "supportsInterface", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "tokenOwner", type: "address" } ], name: "tokenIdsOf", outputs: [ { internalType: "bytes32[]", name: "", type: "bytes32[]" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "bytes32", name: "tokenId", type: "bytes32" } ], name: "tokenOwnerOf", outputs: [ { internalType: "address", name: "", type: "address" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "totalSupply", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "from", type: "address" }, { internalType: "address", name: "to", type: "address" }, { internalType: "bytes32", name: "tokenId", type: "bytes32" }, { internalType: "bool", name: "force", type: "bool" }, { internalType: "bytes", name: "data", type: "bytes" } ], name: "transfer", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address[]", name: "from", type: "address[]" }, { internalType: "address[]", name: "to", type: "address[]" }, { internalType: "bytes32[]", name: "tokenId", type: "bytes32[]" }, { internalType: "bool[]", name: "force", type: "bool[]" }, { internalType: "bytes[]", name: "data", type: "bytes[]" } ], name: "transferBatch", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "newOwner", type: "address" } ], name: "transferOwnership", outputs: [], stateMutability: "nonpayable", type: "function" }, { stateMutability: "payable", type: "receive" } ]; const _bytecode$5 = "0x60806040523480156200001157600080fd5b506040516200352b3803806200352b833981016040819052620000349162000473565b848484848484848484816001600160a01b03811662000066576040516306b620db60e21b815260040160405180910390fd5b6200007c816200020160201b620011101760201c565b50620000d37feafec4d89fa9619884b60000a4d96624a38f7ac2d8d9a604ecf07c12c77e480c60001b604051806040016040528060048152602001632936598960e21b8152506200026f60201b6200118b1760201c565b6200010d7fdeba1e292f8ba88238e10ab3c7f88bd4be4fac56cad5194b6ecceaf653468af160001b856200026f60201b6200118b1760201c565b620001477f2f0a68ab07768e01943a599e73362a0e17a63a72e94dd2e384d2c1d4db93275660001b846200026f60201b6200118b1760201c565b60408051602081018390526200019a917fe0261fa95db2eb3b5439bd033cda66d56b96f92f243a8228fd87550ed7bdfdb391016040516020818303038152906040526200026f60201b6200118b1760201c565b50506040805160208101859052620001f193507ff675e9361af1c1664c1868cfa3eb97672d6b1a513aa5b81dec34c9ee330e818d925001604051602081830303815290604052620002c860201b620011e01760201c565b50505050505050505050620006a1565b6000546001600160a01b038281169116146200026c57600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0383161790555b50565b6000828152600160205260409020620002898282620005a0565b50817fece574603820d07bc9b91f2a932baadf4628aabcb8afba49776529c14a6104b282604051620002bc91906200066c565b60405180910390a25050565b620002df8282620002e360201b620011e61760201c565b5050565b7f2145e1d6d074577dc71ef54c3807742b41b053a9352ae6b491331509acb9750f820162000324576040516385c169bd60e01b815260040160405180910390fd5b7fd0f59754f88971fe6bc5a6618cc9d5f1e859c58d16b22d1c7b2d3e2b246cd8aa82016200036557604051630eceab6760e31b815260040160405180910390fd5b7f1fd9e056a24d14c4abc642fcc325992a946906d0dbc57dd70278aaf12842024d82016200026f57604051634ef6d7fb60e01b815260040160405180910390fd5b634e487b7160e01b600052604160045260246000fd5b60005b83811015620003d9578181015183820152602001620003bf565b50506000910152565b600082601f830112620003f457600080fd5b81516001600160401b0380821115620004115762000411620003a6565b604051601f8301601f19908116603f011681019082821181831017156200043c576200043c620003a6565b816040528381528660208588010111156200045657600080fd5b62000469846020830160208901620003bc565b9695505050505050565b600080600080600060a086880312156200048c57600080fd5b85516001600160401b0380821115620004a457600080fd5b620004b289838a01620003e2565b96506020880151915080821115620004c957600080fd5b50620004d888828901620003e2565b604088015190955090506001600160a01b0381168114620004f857600080fd5b6060870151608090970151959894975095949392505050565b600181811c908216806200052657607f821691505b6020821081036200054757634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200059b57600081815260208120601f850160051c81016020861015620005765750805b601f850160051c820191505b81811015620005975782815560010162000582565b5050505b505050565b81516001600160401b03811115620005bc57620005bc620003a6565b620005d481620005cd845462000511565b846200054d565b602080601f8311600181146200060c5760008415620005f35750858301515b600019600386901b1c1916600185901b17855562000597565b600085815260208120601f198616915b828110156200063d578886015182559484019460019091019084016200061c565b50858210156200065c5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b60208152600082518060208401526200068d816040850160208701620003bc565b601f01601f19169190910160400192915050565b612e7a80620006b16000396000f3fe60806040526004361061018f5760003560e01c80637e87632c116100d6578063af255b611161007f578063db8c966311610059578063db8c96631461051f578063dedff9c61461053f578063f2fde38b1461055f57610203565b8063af255b61146104bf578063be9f0e6f146104df578063d6c1407c146104ff57610203565b80638da5cb5b116100b05780638da5cb5b14610461578063979024211461047f578063a3b261f21461049257610203565b80637e87632c1461040e5780637f23690c1461042e57806386a10ddd1461044157610203565b806349a6078d116101385780636963d438116101125780636963d438146103b957806370a08231146103d9578063715018a6146103f957610203565b806349a6078d1461034a578063511b69521461037757806354f6127f1461039957610203565b80631d26fce6116101695780631d26fce6146102c5578063217b2270146102f25780632a3654a41461032a57610203565b806301ffc9a71461024457806316e023b31461027957806318160ddd146102a657610203565b3661020357346000036101d15760405163e5099ee360e01b81526004016101c89060208082526004908201526000604082015260600190565b60405180910390fd5b6040517f61f4944200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6000366060600482101561022e57828260405163e5099ee360e01b81526004016101c892919061210d565b610238838361057f565b80519350602001915050f35b34801561025057600080fd5b5061026461025f36600461213c565b61068e565b60405190151581526020015b60405180910390f35b34801561028557600080fd5b50610299610294366004612166565b6106db565b60405161027091906121d8565b3480156102b257600080fd5b506002545b604051908152602001610270565b3480156102d157600080fd5b506102e56102e03660046122c1565b6106ee565b6040516102709190612325565b3480156102fe57600080fd5b5061031261030d366004612387565b6107d6565b6040516001600160a01b039091168152602001610270565b34801561033657600080fd5b506102646103453660046123bc565b61080f565b34801561035657600080fd5b5061036a610365366004612387565b61081b565b60405161027091906123e6565b34801561038357600080fd5b506103976103923660046124bc565b61083d565b005b3480156103a557600080fd5b506102996103b4366004612387565b61089a565b3480156103c557600080fd5b506102e56103d4366004612535565b6108a5565b3480156103e557600080fd5b506102b76103f43660046125aa565b6109ee565b34801561040557600080fd5b50610397610a0f565b34801561041a57600080fd5b50610397610429366004612709565b610a23565b61039761043c3660046127ce565b610b2b565b34801561044d57600080fd5b5061039761045c36600461280b565b610b60565b34801561046d57600080fd5b506000546001600160a01b0316610312565b61039761048d366004612862565b610cf3565b34801561049e57600080fd5b506104b26104ad3660046125aa565b610de5565b60405161027091906128bc565b3480156104cb57600080fd5b506103976104da3660046128f4565b610e09565b3480156104eb57600080fd5b506103976104fa36600461295c565b610e23565b34801561050b57600080fd5b5061039761051a3660046129da565b610f01565b34801561052b57600080fd5b5061039761053a3660046128f4565b610f14565b34801561054b57600080fd5b506102e561055a366004612a14565b611011565b34801561056b57600080fd5b5061039761057a3660046125aa565b6110bc565b606060006105986000356001600160e01b0319166112f1565b5090506001600160a01b0381166105e9576040517fbb370b2b0000000000000000000000000000000000000000000000000000000081526001600160e01b03196000351660048201526024016101c8565b600080826001600160a01b0316348787333460405160200161060e9493929190612a49565b60408051601f198184030181529082905261062891612a79565b60006040518083038185875af1925050503d8060008114610665576040519150601f19603f3d011682016040523d82523d6000602084013e61066a565b606091505b5091509150811561067f579250610688915050565b80518060208301fd5b92915050565b60006001600160e01b031982167f3a2717060000000000000000000000000000000000000000000000000000000014806106cc57506106cc8261139b565b806106885750610688826113d9565b60606106e78383611410565b9392505050565b60608151835114610712576040516317d38eff60e11b815260040160405180910390fd5b825167ffffffffffffffff81111561072c5761072c6121eb565b60405190808252806020026020018201604052801561075f57816020015b606081526020019060019003908161074a5790505b50905060005b83518110156107cf576107aa84828151811061078357610783612a95565b602002602001015184838151811061079d5761079d612a95565b6020026020010151611410565b8282815181106107bc576107bc612a95565b6020908102919091010152600101610765565b5092915050565b6000818152600360205260408120546001600160a01b03168061068857604051635747cd1b60e11b8152600481018490526024016101c8565b60006106e783836114be565b6060610826826114fb565b600082815260056020526040902061068890611533565b61084733846114be565b610886576040517f1294d2a9000000000000000000000000000000000000000000000000000000008152600481018490523360248201526044016101c8565b6108938585858585611540565b5050505050565b606061068882611748565b60608167ffffffffffffffff8111156108c0576108c06121eb565b6040519080825280602002602001820160405280156108f357816020015b60608152602001906001900390816108de5790505b50905060005b828110156107cf576000803086868581811061091757610917612a95565b90506020028101906109299190612aab565b604051610937929190612af9565b600060405180830381855af49150503d8060008114610972576040519150601f19603f3d011682016040523d82523d6000602084013e610977565b606091505b5091509150816109c6578051156109915780518082602001fd5b6040517f234eb819000000000000000000000000000000000000000000000000000000008152600481018490526024016101c8565b808484815181106109d9576109d9612a95565b602090810291909101015250506001016108f9565b6001600160a01b0381166000908152600460205260408120610688906117ea565b610a176117f4565b610a216000611110565b565b8451845181141580610a36575083518114155b80610a42575082518114155b80610a4e575081518114155b15610a85576040517f93a8311900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60005b81811015610b2257610b1a878281518110610aa557610aa5612a95565b6020026020010151878381518110610abf57610abf612a95565b6020026020010151878481518110610ad957610ad9612a95565b6020026020010151878581518110610af357610af3612a95565b6020026020010151878681518110610b0d57610b0d612a95565b602002602001015161083d565b600101610a88565b50505050505050565b610b336117f4565b3415610b525760405163f36ba73760e01b815260040160405180910390fd5b610b5c8282611849565b5050565b6000610b6b836107d6565b90506001600160a01b0381163314610bae57604051632d938f5160e11b81526001600160a01b0382166004820152602481018490523360448201526064016101c8565b6001600160a01b038416610bd557604051639577b8b360e01b815260040160405180910390fd5b836001600160a01b0316816001600160a01b031603610c07576040516344fed6b160e11b815260040160405180910390fd5b6000838152600560205260408120610c1f90866118ac565b905080610c6a576040517fa7626b680000000000000000000000000000000000000000000000000000000081526001600160a01b0386166004820152602481018590526044016101c8565b83826001600160a01b0316866001600160a01b03167f1b1b58aa2ec0cec2228b2d37124556d41f5a1f7b12f089171f896cc23667121586604051610cae91906121d8565b60405180910390a460003385600186604051602001610cd09493929190612b09565b6040516020818303038152906040529050610ceb86826118c1565b505050505050565b610cfb6117f4565b3415610d1a5760405163f36ba73760e01b815260040160405180910390fd5b8051825114610d55576040517f3bcc897900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b8151600003610d90576040517f97da5f9500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60005b8251811015610de057610dd8838281518110610db157610db1612a95565b6020026020010151838381518110610dcb57610dcb612a95565b6020026020010151611849565b600101610d93565b505050565b6001600160a01b038116600090815260046020526040902060609061068890611533565b610e116117f4565b610e1d848484846118ec565b50505050565b610e2b6117f4565b81518351141580610e3e57508051825114155b15610e5c576040516317d38eff60e11b815260040160405180910390fd5b8251600003610e97576040517f80c9830500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60005b8351811015610e1d57610ef9848281518110610eb857610eb8612a95565b6020026020010151848381518110610ed257610ed2612a95565b6020026020010151848481518110610eec57610eec612a95565b6020026020010151611a69565b600101610e9a565b610f096117f4565b610de0838383611a69565b6000610f1f846107d6565b9050336001600160a01b03821614610f8b576001600160a01b0385163314610f8b576040517f760b5acd0000000000000000000000000000000000000000000000000000000081523360048201526001600160a01b0382166024820152604481018590526064016101c8565b6001600160a01b038516610fb257604051639577b8b360e01b815260040160405180910390fd5b846001600160a01b0316816001600160a01b031603610fe4576040516344fed6b160e11b815260040160405180910390fd5b610ff18582868686611acb565b82156108935760008185600085604051602001610cd09493929190612b09565b6060815167ffffffffffffffff81111561102d5761102d6121eb565b60405190808252806020026020018201604052801561106057816020015b606081526020019060019003908161104b5790505b50905060005b82518110156110b65761109183828151811061108457611084612a95565b6020026020010151611748565b8282815181106110a3576110a3612a95565b6020908102919091010152600101611066565b50919050565b6110c46117f4565b6001600160a01b038116611104576040517f1ad8836c00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b61110d81611110565b50565b6000546001600160a01b0382811691161461110d57600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b03831673ffffffffffffffffffffffffffffffffffffffff1990911617905550565b60008281526001602052604090206111a38282612bbd565b50817fece574603820d07bc9b91f2a932baadf4628aabcb8afba49776529c14a6104b2826040516111d491906121d8565b60405180910390a25050565b610b5c82825b7f2145e1d6d074577dc71ef54c3807742b41b053a9352ae6b491331509acb9750f820161123f576040517f85c169bd00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b7fd0f59754f88971fe6bc5a6618cc9d5f1e859c58d16b22d1c7b2d3e2b246cd8aa8201611298576040517f76755b3800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b7f1fd9e056a24d14c4abc642fcc325992a946906d0dbc57dd70278aaf12842024d820161118b576040517f4ef6d7fb00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600080806113297fcee78b4094da86011096000000000000000000000000000000000000000000006001600160e01b03198616611b84565b9050600061133682611748565b9050805160141415801561134a5750805115155b1561138357806040517f42bfe79f0000000000000000000000000000000000000000000000000000000081526004016101c891906121d8565b61138c81612c7d565b60601c95600195509350505050565b60006001600160e01b031982167fa918fa6b000000000000000000000000000000000000000000000000000000001480610688575061068882611bf5565b6000806113ec6301ffc9a760e01b6112f1565b5090506001600160a01b0381166114065750600092915050565b6106e78184611c43565b6000828152600660209081526040808320848452909152902080546060919061143890612b43565b80601f016020809104026020016040519081016040528092919081815260200182805461146490612b43565b80156114b15780601f10611486576101008083540402835291602001916114b1565b820191906000526020600020905b81548152906001019060200180831161149457829003601f168201915b5050505050905092915050565b60006114c9826107d6565b6001600160a01b0316836001600160a01b031614806106e7575060008281526005602052604090206106e79084611ce1565b6000818152600360205260409020546001600160a01b031661110d57604051635747cd1b60e11b8152600481018290526024016101c8565b606060006106e783611d03565b600061154b846107d6565b9050856001600160a01b0316816001600160a01b03161461159957604051632d938f5160e11b81526001600160a01b03808316600483015260248201869052871660448201526064016101c8565b6001600160a01b0385166115c0576040516324ecef4d60e01b815260040160405180910390fd5b60006115cb856107d6565b9050806001600160a01b0316826001600160a01b031614611632576040517f5a9c31d3000000000000000000000000000000000000000000000000000000008152600481018690526001600160a01b038084166024830152821660448201526064016101c8565b61163c8786611d5e565b6001600160a01b038716600090815260046020526040902061165e9086611db6565b506001600160a01b03861660009081526004602052604090206116819086611dc2565b5060008581526003602052604090819020805473ffffffffffffffffffffffffffffffffffffffff19166001600160a01b0389811691821790925591518792918a16907fb333c813a7426a7a11e2b190cad52c44119421594b47f6f32ace6d8c7207b2bf906116f59033908a908a90612cb9565b60405180910390a460003388888887604051602001611718959493929190612cec565b60405160208183030381529060405290506117338882611dce565b61173e878683611df9565b5050505050505050565b600081815260016020526040902080546060919061176590612b43565b80601f016020809104026020016040519081016040528092919081815260200182805461179190612b43565b80156117de5780601f106117b3576101008083540402835291602001916117de565b820191906000526020600020905b8154815290600101906020018083116117c157829003601f168201915b50505050509050919050565b6000610688825490565b336118076000546001600160a01b031690565b6001600160a01b031614610a21576040517fbf1169c50000000000000000000000000000000000000000000000000000000081523360048201526024016101c8565b7f098a16c9e50e3e99b3e797305c146898d294e5aec55a47e213cb3611ccf17e7382016118a2576040517f3664800a00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b610b5c82826111e0565b60006106e7836001600160a01b038416611f33565b610b5c827f8a1c15a8799f71b547e08e2bcb2e85257e81b0a07eee2ce6712549eef1f0097083611f82565b6001600160a01b038416611913576040516324ecef4d60e01b815260040160405180910390fd5b6000838152600360205260409020546001600160a01b03161561194c576040516334c7b51160e01b8152600481018490526024016101c8565b6000838152600360205260409020546001600160a01b031615611985576040516334c7b51160e01b8152600481018490526024016101c8565b60026000815461199490612d3c565b909155506001600160a01b03841660009081526004602052604090206119ba9084611dc2565b50600083815260036020526040808220805473ffffffffffffffffffffffffffffffffffffffff19166001600160a01b03881690811790915590518592907fb333c813a7426a7a11e2b190cad52c44119421594b47f6f32ace6d8c7207b2bf90611a2990339088908890612cb9565b60405180910390a46000336000868685604051602001611a4d959493929190612cec565b6040516020818303038152906040529050610893858483611df9565b60008381526006602090815260408083208584529091529020611a8c8282612bbd565b5081837fa6e4251f855f750545fe414f120db91c76b88def14d120969e5bb2d3f05debbb83604051611abe91906121d8565b60405180910390a3505050565b6000838152600560205260408120611ae39087611fcf565b905080611b2e576040517f4aa31a8c0000000000000000000000000000000000000000000000000000000081526001600160a01b0387166004820152602481018590526044016101c8565b83856001600160a01b0316876001600160a01b03167fc78cd419d6136f9f1c1c6aec1d3fae098cffaf8bc86314a8f2685e32fe574e3c8686604051611b74929190612d55565b60405180910390a4505050505050565b604080517fffffffffffffffffffff00000000000000000000000000000000000000000000841660208201526000602a82018190526bffffffffffffffffffffffff198416602c83015291829101604051602081830303815290604052905080611bed90612d70565b949350505050565b60006001600160e01b031982167f629aa69400000000000000000000000000000000000000000000000000000000148061068857506301ffc9a760e01b6001600160e01b0319831614610688565b604080516001600160e01b03198316602480830191909152825180830390910181526044909101909152602080820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff166301ffc9a760e01b178152825160009392849283928392918391908a617530fa92503d91506000519050828015611cca575060208210155b8015611cd65750600081115b979650505050505050565b6001600160a01b038116600090815260018301602052604081205415156106e7565b6060816000018054806020026020016040519081016040528092919081815260200182805480156117de57602002820191906000526020600020905b815481526020019060010190808311611d3f5750505050509050919050565b600081815260056020526040812090611d76826117ea565b90506000805b82811015610ceb57611d8f846000611fe4565b9150611dae828787600060405180602001604052806000815250611acb565b600101611d7c565b60006106e78383611ff0565b60006106e78383611f33565b610b5c827fb23eae7e6d1564b295b4c3e3be402d9a2f0776c57bdf365903496f6fa481ab0083611f82565b611e0a83631aed5a8560e21b611c43565b15611ea457604051631aed5a8560e21b81526001600160a01b03841690636bb56a1490611e5d907f0b084a55ebf70fd3c06fd755269dac2212c4d3f0f4d09079780bfa50c1b2984d908590600401612d94565b6000604051808303816000875af1158015611e7c573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610e1d9190810190612dad565b81610de0576001600160a01b0383163b15611ef6576040517f4349776d0000000000000000000000000000000000000000000000000000000081526001600160a01b03841660048201526024016101c8565b6040517f031731370000000000000000000000000000000000000000000000000000000081526001600160a01b03841660048201526024016101c8565b6000818152600183016020526040812054611f7a57508154600181810184556000848152602080822090930184905584548482528286019093526040902091909155610688565b506000610688565b611f9c6001600160a01b038416631aed5a8560e21b611c43565b15610de057604051631aed5a8560e21b81526001600160a01b03841690636bb56a1490611e5d9085908590600401612d94565b60006106e7836001600160a01b038416611ff0565b60006106e783836120e3565b600081815260018301602052604081205480156120d9576000612014600183612e1b565b855490915060009061202890600190612e1b565b905081811461208d57600086600001828154811061204857612048612a95565b906000526020600020015490508087600001848154811061206b5761206b612a95565b6000918252602080832090910192909255918252600188019052604090208390555b855486908061209e5761209e612e2e565b600190038181906000526020600020016000905590558560010160008681526020019081526020016000206000905560019350505050610688565b6000915050610688565b60008260000182815481106120fa576120fa612a95565b9060005260206000200154905092915050565b60208152816020820152818360408301376000818301604090810191909152601f909201601f19160101919050565b60006020828403121561214e57600080fd5b81356001600160e01b0319811681146106e757600080fd5b6000806040838503121561217957600080fd5b50508035926020909101359150565b60005b838110156121a357818101518382015260200161218b565b50506000910152565b600081518084526121c4816020860160208601612188565b601f01601f19169290920160200192915050565b6020815260006106e760208301846121ac565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f1916810167ffffffffffffffff8111828210171561222a5761222a6121eb565b604052919050565b600067ffffffffffffffff82111561224c5761224c6121eb565b5060051b60200190565b600082601f83011261226757600080fd5b8135602061227c61227783612232565b612201565b82815260059290921b8401810191818101908684111561229b57600080fd5b8286015b848110156122b6578035835291830191830161229f565b509695505050505050565b600080604083850312156122d457600080fd5b823567ffffffffffffffff808211156122ec57600080fd5b6122f886838701612256565b9350602085013591508082111561230e57600080fd5b5061231b85828601612256565b9150509250929050565b6000602080830181845280855180835260408601915060408160051b870101925083870160005b8281101561237a57603f198886030184526123688583516121ac565b9450928501929085019060010161234c565b5092979650505050505050565b60006020828403121561239957600080fd5b5035919050565b80356001600160a01b03811681146123b757600080fd5b919050565b600080604083850312156123cf57600080fd5b6123d8836123a0565b946020939093013593505050565b6020808252825182820181905260009190848201906040850190845b818110156124275783516001600160a01b031683529284019291840191600101612402565b50909695505050505050565b803580151581146123b757600080fd5b600067ffffffffffffffff82111561245d5761245d6121eb565b50601f01601f191660200190565b600082601f83011261247c57600080fd5b813561248a61227782612443565b81815284602083860101111561249f57600080fd5b816020850160208301376000918101602001919091529392505050565b600080600080600060a086880312156124d457600080fd5b6124dd866123a0565b94506124eb602087016123a0565b93506040860135925061250060608701612433565b9150608086013567ffffffffffffffff81111561251c57600080fd5b6125288882890161246b565b9150509295509295909350565b6000806020838503121561254857600080fd5b823567ffffffffffffffff8082111561256057600080fd5b818501915085601f83011261257457600080fd5b81358181111561258357600080fd5b8660208260051b850101111561259857600080fd5b60209290920196919550909350505050565b6000602082840312156125bc57600080fd5b6106e7826123a0565b600082601f8301126125d657600080fd5b813560206125e661227783612232565b82815260059290921b8401810191818101908684111561260557600080fd5b8286015b848110156122b65761261a816123a0565b8352918301918301612609565b600082601f83011261263857600080fd5b8135602061264861227783612232565b82815260059290921b8401810191818101908684111561266757600080fd5b8286015b848110156122b65761267c81612433565b835291830191830161266b565b600082601f83011261269a57600080fd5b813560206126aa61227783612232565b82815260059290921b840181019181810190868411156126c957600080fd5b8286015b848110156122b657803567ffffffffffffffff8111156126ed5760008081fd5b6126fb8986838b010161246b565b8452509183019183016126cd565b600080600080600060a0868803121561272157600080fd5b853567ffffffffffffffff8082111561273957600080fd5b61274589838a016125c5565b9650602088013591508082111561275b57600080fd5b61276789838a016125c5565b9550604088013591508082111561277d57600080fd5b61278989838a01612256565b9450606088013591508082111561279f57600080fd5b6127ab89838a01612627565b935060808801359150808211156127c157600080fd5b5061252888828901612689565b600080604083850312156127e157600080fd5b82359150602083013567ffffffffffffffff8111156127ff57600080fd5b61231b8582860161246b565b60008060006060848603121561282057600080fd5b612829846123a0565b925060208401359150604084013567ffffffffffffffff81111561284c57600080fd5b6128588682870161246b565b9150509250925092565b6000806040838503121561287557600080fd5b823567ffffffffffffffff8082111561288d57600080fd5b61289986838701612256565b935060208501359150808211156128af57600080fd5b5061231b85828601612689565b6020808252825182820181905260009190848201906040850190845b81811015612427578351835292840192918401916001016128d8565b6000806000806080858703121561290a57600080fd5b612913856123a0565b93506020850135925061292860408601612433565b9150606085013567ffffffffffffffff81111561294457600080fd5b6129508782880161246b565b91505092959194509250565b60008060006060848603121561297157600080fd5b833567ffffffffffffffff8082111561298957600080fd5b61299587838801612256565b945060208601359150808211156129ab57600080fd5b6129b787838801612256565b935060408601359150808211156129cd57600080fd5b5061285886828701612689565b6000806000606084860312156129ef57600080fd5b8335925060208401359150604084013567ffffffffffffffff81111561284c57600080fd5b600060208284031215612a2657600080fd5b813567ffffffffffffffff811115612a3d57600080fd5b611bed84828501612256565b8385823760609290921b6bffffffffffffffffffffffff1916919092019081526014810191909152603401919050565b60008251612a8b818460208701612188565b9190910192915050565b634e487b7160e01b600052603260045260246000fd5b6000808335601e19843603018112612ac257600080fd5b83018035915067ffffffffffffffff821115612add57600080fd5b602001915036819003821315612af257600080fd5b9250929050565b8183823760009101908152919050565b6001600160a01b03851681528360208201528215156040820152608060608201526000612b3960808301846121ac565b9695505050505050565b600181811c90821680612b5757607f821691505b6020821081036110b657634e487b7160e01b600052602260045260246000fd5b601f821115610de057600081815260208120601f850160051c81016020861015612b9e5750805b601f850160051c820191505b81811015610ceb57828155600101612baa565b815167ffffffffffffffff811115612bd757612bd76121eb565b612beb81612be58454612b43565b84612b77565b602080601f831160018114612c205760008415612c085750858301515b600019600386901b1c1916600185901b178555610ceb565b600085815260208120601f198616915b82811015612c4f57888601518255948401946001909101908401612c30565b5085821015612c6d5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b805160208201516bffffffffffffffffffffffff198082169291906014831015612cb15780818460140360031b1b83161693505b505050919050565b6001600160a01b03841681528215156020820152606060408201526000612ce360608301846121ac565b95945050505050565b60006001600160a01b038088168352808716602084015280861660408401525083606083015260a06080830152611cd660a08301846121ac565b634e487b7160e01b600052601160045260246000fd5b600060018201612d4e57612d4e612d26565b5060010190565b8215158152604060208201526000611bed60408301846121ac565b805160208083015191908110156110b65760001960209190910360031b1b16919050565b828152604060208201526000611bed60408301846121ac565b600060208284031215612dbf57600080fd5b815167ffffffffffffffff811115612dd657600080fd5b8201601f81018413612de757600080fd5b8051612df561227782612443565b818152856020838501011115612e0a57600080fd5b612ce3826020830160208601612188565b8181038181111561068857610688612d26565b634e487b7160e01b600052603160045260246000fdfea2646970667358221220c3734ce8909bf05df7587d94a4f107b17a0d55f706f6e98ef2d25112d640ef2864736f6c63430008110033"; const isSuperArgs$5 = (xs) => xs.length > 1; class LSP8Mintable__factory extends ethers.ContractFactory { constructor(...args) { if (isSuperArgs$5(args)) { super(...args); } else { super(_abi$5, _bytecode$5, args[0]); } } getDeployTransaction(name_, symbol_, newOwner_, lsp4TokenType_, lsp8TokenIdFormat_, overrides) { return super.getDeployTransaction( name_, symbol_, newOwner_, lsp4TokenType_, lsp8TokenIdFormat_, overrides || {} ); } deploy(name_, symbol_, newOwner_, lsp4TokenType_, lsp8TokenIdFormat_, overrides) { return super.deploy( name_, symbol_, newOwner_, lsp4TokenType_, lsp8TokenIdFormat_, overrides || {} ); } connect(runner) { return super.connect(runner); } static createInterface() { return new ethers.Interface(_abi$5); } static connect(address, runner) { return new ethers.Contract(address, _abi$5, runner); } } __publicField$5(LSP8Mintable__factory, "bytecode", _bytecode$5); __publicField$5(LSP8Mintable__factory, "abi", _abi$5); var __defProp$4 = Object.defineProperty; var __defNormalProp$4 = (obj, key, value) => key in obj ? __defProp$4(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$4 = (obj, key, value) => { __defNormalProp$4(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$4 = [ { inputs: [], stateMutability: "nonpayable", type: "constructor" }, { inputs: [], name: "ERC725Y_DataKeysValuesEmptyArray", type: "error" }, { inputs: [], name: "ERC725Y_DataKeysValuesLengthMismatch", type: "error" }, { inputs: [], name: "ERC725Y_MsgValueDisallowed", type: "error" }, { inputs: [ { internalType: "bytes", name: "storedData", type: "bytes" } ], name: "InvalidExtensionAddress", type: "error" }, { inputs: [ { internalType: "bytes", name: "data", type: "bytes" } ], name: "InvalidFunctionSelector", type: "error" }, { inputs: [], name: "LSP4TokenNameNotEditable", type: "error" }, { inputs: [], name: "LSP4TokenSymbolNotEditable", type: "error" }, { inputs: [], name: "LSP4TokenTypeNotEditable", type: "error" }, { inputs: [ { internalType: "uint256", name: "callIndex", type: "uint256" } ], name: "LSP8BatchCallFailed", type: "error" }, { inputs: [], name: "LSP8CannotSendToAddressZero", type: "error" }, { inputs: [], name: "LSP8CannotUseAddressZeroAsOperator", type: "error" }, { inputs: [], name: "LSP8InvalidTransferBatch", type: "error" }, { inputs: [ { internalType: "bytes32", name: "tokenId", type: "bytes32" } ], name: "LSP8NonExistentTokenId", type: "error" }, { inputs: [ { internalType: "address", name: "operator", type: "address" }, { internalType: "bytes32", name: "tokenId", type: "bytes32" } ], name: "LSP8NonExistingOperator", type: "error" }, { inputs: [ { internalType: "bytes32", name: "tokenId", type: "bytes32" }, { internalType: "address", name: "caller", type: "address" } ], name: "LSP8NotTokenOperator", type: "error" }, { inputs: [ { internalType: "address", name: "tokenOwner", type: "address" }, { internalType: "bytes32", name: "tokenId", type: "bytes32" }, { internalType: "address", name: "caller", type: "address" } ], name: "LSP8NotTokenOwner", type: "error" }, { inputs: [ { internalType: "address", name: "tokenReceiver", type: "address" } ], name: "LSP8NotifyTokenReceiverContractMissingLSP1Interface", type: "error" }, { inputs: [ { internalType: "address", name: "tokenReceiver", type: "address" } ], name: "LSP8NotifyTokenReceiverIsEOA", type: "error" }, { inputs: [ { internalType: "address", name: "operator", type: "address" }, { internalType: "bytes32", name: "tokenId", type: "bytes32" } ], name: "LSP8OperatorAlreadyAuthorized", type: "error" }, { inputs: [ { internalType: "address", name: "caller", type: "address" }, { internalType: "address", name: "tokenOwner", type: "address" }, { internalType: "bytes32", name: "tokenId", type: "bytes32" } ], name: "LSP8RevokeOperatorNotAuthorized", type: "error" }, { inputs: [], name: "LSP8TokenContractCannotHoldValue", type: "error" }, { inputs: [ { internalType: "bytes32", name: "tokenId", type: "bytes32" } ], name: "LSP8TokenIdAlreadyMinted", type: "error" }, { inputs: [], name: "LSP8TokenIdFormatNotEditable", type: "error" }, { inputs: [], name: "LSP8TokenIdsDataEmptyArray", type: "error" }, { inputs: [], name: "LSP8TokenIdsDataLengthMismatch", type: "error" }, { inputs: [], name: "LSP8TokenOwnerCannotBeOperator", type: "error" }, { inputs: [ { internalType: "bytes32", name: "tokenId", type: "bytes32" }, { internalType: "address", name: "oldOwner", type: "address" }, { internalType: "address", name: "newOwner", type: "address" } ], name: "LSP8TokenOwnerChanged", type: "error" }, { inputs: [ { internalType: "bytes4", name: "functionSelector", type: "bytes4" } ], name: "NoExtensionFoundForFunctionSelector", type: "error" }, { inputs: [ { internalType: "address", name: "callerAddress", type: "address" } ], name: "OwnableCallerNotTheOwner", type: "error" }, { inputs: [], name: "OwnableCannotSetZeroAddressAsOwner", type: "error" }, { anonymous: false, inputs: [ { indexed: true, internalType: "bytes32", name: "dataKey", type: "bytes32" }, { indexed: false, internalType: "bytes", name: "dataValue", type: "bytes" } ], name: "DataChanged", type: "event" }, { anonymous: false, inputs: [ { indexed: false, internalType: "uint8", name: "version", type: "uint8" } ], name: "Initialized", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "operator", type: "address" }, { indexed: true, internalType: "address", name: "tokenOwner", type: "address" }, { indexed: true, internalType: "bytes32", name: "tokenId", type: "bytes32" }, { indexed: false, internalType: "bytes", name: "operatorNotificationData", type: "bytes" } ], name: "OperatorAuthorizationChanged", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "operator", type: "address" }, { indexed: true, internalType: "address", name: "tokenOwner", type: "address" }, { indexed: true, internalType: "bytes32", name: "tokenId", type: "bytes32" }, { indexed: false, internalType: "bool", name: "notified", type: "bool" }, { indexed: false, internalType: "bytes", name: "operatorNotificationData", type: "bytes" } ], name: "OperatorRevoked", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "previousOwner", type: "address" }, { indexed: true, internalType: "address", name: "newOwner", type: "address" } ], name: "OwnershipTransferred", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "bytes32", name: "tokenId", type: "bytes32" }, { indexed: true, internalType: "bytes32", name: "dataKey", type: "bytes32" }, { indexed: false, internalType: "bytes", name: "dataValue", type: "bytes" } ], name: "TokenIdDataChanged", type: "event" }, { anonymous: false, inputs: [ { indexed: false, internalType: "address", name: "operator", type: "address" }, { indexed: true, internalType: "address", name: "from", type: "address" }, { indexed: true, internalType: "address", name: "to", type: "address" }, { indexed: true, internalType: "bytes32", name: "tokenId", type: "bytes32" }, { indexed: false, internalType: "bool", name: "force", type: "bool" }, { indexed: false, internalType: "bytes", name: "data", type: "bytes" } ], name: "Transfer", type: "event" }, { stateMutability: "payable", type: "fallback" }, { inputs: [ { internalType: "address", name: "operator", type: "address" }, { internalType: "bytes32", name: "tokenId", type: "bytes32" }, { internalType: "bytes", name: "operatorNotificationData", type: "bytes" } ], name: "authorizeOperator", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "tokenOwner", type: "address" } ], name: "balanceOf", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "bytes[]", name: "data", type: "bytes[]" } ], name: "batchCalls", outputs: [ { internalType: "bytes[]", name: "results", type: "bytes[]" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "bytes32", name: "dataKey", type: "bytes32" } ], name: "getData", outputs: [ { internalType: "bytes", name: "dataValue", type: "bytes" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "bytes32[]", name: "dataKeys", type: "bytes32[]" } ], name: "getDataBatch", outputs: [ { internalType: "bytes[]", name: "dataValues", type: "bytes[]" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "bytes32[]", name: "tokenIds", type: "bytes32[]" }, { internalType: "bytes32[]", name: "dataKeys", type: "bytes32[]" } ], name: "getDataBatchForTokenIds", outputs: [ { internalType: "bytes[]", name: "dataValues", type: "bytes[]" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "bytes32", name: "tokenId", type: "bytes32" }, { internalType: "bytes32", name: "dataKey", type: "bytes32" } ], name: "getDataForTokenId", outputs: [ { internalType: "bytes", name: "dataValue", type: "bytes" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "bytes32", name: "tokenId", type: "bytes32" } ], name: "getOperatorsOf", outputs: [ { internalType: "address[]", name: "", type: "address[]" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "string", name: "name_", type: "string" }, { internalType: "string", name: "symbol_", type: "string" }, { internalType: "address", name: "newOwner_", type: "address" }, { internalType: "uint256", name: "lsp4TokenType_", type: "uint256" }, { internalType: "uint256", name: "lsp8TokenIdFormat_", type: "uint256" } ], name: "initialize", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "operator", type: "address" }, { internalType: "bytes32", name: "tokenId", type: "bytes32" } ], name: "isOperatorFor", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "to", type: "address" }, { internalType: "bytes32", name: "tokenId", type: "bytes32" }, { internalType: "bool", name: "force", type: "bool" }, { internalType: "bytes", name: "data", type: "bytes" } ], name: "mint", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [], name: "owner", outputs: [ { internalType: "address", name: "", type: "address" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "renounceOwnership", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "operator", type: "address" }, { internalType: "bytes32", name: "tokenId", type: "bytes32" }, { internalType: "bool", name: "notify", type: "bool" }, { internalType: "bytes", name: "operatorNotificationData", type: "bytes" } ], name: "revokeOperator", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "bytes32", name: "dataKey", type: "bytes32" }, { internalType: "bytes", name: "dataValue", type: "bytes" } ], name: "setData", outputs: [], stateMutability: "payable", type: "function" }, { inputs: [ { internalType: "bytes32[]", name: "dataKeys", type: "bytes32[]" }, { internalType: "bytes[]", name: "dataValues", type: "bytes[]" } ], name: "setDataBatch", outputs: [], stateMutability: "payable", type: "function" }, { inputs: [ { internalType: "bytes32[]", name: "tokenIds", type: "bytes32[]" }, { internalType: "bytes32[]", name: "dataKeys", type: "bytes32[]" }, { internalType: "bytes[]", name: "dataValues", type: "bytes[]" } ], name: "setDataBatchForTokenIds", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "bytes32", name: "tokenId", type: "bytes32" }, { internalType: "bytes32", name: "dataKey", type: "bytes32" }, { internalType: "bytes", name: "dataValue", type: "bytes" } ], name: "setDataForTokenId", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "bytes4", name: "interfaceId", type: "bytes4" } ], name: "supportsInterface", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "tokenOwner", type: "address" } ], name: "tokenIdsOf", outputs: [ { internalType: "bytes32[]", name: "", type: "bytes32[]" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "bytes32", name: "tokenId", type: "bytes32" } ], name: "tokenOwnerOf", outputs: [ { internalType: "address", name: "", type: "address" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "totalSupply", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "from", type: "address" }, { internalType: "address", name: "to", type: "address" }, { internalType: "bytes32", name: "tokenId", type: "bytes32" }, { internalType: "bool", name: "force", type: "bool" }, { internalType: "bytes", name: "data", type: "bytes" } ], name: "transfer", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address[]", name: "from", type: "address[]" }, { internalType: "address[]", name: "to", type: "address[]" }, { internalType: "bytes32[]", name: "tokenId", type: "bytes32[]" }, { internalType: "bool[]", name: "force", type: "bool[]" }, { internalType: "bytes[]", name: "data", type: "bytes[]" } ], name: "transferBatch", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "newOwner", type: "address" } ], name: "transferOwnership", outputs: [], stateMutability: "nonpayable", type: "function" }, { stateMutability: "payable", type: "receive" } ]; const _bytecode$4 = "0x60806040523480156200001157600080fd5b506200001c62000022565b620000e3565b600054610100900460ff16156200008f5760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b60005460ff90811614620000e1576000805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b61337780620000f36000396000f3fe60806040526004361061019a5760003560e01c806374823132116100e1578063a3b261f21161008a578063d6c1407c11610064578063d6c1407c14610530578063db8c966314610550578063dedff9c614610570578063f2fde38b146105905761020e565b8063a3b261f2146104c3578063af255b61146104f0578063be9f0e6f146105105761020e565b806386a10ddd116100bb57806386a10ddd1461046c5780638da5cb5b1461048c57806397902421146104b05761020e565b806374823132146104195780637e87632c146104395780637f23690c146104595761020e565b806349a6078d116101435780636963d4381161011d5780636963d438146103c457806370a08231146103e4578063715018a6146104045761020e565b806349a6078d14610355578063511b69521461038257806354f6127f146103a45761020e565b80631d26fce6116101745780631d26fce6146102d0578063217b2270146102fd5780632a3654a4146103355761020e565b806301ffc9a71461024f57806316e023b31461028457806318160ddd146102b15761020e565b3661020e57346000036101dc5760405163e5099ee360e01b81526004016101d39060208082526004908201526000604082015260600190565b60405180910390fd5b6040517f61f4944200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6000366060600482101561023957828260405163e5099ee360e01b81526004016101d3929190612584565b61024383836105b0565b80519350602001915050f35b34801561025b57600080fd5b5061026f61026a3660046125b3565b6106bf565b60405190151581526020015b60405180910390f35b34801561029057600080fd5b506102a461029f3660046125dd565b61070c565b60405161027b919061264f565b3480156102bd57600080fd5b506002545b60405190815260200161027b565b3480156102dc57600080fd5b506102f06102eb366004612738565b61071f565b60405161027b919061279c565b34801561030957600080fd5b5061031d6103183660046127fe565b610807565b6040516001600160a01b03909116815260200161027b565b34801561034157600080fd5b5061026f610350366004612833565b610840565b34801561036157600080fd5b506103756103703660046127fe565b61084c565b60405161027b919061285d565b34801561038e57600080fd5b506103a261039d366004612933565b61086e565b005b3480156103b057600080fd5b506102a46103bf3660046127fe565b6108cb565b3480156103d057600080fd5b506102f06103df3660046129ac565b6108d6565b3480156103f057600080fd5b506102c26103ff366004612a21565b610a1f565b34801561041057600080fd5b506103a2610a40565b34801561042557600080fd5b506103a2610434366004612a3c565b610a54565b34801561044557600080fd5b506103a2610454366004612c06565b610b7e565b6103a2610467366004612ccb565b610c86565b34801561047857600080fd5b506103a2610487366004612d08565b610cbb565b34801561049857600080fd5b506000546201000090046001600160a01b031661031d565b6103a26104be366004612d5f565b610e46565b3480156104cf57600080fd5b506104e36104de366004612a21565b610f38565b60405161027b9190612db9565b3480156104fc57600080fd5b506103a261050b366004612df1565b610f5c565b34801561051c57600080fd5b506103a261052b366004612e59565b610f76565b34801561053c57600080fd5b506103a261054b366004612ed7565b611054565b34801561055c57600080fd5b506103a261056b366004612df1565b611067565b34801561057c57600080fd5b506102f061058b366004612f11565b611164565b34801561059c57600080fd5b506103a26105ab366004612a21565b61120f565b606060006105c96000356001600160e01b031916611263565b5090506001600160a01b03811661061a576040517fbb370b2b0000000000000000000000000000000000000000000000000000000081526001600160e01b03196000351660048201526024016101d3565b600080826001600160a01b0316348787333460405160200161063f9493929190612f46565b60408051601f198184030181529082905261065991612f76565b60006040518083038185875af1925050503d8060008114610696576040519150601f19603f3d011682016040523d82523d6000602084013e61069b565b606091505b509150915081156106b05792506106b9915050565b80518060208301fd5b92915050565b60006001600160e01b031982167f3a2717060000000000000000000000000000000000000000000000000000000014806106fd57506106fd8261130d565b806106b957506106b98261134b565b60606107188383611382565b9392505050565b60608151835114610743576040516317d38eff60e11b815260040160405180910390fd5b825167ffffffffffffffff81111561075d5761075d612662565b60405190808252806020026020018201604052801561079057816020015b606081526020019060019003908161077b5790505b50905060005b8351811015610800576107db8482815181106107b4576107b4612f92565b60200260200101518483815181106107ce576107ce612f92565b6020026020010151611382565b8282815181106107ed576107ed612f92565b6020908102919091010152600101610796565b5092915050565b6000818152600360205260408120546001600160a01b0316806106b957604051635747cd1b60e11b8152600481018490526024016101d3565b60006107188383611430565b60606108578261146d565b60008281526005602052604090206106b9906114a5565b6108783384611430565b6108b7576040517f1294d2a9000000000000000000000000000000000000000000000000000000008152600481018490523360248201526044016101d3565b6108c485858585856114b2565b5050505050565b60606106b9826116ba565b60608167ffffffffffffffff8111156108f1576108f1612662565b60405190808252806020026020018201604052801561092457816020015b606081526020019060019003908161090f5790505b50905060005b82811015610800576000803086868581811061094857610948612f92565b905060200281019061095a9190612fa8565b604051610968929190612ff6565b600060405180830381855af49150503d80600081146109a3576040519150601f19603f3d011682016040523d82523d6000602084013e6109a8565b606091505b5091509150816109f7578051156109c25780518082602001fd5b6040517f234eb819000000000000000000000000000000000000000000000000000000008152600481018490526024016101d3565b80848481518110610a0a57610a0a612f92565b6020908102919091010152505060010161092a565b6001600160a01b03811660009081526004602052604081206106b99061175c565b610a48611766565b610a5260006117b3565b565b600054610100900460ff1615808015610a745750600054600160ff909116105b80610a8e5750303b158015610a8e575060005460ff166001145b610b005760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a656400000000000000000000000000000000000060648201526084016101d3565b6000805460ff191660011790558015610b23576000805461ff0019166101001790555b610b30868686868661184a565b8015610b76576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b505050505050565b8451845181141580610b91575083518114155b80610b9d575082518114155b80610ba9575081518114155b15610be0576040517f93a8311900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60005b81811015610c7d57610c75878281518110610c0057610c00612f92565b6020026020010151878381518110610c1a57610c1a612f92565b6020026020010151878481518110610c3457610c34612f92565b6020026020010151878581518110610c4e57610c4e612f92565b6020026020010151878681518110610c6857610c68612f92565b602002602001015161086e565b600101610be3565b50505050505050565b610c8e611766565b3415610cad5760405163f36ba73760e01b815260040160405180910390fd5b610cb782826118c2565b5050565b6000610cc683610807565b90506001600160a01b0381163314610d0957604051632d938f5160e11b81526001600160a01b0382166004820152602481018490523360448201526064016101d3565b6001600160a01b038416610d3057604051639577b8b360e01b815260040160405180910390fd5b836001600160a01b0316816001600160a01b031603610d62576040516344fed6b160e11b815260040160405180910390fd5b6000838152600560205260408120610d7a9086611925565b905080610dc5576040517fa7626b680000000000000000000000000000000000000000000000000000000081526001600160a01b0386166004820152602481018590526044016101d3565b83826001600160a01b0316866001600160a01b03167f1b1b58aa2ec0cec2228b2d37124556d41f5a1f7b12f089171f896cc23667121586604051610e09919061264f565b60405180910390a460003385600186604051602001610e2b9493929190613006565b6040516020818303038152906040529050610b76868261193a565b610e4e611766565b3415610e6d5760405163f36ba73760e01b815260040160405180910390fd5b8051825114610ea8576040517f3bcc897900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b8151600003610ee3576040517f97da5f9500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60005b8251811015610f3357610f2b838281518110610f0457610f04612f92565b6020026020010151838381518110610f1e57610f1e612f92565b60200260200101516118c2565b600101610ee6565b505050565b6001600160a01b03811660009081526004602052604090206060906106b9906114a5565b610f64611766565b610f7084848484611965565b50505050565b610f7e611766565b81518351141580610f9157508051825114155b15610faf576040516317d38eff60e11b815260040160405180910390fd5b8251600003610fea576040517f80c9830500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60005b8351811015610f705761104c84828151811061100b5761100b612f92565b602002602001015184838151811061102557611025612f92565b602002602001015184848151811061103f5761103f612f92565b6020026020010151611ae2565b600101610fed565b61105c611766565b610f33838383611ae2565b600061107284610807565b9050336001600160a01b038216146110de576001600160a01b03851633146110de576040517f760b5acd0000000000000000000000000000000000000000000000000000000081523360048201526001600160a01b0382166024820152604481018590526064016101d3565b6001600160a01b03851661110557604051639577b8b360e01b815260040160405180910390fd5b846001600160a01b0316816001600160a01b031603611137576040516344fed6b160e11b815260040160405180910390fd5b6111448582868686611b44565b82156108c45760008185600085604051602001610e2b9493929190613006565b6060815167ffffffffffffffff81111561118057611180612662565b6040519080825280602002602001820160405280156111b357816020015b606081526020019060019003908161119e5790505b50905060005b8251811015611209576111e48382815181106111d7576111d7612f92565b60200260200101516116ba565b8282815181106111f6576111f6612f92565b60209081029190910101526001016111b9565b50919050565b611217611766565b6001600160a01b038116611257576040517f1ad8836c00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b611260816117b3565b50565b6000808061129b7fcee78b4094da86011096000000000000000000000000000000000000000000006001600160e01b03198616611bfd565b905060006112a8826116ba565b905080516014141580156112bc5750805115155b156112f557806040517f42bfe79f0000000000000000000000000000000000000000000000000000000081526004016101d3919061264f565b6112fe81613040565b60601c95600195509350505050565b60006001600160e01b031982167fa918fa6b0000000000000000000000000000000000000000000000000000000014806106b957506106b982611c6e565b60008061135e6301ffc9a760e01b611263565b5090506001600160a01b0381166113785750600092915050565b6107188184611cbc565b600082815260066020908152604080832084845290915290208054606091906113aa9061307c565b80601f01602080910402602001604051908101604052809291908181526020018280546113d69061307c565b80156114235780601f106113f857610100808354040283529160200191611423565b820191906000526020600020905b81548152906001019060200180831161140657829003601f168201915b5050505050905092915050565b600061143b82610807565b6001600160a01b0316836001600160a01b03161480610718575060008281526005602052604090206107189084611d5a565b6000818152600360205260409020546001600160a01b031661126057604051635747cd1b60e11b8152600481018290526024016101d3565b6060600061071883611d7c565b60006114bd84610807565b9050856001600160a01b0316816001600160a01b03161461150b57604051632d938f5160e11b81526001600160a01b03808316600483015260248201869052871660448201526064016101d3565b6001600160a01b038516611532576040516324ecef4d60e01b815260040160405180910390fd5b600061153d85610807565b9050806001600160a01b0316826001600160a01b0316146115a4576040517f5a9c31d3000000000000000000000000000000000000000000000000000000008152600481018690526001600160a01b038084166024830152821660448201526064016101d3565b6115ae8786611dd7565b6001600160a01b03871660009081526004602052604090206115d09086611e2f565b506001600160a01b03861660009081526004602052604090206115f39086611e3b565b5060008581526003602052604090819020805473ffffffffffffffffffffffffffffffffffffffff19166001600160a01b0389811691821790925591518792918a16907fb333c813a7426a7a11e2b190cad52c44119421594b47f6f32ace6d8c7207b2bf906116679033908a908a906130b0565b60405180910390a46000338888888760405160200161168a9594939291906130e3565b60405160208183030381529060405290506116a58882611e47565b6116b0878683611e72565b5050505050505050565b60008181526001602052604090208054606091906116d79061307c565b80601f01602080910402602001604051908101604052809291908181526020018280546117039061307c565b80156117505780601f1061172557610100808354040283529160200191611750565b820191906000526020600020905b81548152906001019060200180831161173357829003601f168201915b50505050509050919050565b60006106b9825490565b6000546001600160a01b0362010000909104163314610a52576040517fbf1169c50000000000000000000000000000000000000000000000000000000081523360048201526024016101d3565b6000546001600160a01b0382811662010000909204161461126057600080546040516001600160a01b03808516936201000090930416917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b03831662010000027fffffffffffffffffffff0000000000000000000000000000000000000000ffff90911617905550565b600054610100900460ff166118b55760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b60648201526084016101d3565b6108c48585858585611fac565b7f098a16c9e50e3e99b3e797305c146898d294e5aec55a47e213cb3611ccf17e73820161191b576040517f3664800a00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b610cb78282612065565b6000610718836001600160a01b03841661206f565b610cb7827f8a1c15a8799f71b547e08e2bcb2e85257e81b0a07eee2ce6712549eef1f00970836120be565b6001600160a01b03841661198c576040516324ecef4d60e01b815260040160405180910390fd5b6000838152600360205260409020546001600160a01b0316156119c5576040516334c7b51160e01b8152600481018490526024016101d3565b6000838152600360205260409020546001600160a01b0316156119fe576040516334c7b51160e01b8152600481018490526024016101d3565b600260008154611a0d90613133565b909155506001600160a01b0384166000908152600460205260409020611a339084611e3b565b50600083815260036020526040808220805473ffffffffffffffffffffffffffffffffffffffff19166001600160a01b03881690811790915590518592907fb333c813a7426a7a11e2b190cad52c44119421594b47f6f32ace6d8c7207b2bf90611aa2903390889088906130b0565b60405180910390a46000336000868685604051602001611ac69594939291906130e3565b60405160208183030381529060405290506108c4858483611e72565b60008381526006602090815260408083208584529091529020611b058282613192565b5081837fa6e4251f855f750545fe414f120db91c76b88def14d120969e5bb2d3f05debbb83604051611b37919061264f565b60405180910390a3505050565b6000838152600560205260408120611b5c908761210b565b905080611ba7576040517f4aa31a8c0000000000000000000000000000000000000000000000000000000081526001600160a01b0387166004820152602481018590526044016101d3565b83856001600160a01b0316876001600160a01b03167fc78cd419d6136f9f1c1c6aec1d3fae098cffaf8bc86314a8f2685e32fe574e3c8686604051611bed929190613252565b60405180910390a4505050505050565b604080517fffffffffffffffffffff00000000000000000000000000000000000000000000841660208201526000602a82018190526bffffffffffffffffffffffff198416602c83015291829101604051602081830303815290604052905080611c669061326d565b949350505050565b60006001600160e01b031982167f629aa6940000000000000000000000000000000000000000000000000000000014806106b957506301ffc9a760e01b6001600160e01b03198316146106b9565b604080516001600160e01b03198316602480830191909152825180830390910181526044909101909152602080820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff166301ffc9a760e01b178152825160009392849283928392918391908a617530fa92503d91506000519050828015611d43575060208210155b8015611d4f5750600081115b979650505050505050565b6001600160a01b03811660009081526001830160205260408120541515610718565b60608160000180548060200260200160405190810160405280929190818152602001828054801561175057602002820191906000526020600020905b815481526020019060010190808311611db85750505050509050919050565b600081815260056020526040812090611def8261175c565b90506000805b82811015610b7657611e08846000612120565b9150611e27828787600060405180602001604052806000815250611b44565b600101611df5565b6000610718838361212c565b6000610718838361206f565b610cb7827fb23eae7e6d1564b295b4c3e3be402d9a2f0776c57bdf365903496f6fa481ab00836120be565b611e8383631aed5a8560e21b611cbc565b15611f1d57604051631aed5a8560e21b81526001600160a01b03841690636bb56a1490611ed6907f0b084a55ebf70fd3c06fd755269dac2212c4d3f0f4d09079780bfa50c1b2984d908590600401613291565b6000604051808303816000875af1158015611ef5573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610f7091908101906132aa565b81610f33576001600160a01b0383163b15611f6f576040517f4349776d0000000000000000000000000000000000000000000000000000000081526001600160a01b03841660048201526024016101d3565b6040517f031731370000000000000000000000000000000000000000000000000000000081526001600160a01b03841660048201526024016101d3565b600054610100900460ff166120175760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b60648201526084016101d3565b6120238585858561221f565b60408051602081018390526108c4917ff675e9361af1c1664c1868cfa3eb97672d6b1a513aa5b81dec34c9ee330e818d91016040516020818303038152906040525b610cb7828261238f565b60008181526001830160205260408120546120b6575081546001818101845560008481526020808220909301849055845484825282860190935260409020919091556106b9565b5060006106b9565b6120d86001600160a01b038416631aed5a8560e21b611cbc565b15610f3357604051631aed5a8560e21b81526001600160a01b03841690636bb56a1490611ed69085908590600401613291565b6000610718836001600160a01b03841661212c565b600061071883836124ef565b60008181526001830160205260408120548015612215576000612150600183613318565b855490915060009061216490600190613318565b90508181146121c957600086600001828154811061218457612184612f92565b90600052602060002001549050808760000184815481106121a7576121a7612f92565b6000918252602080832090910192909255918252600188019052604090208390555b85548690806121da576121da61332b565b6001900381819060005260206000200160009055905585600101600086815260200190815260200160002060009055600193505050506106b9565b60009150506106b9565b600054610100900460ff1661228a5760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b60648201526084016101d3565b61229382612519565b6122f57feafec4d89fa9619884b60000a4d96624a38f7ac2d8d9a604ecf07c12c77e480c60001b6040518060400160405280600481526020017fa4d966240000000000000000000000000000000000000000000000000000000081525061249a565b61231f7fdeba1e292f8ba88238e10ab3c7f88bd4be4fac56cad5194b6ecceaf653468af18561249a565b6123497f2f0a68ab07768e01943a599e73362a0e17a63a72e94dd2e384d2c1d4db9327568461249a565b6040805160208101839052610f70917fe0261fa95db2eb3b5439bd033cda66d56b96f92f243a8228fd87550ed7bdfdb3910160405160208183030381529060405261249a565b7f2145e1d6d074577dc71ef54c3807742b41b053a9352ae6b491331509acb9750f82016123e8576040517f85c169bd00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b7fd0f59754f88971fe6bc5a6618cc9d5f1e859c58d16b22d1c7b2d3e2b246cd8aa8201612441576040517f76755b3800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b7f1fd9e056a24d14c4abc642fcc325992a946906d0dbc57dd70278aaf12842024d820161249a576040517f4ef6d7fb00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60008281526001602052604090206124b28282613192565b50817fece574603820d07bc9b91f2a932baadf4628aabcb8afba49776529c14a6104b2826040516124e3919061264f565b60405180910390a25050565b600082600001828154811061250657612506612f92565b9060005260206000200154905092915050565b600054610100900460ff166112175760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b60648201526084016101d3565b60208152816020820152818360408301376000818301604090810191909152601f909201601f19160101919050565b6000602082840312156125c557600080fd5b81356001600160e01b03198116811461071857600080fd5b600080604083850312156125f057600080fd5b50508035926020909101359150565b60005b8381101561261a578181015183820152602001612602565b50506000910152565b6000815180845261263b8160208601602086016125ff565b601f01601f19169290920160200192915050565b6020815260006107186020830184612623565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f1916810167ffffffffffffffff811182821017156126a1576126a1612662565b604052919050565b600067ffffffffffffffff8211156126c3576126c3612662565b5060051b60200190565b600082601f8301126126de57600080fd5b813560206126f36126ee836126a9565b612678565b82815260059290921b8401810191818101908684111561271257600080fd5b8286015b8481101561272d5780358352918301918301612716565b509695505050505050565b6000806040838503121561274b57600080fd5b823567ffffffffffffffff8082111561276357600080fd5b61276f868387016126cd565b9350602085013591508082111561278557600080fd5b50612792858286016126cd565b9150509250929050565b6000602080830181845280855180835260408601915060408160051b870101925083870160005b828110156127f157603f198886030184526127df858351612623565b945092850192908501906001016127c3565b5092979650505050505050565b60006020828403121561281057600080fd5b5035919050565b80356001600160a01b038116811461282e57600080fd5b919050565b6000806040838503121561284657600080fd5b61284f83612817565b946020939093013593505050565b6020808252825182820181905260009190848201906040850190845b8181101561289e5783516001600160a01b031683529284019291840191600101612879565b50909695505050505050565b8035801515811461282e57600080fd5b600067ffffffffffffffff8211156128d4576128d4612662565b50601f01601f191660200190565b600082601f8301126128f357600080fd5b81356129016126ee826128ba565b81815284602083860101111561291657600080fd5b816020850160208301376000918101602001919091529392505050565b600080600080600060a0868803121561294b57600080fd5b61295486612817565b945061296260208701612817565b935060408601359250612977606087016128aa565b9150608086013567ffffffffffffffff81111561299357600080fd5b61299f888289016128e2565b9150509295509295909350565b600080602083850312156129bf57600080fd5b823567ffffffffffffffff808211156129d757600080fd5b818501915085601f8301126129eb57600080fd5b8135818111156129fa57600080fd5b8660208260051b8501011115612a0f57600080fd5b60209290920196919550909350505050565b600060208284031215612a3357600080fd5b61071882612817565b600080600080600060a08688031215612a5457600080fd5b853567ffffffffffffffff80821115612a6c57600080fd5b612a7889838a016128e2565b96506020880135915080821115612a8e57600080fd5b50612a9b888289016128e2565b945050612aaa60408701612817565b94979396509394606081013594506080013592915050565b600082601f830112612ad357600080fd5b81356020612ae36126ee836126a9565b82815260059290921b84018101918181019086841115612b0257600080fd5b8286015b8481101561272d57612b1781612817565b8352918301918301612b06565b600082601f830112612b3557600080fd5b81356020612b456126ee836126a9565b82815260059290921b84018101918181019086841115612b6457600080fd5b8286015b8481101561272d57612b79816128aa565b8352918301918301612b68565b600082601f830112612b9757600080fd5b81356020612ba76126ee836126a9565b82815260059290921b84018101918181019086841115612bc657600080fd5b8286015b8481101561272d57803567ffffffffffffffff811115612bea5760008081fd5b612bf88986838b01016128e2565b845250918301918301612bca565b600080600080600060a08688031215612c1e57600080fd5b853567ffffffffffffffff80821115612c3657600080fd5b612c4289838a01612ac2565b96506020880135915080821115612c5857600080fd5b612c6489838a01612ac2565b95506040880135915080821115612c7a57600080fd5b612c8689838a016126cd565b94506060880135915080821115612c9c57600080fd5b612ca889838a01612b24565b93506080880135915080821115612cbe57600080fd5b5061299f88828901612b86565b60008060408385031215612cde57600080fd5b82359150602083013567ffffffffffffffff811115612cfc57600080fd5b612792858286016128e2565b600080600060608486031215612d1d57600080fd5b612d2684612817565b925060208401359150604084013567ffffffffffffffff811115612d4957600080fd5b612d55868287016128e2565b9150509250925092565b60008060408385031215612d7257600080fd5b823567ffffffffffffffff80821115612d8a57600080fd5b612d96868387016126cd565b93506020850135915080821115612dac57600080fd5b5061279285828601612b86565b6020808252825182820181905260009190848201906040850190845b8181101561289e57835183529284019291840191600101612dd5565b60008060008060808587031215612e0757600080fd5b612e1085612817565b935060208501359250612e25604086016128aa565b9150606085013567ffffffffffffffff811115612e4157600080fd5b612e4d878288016128e2565b91505092959194509250565b600080600060608486031215612e6e57600080fd5b833567ffffffffffffffff80821115612e8657600080fd5b612e92878388016126cd565b94506020860135915080821115612ea857600080fd5b612eb4878388016126cd565b93506040860135915080821115612eca57600080fd5b50612d5586828701612b86565b600080600060608486031215612eec57600080fd5b8335925060208401359150604084013567ffffffffffffffff811115612d4957600080fd5b600060208284031215612f2357600080fd5b813567ffffffffffffffff811115612f3a57600080fd5b611c66848285016126cd565b8385823760609290921b6bffffffffffffffffffffffff1916919092019081526014810191909152603401919050565b60008251612f888184602087016125ff565b9190910192915050565b634e487b7160e01b600052603260045260246000fd5b6000808335601e19843603018112612fbf57600080fd5b83018035915067ffffffffffffffff821115612fda57600080fd5b602001915036819003821315612fef57600080fd5b9250929050565b8183823760009101908152919050565b6001600160a01b038516815283602082015282151560408201526080606082015260006130366080830184612623565b9695505050505050565b805160208201516bffffffffffffffffffffffff1980821692919060148310156130745780818460140360031b1b83161693505b505050919050565b600181811c9082168061309057607f821691505b60208210810361120957634e487b7160e01b600052602260045260246000fd5b6001600160a01b038416815282151560208201526060604082015260006130da6060830184612623565b95945050505050565b60006001600160a01b038088168352808716602084015280861660408401525083606083015260a06080830152611d4f60a0830184612623565b634e487b7160e01b600052601160045260246000fd5b6000600182016131455761314561311d565b5060010190565b601f821115610f3357600081815260208120601f850160051c810160208610156131735750805b601f850160051c820191505b81811015610b765782815560010161317f565b815167ffffffffffffffff8111156131ac576131ac612662565b6131c0816131ba845461307c565b8461314c565b602080601f8311600181146131f557600084156131dd5750858301515b600019600386901b1c1916600185901b178555610b76565b600085815260208120601f198616915b8281101561322457888601518255948401946001909101908401613205565b50858210156132425787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b8215158152604060208201526000611c666040830184612623565b805160208083015191908110156112095760001960209190910360031b1b16919050565b828152604060208201526000611c666040830184612623565b6000602082840312156132bc57600080fd5b815167ffffffffffffffff8111156132d357600080fd5b8201601f810184136132e457600080fd5b80516132f26126ee826128ba565b81815285602083850101111561330757600080fd5b6130da8260208301602086016125ff565b818103818111156106b9576106b961311d565b634e487b7160e01b600052603160045260246000fdfea2646970667358221220161bc58ca92bbcaa2123ba98bcbb9f138a1e9fd58dfcd817f51fdd9eb301dbc664736f6c63430008110033"; const isSuperArgs$4 = (xs) => xs.length > 1; class LSP8MintableInit__factory extends ethers.ContractFactory { constructor(...args) { if (isSuperArgs$4(args)) { super(...args); } else { super(_abi$4, _bytecode$4, args[0]); } } getDeployTransaction(overrides) { return super.getDeployTransaction(overrides || {}); } deploy(overrides) { return super.deploy(overrides || {}); } connect(runner) { return super.connect(runner); } static createInterface() { return new ethers.Interface(_abi$4); } static connect(address, runner) { return new ethers.Contract(address, _abi$4, runner); } } __publicField$4(LSP8MintableInit__factory, "bytecode", _bytecode$4); __publicField$4(LSP8MintableInit__factory, "abi", _abi$4); var __defProp$3 = Object.defineProperty; var __defNormalProp$3 = (obj, key, value) => key in obj ? __defProp$3(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$3 = (obj, key, value) => { __defNormalProp$3(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$3 = [ { inputs: [ { internalType: "address", name: "newOwner", type: "address" } ], stateMutability: "payable", type: "constructor" }, { inputs: [], name: "ERC725X_ContractDeploymentFailed", type: "error" }, { inputs: [], name: "ERC725X_CreateOperationsRequireEmptyRecipientAddress", type: "error" }, { inputs: [], name: "ERC725X_ExecuteParametersEmptyArray", type: "error" }, { inputs: [], name: "ERC725X_ExecuteParametersLengthMismatch", type: "error" }, { inputs: [ { internalType: "uint256", name: "balance", type: "uint256" }, { internalType: "uint256", name: "value", type: "uint256" } ], name: "ERC725X_InsufficientBalance", type: "error" }, { inputs: [], name: "ERC725X_MsgValueDisallowedInStaticCall", type: "error" }, { inputs: [], name: "ERC725X_NoContractBytecodeProvided", type: "error" }, { inputs: [ { internalType: "uint256", name: "operationTypeProvided", type: "uint256" } ], name: "ERC725X_UnknownOperationType", type: "error" }, { inputs: [], name: "ERC725Y_DataKeysValuesLengthMismatch", type: "error" }, { inputs: [], name: "ERC725Y_MsgValueDisallowed", type: "error" }, { inputs: [ { internalType: "address", name: "caller", type: "address" } ], name: "LSP14CallerNotPendingOwner", type: "error" }, { inputs: [], name: "LSP14CannotTransferOwnershipToSelf", type: "error" }, { inputs: [], name: "LSP14MustAcceptOwnershipInSeparateTransaction", type: "error" }, { inputs: [ { internalType: "uint256", name: "renounceOwnershipStart", type: "uint256" }, { internalType: "uint256", name: "renounceOwnershipEnd", type: "uint256" } ], name: "LSP14NotInRenounceOwnershipInterval", type: "error" }, { inputs: [ { internalType: "bytes32", name: "dataKey", type: "bytes32" } ], name: "LSP1DelegateNotAllowedToSetDataKey", type: "error" }, { inputs: [ { internalType: "bytes4", name: "functionSelector", type: "bytes4" } ], name: "NoExtensionFoundForFunctionSelector", type: "error" }, { inputs: [ { internalType: "address", name: "callerAddress", type: "address" } ], name: "OwnableCallerNotTheOwner", type: "error" }, { anonymous: false, inputs: [ { indexed: true, internalType: "uint256", name: "operationType", type: "uint256" }, { indexed: true, internalType: "address", name: "contractAddress", type: "address" }, { indexed: false, internalType: "uint256", name: "value", type: "uint256" }, { indexed: true, internalType: "bytes32", name: "salt", type: "bytes32" } ], name: "ContractCreated", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "bytes32", name: "dataKey", type: "bytes32" }, { indexed: false, internalType: "bytes", name: "dataValue", type: "bytes" } ], name: "DataChanged", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "uint256", name: "operationType", type: "uint256" }, { indexed: true, internalType: "address", name: "target", type: "address" }, { indexed: false, internalType: "uint256", name: "value", type: "uint256" }, { indexed: true, internalType: "bytes4", name: "selector", type: "bytes4" } ], name: "Executed", type: "event" }, { anonymous: false, inputs: [], name: "OwnershipRenounced", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "previousOwner", type: "address" }, { indexed: true, internalType: "address", name: "newOwner", type: "address" } ], name: "OwnershipTransferStarted", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "previousOwner", type: "address" }, { indexed: true, internalType: "address", name: "newOwner", type: "address" } ], name: "OwnershipTransferred", type: "event" }, { anonymous: false, inputs: [], name: "RenounceOwnershipStarted", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "from", type: "address" }, { indexed: true, internalType: "uint256", name: "value", type: "uint256" }, { indexed: true, internalType: "bytes32", name: "typeId", type: "bytes32" }, { indexed: false, internalType: "bytes", name: "receivedData", type: "bytes" }, { indexed: false, internalType: "bytes", name: "returnedValue", type: "bytes" } ], name: "UniversalReceiver", type: "event" }, { stateMutability: "payable", type: "fallback" }, { inputs: [], name: "RENOUNCE_OWNERSHIP_CONFIRMATION_DELAY", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "RENOUNCE_OWNERSHIP_CONFIRMATION_PERIOD", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "VERSION", outputs: [ { internalType: "string", name: "", type: "string" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "acceptOwnership", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "bytes[]", name: "data", type: "bytes[]" } ], name: "batchCalls", outputs: [ { internalType: "bytes[]", name: "results", type: "bytes[]" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "uint256", name: "operationType", type: "uint256" }, { internalType: "address", name: "target", type: "address" }, { internalType: "uint256", name: "value", type: "uint256" }, { internalType: "bytes", name: "data", type: "bytes" } ], name: "execute", outputs: [ { internalType: "bytes", name: "", type: "bytes" } ], stateMutability: "payable", type: "function" }, { inputs: [ { internalType: "uint256[]", name: "operationsType", type: "uint256[]" }, { internalType: "address[]", name: "targets", type: "address[]" }, { internalType: "uint256[]", name: "values", type: "uint256[]" }, { internalType: "bytes[]", name: "datas", type: "bytes[]" } ], name: "executeBatch", outputs: [ { internalType: "bytes[]", name: "", type: "bytes[]" } ], stateMutability: "payable", type: "function" }, { inputs: [ { internalType: "bytes32", name: "dataKey", type: "bytes32" } ], name: "getData", outputs: [ { internalType: "bytes", name: "dataValue", type: "bytes" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "bytes32[]", name: "dataKeys", type: "bytes32[]" } ], name: "getDataBatch", outputs: [ { internalType: "bytes[]", name: "dataValues", type: "bytes[]" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "owner", outputs: [ { internalType: "address", name: "", type: "address" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "pendingOwner", outputs: [ { internalType: "address", name: "", type: "address" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "renounceOwnership", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "bytes32", name: "dataKey", type: "bytes32" }, { internalType: "bytes", name: "dataValue", type: "bytes" } ], name: "setData", outputs: [], stateMutability: "payable", type: "function" }, { inputs: [ { internalType: "bytes32[]", name: "dataKeys", type: "bytes32[]" }, { internalType: "bytes[]", name: "dataValues", type: "bytes[]" } ], name: "setDataBatch", outputs: [], stateMutability: "payable", type: "function" }, { inputs: [ { internalType: "bytes4", name: "interfaceId", type: "bytes4" } ], name: "supportsInterface", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "newOwner", type: "address" } ], name: "transferOwnership", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "bytes32", name: "typeId", type: "bytes32" }, { internalType: "bytes", name: "receivedData", type: "bytes" } ], name: "universalReceiver", outputs: [ { internalType: "bytes", name: "returnedValues", type: "bytes" } ], stateMutability: "payable", type: "function" }, { stateMutability: "payable", type: "receive" } ]; const _bytecode$3 = "0x60806040526040516200332e3803806200332e833981016040819052620000269162000366565b3415620000ad577f468cd1581d7bc001c3b685513d2b929b55437be34700410383d58f3aa1ea0abc60001b34336001600160a01b03167f9c3ba68eb5742b8e3961aea0afc7371a71bf433c8a67a831803b64c064a178c2604051620000a4906040808252600090820181905260606020830181905282015260800190565b60405180910390a45b620000c3816200016360201b620011ce1760201c565b6040805180820190915260048152637c0334a160e01b60208201526200010b907feafec4d89fa9619884b600007c0334a14085fefa8b51ae5a40895018882bdb9090620001d1565b604080516020808201909252600081526200015c916001600160a01b038416917f79855c97dbc259ce395421d933d7bc0699b0f1561f988f09a9e8633fd542fe5c916200123c6200022a821b17901c565b5062000641565b6000546001600160a01b03828116911614620001ce57600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0383161790555b50565b6000828152600160205260409020620001eb82826200043c565b50817fece574603820d07bc9b91f2a932baadf4628aabcb8afba49776529c14a6104b2826040516200021e91906200055c565b60405180910390a25050565b62000254636bb56a1460e01b846001600160a01b0316620002db60201b620012d01790919060201c565b15620002d657604051631aed5a8560e21b81526001600160a01b03841690636bb56a14906200028a908590859060040162000571565b6000604051808303816000875af1158015620002aa573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052620002d4919081019062000594565b505b505050565b604080516001600160e01b03198316602480830191909152825180830390910181526044909101909152602080820180516001600160e01b03166301ffc9a760e01b178152825160009392849283928392918391908a617530fa92503d915060005190508280156200034e575060208210155b80156200035b5750600081115b979650505050505050565b6000602082840312156200037957600080fd5b81516001600160a01b03811681146200039157600080fd5b9392505050565b634e487b7160e01b600052604160045260246000fd5b600181811c90821680620003c357607f821691505b602082108103620003e457634e487b7160e01b600052602260045260246000fd5b50919050565b601f821115620002d657600081815260208120601f850160051c81016020861015620004135750805b601f850160051c820191505b8181101562000434578281556001016200041f565b505050505050565b81516001600160401b0381111562000458576200045862000398565b6200047081620004698454620003ae565b84620003ea565b602080601f831160018114620004a857600084156200048f5750858301515b600019600386901b1c1916600185901b17855562000434565b600085815260208120601f198616915b82811015620004d957888601518255948401946001909101908401620004b8565b5085821015620004f85787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b60005b83811015620005255781810151838201526020016200050b565b50506000910152565b600081518084526200054881602086016020860162000508565b601f01601f19169290920160200192915050565b6020815260006200039160208301846200052e565b8281526040602082015260006200058c60408301846200052e565b949350505050565b600060208284031215620005a757600080fd5b81516001600160401b0380821115620005bf57600080fd5b818401915084601f830112620005d457600080fd5b815181811115620005e957620005e962000398565b604051601f8201601f19908116603f0116810190838211818310171562000614576200061462000398565b816040528281528760208487010111156200062e57600080fd5b6200035b83602083016020880162000508565b612cdd80620006516000396000f3fe6080604052600436106101125760003560e01c806379ba5097116100a5578063dedff9c611610074578063ead3fbdf11610059578063ead3fbdf14610203578063f2fde38b146103ae578063ffa1ad74146103ce5761015d565b8063dedff9c614610370578063e30c3978146103905761015d565b806379ba5097146103035780637f23690c146103185780638da5cb5b1461032b578063979024211461035d5761015d565b806354f6127f116100e157806354f6127f1461029b5780636963d438146102bb5780636bb56a14146102db578063715018a6146102ee5761015d565b806301bfba611461020357806301ffc9a71461022b578063318584521461025b57806344c028fe1461027b5761015d565b3661015d57341561015b576101597f468cd1581d7bc001c3b685513d2b929b55437be34700410383d58f3aa1ea0abc60001b60405180602001604052806000815250610417565b505b005b600036606060048210156101eb5734156101d6576101d47f468cd1581d7bc001c3b685513d2b929b55437be34700410383d58f3aa1ea0abc60001b84848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061041792505050565b505b506040805160208101909152600081526101f8565b6101f5838361070e565b90505b915050805190602001f35b34801561020f57600080fd5b5061021860c881565b6040519081526020015b60405180910390f35b34801561023757600080fd5b5061024b61024636600461231b565b6108ea565b6040519015158152602001610222565b61026e610269366004612530565b610986565b6040516102229190612688565b61028e6102893660046126ea565b610a30565b604051610222919061273f565b3480156102a757600080fd5b5061028e6102b6366004612752565b610acf565b3480156102c757600080fd5b5061026e6102d636600461276b565b610ada565b61028e6102e93660046127e0565b610417565b3480156102fa57600080fd5b5061015b610c3d565b34801561030f57600080fd5b5061015b610cd3565b61015b6103263660046127e0565b610dcb565b34801561033757600080fd5b506000546001600160a01b03165b6040516001600160a01b039091168152602001610222565b61015b61036b366004612827565b610e9c565b34801561037c57600080fd5b5061026e61038b366004612881565b611058565b34801561039c57600080fd5b506003546001600160a01b0316610345565b3480156103ba57600080fd5b5061015b6103c93660046128b6565b611103565b3480156103da57600080fd5b5061028e6040518060400160405280600681526020017f302e31352e30000000000000000000000000000000000000000000000000000081525081565b6060341580159061044857507f468cd1581d7bc001c3b685513d2b929b55437be34700410383d58f3aa1ea0abc8314155b156104b3576104b17f468cd1581d7bc001c3b685513d2b929b55437be34700410383d58f3aa1ea0abc60001b6000368080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061041792505050565b505b60006104de7f0cfc51aec37c55a4d0b1a65c6255c4bf2fbdf6277f3cc0730c45b828b6db8b47611359565b9050606060148251106105a15760006104f6836128d1565b60601c905061050c81635122dded60e11b6112d0565b1561059f57600480546001600160a01b0319166001600160a01b0383169081178255604051635122dded60e11b8152909163a245bbda9161055591339134918c918c910161290d565b6000604051808303816000875af1158015610574573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261059c919081019061293b565b91505b505b60006105ba690cfc51aec37c55a4d0b160b01b876113fb565b905060006105c782611359565b90506060601482511061068a5760006105df836128d1565b60601c90506105f581635122dded60e11b6112d0565b1561068857600480546001600160a01b0319166001600160a01b0383169081178255604051635122dded60e11b8152909163a245bbda9161063e91339134918f918f910161290d565b6000604051808303816000875af115801561065d573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610685919081019061293b565b91505b505b600480546001600160a01b03191690556040516106ad90859083906020016129a9565b60405160208183030381529060405295508734336001600160a01b03167f9c3ba68eb5742b8e3961aea0afc7371a71bf433c8a67a831803b64c064a178c28a8a6040516106fb9291906129a9565b60405180910390a4505050505092915050565b60606000806107286000356001600160e01b031916611464565b915091503460001415801561073b575080155b156107a5576107a37f468cd1581d7bc001c3b685513d2b929b55437be34700410383d58f3aa1ea0abc60001b86868080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061041792505050565b505b6000356001600160e01b0319161580156107c657506001600160a01b038216155b156107e45760405180602001604052806000815250925050506108e4565b6001600160a01b038216610837576040517fbb370b2b0000000000000000000000000000000000000000000000000000000081526001600160e01b03196000351660048201526024015b60405180910390fd5b600080836001600160a01b031683610850576000610852565b345b8888333460405160200161086994939291906129ce565b60408051601f1981840301815290829052610883916129fe565b60006040518083038185875af1925050503d80600081146108c0576040519150601f19603f3d011682016040523d82523d6000602084013e6108c5565b606091505b509150915081156108db5793506108e492505050565b80518060208301fd5b92915050565b60006001600160e01b031982167f28af17e600000000000000000000000000000000000000000000000000000000148061093457506001600160e01b03198216631aed5a8560e21b145b8061096857506001600160e01b031982167f94be599900000000000000000000000000000000000000000000000000000000145b80610977575061097782611548565b806108e457506108e482611586565b60606109906115c4565b3415610a19576040516001600160e01b03196000351660208201527f468cd1581d7bc001c3b685513d2b929b55437be34700410383d58f3aa1ea0abc90349033907f9c3ba68eb5742b8e3961aea0afc7371a71bf433c8a67a831803b64c064a178c29060240160408051601f1981840301815290829052610a1091612a1a565b60405180910390a45b610a258585858561161b565b90505b949350505050565b6060610a3a6115c4565b3415610ac3576040516001600160e01b03196000351660208201527f468cd1581d7bc001c3b685513d2b929b55437be34700410383d58f3aa1ea0abc90349033907f9c3ba68eb5742b8e3961aea0afc7371a71bf433c8a67a831803b64c064a178c29060240160408051601f1981840301815290829052610aba91612a1a565b60405180910390a45b610a25858585856117ab565b60606108e482611359565b60608167ffffffffffffffff811115610af557610af5612345565b604051908082528060200260200182016040528015610b2857816020015b6060815260200190600190039081610b135790505b50905060005b82811015610c365760008030868685818110610b4c57610b4c612a44565b9050602002810190610b5e9190612a5a565b604051610b6c929190612aa8565b600060405180830381855af49150503d8060008114610ba7576040519150601f19603f3d011682016040523d82523d6000602084013e610bac565b606091505b509150915081610c0e57805115610bc65780518082602001fd5b60405162461bcd60e51b815260206004820152601960248201527f4c5350393a20626174636843616c6c7320726576657274656400000000000000604482015260640161082e565b80848481518110610c2157610c21612a44565b60209081029190910101525050600101610b2e565b5092915050565b610c456115c4565b6000546001600160a01b0316610c596118b7565b6000546001600160a01b0316610cd057604080516001600160a01b0383166020820152600091810191909152610cd0907f0c622e58e6b7089ae35f1af1c86d997be92fcdd8c9509652022d41aa65169471906060015b60408051601f198184030181529190526001600160a01b038416919061123c565b50565b600354600160a01b900460ff1615610d17576040517f5758dd0700000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6000546001600160a01b0316610d2b6119c3565b604080516001600160a01b03831660208201523391810191909152610d74907f0c622e58e6b7089ae35f1af1c86d997be92fcdd8c9509652022d41aa6516947190606001610caf565b604080516001600160a01b0383166020820152338183018190528251808303840181526060909201909252610cd091907f79855c97dbc259ce395421d933d7bc0699b0f1561f988f09a9e8633fd542fe5c9061123c565b3415610dea5760405163f36ba73760e01b815260040160405180910390fd5b6000610df4611a29565b90508015610e8d576001600160a01b03198316690cfc51aec37c55a4d0b160b01b1480610e4b57507fffffffffffff00000000000000000000000000000000000000000000000000008316654b80742de2bf60d01b145b80610e6c57506001600160a01b03198316696773c5a04a6d4300884b60b11b145b15610e8d5760405163199611f160e01b81526004810184905260240161082e565b610e978383611ac3565b505050565b6000610ea6611a29565b90508151835114610ee3576040517f3bcc897900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b3415610f025760405163f36ba73760e01b815260040160405180910390fd5b60005b835181101561105257811561100e578351690cfc51aec37c55a4d0b160b01b90859083908110610f3757610f37612a44565b60200260200101516001600160a01b0319161480610f9657508351654b80742de2bf60d01b90859083908110610f6f57610f6f612a44565b602002602001015179ffffffffffffffffffffffffffffffffffffffffffffffffffff1916145b80610fd357508351696773c5a04a6d4300884b60b11b90859083908110610fbf57610fbf612a44565b60200260200101516001600160a01b031916145b1561100e57838181518110610fea57610fea612a44565b602002602001015160405163199611f160e01b815260040161082e91815260200190565b61104a84828151811061102357611023612a44565b602002602001015184838151811061103d5761103d612a44565b6020026020010151611ac3565b600101610f05565b50505050565b6060815167ffffffffffffffff81111561107457611074612345565b6040519080825280602002602001820160405280156110a757816020015b60608152602001906001900390816110925790505b50905060005b82518110156110fd576110d88382815181106110cb576110cb612a44565b6020026020010151611359565b8282815181106110ea576110ea612a44565b60209081029190910101526001016110ad565b50919050565b61110b6115c4565b6003805460ff60a01b1916600160a01b17905561112781611b18565b600080546040516001600160a01b03918216929184169183917f38d16b8cac22d99fc7c124b9cd0de2d3fa1faef420bfe791d8c362d765e227009190a3604080516001600160a01b038381166020830152841681830181905282518083038401815260609092019092526111bd91907faefd43f45fed1bcd8992f23c803b6f4ec45cf6b62b0d404d565f290a471e763f9061123c565b50506003805460ff60a01b19169055565b6000546001600160a01b03828116911614610cd057600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0383166001600160a01b031990911617905550565b6112566001600160a01b038416631aed5a8560e21b6112d0565b15610e9757604051631aed5a8560e21b81526001600160a01b03841690636bb56a14906112899085908590600401612ab8565b6000604051808303816000875af11580156112a8573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052611052919081019061293b565b604080516001600160e01b03198316602480830191909152825180830390910181526044909101909152602080820180516001600160e01b03166301ffc9a760e01b178152825160009392849283928392918391908a617530fa92503d91506000519050828015611342575060208210155b801561134e5750600081115b979650505050505050565b600081815260016020526040902080546060919061137690612ad1565b80601f01602080910402602001604051908101604052809291908181526020018280546113a290612ad1565b80156113ef5780601f106113c4576101008083540402835291602001916113ef565b820191906000526020600020905b8154815290600101906020018083116113d257829003601f168201915b50505050509050919050565b604080517fffffffffffffffffffff00000000000000000000000000000000000000000000841660208201526000602a82018190526bffffffffffffffffffffffff198416602c83015291829101604051602081830303815290604052905080610a2890612b05565b60008080611489696773c5a04a6d4300884b60b11b6001600160e01b031986166113fb565b9050600061149682611359565b90506014815110156114af575060009485945092505050565b805160150361153057806014815181106114cb576114cb612a44565b01602001517fff00000000000000000000000000000000000000000000000000000000000000167f01000000000000000000000000000000000000000000000000000000000000000361153057611521816128d1565b60601c95600195509350505050565b611539816128d1565b60601c95600095509350505050565b60006001600160e01b031982167fa918fa6b0000000000000000000000000000000000000000000000000000000014806108e457506108e482611b81565b6000806115996301ffc9a760e01b611464565b5090506001600160a01b0381166115b35750600092915050565b6115bd81846112d0565b9392505050565b336115d76000546001600160a01b031690565b6001600160a01b031614611619576040517fbf1169c500000000000000000000000000000000000000000000000000000000815233600482015260240161082e565b565b60608351855114158061163c57508251845114158061163c57508151835114155b15611673576040517f3ff55f4d00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b84516000036116ae576040517fe9ad2b5f00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6000855167ffffffffffffffff8111156116ca576116ca612345565b6040519080825280602002602001820160405280156116fd57816020015b60608152602001906001900390816116e85790505b50905060005b86518110156117a15761177c87828151811061172157611721612a44565b602002602001015187838151811061173b5761173b612a44565b602002602001015187848151811061175557611755612a44565b602002602001015187858151811061176f5761176f612a44565b60200260200101516117ab565b82828151811061178e5761178e612a44565b6020908102919091010152600101611703565b5095945050505050565b6060846117c4576117bd848484611bbf565b9050610a28565b600185036117fe576001600160a01b038416156117f457604051631820c12560e11b815260040160405180910390fd5b6117bd8383611cf0565b60028503611838576001600160a01b0384161561182e57604051631820c12560e11b815260040160405180910390fd5b6117bd8383611e0a565b60038503611882578215611878576040517f72f2bc6a00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6117bd8483611ef4565b6040517f7583b3bc0000000000000000000000000000000000000000000000000000000081526004810186905260240161082e565b60025443906000906118cb9060c890612b3f565b905060006118da60c883612b3f565b9050808311806118ea5750600254155b15611932576002839055600380546001600160a01b03191690556040517f81b7f830f1f0084db6497c486cbe6974c86488dcc4e3738eab94ab6d6b1653e790600090a1505050565b81831015611976576040517f1b080942000000000000000000000000000000000000000000000000000000008152600481018390526024810182905260440161082e565b61198060006111ce565b60006002819055600380546001600160a01b03191690556040517fd1f66c3d2bc1993a86be5e3d33709d98f0442381befcedd29f578b9b2506b1ce9190a1505050565b6003546001600160a01b03163314611a09576040517f451e452800000000000000000000000000000000000000000000000000000000815233600482015260240161082e565b611a12336111ce565b600380546001600160a01b03191690556000600255565b600080546001600160a01b03163314611ac0576004546001600160a01b03163314611abc5760405162461bcd60e51b815260206004820152603b60248201527f4f6e6c79204f776e6572206f72207265656e746572656420556e69766572736160448201527f6c2052656365697665722044656c656761746520616c6c6f7765640000000000606482015260840161082e565b5060015b90565b6000828152600160205260409020611adb8282612ba0565b50817fece574603820d07bc9b91f2a932baadf4628aabcb8afba49776529c14a6104b282604051611b0c919061273f565b60405180910390a25050565b306001600160a01b03821603611b5a576040517fe052a6f800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600380546001600160a01b0319166001600160a01b03929092169190911790556000600255565b60006001600160e01b031982167f629aa6940000000000000000000000000000000000000000000000000000000014806108e457506108e482611ff8565b606082471015611beb576040516301bf351f60e31b81524760048201526024810184905260440161082e565b611bf482612c60565b6001600160e01b031916846001600160a01b031660007f4810874456b8e6487bd861375cf6abd8e1c8bb5858c8ce36a86a04dabfac199e86604051611c3b91815260200190565b60405180910390a4600080856001600160a01b03168585604051611c5f91906129fe565b60006040518083038185875af1925050503d8060008114611c9c576040519150601f19603f3d011682016040523d82523d6000602084013e611ca1565b606091505b5091509150611ce682826040518060400160405280601681526020017f455243373235583a20556e6b6e6f776e204572726f7200000000000000000000815250612046565b9695505050505050565b606082471015611d1c576040516301bf351f60e31b81524760048201526024810184905260440161082e565b8151600003611d3e5760405163b81cd8d960e01b815260040160405180910390fd5b600082516020840185f090506001600160a01b038116611d8a576040517f0b07489b00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6000801b816001600160a01b031660017fa1fb700aaee2ae4a2ff6f91ce7eba292f89c2f5488b8ec4c5c5c8150692595c387604051611dcb91815260200190565b60405180910390a46040516bffffffffffffffffffffffff19606083901b16602082015260340160405160208183030381529060405291505092915050565b60608151600003611e2e5760405163b81cd8d960e01b815260040160405180910390fd5b6000611e478360208551611e429190612c94565b61205f565b90506000611e6484600060208751611e5f9190612c94565b6120c5565b90506000611e738684846121ed565b905082816001600160a01b031660027fa1fb700aaee2ae4a2ff6f91ce7eba292f89c2f5488b8ec4c5c5c8150692595c389604051611eb391815260200190565b60405180910390a46040516bffffffffffffffffffffffff19606083901b166020820152603401604051602081830303815290604052935050505092915050565b6060611eff82612c60565b6001600160e01b031916836001600160a01b031660037f4810874456b8e6487bd861375cf6abd8e1c8bb5858c8ce36a86a04dabfac199e6000604051611f4791815260200190565b60405180910390a4600080846001600160a01b031684604051611f6a91906129fe565b600060405180830381855afa9150503d8060008114611fa5576040519150601f19603f3d011682016040523d82523d6000602084013e611faa565b606091505b5091509150611fef82826040518060400160405280601681526020017f455243373235583a20556e6b6e6f776e204572726f7200000000000000000000815250612046565b95945050505050565b60006001600160e01b031982167f7545acac0000000000000000000000000000000000000000000000000000000014806108e457506301ffc9a760e01b6001600160e01b03198316146108e4565b606083156120555750816115bd565b6115bd83836122f1565b600061206c826020612b3f565b835110156120bc5760405162461bcd60e51b815260206004820152601560248201527f746f427974657333325f6f75744f66426f756e64730000000000000000000000604482015260640161082e565b50016020015190565b6060816120d381601f612b3f565b10156121215760405162461bcd60e51b815260206004820152600e60248201527f736c6963655f6f766572666c6f77000000000000000000000000000000000000604482015260640161082e565b61212b8284612b3f565b8451101561217b5760405162461bcd60e51b815260206004820152601160248201527f736c6963655f6f75744f66426f756e6473000000000000000000000000000000604482015260640161082e565b60608215801561219a57604051915060008252602082016040526121e4565b6040519150601f8416801560200281840101858101878315602002848b0101015b818310156121d35780518352602092830192016121bb565b5050858452601f01601f1916604052505b50949350505050565b60008347101561223f5760405162461bcd60e51b815260206004820152601d60248201527f437265617465323a20696e73756666696369656e742062616c616e6365000000604482015260640161082e565b81516000036122905760405162461bcd60e51b815260206004820181905260248201527f437265617465323a2062797465636f6465206c656e677468206973207a65726f604482015260640161082e565b8282516020840186f590506001600160a01b0381166115bd5760405162461bcd60e51b815260206004820152601960248201527f437265617465323a204661696c6564206f6e206465706c6f7900000000000000604482015260640161082e565b8151156123015781518083602001fd5b8060405162461bcd60e51b815260040161082e919061273f565b60006020828403121561232d57600080fd5b81356001600160e01b0319811681146115bd57600080fd5b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f1916810167ffffffffffffffff8111828210171561238457612384612345565b604052919050565b600067ffffffffffffffff8211156123a6576123a6612345565b5060051b60200190565b600082601f8301126123c157600080fd5b813560206123d66123d18361238c565b61235b565b82815260059290921b840181019181810190868411156123f557600080fd5b8286015b8481101561241057803583529183019183016123f9565b509695505050505050565b80356001600160a01b038116811461243257600080fd5b919050565b600067ffffffffffffffff82111561245157612451612345565b50601f01601f191660200190565b600082601f83011261247057600080fd5b813561247e6123d182612437565b81815284602083860101111561249357600080fd5b816020850160208301376000918101602001919091529392505050565b600082601f8301126124c157600080fd5b813560206124d16123d18361238c565b82815260059290921b840181019181810190868411156124f057600080fd5b8286015b8481101561241057803567ffffffffffffffff8111156125145760008081fd5b6125228986838b010161245f565b8452509183019183016124f4565b6000806000806080858703121561254657600080fd5b843567ffffffffffffffff8082111561255e57600080fd5b61256a888389016123b0565b955060209150818701358181111561258157600080fd5b8701601f8101891361259257600080fd5b80356125a06123d18261238c565b81815260059190911b8201840190848101908b8311156125bf57600080fd5b928501925b828410156125e4576125d58461241b565b825292850192908501906125c4565b975050505060408701359150808211156125fd57600080fd5b612609888389016123b0565b9350606087013591508082111561261f57600080fd5b5061262c878288016124b0565b91505092959194509250565b60005b8381101561265357818101518382015260200161263b565b50506000910152565b60008151808452612674816020860160208601612638565b601f01601f19169290920160200192915050565b6000602080830181845280855180835260408601915060408160051b870101925083870160005b828110156126dd57603f198886030184526126cb85835161265c565b945092850192908501906001016126af565b5092979650505050505050565b6000806000806080858703121561270057600080fd5b843593506127106020860161241b565b925060408501359150606085013567ffffffffffffffff81111561273357600080fd5b61262c8782880161245f565b6020815260006115bd602083018461265c565b60006020828403121561276457600080fd5b5035919050565b6000806020838503121561277e57600080fd5b823567ffffffffffffffff8082111561279657600080fd5b818501915085601f8301126127aa57600080fd5b8135818111156127b957600080fd5b8660208260051b85010111156127ce57600080fd5b60209290920196919550909350505050565b600080604083850312156127f357600080fd5b82359150602083013567ffffffffffffffff81111561281157600080fd5b61281d8582860161245f565b9150509250929050565b6000806040838503121561283a57600080fd5b823567ffffffffffffffff8082111561285257600080fd5b61285e868387016123b0565b9350602085013591508082111561287457600080fd5b5061281d858286016124b0565b60006020828403121561289357600080fd5b813567ffffffffffffffff8111156128aa57600080fd5b610a28848285016123b0565b6000602082840312156128c857600080fd5b6115bd8261241b565b805160208201516bffffffffffffffffffffffff1980821692919060148310156129055780818460140360031b1b83161693505b505050919050565b6001600160a01b0385168152836020820152826040820152608060608201526000611ce6608083018461265c565b60006020828403121561294d57600080fd5b815167ffffffffffffffff81111561296457600080fd5b8201601f8101841361297557600080fd5b80516129836123d182612437565b81815285602083850101111561299857600080fd5b611fef826020830160208601612638565b6040815260006129bc604083018561265c565b8281036020840152611fef818561265c565b8385823760609290921b6bffffffffffffffffffffffff1916919092019081526014810191909152603401919050565b60008251612a10818460208701612638565b9190910192915050565b604081526000612a2d604083018461265c565b828103602093840152600081529190910192915050565b634e487b7160e01b600052603260045260246000fd5b6000808335601e19843603018112612a7157600080fd5b83018035915067ffffffffffffffff821115612a8c57600080fd5b602001915036819003821315612aa157600080fd5b9250929050565b8183823760009101908152919050565b828152604060208201526000610a28604083018461265c565b600181811c90821680612ae557607f821691505b6020821081036110fd57634e487b7160e01b600052602260045260246000fd5b805160208083015191908110156110fd5760001960209190910360031b1b16919050565b634e487b7160e01b600052601160045260246000fd5b808201808211156108e4576108e4612b29565b601f821115610e9757600081815260208120601f850160051c81016020861015612b795750805b601f850160051c820191505b81811015612b9857828155600101612b85565b505050505050565b815167ffffffffffffffff811115612bba57612bba612345565b612bce81612bc88454612ad1565b84612b52565b602080601f831160018114612c035760008415612beb5750858301515b600019600386901b1c1916600185901b178555612b98565b600085815260208120601f198616915b82811015612c3257888601518255948401946001909101908401612c13565b5085821015612c505787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b6000815160208301516001600160e01b0319808216935060048310156129055760049290920360031b82901b161692915050565b818103818111156108e4576108e4612b2956fea2646970667358221220d2d4ec0c8c5c667e87620b9a1194dbc2918039429f3e20a7e0a8b71f80450fe564736f6c63430008110033"; const isSuperArgs$3 = (xs) => xs.length > 1; class LSP9Vault__factory extends ethers.ContractFactory { constructor(...args) { if (isSuperArgs$3(args)) { super(...args); } else { super(_abi$3, _bytecode$3, args[0]); } } getDeployTransaction(newOwner, overrides) { return super.getDeployTransaction(newOwner, overrides || {}); } deploy(newOwner, overrides) { return super.deploy(newOwner, overrides || {}); } connect(runner) { return super.connect(runner); } static createInterface() { return new ethers.Interface(_abi$3); } static connect(address, runner) { return new ethers.Contract(address, _abi$3, runner); } } __publicField$3(LSP9Vault__factory, "bytecode", _bytecode$3); __publicField$3(LSP9Vault__factory, "abi", _abi$3); var __defProp$2 = Object.defineProperty; var __defNormalProp$2 = (obj, key, value) => key in obj ? __defProp$2(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$2 = (obj, key, value) => { __defNormalProp$2(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$2 = [ { inputs: [], stateMutability: "nonpayable", type: "constructor" }, { inputs: [], name: "ERC725X_ContractDeploymentFailed", type: "error" }, { inputs: [], name: "ERC725X_CreateOperationsRequireEmptyRecipientAddress", type: "error" }, { inputs: [], name: "ERC725X_ExecuteParametersEmptyArray", type: "error" }, { inputs: [], name: "ERC725X_ExecuteParametersLengthMismatch", type: "error" }, { inputs: [ { internalType: "uint256", name: "balance", type: "uint256" }, { internalType: "uint256", name: "value", type: "uint256" } ], name: "ERC725X_InsufficientBalance", type: "error" }, { inputs: [], name: "ERC725X_MsgValueDisallowedInStaticCall", type: "error" }, { inputs: [], name: "ERC725X_NoContractBytecodeProvided", type: "error" }, { inputs: [ { internalType: "uint256", name: "operationTypeProvided", type: "uint256" } ], name: "ERC725X_UnknownOperationType", type: "error" }, { inputs: [], name: "ERC725Y_DataKeysValuesLengthMismatch", type: "error" }, { inputs: [], name: "ERC725Y_MsgValueDisallowed", type: "error" }, { inputs: [ { internalType: "address", name: "caller", type: "address" } ], name: "LSP14CallerNotPendingOwner", type: "error" }, { inputs: [], name: "LSP14CannotTransferOwnershipToSelf", type: "error" }, { inputs: [], name: "LSP14MustAcceptOwnershipInSeparateTransaction", type: "error" }, { inputs: [ { internalType: "uint256", name: "renounceOwnershipStart", type: "uint256" }, { internalType: "uint256", name: "renounceOwnershipEnd", type: "uint256" } ], name: "LSP14NotInRenounceOwnershipInterval", type: "error" }, { inputs: [ { internalType: "bytes32", name: "dataKey", type: "bytes32" } ], name: "LSP1DelegateNotAllowedToSetDataKey", type: "error" }, { inputs: [ { internalType: "bytes4", name: "functionSelector", type: "bytes4" } ], name: "NoExtensionFoundForFunctionSelector", type: "error" }, { inputs: [ { internalType: "address", name: "callerAddress", type: "address" } ], name: "OwnableCallerNotTheOwner", type: "error" }, { anonymous: false, inputs: [ { indexed: true, internalType: "uint256", name: "operationType", type: "uint256" }, { indexed: true, internalType: "address", name: "contractAddress", type: "address" }, { indexed: false, internalType: "uint256", name: "value", type: "uint256" }, { indexed: true, internalType: "bytes32", name: "salt", type: "bytes32" } ], name: "ContractCreated", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "bytes32", name: "dataKey", type: "bytes32" }, { indexed: false, internalType: "bytes", name: "dataValue", type: "bytes" } ], name: "DataChanged", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "uint256", name: "operationType", type: "uint256" }, { indexed: true, internalType: "address", name: "target", type: "address" }, { indexed: false, internalType: "uint256", name: "value", type: "uint256" }, { indexed: true, internalType: "bytes4", name: "selector", type: "bytes4" } ], name: "Executed", type: "event" }, { anonymous: false, inputs: [ { indexed: false, internalType: "uint8", name: "version", type: "uint8" } ], name: "Initialized", type: "event" }, { anonymous: false, inputs: [], name: "OwnershipRenounced", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "previousOwner", type: "address" }, { indexed: true, internalType: "address", name: "newOwner", type: "address" } ], name: "OwnershipTransferStarted", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "previousOwner", type: "address" }, { indexed: true, internalType: "address", name: "newOwner", type: "address" } ], name: "OwnershipTransferred", type: "event" }, { anonymous: false, inputs: [], name: "RenounceOwnershipStarted", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "from", type: "address" }, { indexed: true, internalType: "uint256", name: "value", type: "uint256" }, { indexed: true, internalType: "bytes32", name: "typeId", type: "bytes32" }, { indexed: false, internalType: "bytes", name: "receivedData", type: "bytes" }, { indexed: false, internalType: "bytes", name: "returnedValue", type: "bytes" } ], name: "UniversalReceiver", type: "event" }, { stateMutability: "payable", type: "fallback" }, { inputs: [], name: "RENOUNCE_OWNERSHIP_CONFIRMATION_DELAY", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "RENOUNCE_OWNERSHIP_CONFIRMATION_PERIOD", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "VERSION", outputs: [ { internalType: "string", name: "", type: "string" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "acceptOwnership", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "bytes[]", name: "data", type: "bytes[]" } ], name: "batchCalls", outputs: [ { internalType: "bytes[]", name: "results", type: "bytes[]" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "uint256", name: "operationType", type: "uint256" }, { internalType: "address", name: "target", type: "address" }, { internalType: "uint256", name: "value", type: "uint256" }, { internalType: "bytes", name: "data", type: "bytes" } ], name: "execute", outputs: [ { internalType: "bytes", name: "", type: "bytes" } ], stateMutability: "payable", type: "function" }, { inputs: [ { internalType: "uint256[]", name: "operationsType", type: "uint256[]" }, { internalType: "address[]", name: "targets", type: "address[]" }, { internalType: "uint256[]", name: "values", type: "uint256[]" }, { internalType: "bytes[]", name: "datas", type: "bytes[]" } ], name: "executeBatch", outputs: [ { internalType: "bytes[]", name: "", type: "bytes[]" } ], stateMutability: "payable", type: "function" }, { inputs: [ { internalType: "bytes32", name: "dataKey", type: "bytes32" } ], name: "getData", outputs: [ { internalType: "bytes", name: "dataValue", type: "bytes" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "bytes32[]", name: "dataKeys", type: "bytes32[]" } ], name: "getDataBatch", outputs: [ { internalType: "bytes[]", name: "dataValues", type: "bytes[]" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "newOwner", type: "address" } ], name: "initialize", outputs: [], stateMutability: "payable", type: "function" }, { inputs: [], name: "owner", outputs: [ { internalType: "address", name: "", type: "address" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "pendingOwner", outputs: [ { internalType: "address", name: "", type: "address" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "renounceOwnership", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "bytes32", name: "dataKey", type: "bytes32" }, { internalType: "bytes", name: "dataValue", type: "bytes" } ], name: "setData", outputs: [], stateMutability: "payable", type: "function" }, { inputs: [ { internalType: "bytes32[]", name: "dataKeys", type: "bytes32[]" }, { internalType: "bytes[]", name: "dataValues", type: "bytes[]" } ], name: "setDataBatch", outputs: [], stateMutability: "payable", type: "function" }, { inputs: [ { internalType: "bytes4", name: "interfaceId", type: "bytes4" } ], name: "supportsInterface", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "newOwner", type: "address" } ], name: "transferOwnership", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "bytes32", name: "typeId", type: "bytes32" }, { internalType: "bytes", name: "receivedData", type: "bytes" } ], name: "universalReceiver", outputs: [ { internalType: "bytes", name: "returnedValues", type: "bytes" } ], stateMutability: "payable", type: "function" }, { stateMutability: "payable", type: "receive" } ]; const _bytecode$2 = "0x60806040523480156200001157600080fd5b506200001c62000022565b620000e3565b600054610100900460ff16156200008f5760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b60005460ff90811614620000e1576000805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b61303680620000f36000396000f3fe60806040526004361061012d5760003560e01c80637f23690c116100a5578063dedff9c611610074578063ead3fbdf11610059578063ead3fbdf1461021e578063f2fde38b146103e2578063ffa1ad741461040257610178565b8063dedff9c6146103a4578063e30c3978146103c457610178565b80637f23690c146103335780638da5cb5b14610346578063979024211461037e578063c4d66de81461039157610178565b806354f6127f116100fc5780636bb56a14116100e15780636bb56a14146102f6578063715018a61461030957806379ba50971461031e57610178565b806354f6127f146102b65780636963d438146102d657610178565b806301bfba611461021e57806301ffc9a714610246578063318584521461027657806344c028fe1461029657610178565b36610178573415610176576101747f468cd1581d7bc001c3b685513d2b929b55437be34700410383d58f3aa1ea0abc60001b6040518060200160405280600081525061044b565b505b005b600036606060048210156102065734156101f1576101ef7f468cd1581d7bc001c3b685513d2b929b55437be34700410383d58f3aa1ea0abc60001b84848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061044b92505050565b505b50604080516020810190915260008152610213565b6102108383610742565b90505b915050805190602001f35b34801561022a57600080fd5b5061023360c881565b6040519081526020015b60405180910390f35b34801561025257600080fd5b50610266610261366004612674565b61091e565b604051901515815260200161023d565b610289610284366004612889565b6109ba565b60405161023d91906129e1565b6102a96102a4366004612a43565b610a64565b60405161023d9190612a98565b3480156102c257600080fd5b506102a96102d1366004612aab565b610b03565b3480156102e257600080fd5b506102896102f1366004612ac4565b610b0e565b6102a9610304366004612b39565b61044b565b34801561031557600080fd5b50610176610c71565b34801561032a57600080fd5b50610176610d13565b610176610341366004612b39565b610e11565b34801561035257600080fd5b506000546201000090046001600160a01b03165b6040516001600160a01b03909116815260200161023d565b61017661038c366004612b80565b610ee2565b61017661039f366004612bda565b61109e565b3480156103b057600080fd5b506102896103bf366004612bf5565b6111c0565b3480156103d057600080fd5b506003546001600160a01b0316610366565b3480156103ee57600080fd5b506101766103fd366004612bda565b61126b565b34801561040e57600080fd5b506102a96040518060400160405280600681526020017f302e31352e30000000000000000000000000000000000000000000000000000081525081565b6060341580159061047c57507f468cd1581d7bc001c3b685513d2b929b55437be34700410383d58f3aa1ea0abc8314155b156104e7576104e57f468cd1581d7bc001c3b685513d2b929b55437be34700410383d58f3aa1ea0abc60001b6000368080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061044b92505050565b505b60006105127f0cfc51aec37c55a4d0b1a65c6255c4bf2fbdf6277f3cc0730c45b828b6db8b4761133c565b9050606060148251106105d557600061052a83612c2a565b60601c905061054081635122dded60e11b6113de565b156105d357600480546001600160a01b0319166001600160a01b0383169081178255604051635122dded60e11b8152909163a245bbda9161058991339134918c918c9101612c66565b6000604051808303816000875af11580156105a8573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526105d09190810190612c94565b91505b505b60006105ee690cfc51aec37c55a4d0b160b01b87611467565b905060006105fb8261133c565b9050606060148251106106be57600061061383612c2a565b60601c905061062981635122dded60e11b6113de565b156106bc57600480546001600160a01b0319166001600160a01b0383169081178255604051635122dded60e11b8152909163a245bbda9161067291339134918f918f9101612c66565b6000604051808303816000875af1158015610691573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526106b99190810190612c94565b91505b505b600480546001600160a01b03191690556040516106e19085908390602001612d02565b60405160208183030381529060405295508734336001600160a01b03167f9c3ba68eb5742b8e3961aea0afc7371a71bf433c8a67a831803b64c064a178c28a8a60405161072f929190612d02565b60405180910390a4505050505092915050565b606060008061075c6000356001600160e01b0319166114d0565b915091503460001415801561076f575080155b156107d9576107d77f468cd1581d7bc001c3b685513d2b929b55437be34700410383d58f3aa1ea0abc60001b86868080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061044b92505050565b505b6000356001600160e01b0319161580156107fa57506001600160a01b038216155b15610818576040518060200160405280600081525092505050610918565b6001600160a01b03821661086b576040517fbb370b2b0000000000000000000000000000000000000000000000000000000081526001600160e01b03196000351660048201526024015b60405180910390fd5b600080836001600160a01b031683610884576000610886565b345b8888333460405160200161089d9493929190612d27565b60408051601f19818403018152908290526108b791612d57565b60006040518083038185875af1925050503d80600081146108f4576040519150601f19603f3d011682016040523d82523d6000602084013e6108f9565b606091505b5091509150811561090f57935061091892505050565b80518060208301fd5b92915050565b60006001600160e01b031982167f28af17e600000000000000000000000000000000000000000000000000000000148061096857506001600160e01b03198216631aed5a8560e21b145b8061099c57506001600160e01b031982167f94be599900000000000000000000000000000000000000000000000000000000145b806109ab57506109ab826115b4565b806109185750610918826115f2565b60606109c4611630565b3415610a4d576040516001600160e01b03196000351660208201527f468cd1581d7bc001c3b685513d2b929b55437be34700410383d58f3aa1ea0abc90349033907f9c3ba68eb5742b8e3961aea0afc7371a71bf433c8a67a831803b64c064a178c29060240160408051601f1981840301815290829052610a4491612d73565b60405180910390a45b610a598585858561167f565b90505b949350505050565b6060610a6e611630565b3415610af7576040516001600160e01b03196000351660208201527f468cd1581d7bc001c3b685513d2b929b55437be34700410383d58f3aa1ea0abc90349033907f9c3ba68eb5742b8e3961aea0afc7371a71bf433c8a67a831803b64c064a178c29060240160408051601f1981840301815290829052610aee91612d73565b60405180910390a45b610a598585858561180f565b60606109188261133c565b60608167ffffffffffffffff811115610b2957610b2961269e565b604051908082528060200260200182016040528015610b5c57816020015b6060815260200190600190039081610b475790505b50905060005b82811015610c6a5760008030868685818110610b8057610b80612d9d565b9050602002810190610b929190612db3565b604051610ba0929190612e01565b600060405180830381855af49150503d8060008114610bdb576040519150601f19603f3d011682016040523d82523d6000602084013e610be0565b606091505b509150915081610c4257805115610bfa5780518082602001fd5b60405162461bcd60e51b815260206004820152601960248201527f4c5350393a20626174636843616c6c73207265766572746564000000000000006044820152606401610862565b80848481518110610c5557610c55612d9d565b60209081029190910101525050600101610b62565b5092915050565b610c79611630565b6000546201000090046001600160a01b0316610c9361191b565b6000546201000090046001600160a01b0316610d1057604080516001600160a01b0383166020820152600091810191909152610d10907f0c622e58e6b7089ae35f1af1c86d997be92fcdd8c9509652022d41aa65169471906060015b60408051601f198184030181529190526001600160a01b0384169190611a27565b50565b600354600160a01b900460ff1615610d57576040517f5758dd0700000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6000546201000090046001600160a01b0316610d71611abb565b604080516001600160a01b03831660208201523391810191909152610dba907f0c622e58e6b7089ae35f1af1c86d997be92fcdd8c9509652022d41aa6516947190606001610cef565b604080516001600160a01b0383166020820152338183018190528251808303840181526060909201909252610d1091907f79855c97dbc259ce395421d933d7bc0699b0f1561f988f09a9e8633fd542fe5c90611a27565b3415610e305760405163f36ba73760e01b815260040160405180910390fd5b6000610e3a611b21565b90508015610ed3576001600160a01b03198316690cfc51aec37c55a4d0b160b01b1480610e9157507fffffffffffff00000000000000000000000000000000000000000000000000008316654b80742de2bf60d01b145b80610eb257506001600160a01b03198316696773c5a04a6d4300884b60b11b145b15610ed35760405163199611f160e01b815260048101849052602401610862565b610edd8383611bd3565b505050565b6000610eec611b21565b90508151835114610f29576040517f3bcc897900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b3415610f485760405163f36ba73760e01b815260040160405180910390fd5b60005b8351811015611098578115611054578351690cfc51aec37c55a4d0b160b01b90859083908110610f7d57610f7d612d9d565b60200260200101516001600160a01b0319161480610fdc57508351654b80742de2bf60d01b90859083908110610fb557610fb5612d9d565b602002602001015179ffffffffffffffffffffffffffffffffffffffffffffffffffff1916145b8061101957508351696773c5a04a6d4300884b60b11b9085908390811061100557611005612d9d565b60200260200101516001600160a01b031916145b156110545783818151811061103057611030612d9d565b602002602001015160405163199611f160e01b815260040161086291815260200190565b61109084828151811061106957611069612d9d565b602002602001015184838151811061108357611083612d9d565b6020026020010151611bd3565b600101610f4b565b50505050565b600054610100900460ff16158080156110be5750600054600160ff909116105b806110d85750303b1580156110d8575060005460ff166001145b61114a5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a65640000000000000000000000000000000000006064820152608401610862565b6000805460ff19166001179055801561116d576000805461ff0019166101001790555b61117682611c28565b80156111bc576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b5050565b6060815167ffffffffffffffff8111156111dc576111dc61269e565b60405190808252806020026020018201604052801561120f57816020015b60608152602001906001900390816111fa5790505b50905060005b82518110156112655761124083828151811061123357611233612d9d565b602002602001015161133c565b82828151811061125257611252612d9d565b6020908102919091010152600101611215565b50919050565b611273611630565b6003805460ff60a01b1916600160a01b17905561128f81611dda565b600080546040516001600160a01b03620100009092048216929184169183917f38d16b8cac22d99fc7c124b9cd0de2d3fa1faef420bfe791d8c362d765e227009190a3604080516001600160a01b0383811660208301528416818301819052825180830384018152606090920190925261132b91907faefd43f45fed1bcd8992f23c803b6f4ec45cf6b62b0d404d565f290a471e763f90611a27565b50506003805460ff60a01b19169055565b600081815260016020526040902080546060919061135990612e11565b80601f016020809104026020016040519081016040528092919081815260200182805461138590612e11565b80156113d25780601f106113a7576101008083540402835291602001916113d2565b820191906000526020600020905b8154815290600101906020018083116113b557829003601f168201915b50505050509050919050565b604080516001600160e01b03198316602480830191909152825180830390910181526044909101909152602080820180516001600160e01b03166301ffc9a760e01b178152825160009392849283928392918391908a617530fa92503d91506000519050828015611450575060208210155b801561145c5750600081115b979650505050505050565b604080517fffffffffffffffffffff00000000000000000000000000000000000000000000841660208201526000602a82018190526bffffffffffffffffffffffff198416602c83015291829101604051602081830303815290604052905080610a5c90612e45565b600080806114f5696773c5a04a6d4300884b60b11b6001600160e01b03198616611467565b905060006115028261133c565b905060148151101561151b575060009485945092505050565b805160150361159c578060148151811061153757611537612d9d565b01602001517fff00000000000000000000000000000000000000000000000000000000000000167f01000000000000000000000000000000000000000000000000000000000000000361159c5761158d81612c2a565b60601c95600195509350505050565b6115a581612c2a565b60601c95600095509350505050565b60006001600160e01b031982167fa918fa6b000000000000000000000000000000000000000000000000000000001480610918575061091882611e43565b6000806116056301ffc9a760e01b6114d0565b5090506001600160a01b03811661161f5750600092915050565b61162981846113de565b9392505050565b6000546001600160a01b036201000090910416331461167d576040517fbf1169c5000000000000000000000000000000000000000000000000000000008152336004820152602401610862565b565b6060835185511415806116a05750825184511415806116a057508151835114155b156116d7576040517f3ff55f4d00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b8451600003611712576040517fe9ad2b5f00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6000855167ffffffffffffffff81111561172e5761172e61269e565b60405190808252806020026020018201604052801561176157816020015b606081526020019060019003908161174c5790505b50905060005b8651811015611805576117e087828151811061178557611785612d9d565b602002602001015187838151811061179f5761179f612d9d565b60200260200101518784815181106117b9576117b9612d9d565b60200260200101518785815181106117d3576117d3612d9d565b602002602001015161180f565b8282815181106117f2576117f2612d9d565b6020908102919091010152600101611767565b5095945050505050565b60608461182857611821848484611e81565b9050610a5c565b60018503611862576001600160a01b0384161561185857604051631820c12560e11b815260040160405180910390fd5b6118218383611fb2565b6002850361189c576001600160a01b0384161561189257604051631820c12560e11b815260040160405180910390fd5b61182183836120cc565b600385036118e65782156118dc576040517f72f2bc6a00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b61182184836121b6565b6040517f7583b3bc00000000000000000000000000000000000000000000000000000000815260048101869052602401610862565b600254439060009061192f9060c890612e7f565b9050600061193e60c883612e7f565b90508083118061194e5750600254155b15611996576002839055600380546001600160a01b03191690556040517f81b7f830f1f0084db6497c486cbe6974c86488dcc4e3738eab94ab6d6b1653e790600090a1505050565b818310156119da576040517f1b0809420000000000000000000000000000000000000000000000000000000081526004810183905260248101829052604401610862565b6119e460006122ba565b60006002819055600380546001600160a01b03191690556040517fd1f66c3d2bc1993a86be5e3d33709d98f0442381befcedd29f578b9b2506b1ce9190a1505050565b611a416001600160a01b038416631aed5a8560e21b6113de565b15610edd57604051631aed5a8560e21b81526001600160a01b03841690636bb56a1490611a749085908590600401612e92565b6000604051808303816000875af1158015611a93573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526110989190810190612c94565b6003546001600160a01b03163314611b01576040517f451e4528000000000000000000000000000000000000000000000000000000008152336004820152602401610862565b611b0a336122ba565b600380546001600160a01b03191690556000600255565b600080546201000090046001600160a01b03166001600160a01b0316336001600160a01b031614611bd0576004546001600160a01b03163314611bcc5760405162461bcd60e51b815260206004820152603b60248201527f4f6e6c79204f776e6572206f72207265656e746572656420556e69766572736160448201527f6c2052656365697665722044656c656761746520616c6c6f77656400000000006064820152608401610862565b5060015b90565b6000828152600160205260409020611beb8282612ef9565b50817fece574603820d07bc9b91f2a932baadf4628aabcb8afba49776529c14a6104b282604051611c1c9190612a98565b60405180910390a25050565b600054610100900460ff16611ca55760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610862565b3415611d2a577f468cd1581d7bc001c3b685513d2b929b55437be34700410383d58f3aa1ea0abc60001b34336001600160a01b03167f9c3ba68eb5742b8e3961aea0afc7371a71bf433c8a67a831803b64c064a178c2604051611d21906040808252600090820181905260606020830181905282015260800190565b60405180910390a45b611d33816122ba565b611d957feafec4d89fa9619884b600007c0334a14085fefa8b51ae5a40895018882bdb9060001b6040518060400160405280600481526020017f7c0334a100000000000000000000000000000000000000000000000000000000815250611bd3565b604080516020810190915260008152610d10906001600160a01b038316907f79855c97dbc259ce395421d933d7bc0699b0f1561f988f09a9e8633fd542fe5c90611a27565b306001600160a01b03821603611e1c576040517fe052a6f800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600380546001600160a01b0319166001600160a01b03929092169190911790556000600255565b60006001600160e01b031982167f629aa694000000000000000000000000000000000000000000000000000000001480610918575061091882612351565b606082471015611ead576040516301bf351f60e31b815247600482015260248101849052604401610862565b611eb682612fb9565b6001600160e01b031916846001600160a01b031660007f4810874456b8e6487bd861375cf6abd8e1c8bb5858c8ce36a86a04dabfac199e86604051611efd91815260200190565b60405180910390a4600080856001600160a01b03168585604051611f219190612d57565b60006040518083038185875af1925050503d8060008114611f5e576040519150601f19603f3d011682016040523d82523d6000602084013e611f63565b606091505b5091509150611fa882826040518060400160405280601681526020017f455243373235583a20556e6b6e6f776e204572726f720000000000000000000081525061239f565b9695505050505050565b606082471015611fde576040516301bf351f60e31b815247600482015260248101849052604401610862565b81516000036120005760405163b81cd8d960e01b815260040160405180910390fd5b600082516020840185f090506001600160a01b03811661204c576040517f0b07489b00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6000801b816001600160a01b031660017fa1fb700aaee2ae4a2ff6f91ce7eba292f89c2f5488b8ec4c5c5c8150692595c38760405161208d91815260200190565b60405180910390a46040516bffffffffffffffffffffffff19606083901b16602082015260340160405160208183030381529060405291505092915050565b606081516000036120f05760405163b81cd8d960e01b815260040160405180910390fd5b600061210983602085516121049190612fed565b6123b8565b90506000612126846000602087516121219190612fed565b61241e565b90506000612135868484612546565b905082816001600160a01b031660027fa1fb700aaee2ae4a2ff6f91ce7eba292f89c2f5488b8ec4c5c5c8150692595c38960405161217591815260200190565b60405180910390a46040516bffffffffffffffffffffffff19606083901b166020820152603401604051602081830303815290604052935050505092915050565b60606121c182612fb9565b6001600160e01b031916836001600160a01b031660037f4810874456b8e6487bd861375cf6abd8e1c8bb5858c8ce36a86a04dabfac199e600060405161220991815260200190565b60405180910390a4600080846001600160a01b03168460405161222c9190612d57565b600060405180830381855afa9150503d8060008114612267576040519150601f19603f3d011682016040523d82523d6000602084013e61226c565b606091505b50915091506122b182826040518060400160405280601681526020017f455243373235583a20556e6b6e6f776e204572726f720000000000000000000081525061239f565b95945050505050565b6000546001600160a01b03828116620100009092041614610d1057600080546040516001600160a01b03808516936201000090930416917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b03831662010000027fffffffffffffffffffff0000000000000000000000000000000000000000ffff90911617905550565b60006001600160e01b031982167f7545acac00000000000000000000000000000000000000000000000000000000148061091857506301ffc9a760e01b6001600160e01b0319831614610918565b606083156123ae575081611629565b611629838361264a565b60006123c5826020612e7f565b835110156124155760405162461bcd60e51b815260206004820152601560248201527f746f427974657333325f6f75744f66426f756e647300000000000000000000006044820152606401610862565b50016020015190565b60608161242c81601f612e7f565b101561247a5760405162461bcd60e51b815260206004820152600e60248201527f736c6963655f6f766572666c6f770000000000000000000000000000000000006044820152606401610862565b6124848284612e7f565b845110156124d45760405162461bcd60e51b815260206004820152601160248201527f736c6963655f6f75744f66426f756e64730000000000000000000000000000006044820152606401610862565b6060821580156124f3576040519150600082526020820160405261253d565b6040519150601f8416801560200281840101858101878315602002848b0101015b8183101561252c578051835260209283019201612514565b5050858452601f01601f1916604052505b50949350505050565b6000834710156125985760405162461bcd60e51b815260206004820152601d60248201527f437265617465323a20696e73756666696369656e742062616c616e63650000006044820152606401610862565b81516000036125e95760405162461bcd60e51b815260206004820181905260248201527f437265617465323a2062797465636f6465206c656e677468206973207a65726f6044820152606401610862565b8282516020840186f590506001600160a01b0381166116295760405162461bcd60e51b815260206004820152601960248201527f437265617465323a204661696c6564206f6e206465706c6f79000000000000006044820152606401610862565b81511561265a5781518083602001fd5b8060405162461bcd60e51b81526004016108629190612a98565b60006020828403121561268657600080fd5b81356001600160e01b03198116811461162957600080fd5b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f1916810167ffffffffffffffff811182821017156126dd576126dd61269e565b604052919050565b600067ffffffffffffffff8211156126ff576126ff61269e565b5060051b60200190565b600082601f83011261271a57600080fd5b8135602061272f61272a836126e5565b6126b4565b82815260059290921b8401810191818101908684111561274e57600080fd5b8286015b848110156127695780358352918301918301612752565b509695505050505050565b80356001600160a01b038116811461278b57600080fd5b919050565b600067ffffffffffffffff8211156127aa576127aa61269e565b50601f01601f191660200190565b600082601f8301126127c957600080fd5b81356127d761272a82612790565b8181528460208386010111156127ec57600080fd5b816020850160208301376000918101602001919091529392505050565b600082601f83011261281a57600080fd5b8135602061282a61272a836126e5565b82815260059290921b8401810191818101908684111561284957600080fd5b8286015b8481101561276957803567ffffffffffffffff81111561286d5760008081fd5b61287b8986838b01016127b8565b84525091830191830161284d565b6000806000806080858703121561289f57600080fd5b843567ffffffffffffffff808211156128b757600080fd5b6128c388838901612709565b95506020915081870135818111156128da57600080fd5b8701601f810189136128eb57600080fd5b80356128f961272a826126e5565b81815260059190911b8201840190848101908b83111561291857600080fd5b928501925b8284101561293d5761292e84612774565b8252928501929085019061291d565b9750505050604087013591508082111561295657600080fd5b61296288838901612709565b9350606087013591508082111561297857600080fd5b5061298587828801612809565b91505092959194509250565b60005b838110156129ac578181015183820152602001612994565b50506000910152565b600081518084526129cd816020860160208601612991565b601f01601f19169290920160200192915050565b6000602080830181845280855180835260408601915060408160051b870101925083870160005b82811015612a3657603f19888603018452612a248583516129b5565b94509285019290850190600101612a08565b5092979650505050505050565b60008060008060808587031215612a5957600080fd5b84359350612a6960208601612774565b925060408501359150606085013567ffffffffffffffff811115612a8c57600080fd5b612985878288016127b8565b60208152600061162960208301846129b5565b600060208284031215612abd57600080fd5b5035919050565b60008060208385031215612ad757600080fd5b823567ffffffffffffffff80821115612aef57600080fd5b818501915085601f830112612b0357600080fd5b813581811115612b1257600080fd5b8660208260051b8501011115612b2757600080fd5b60209290920196919550909350505050565b60008060408385031215612b4c57600080fd5b82359150602083013567ffffffffffffffff811115612b6a57600080fd5b612b76858286016127b8565b9150509250929050565b60008060408385031215612b9357600080fd5b823567ffffffffffffffff80821115612bab57600080fd5b612bb786838701612709565b93506020850135915080821115612bcd57600080fd5b50612b7685828601612809565b600060208284031215612bec57600080fd5b61162982612774565b600060208284031215612c0757600080fd5b813567ffffffffffffffff811115612c1e57600080fd5b610a5c84828501612709565b805160208201516bffffffffffffffffffffffff198082169291906014831015612c5e5780818460140360031b1b83161693505b505050919050565b6001600160a01b0385168152836020820152826040820152608060608201526000611fa860808301846129b5565b600060208284031215612ca657600080fd5b815167ffffffffffffffff811115612cbd57600080fd5b8201601f81018413612cce57600080fd5b8051612cdc61272a82612790565b818152856020838501011115612cf157600080fd5b6122b1826020830160208601612991565b604081526000612d1560408301856129b5565b82810360208401526122b181856129b5565b8385823760609290921b6bffffffffffffffffffffffff1916919092019081526014810191909152603401919050565b60008251612d69818460208701612991565b9190910192915050565b604081526000612d8660408301846129b5565b828103602093840152600081529190910192915050565b634e487b7160e01b600052603260045260246000fd5b6000808335601e19843603018112612dca57600080fd5b83018035915067ffffffffffffffff821115612de557600080fd5b602001915036819003821315612dfa57600080fd5b9250929050565b8183823760009101908152919050565b600181811c90821680612e2557607f821691505b60208210810361126557634e487b7160e01b600052602260045260246000fd5b805160208083015191908110156112655760001960209190910360031b1b16919050565b634e487b7160e01b600052601160045260246000fd5b8082018082111561091857610918612e69565b828152604060208201526000610a5c60408301846129b5565b601f821115610edd57600081815260208120601f850160051c81016020861015612ed25750805b601f850160051c820191505b81811015612ef157828155600101612ede565b505050505050565b815167ffffffffffffffff811115612f1357612f1361269e565b612f2781612f218454612e11565b84612eab565b602080601f831160018114612f5c5760008415612f445750858301515b600019600386901b1c1916600185901b178555612ef1565b600085815260208120601f198616915b82811015612f8b57888601518255948401946001909101908401612f6c565b5085821015612fa95787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b6000815160208301516001600160e01b031980821693506004831015612c5e5760049290920360031b82901b161692915050565b8181038181111561091857610918612e6956fea264697066735822122077328f944ce9a49b26c2f4b8218cd8ca9b5bb02a534c5beaefd5402983d0c41964736f6c63430008110033"; const isSuperArgs$2 = (xs) => xs.length > 1; class LSP9VaultInit__factory extends ethers.ContractFactory { constructor(...args) { if (isSuperArgs$2(args)) { super(...args); } else { super(_abi$2, _bytecode$2, args[0]); } } getDeployTransaction(overrides) { return super.getDeployTransaction(overrides || {}); } deploy(overrides) { return super.deploy(overrides || {}); } connect(runner) { return super.connect(runner); } static createInterface() { return new ethers.Interface(_abi$2); } static connect(address, runner) { return new ethers.Contract(address, _abi$2, runner); } } __publicField$2(LSP9VaultInit__factory, "bytecode", _bytecode$2); __publicField$2(LSP9VaultInit__factory, "abi", _abi$2); var __defProp$1 = Object.defineProperty; var __defNormalProp$1 = (obj, key, value) => key in obj ? __defProp$1(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField$1 = (obj, key, value) => { __defNormalProp$1(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi$1 = [ { inputs: [ { internalType: "address", name: "initialOwner", type: "address" } ], stateMutability: "payable", type: "constructor" }, { inputs: [], name: "ERC725X_ContractDeploymentFailed", type: "error" }, { inputs: [], name: "ERC725X_CreateOperationsRequireEmptyRecipientAddress", type: "error" }, { inputs: [], name: "ERC725X_ExecuteParametersEmptyArray", type: "error" }, { inputs: [], name: "ERC725X_ExecuteParametersLengthMismatch", type: "error" }, { inputs: [ { internalType: "uint256", name: "balance", type: "uint256" }, { internalType: "uint256", name: "value", type: "uint256" } ], name: "ERC725X_InsufficientBalance", type: "error" }, { inputs: [], name: "ERC725X_MsgValueDisallowedInDelegateCall", type: "error" }, { inputs: [], name: "ERC725X_MsgValueDisallowedInStaticCall", type: "error" }, { inputs: [], name: "ERC725X_NoContractBytecodeProvided", type: "error" }, { inputs: [ { internalType: "uint256", name: "operationTypeProvided", type: "uint256" } ], name: "ERC725X_UnknownOperationType", type: "error" }, { inputs: [], name: "ERC725Y_DataKeysValuesEmptyArray", type: "error" }, { inputs: [], name: "ERC725Y_DataKeysValuesLengthMismatch", type: "error" }, { inputs: [ { internalType: "address", name: "caller", type: "address" } ], name: "LSP14CallerNotPendingOwner", type: "error" }, { inputs: [], name: "LSP14CannotTransferOwnershipToSelf", type: "error" }, { inputs: [], name: "LSP14MustAcceptOwnershipInSeparateTransaction", type: "error" }, { inputs: [ { internalType: "uint256", name: "renounceOwnershipStart", type: "uint256" }, { internalType: "uint256", name: "renounceOwnershipEnd", type: "uint256" } ], name: "LSP14NotInRenounceOwnershipInterval", type: "error" }, { inputs: [ { internalType: "bool", name: "postCall", type: "bool" }, { internalType: "bytes4", name: "returnedStatus", type: "bytes4" } ], name: "LSP20CallVerificationFailed", type: "error" }, { inputs: [ { internalType: "bool", name: "postCall", type: "bool" } ], name: "LSP20CallingVerifierFailed", type: "error" }, { inputs: [ { internalType: "address", name: "logicVerifier", type: "address" } ], name: "LSP20EOACannotVerifyCall", type: "error" }, { inputs: [ { internalType: "bytes4", name: "functionSelector", type: "bytes4" } ], name: "NoExtensionFoundForFunctionSelector", type: "error" }, { anonymous: false, inputs: [ { indexed: true, internalType: "uint256", name: "operationType", type: "uint256" }, { indexed: true, internalType: "address", name: "contractAddress", type: "address" }, { indexed: false, internalType: "uint256", name: "value", type: "uint256" }, { indexed: true, internalType: "bytes32", name: "salt", type: "bytes32" } ], name: "ContractCreated", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "bytes32", name: "dataKey", type: "bytes32" }, { indexed: false, internalType: "bytes", name: "dataValue", type: "bytes" } ], name: "DataChanged", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "uint256", name: "operationType", type: "uint256" }, { indexed: true, internalType: "address", name: "target", type: "address" }, { indexed: false, internalType: "uint256", name: "value", type: "uint256" }, { indexed: true, internalType: "bytes4", name: "selector", type: "bytes4" } ], name: "Executed", type: "event" }, { anonymous: false, inputs: [], name: "OwnershipRenounced", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "previousOwner", type: "address" }, { indexed: true, internalType: "address", name: "newOwner", type: "address" } ], name: "OwnershipTransferStarted", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "previousOwner", type: "address" }, { indexed: true, internalType: "address", name: "newOwner", type: "address" } ], name: "OwnershipTransferred", type: "event" }, { anonymous: false, inputs: [], name: "RenounceOwnershipStarted", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "from", type: "address" }, { indexed: true, internalType: "uint256", name: "value", type: "uint256" }, { indexed: true, internalType: "bytes32", name: "typeId", type: "bytes32" }, { indexed: false, internalType: "bytes", name: "receivedData", type: "bytes" }, { indexed: false, internalType: "bytes", name: "returnedValue", type: "bytes" } ], name: "UniversalReceiver", type: "event" }, { stateMutability: "payable", type: "fallback" }, { inputs: [], name: "RENOUNCE_OWNERSHIP_CONFIRMATION_DELAY", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "RENOUNCE_OWNERSHIP_CONFIRMATION_PERIOD", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "VERSION", outputs: [ { internalType: "string", name: "", type: "string" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "acceptOwnership", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "bytes[]", name: "data", type: "bytes[]" } ], name: "batchCalls", outputs: [ { internalType: "bytes[]", name: "results", type: "bytes[]" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "uint256", name: "operationType", type: "uint256" }, { internalType: "address", name: "target", type: "address" }, { internalType: "uint256", name: "value", type: "uint256" }, { internalType: "bytes", name: "data", type: "bytes" } ], name: "execute", outputs: [ { internalType: "bytes", name: "", type: "bytes" } ], stateMutability: "payable", type: "function" }, { inputs: [ { internalType: "uint256[]", name: "operationsType", type: "uint256[]" }, { internalType: "address[]", name: "targets", type: "address[]" }, { internalType: "uint256[]", name: "values", type: "uint256[]" }, { internalType: "bytes[]", name: "datas", type: "bytes[]" } ], name: "executeBatch", outputs: [ { internalType: "bytes[]", name: "", type: "bytes[]" } ], stateMutability: "payable", type: "function" }, { inputs: [ { internalType: "bytes32", name: "dataKey", type: "bytes32" } ], name: "getData", outputs: [ { internalType: "bytes", name: "dataValue", type: "bytes" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "bytes32[]", name: "dataKeys", type: "bytes32[]" } ], name: "getDataBatch", outputs: [ { internalType: "bytes[]", name: "dataValues", type: "bytes[]" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "bytes32", name: "dataHash", type: "bytes32" }, { internalType: "bytes", name: "signature", type: "bytes" } ], name: "isValidSignature", outputs: [ { internalType: "bytes4", name: "returnedStatus", type: "bytes4" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "owner", outputs: [ { internalType: "address", name: "", type: "address" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "pendingOwner", outputs: [ { internalType: "address", name: "", type: "address" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "renounceOwnership", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "bytes32", name: "dataKey", type: "bytes32" }, { internalType: "bytes", name: "dataValue", type: "bytes" } ], name: "setData", outputs: [], stateMutability: "payable", type: "function" }, { inputs: [ { internalType: "bytes32[]", name: "dataKeys", type: "bytes32[]" }, { internalType: "bytes[]", name: "dataValues", type: "bytes[]" } ], name: "setDataBatch", outputs: [], stateMutability: "payable", type: "function" }, { inputs: [ { internalType: "bytes4", name: "interfaceId", type: "bytes4" } ], name: "supportsInterface", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "pendingNewOwner", type: "address" } ], name: "transferOwnership", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "bytes32", name: "typeId", type: "bytes32" }, { internalType: "bytes", name: "receivedData", type: "bytes" } ], name: "universalReceiver", outputs: [ { internalType: "bytes", name: "returnedValues", type: "bytes" } ], stateMutability: "payable", type: "function" }, { stateMutability: "payable", type: "receive" } ]; const _bytecode$1 = "0x608060405260405162003b4138038062003b418339810160408190526200002691620001db565b803415620000ae577f9c4705229491d365fb5434052e12a386d6771d976bea61070a8c694e8affea3d60001b34336001600160a01b03167f9c3ba68eb5742b8e3961aea0afc7371a71bf433c8a67a831803b64c064a178c2604051620000a5906040808252600090820181905260606020830181905282015260800190565b60405180910390a45b620000c4816200011460201b620016f01760201c565b506040805180820190915260048152635ef83ad960e01b60208201526200010d907feafec4d89fa9619884b600005ef83ad9559033e6e941db7d7c495acdce6163479062000182565b50620003ce565b6000546001600160a01b038281169116146200017f57600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0383161790555b50565b60008281526001602052604090206200019c8282620002b2565b50817fece574603820d07bc9b91f2a932baadf4628aabcb8afba49776529c14a6104b282604051620001cf91906200037e565b60405180910390a25050565b600060208284031215620001ee57600080fd5b81516001600160a01b03811681146200020657600080fd5b9392505050565b634e487b7160e01b600052604160045260246000fd5b600181811c908216806200023857607f821691505b6020821081036200025957634e487b7160e01b600052602260045260246000fd5b50919050565b601f821115620002ad57600081815260208120601f850160051c81016020861015620002885750805b601f850160051c820191505b81811015620002a95782815560010162000294565b5050505b505050565b81516001600160401b03811115620002ce57620002ce6200020d565b620002e681620002df845462000223565b846200025f565b602080601f8311600181146200031e5760008415620003055750858301515b600019600386901b1c1916600185901b178555620002a9565b600085815260208120601f198616915b828110156200034f578886015182559484019460019091019084016200032e565b50858210156200036e5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b600060208083528351808285015260005b81811015620003ad578581018301518582016040015282016200038f565b506000604082860101526040601f19601f8301168501019250505092915050565b61376380620003de6000396000f3fe60806040526004361061012d5760003560e01c806379ba5097116100a5578063dedff9c611610074578063ead3fbdf11610059578063ead3fbdf1461021e578063f2fde38b14610402578063ffa1ad741461042257610178565b8063dedff9c6146103c4578063e30c3978146103e457610178565b806379ba5097146103575780637f23690c1461036c5780638da5cb5b1461037f57806397902421146103b157610178565b806344c028fe116100fc5780636963d438116100e15780636963d4381461030f5780636bb56a141461032f578063715018a61461034257610178565b806344c028fe146102cf57806354f6127f146102ef57610178565b806301bfba611461021e57806301ffc9a7146102465780631626ba7e1461027657806331858452146102af57610178565b36610178573415610176576101747f9c4705229491d365fb5434052e12a386d6771d976bea61070a8c694e8affea3d60001b6040518060200160405280600081525061046b565b505b005b600036606060048210156102065734156101f1576101ef7f9c4705229491d365fb5434052e12a386d6771d976bea61070a8c694e8affea3d60001b84848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061046b92505050565b505b50604080516020810190915260008152610213565b6102108383610741565b90505b915050805190602001f35b34801561022a57600080fd5b5061023360c881565b6040519081526020015b60405180910390f35b34801561025257600080fd5b50610266610261366004612cc1565b61091d565b604051901515815260200161023d565b34801561028257600080fd5b50610296610291366004612da3565b610a08565b6040516001600160e01b0319909116815260200161023d565b6102c26102bd366004612f0b565b610bba565b60405161023d9190613063565b6102e26102dd3660046130c5565b610cc6565b60405161023d919061311a565b3480156102fb57600080fd5b506102e261030a36600461312d565b610da9565b34801561031b57600080fd5b506102c261032a366004613146565b610db4565b6102e261033d366004612da3565b61046b565b34801561034e57600080fd5b50610176610f10565b34801561036357600080fd5b5061017661105d565b61017661037a366004612da3565b6111e3565b34801561038b57600080fd5b506000546001600160a01b03165b6040516001600160a01b03909116815260200161023d565b6101766103bf3660046131bb565b6112c6565b3480156103d057600080fd5b506102c26103df366004613215565b611499565b3480156103f057600080fd5b506003546001600160a01b0316610399565b34801561040e57600080fd5b5061017661041d36600461324a565b611544565b34801561042e57600080fd5b506102e26040518060400160405280600681526020017f302e31352e30000000000000000000000000000000000000000000000000000081525081565b6060341580159061049c57507f9c4705229491d365fb5434052e12a386d6771d976bea61070a8c694e8affea3d8314155b15610507576105057f9c4705229491d365fb5434052e12a386d6771d976bea61070a8c694e8affea3d60001b6000368080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061046b92505050565b505b60006105327f0cfc51aec37c55a4d0b1a65c6255c4bf2fbdf6277f3cc0730c45b828b6db8b4761175e565b9050606060148251106105e357600061054a83613265565b60601c905061056081635122dded60e11b611800565b156105e157604051635122dded60e11b81526001600160a01b0382169063a245bbda9061059790339034908b908b906004016132a1565b6000604051808303816000875af11580156105b6573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526105de91908101906132cf565b91505b505b600061060f7f0cfc51aec37c55a4d0b10000000000000000000000000000000000000000000087611889565b9050600061061c8261175e565b9050606060148251106106cd57600061063483613265565b60601c905061064a81635122dded60e11b611800565b156106cb57604051635122dded60e11b81526001600160a01b0382169063a245bbda9061068190339034908e908e906004016132a1565b6000604051808303816000875af11580156106a0573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526106c891908101906132cf565b91505b505b83816040516020016106e092919061333d565b60405160208183030381529060405295508734336001600160a01b03167f9c3ba68eb5742b8e3961aea0afc7371a71bf433c8a67a831803b64c064a178c28a8a60405161072e92919061333d565b60405180910390a4505050505092915050565b606060008061075b6000356001600160e01b0319166118f2565b915091503460001415801561076e575080155b156107d8576107d67f9c4705229491d365fb5434052e12a386d6771d976bea61070a8c694e8affea3d60001b86868080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061046b92505050565b505b6000356001600160e01b0319161580156107f957506001600160a01b038216155b15610817576040518060200160405280600081525092505050610917565b6001600160a01b03821661086a576040517fbb370b2b0000000000000000000000000000000000000000000000000000000081526001600160e01b03196000351660048201526024015b60405180910390fd5b600080836001600160a01b031683610883576000610885565b345b8888333460405160200161089c9493929190613362565b60408051601f19818403018152908290526108b691613392565b60006040518083038185875af1925050503d80600081146108f3576040519150601f19603f3d011682016040523d82523d6000602084013e6108f8565b606091505b5091509150811561090e57935061091792505050565b80518060208301fd5b92915050565b60006001600160e01b03198216630b135d3f60e11b148061096757506001600160e01b031982167f24871b3d00000000000000000000000000000000000000000000000000000000145b8061098257506001600160e01b03198216631aed5a8560e21b145b806109b657506001600160e01b031982167f94be599900000000000000000000000000000000000000000000000000000000145b806109ea57506001600160e01b031982167f1a0eb6a500000000000000000000000000000000000000000000000000000000145b806109f957506109f9826119e9565b80610917575061091782611a27565b600080610a1d6000546001600160a01b031690565b90506001600160a01b0381163b15610b3a57600080826001600160a01b0316631626ba7e60e01b8787604051602401610a579291906133ae565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b0319909416939093179092529051610a959190613392565b600060405180830381855afa9150503d8060008114610ad0576040519150601f19603f3d011682016040523d82523d6000602084013e610ad5565b606091505b50915091506000828015610aea575081516020145b8015610b1157508151630b135d3f60e11b90610b0f90840160209081019085016133c7565b145b905080610b26576001600160e01b0319610b2f565b630b135d3f60e11b5b945050505050610917565b600080610b478686611a65565b90925090506000816004811115610b6057610b606133e0565b14610b7957506001600160e01b03199250610917915050565b826001600160a01b0316826001600160a01b031614610ba0576001600160e01b0319610ba9565b630b135d3f60e11b5b9350505050610917565b5092915050565b60603415610c45576040516001600160e01b03196000351660208201527f9c4705229491d365fb5434052e12a386d6771d976bea61070a8c694e8affea3d90349033907f9c3ba68eb5742b8e3961aea0afc7371a71bf433c8a67a831803b64c064a178c29060240160408051601f1981840301815290829052610c3c916133f6565b60405180910390a45b6000546001600160a01b031633819003610c6d57610c6586868686611aaa565b915050610cbe565b6000610c7882611c3a565b90506000610c8888888888611aaa565b90508115610cb957610cb98382604051602001610ca59190613063565b604051602081830303815290604052611e06565b925050505b949350505050565b60603415610d51576040516001600160e01b03196000351660208201527f9c4705229491d365fb5434052e12a386d6771d976bea61070a8c694e8affea3d90349033907f9c3ba68eb5742b8e3961aea0afc7371a71bf433c8a67a831803b64c064a178c29060240160408051601f1981840301815290829052610d48916133f6565b60405180910390a45b6000546001600160a01b031633819003610d7157610c6586868686611f3c565b6000610d7c82611c3a565b90506000610d8c88888888611f3c565b90508115610cb957610cb98382604051602001610ca5919061311a565b60606109178261175e565b60608167ffffffffffffffff811115610dcf57610dcf612cde565b604051908082528060200260200182016040528015610e0257816020015b6060815260200190600190039081610ded5790505b50905060005b82811015610bb35760008030868685818110610e2657610e26613420565b9050602002810190610e389190613436565b604051610e4692919061347d565b600060405180830381855af49150503d8060008114610e81576040519150601f19603f3d011682016040523d82523d6000602084013e610e86565b606091505b509150915081610ee857805115610ea05780518082602001fd5b60405162461bcd60e51b815260206004820152601960248201527f4c5350303a20626174636843616c6c73207265766572746564000000000000006044820152606401610861565b80848481518110610efb57610efb613420565b60209081029190910101525050600101610e08565b6000546001600160a01b031633819003610fb3576000546001600160a01b0316610f38612092565b6000546001600160a01b0316610faf57604080516001600160a01b0384166020820152600091810191909152610faf907fa4e59c931d14f7c8a7a35027f92ee40b5f2886b9fdcdb78f30bc5ecce5a2f814906060015b60408051601f198184030181529190526001600160a01b038416919061219e565b5050565b6000610fbe82611c3a565b90506000610fd46000546001600160a01b031690565b9050610fde612092565b6000546001600160a01b031661103857604080516001600160a01b0385166020820152600091810191909152611038907fa4e59c931d14f7c8a7a35027f92ee40b5f2886b9fdcdb78f30bc5ecce5a2f81490606001610f8e565b8115611057576110578360405180602001604052806000815250611e06565b50505b50565b600354600160a01b900460ff16156110a1576040517f5758dd0700000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600080546003546001600160a01b03918216929116903382146110ec576110c782611c3a565b90506110d2826116f0565b600380546001600160a01b031916905560006002556110f4565b6110f4612232565b604080516001600160a01b03808616602083015284169181019190915261115c907fa4e59c931d14f7c8a7a35027f92ee40b5f2886b9fdcdb78f30bc5ecce5a2f814906060015b60408051601f198184030181529190526001600160a01b038616919061219e565b604080516001600160a01b0380861660208301528416918101919091526111c4907fceca317f109c43507871523e82dc2a3cc64dfa18f12da0b6db14f6e23f995538906060015b60408051601f198184030181529190526001600160a01b038516919061219e565b8015611057576110578260405180602001604052806000815250611e06565b341561126c576040516001600160e01b03196000351660208201527f9c4705229491d365fb5434052e12a386d6771d976bea61070a8c694e8affea3d90349033907f9c3ba68eb5742b8e3961aea0afc7371a71bf433c8a67a831803b64c064a178c29060240160408051601f1981840301815290829052611263916133f6565b60405180910390a45b6000546001600160a01b03163381900361128a576110578383612298565b600061129582611c3a565b90506112a18484612298565b80156112c0576112c08260405180602001604052806000815250611e06565b50505050565b341561134f576040516001600160e01b03196000351660208201527f9c4705229491d365fb5434052e12a386d6771d976bea61070a8c694e8affea3d90349033907f9c3ba68eb5742b8e3961aea0afc7371a71bf433c8a67a831803b64c064a178c29060240160408051601f1981840301815290829052611346916133f6565b60405180910390a45b805182511461138a576040517f3bcc897900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b81516000036113c5576040517f97da5f9500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6000546001600160a01b0316338190036114295760005b83518110156112c0576114218482815181106113fa576113fa613420565b602002602001015184838151811061141457611414613420565b6020026020010151612298565b6001016113dc565b600061143482611c3a565b905060005b84518110156114795761147185828151811061145757611457613420565b602002602001015185838151811061141457611414613420565b600101611439565b5080156112c0576112c08260405180602001604052806000815250611e06565b6060815167ffffffffffffffff8111156114b5576114b5612cde565b6040519080825280602002602001820160405280156114e857816020015b60608152602001906001900390816114d35790505b50905060005b825181101561153e5761151983828151811061150c5761150c613420565b602002602001015161175e565b82828151811061152b5761152b613420565b60209081029190910101526001016114ee565b50919050565b6000546001600160a01b031633819003611610576003805460ff60a01b1916600160a01b179055611574826122ed565b816001600160a01b0316816001600160a01b03167f38d16b8cac22d99fc7c124b9cd0de2d3fa1faef420bfe791d8c362d765e2270060405160405180910390a3604080516001600160a01b0380841660208301528416918101919091526115ff907fe17117c9d2665d1dbeb479ed8058bbebde3c50ac50e2e65619f60006caac6926906060016111a3565b6003805460ff60a01b191690555050565b600061161b82611c3a565b6003805460ff60a01b1916600160a01b1790559050611639836122ed565b826001600160a01b0316826001600160a01b03167f38d16b8cac22d99fc7c124b9cd0de2d3fa1faef420bfe791d8c362d765e2270060405160405180910390a3604080516001600160a01b0380851660208301528516918101919091526116c4907fe17117c9d2665d1dbeb479ed8058bbebde3c50ac50e2e65619f60006caac69269060600161113b565b6003805460ff60a01b191690558015611057576110578260405180602001604052806000815250611e06565b6000546001600160a01b0382811691161461105a57600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0383166001600160a01b031990911617905550565b600081815260016020526040902080546060919061177b9061348d565b80601f01602080910402602001604051908101604052809291908181526020018280546117a79061348d565b80156117f45780601f106117c9576101008083540402835291602001916117f4565b820191906000526020600020905b8154815290600101906020018083116117d757829003601f168201915b50505050509050919050565b604080516001600160e01b03198316602480830191909152825180830390910181526044909101909152602080820180516001600160e01b03166301ffc9a760e01b178152825160009392849283928392918391908a617530fa92503d91506000519050828015611872575060208210155b801561187e5750600081115b979650505050505050565b604080517fffffffffffffffffffff00000000000000000000000000000000000000000000841660208201526000602a82018190526bffffffffffffffffffffffff198416602c83015291829101604051602081830303815290604052905080610cbe906134c1565b6000808061192a7fcee78b4094da86011096000000000000000000000000000000000000000000006001600160e01b03198616611889565b905060006119378261175e565b9050601481511015611950575060009485945092505050565b80516015036119d1578060148151811061196c5761196c613420565b01602001517fff00000000000000000000000000000000000000000000000000000000000000167f0100000000000000000000000000000000000000000000000000000000000000036119d1576119c281613265565b60601c95600195509350505050565b6119da81613265565b60601c95600095509350505050565b60006001600160e01b031982167fa918fa6b000000000000000000000000000000000000000000000000000000001480610917575061091782612356565b600080611a3a6301ffc9a760e01b6118f2565b5090506001600160a01b038116611a545750600092915050565b611a5e8184611800565b9392505050565b6000808251604103611a9b5760208301516040840151606085015160001a611a8f87828585612394565b94509450505050611aa3565b506000905060025b9250929050565b606083518551141580611acb575082518451141580611acb57508151835114155b15611b02576040517f3ff55f4d00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b8451600003611b3d576040517fe9ad2b5f00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6000855167ffffffffffffffff811115611b5957611b59612cde565b604051908082528060200260200182016040528015611b8c57816020015b6060815260200190600190039081611b775790505b50905060005b8651811015611c3057611c0b878281518110611bb057611bb0613420565b6020026020010151878381518110611bca57611bca613420565b6020026020010151878481518110611be457611be4613420565b6020026020010151878581518110611bfe57611bfe613420565b6020026020010151611f3c565b828281518110611c1d57611c1d613420565b6020908102919091010152600101611b92565b5095945050505050565b6000816001600160a01b03163b600003611c8b576040517f0c3923010000000000000000000000000000000000000000000000000000000081526001600160a01b0383166004820152602401610861565b6040517fde928f140000000000000000000000000000000000000000000000000000000081526001600160a01b0383169063de928f1490611cdb90339030908290349060009036906004016134e5565b6020604051808303816000875af1925050508015611d16575060408051601f3d908101601f19168201909252611d1391810190613542565b60015b611d55573d808015611d44576040519150601f19603f3d011682016040523d82523d6000602084013e611d49565b606091505b5061153e600082612458565b7fffffff000000000000000000000000000000000000000000000000000000000081167fde928f000000000000000000000000000000000000000000000000000000000014611dca57604051639d6741e360e01b8152600060048201526001600160e01b031982166024820152604401610861565b8060031a60f81b7effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916600160f81b14915050919050565b919050565b816001600160a01b031663d3fc45d333303334600036604051602001611e319695949392919061355f565b60405160208183030381529060405280519060200120836040518363ffffffff1660e01b8152600401611e659291906133ae565b6020604051808303816000875af1925050508015611ea0575060408051601f3d908101601f19168201909252611e9d91810190613542565b60015b611edf573d808015611ece576040519150601f19603f3d011682016040523d82523d6000602084013e611ed3565b606091505b50611057600182612458565b6001600160e01b031981167fd3fc45d3000000000000000000000000000000000000000000000000000000001461105757604051639d6741e360e01b8152600160048201526001600160e01b031982166024820152604401610861565b606084611f5557611f4e84848461249e565b9050610cbe565b60018503611f8f576001600160a01b03841615611f8557604051631820c12560e11b815260040160405180910390fd5b611f4e83836125cf565b60028503611fc9576001600160a01b03841615611fbf57604051631820c12560e11b815260040160405180910390fd5b611f4e83836126e9565b60038503612013578215612009576040517f72f2bc6a00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b611f4e84836127d3565b6004850361205d578215612053576040517f5ac8313500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b611f4e84836128d7565b6040517f7583b3bc00000000000000000000000000000000000000000000000000000000815260048101869052602401610861565b60025443906000906120a69060c8906135c5565b905060006120b560c8836135c5565b9050808311806120c55750600254155b1561210d576002839055600380546001600160a01b03191690556040517f81b7f830f1f0084db6497c486cbe6974c86488dcc4e3738eab94ab6d6b1653e790600090a1505050565b81831015612151576040517f1b0809420000000000000000000000000000000000000000000000000000000081526004810183905260248101829052604401610861565b61215b60006116f0565b60006002819055600380546001600160a01b03191690556040517fd1f66c3d2bc1993a86be5e3d33709d98f0442381befcedd29f578b9b2506b1ce9190a1505050565b6121b86001600160a01b038416631aed5a8560e21b611800565b1561105757604051631aed5a8560e21b81526001600160a01b03841690636bb56a14906121eb90859085906004016133ae565b6000604051808303816000875af115801561220a573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526112c091908101906132cf565b6003546001600160a01b03163314612278576040517f451e4528000000000000000000000000000000000000000000000000000000008152336004820152602401610861565b612281336116f0565b600380546001600160a01b03191690556000600255565b60008281526001602052604090206122b08282613626565b50817fece574603820d07bc9b91f2a932baadf4628aabcb8afba49776529c14a6104b2826040516122e1919061311a565b60405180910390a25050565b306001600160a01b0382160361232f576040517fe052a6f800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600380546001600160a01b0319166001600160a01b03929092169190911790556000600255565b60006001600160e01b031982167f629aa694000000000000000000000000000000000000000000000000000000001480610917575061091782612988565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a08311156123cb575060009050600361244f565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa15801561241f573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b0381166124485760006001925092505061244f565b9150600090505b94509492505050565b8051156124685780518082602001fd5b6040517f8c6a8ae30000000000000000000000000000000000000000000000000000000081528215156004820152602401610861565b6060824710156124ca576040516301bf351f60e31b815247600482015260248101849052604401610861565b6124d3826136e6565b6001600160e01b031916846001600160a01b031660007f4810874456b8e6487bd861375cf6abd8e1c8bb5858c8ce36a86a04dabfac199e8660405161251a91815260200190565b60405180910390a4600080856001600160a01b0316858560405161253e9190613392565b60006040518083038185875af1925050503d806000811461257b576040519150601f19603f3d011682016040523d82523d6000602084013e612580565b606091505b50915091506125c582826040518060400160405280601681526020017f455243373235583a20556e6b6e6f776e204572726f72000000000000000000008152506129d6565b9695505050505050565b6060824710156125fb576040516301bf351f60e31b815247600482015260248101849052604401610861565b815160000361261d5760405163b81cd8d960e01b815260040160405180910390fd5b600082516020840185f090506001600160a01b038116612669576040517f0b07489b00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6000801b816001600160a01b031660017fa1fb700aaee2ae4a2ff6f91ce7eba292f89c2f5488b8ec4c5c5c8150692595c3876040516126aa91815260200190565b60405180910390a46040516bffffffffffffffffffffffff19606083901b16602082015260340160405160208183030381529060405291505092915050565b6060815160000361270d5760405163b81cd8d960e01b815260040160405180910390fd5b60006127268360208551612721919061371a565b6129ef565b905060006127438460006020875161273e919061371a565b612a55565b90506000612752868484612b7d565b905082816001600160a01b031660027fa1fb700aaee2ae4a2ff6f91ce7eba292f89c2f5488b8ec4c5c5c8150692595c38960405161279291815260200190565b60405180910390a46040516bffffffffffffffffffffffff19606083901b166020820152603401604051602081830303815290604052935050505092915050565b60606127de826136e6565b6001600160e01b031916836001600160a01b031660037f4810874456b8e6487bd861375cf6abd8e1c8bb5858c8ce36a86a04dabfac199e600060405161282691815260200190565b60405180910390a4600080846001600160a01b0316846040516128499190613392565b600060405180830381855afa9150503d8060008114612884576040519150601f19603f3d011682016040523d82523d6000602084013e612889565b606091505b50915091506128ce82826040518060400160405280601681526020017f455243373235583a20556e6b6e6f776e204572726f72000000000000000000008152506129d6565b95945050505050565b60606128e2826136e6565b6001600160e01b031916836001600160a01b031660047f4810874456b8e6487bd861375cf6abd8e1c8bb5858c8ce36a86a04dabfac199e600060405161292a91815260200190565b60405180910390a4600080846001600160a01b03168460405161294d9190613392565b600060405180830381855af49150503d8060008114612884576040519150601f19603f3d011682016040523d82523d6000602084013e612889565b60006001600160e01b031982167f7545acac00000000000000000000000000000000000000000000000000000000148061091757506301ffc9a760e01b6001600160e01b0319831614610917565b606083156129e5575081611a5e565b611a5e8383612c81565b60006129fc8260206135c5565b83511015612a4c5760405162461bcd60e51b815260206004820152601560248201527f746f427974657333325f6f75744f66426f756e647300000000000000000000006044820152606401610861565b50016020015190565b606081612a6381601f6135c5565b1015612ab15760405162461bcd60e51b815260206004820152600e60248201527f736c6963655f6f766572666c6f770000000000000000000000000000000000006044820152606401610861565b612abb82846135c5565b84511015612b0b5760405162461bcd60e51b815260206004820152601160248201527f736c6963655f6f75744f66426f756e64730000000000000000000000000000006044820152606401610861565b606082158015612b2a5760405191506000825260208201604052612b74565b6040519150601f8416801560200281840101858101878315602002848b0101015b81831015612b63578051835260209283019201612b4b565b5050858452601f01601f1916604052505b50949350505050565b600083471015612bcf5760405162461bcd60e51b815260206004820152601d60248201527f437265617465323a20696e73756666696369656e742062616c616e63650000006044820152606401610861565b8151600003612c205760405162461bcd60e51b815260206004820181905260248201527f437265617465323a2062797465636f6465206c656e677468206973207a65726f6044820152606401610861565b8282516020840186f590506001600160a01b038116611a5e5760405162461bcd60e51b815260206004820152601960248201527f437265617465323a204661696c6564206f6e206465706c6f79000000000000006044820152606401610861565b815115612c915781518083602001fd5b8060405162461bcd60e51b8152600401610861919061311a565b6001600160e01b03198116811461105a57600080fd5b600060208284031215612cd357600080fd5b8135611a5e81612cab565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f1916810167ffffffffffffffff81118282101715612d1d57612d1d612cde565b604052919050565b600067ffffffffffffffff821115612d3f57612d3f612cde565b50601f01601f191660200190565b600082601f830112612d5e57600080fd5b8135612d71612d6c82612d25565b612cf4565b818152846020838601011115612d8657600080fd5b816020850160208301376000918101602001919091529392505050565b60008060408385031215612db657600080fd5b82359150602083013567ffffffffffffffff811115612dd457600080fd5b612de085828601612d4d565b9150509250929050565b600067ffffffffffffffff821115612e0457612e04612cde565b5060051b60200190565b600082601f830112612e1f57600080fd5b81356020612e2f612d6c83612dea565b82815260059290921b84018101918181019086841115612e4e57600080fd5b8286015b84811015612e695780358352918301918301612e52565b509695505050505050565b80356001600160a01b0381168114611e0157600080fd5b600082601f830112612e9c57600080fd5b81356020612eac612d6c83612dea565b82815260059290921b84018101918181019086841115612ecb57600080fd5b8286015b84811015612e6957803567ffffffffffffffff811115612eef5760008081fd5b612efd8986838b0101612d4d565b845250918301918301612ecf565b60008060008060808587031215612f2157600080fd5b843567ffffffffffffffff80821115612f3957600080fd5b612f4588838901612e0e565b9550602091508187013581811115612f5c57600080fd5b8701601f81018913612f6d57600080fd5b8035612f7b612d6c82612dea565b81815260059190911b8201840190848101908b831115612f9a57600080fd5b928501925b82841015612fbf57612fb084612e74565b82529285019290850190612f9f565b97505050506040870135915080821115612fd857600080fd5b612fe488838901612e0e565b93506060870135915080821115612ffa57600080fd5b5061300787828801612e8b565b91505092959194509250565b60005b8381101561302e578181015183820152602001613016565b50506000910152565b6000815180845261304f816020860160208601613013565b601f01601f19169290920160200192915050565b6000602080830181845280855180835260408601915060408160051b870101925083870160005b828110156130b857603f198886030184526130a6858351613037565b9450928501929085019060010161308a565b5092979650505050505050565b600080600080608085870312156130db57600080fd5b843593506130eb60208601612e74565b925060408501359150606085013567ffffffffffffffff81111561310e57600080fd5b61300787828801612d4d565b602081526000611a5e6020830184613037565b60006020828403121561313f57600080fd5b5035919050565b6000806020838503121561315957600080fd5b823567ffffffffffffffff8082111561317157600080fd5b818501915085601f83011261318557600080fd5b81358181111561319457600080fd5b8660208260051b85010111156131a957600080fd5b60209290920196919550909350505050565b600080604083850312156131ce57600080fd5b823567ffffffffffffffff808211156131e657600080fd5b6131f286838701612e0e565b9350602085013591508082111561320857600080fd5b50612de085828601612e8b565b60006020828403121561322757600080fd5b813567ffffffffffffffff81111561323e57600080fd5b610cbe84828501612e0e565b60006020828403121561325c57600080fd5b611a5e82612e74565b805160208201516bffffffffffffffffffffffff1980821692919060148310156132995780818460140360031b1b83161693505b505050919050565b6001600160a01b03851681528360208201528260408201526080606082015260006125c56080830184613037565b6000602082840312156132e157600080fd5b815167ffffffffffffffff8111156132f857600080fd5b8201601f8101841361330957600080fd5b8051613317612d6c82612d25565b81815285602083850101111561332c57600080fd5b6128ce826020830160208601613013565b6040815260006133506040830185613037565b82810360208401526128ce8185613037565b8385823760609290921b6bffffffffffffffffffffffff1916919092019081526014810191909152603401919050565b600082516133a4818460208701613013565b9190910192915050565b828152604060208201526000610cbe6040830184613037565b6000602082840312156133d957600080fd5b5051919050565b634e487b7160e01b600052602160045260246000fd5b6040815260006134096040830184613037565b828103602093840152600081529190910192915050565b634e487b7160e01b600052603260045260246000fd5b6000808335601e1984360301811261344d57600080fd5b83018035915067ffffffffffffffff82111561346857600080fd5b602001915036819003821315611aa357600080fd5b8183823760009101908152919050565b600181811c908216806134a157607f821691505b60208210810361153e57634e487b7160e01b600052602260045260246000fd5b8051602080830151919081101561153e5760001960209190910360031b1b16919050565b60006001600160a01b038089168352808816602084015280871660408401525084606083015260a060808301528260a0830152828460c0840137600060c0848401015260c0601f19601f8501168301019050979650505050505050565b60006020828403121561355457600080fd5b8151611a5e81612cab565b60006bffffffffffffffffffffffff19808960601b168352808860601b166014840152808760601b1660288401525084603c8301528284605c8401375060009101605c0190815295945050505050565b634e487b7160e01b600052601160045260246000fd5b80820180821115610917576109176135af565b601f82111561105757600081815260208120601f850160051c810160208610156135ff5750805b601f850160051c820191505b8181101561361e5782815560010161360b565b505050505050565b815167ffffffffffffffff81111561364057613640612cde565b6136548161364e845461348d565b846135d8565b602080601f83116001811461368957600084156136715750858301515b600019600386901b1c1916600185901b17855561361e565b600085815260208120601f198616915b828110156136b857888601518255948401946001909101908401613699565b50858210156136d65787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b6000815160208301516001600160e01b0319808216935060048310156132995760049290920360031b82901b161692915050565b81810381811115610917576109176135af56fea2646970667358221220003a8b4e2c0ce603862d0d4c4158bcac800a30a5b25689d4910132e5c67366fe64736f6c63430008110033"; const isSuperArgs$1 = (xs) => xs.length > 1; class UniversalProfile__factory extends ethers.ContractFactory { constructor(...args) { if (isSuperArgs$1(args)) { super(...args); } else { super(_abi$1, _bytecode$1, args[0]); } } getDeployTransaction(initialOwner, overrides) { return super.getDeployTransaction(initialOwner, overrides || {}); } deploy(initialOwner, overrides) { return super.deploy(initialOwner, overrides || {}); } connect(runner) { return super.connect(runner); } static createInterface() { return new ethers.Interface(_abi$1); } static connect(address, runner) { return new ethers.Contract(address, _abi$1, runner); } } __publicField$1(UniversalProfile__factory, "bytecode", _bytecode$1); __publicField$1(UniversalProfile__factory, "abi", _abi$1); var __defProp = Object.defineProperty; var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField = (obj, key, value) => { __defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value); return value; }; const _abi = [ { inputs: [], stateMutability: "nonpayable", type: "constructor" }, { inputs: [], name: "ERC725X_ContractDeploymentFailed", type: "error" }, { inputs: [], name: "ERC725X_CreateOperationsRequireEmptyRecipientAddress", type: "error" }, { inputs: [], name: "ERC725X_ExecuteParametersEmptyArray", type: "error" }, { inputs: [], name: "ERC725X_ExecuteParametersLengthMismatch", type: "error" }, { inputs: [ { internalType: "uint256", name: "balance", type: "uint256" }, { internalType: "uint256", name: "value", type: "uint256" } ], name: "ERC725X_InsufficientBalance", type: "error" }, { inputs: [], name: "ERC725X_MsgValueDisallowedInDelegateCall", type: "error" }, { inputs: [], name: "ERC725X_MsgValueDisallowedInStaticCall", type: "error" }, { inputs: [], name: "ERC725X_NoContractBytecodeProvided", type: "error" }, { inputs: [ { internalType: "uint256", name: "operationTypeProvided", type: "uint256" } ], name: "ERC725X_UnknownOperationType", type: "error" }, { inputs: [], name: "ERC725Y_DataKeysValuesEmptyArray", type: "error" }, { inputs: [], name: "ERC725Y_DataKeysValuesLengthMismatch", type: "error" }, { inputs: [ { internalType: "address", name: "caller", type: "address" } ], name: "LSP14CallerNotPendingOwner", type: "error" }, { inputs: [], name: "LSP14CannotTransferOwnershipToSelf", type: "error" }, { inputs: [], name: "LSP14MustAcceptOwnershipInSeparateTransaction", type: "error" }, { inputs: [ { internalType: "uint256", name: "renounceOwnershipStart", type: "uint256" }, { internalType: "uint256", name: "renounceOwnershipEnd", type: "uint256" } ], name: "LSP14NotInRenounceOwnershipInterval", type: "error" }, { inputs: [ { internalType: "bool", name: "postCall", type: "bool" }, { internalType: "bytes4", name: "returnedStatus", type: "bytes4" } ], name: "LSP20CallVerificationFailed", type: "error" }, { inputs: [ { internalType: "bool", name: "postCall", type: "bool" } ], name: "LSP20CallingVerifierFailed", type: "error" }, { inputs: [ { internalType: "address", name: "logicVerifier", type: "address" } ], name: "LSP20EOACannotVerifyCall", type: "error" }, { inputs: [ { internalType: "bytes4", name: "functionSelector", type: "bytes4" } ], name: "NoExtensionFoundForFunctionSelector", type: "error" }, { anonymous: false, inputs: [ { indexed: true, internalType: "uint256", name: "operationType", type: "uint256" }, { indexed: true, internalType: "address", name: "contractAddress", type: "address" }, { indexed: false, internalType: "uint256", name: "value", type: "uint256" }, { indexed: true, internalType: "bytes32", name: "salt", type: "bytes32" } ], name: "ContractCreated", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "bytes32", name: "dataKey", type: "bytes32" }, { indexed: false, internalType: "bytes", name: "dataValue", type: "bytes" } ], name: "DataChanged", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "uint256", name: "operationType", type: "uint256" }, { indexed: true, internalType: "address", name: "target", type: "address" }, { indexed: false, internalType: "uint256", name: "value", type: "uint256" }, { indexed: true, internalType: "bytes4", name: "selector", type: "bytes4" } ], name: "Executed", type: "event" }, { anonymous: false, inputs: [ { indexed: false, internalType: "uint8", name: "version", type: "uint8" } ], name: "Initialized", type: "event" }, { anonymous: false, inputs: [], name: "OwnershipRenounced", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "previousOwner", type: "address" }, { indexed: true, internalType: "address", name: "newOwner", type: "address" } ], name: "OwnershipTransferStarted", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "previousOwner", type: "address" }, { indexed: true, internalType: "address", name: "newOwner", type: "address" } ], name: "OwnershipTransferred", type: "event" }, { anonymous: false, inputs: [], name: "RenounceOwnershipStarted", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "from", type: "address" }, { indexed: true, internalType: "uint256", name: "value", type: "uint256" }, { indexed: true, internalType: "bytes32", name: "typeId", type: "bytes32" }, { indexed: false, internalType: "bytes", name: "receivedData", type: "bytes" }, { indexed: false, internalType: "bytes", name: "returnedValue", type: "bytes" } ], name: "UniversalReceiver", type: "event" }, { stateMutability: "payable", type: "fallback" }, { inputs: [], name: "RENOUNCE_OWNERSHIP_CONFIRMATION_DELAY", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "RENOUNCE_OWNERSHIP_CONFIRMATION_PERIOD", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "VERSION", outputs: [ { internalType: "string", name: "", type: "string" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "acceptOwnership", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "bytes[]", name: "data", type: "bytes[]" } ], name: "batchCalls", outputs: [ { internalType: "bytes[]", name: "results", type: "bytes[]" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "uint256", name: "operationType", type: "uint256" }, { internalType: "address", name: "target", type: "address" }, { internalType: "uint256", name: "value", type: "uint256" }, { internalType: "bytes", name: "data", type: "bytes" } ], name: "execute", outputs: [ { internalType: "bytes", name: "", type: "bytes" } ], stateMutability: "payable", type: "function" }, { inputs: [ { internalType: "uint256[]", name: "operationsType", type: "uint256[]" }, { internalType: "address[]", name: "targets", type: "address[]" }, { internalType: "uint256[]", name: "values", type: "uint256[]" }, { internalType: "bytes[]", name: "datas", type: "bytes[]" } ], name: "executeBatch", outputs: [ { internalType: "bytes[]", name: "", type: "bytes[]" } ], stateMutability: "payable", type: "function" }, { inputs: [ { internalType: "bytes32", name: "dataKey", type: "bytes32" } ], name: "getData", outputs: [ { internalType: "bytes", name: "dataValue", type: "bytes" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "bytes32[]", name: "dataKeys", type: "bytes32[]" } ], name: "getDataBatch", outputs: [ { internalType: "bytes[]", name: "dataValues", type: "bytes[]" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "initialOwner", type: "address" } ], name: "initialize", outputs: [], stateMutability: "payable", type: "function" }, { inputs: [ { internalType: "bytes32", name: "dataHash", type: "bytes32" }, { internalType: "bytes", name: "signature", type: "bytes" } ], name: "isValidSignature", outputs: [ { internalType: "bytes4", name: "returnedStatus", type: "bytes4" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "owner", outputs: [ { internalType: "address", name: "", type: "address" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "pendingOwner", outputs: [ { internalType: "address", name: "", type: "address" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "renounceOwnership", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "bytes32", name: "dataKey", type: "bytes32" }, { internalType: "bytes", name: "dataValue", type: "bytes" } ], name: "setData", outputs: [], stateMutability: "payable", type: "function" }, { inputs: [ { internalType: "bytes32[]", name: "dataKeys", type: "bytes32[]" }, { internalType: "bytes[]", name: "dataValues", type: "bytes[]" } ], name: "setDataBatch", outputs: [], stateMutability: "payable", type: "function" }, { inputs: [ { internalType: "bytes4", name: "interfaceId", type: "bytes4" } ], name: "supportsInterface", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "pendingNewOwner", type: "address" } ], name: "transferOwnership", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "bytes32", name: "typeId", type: "bytes32" }, { internalType: "bytes", name: "receivedData", type: "bytes" } ], name: "universalReceiver", outputs: [ { internalType: "bytes", name: "returnedValues", type: "bytes" } ], stateMutability: "payable", type: "function" }, { stateMutability: "payable", type: "receive" } ]; const _bytecode = "0x60806040523480156200001157600080fd5b506200001c62000022565b620000e3565b600054610100900460ff16156200008f5760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b60005460ff90811614620000e1576000805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b613ae680620000f36000396000f3fe6080604052600436106101485760003560e01c806379ba5097116100c0578063dedff9c611610074578063ead3fbdf11610059578063ead3fbdf14610239578063f2fde38b14610436578063ffa1ad741461045657610193565b8063dedff9c6146103f8578063e30c39781461041857610193565b80638da5cb5b116100a55780638da5cb5b1461039a57806397902421146103d2578063c4d66de8146103e557610193565b806379ba5097146103725780637f23690c1461038757610193565b806344c028fe116101175780636963d438116100fc5780636963d4381461032a5780636bb56a141461034a578063715018a61461035d57610193565b806344c028fe146102ea57806354f6127f1461030a57610193565b806301bfba611461023957806301ffc9a7146102615780631626ba7e1461029157806331858452146102ca57610193565b366101935734156101915761018f7f9c4705229491d365fb5434052e12a386d6771d976bea61070a8c694e8affea3d60001b6040518060200160405280600081525061049f565b505b005b6000366060600482101561022157341561020c5761020a7f9c4705229491d365fb5434052e12a386d6771d976bea61070a8c694e8affea3d60001b84848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061049f92505050565b505b5060408051602081019091526000815261022e565b61022b8383610775565b90505b915050805190602001f35b34801561024557600080fd5b5061024e60c881565b6040519081526020015b60405180910390f35b34801561026d57600080fd5b5061028161027c366004613044565b610951565b6040519015158152602001610258565b34801561029d57600080fd5b506102b16102ac366004613126565b610a3c565b6040516001600160e01b03199091168152602001610258565b6102dd6102d836600461328e565b610be1565b60405161025891906133e6565b6102fd6102f8366004613448565b610cf3565b604051610258919061349d565b34801561031657600080fd5b506102fd6103253660046134b0565b610ddc565b34801561033657600080fd5b506102dd6103453660046134c9565b610de7565b6102fd610358366004613126565b61049f565b34801561036957600080fd5b50610191610f43565b34801561037e57600080fd5b506101916110af565b610191610395366004613126565b61123b565b3480156103a657600080fd5b506000546201000090046001600160a01b03165b6040516001600160a01b039091168152602001610258565b6101916103e036600461353e565b611324565b6101916103f3366004613598565b6114fd565b34801561040457600080fd5b506102dd6104133660046135b3565b61161e565b34801561042457600080fd5b506003546001600160a01b03166103ba565b34801561044257600080fd5b50610191610451366004613598565b6116c9565b34801561046257600080fd5b506102fd6040518060400160405280600681526020017f302e31352e30000000000000000000000000000000000000000000000000000081525081565b606034158015906104d057507f9c4705229491d365fb5434052e12a386d6771d976bea61070a8c694e8affea3d8314155b1561053b576105397f9c4705229491d365fb5434052e12a386d6771d976bea61070a8c694e8affea3d60001b6000368080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061049f92505050565b505b60006105667f0cfc51aec37c55a4d0b1a65c6255c4bf2fbdf6277f3cc0730c45b828b6db8b4761187b565b90506060601482511061061757600061057e836135e8565b60601c905061059481635122dded60e11b61191d565b1561061557604051635122dded60e11b81526001600160a01b0382169063a245bbda906105cb90339034908b908b90600401613624565b6000604051808303816000875af11580156105ea573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526106129190810190613652565b91505b505b60006106437f0cfc51aec37c55a4d0b100000000000000000000000000000000000000000000876119a6565b905060006106508261187b565b905060606014825110610701576000610668836135e8565b60601c905061067e81635122dded60e11b61191d565b156106ff57604051635122dded60e11b81526001600160a01b0382169063a245bbda906106b590339034908e908e90600401613624565b6000604051808303816000875af11580156106d4573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526106fc9190810190613652565b91505b505b83816040516020016107149291906136c0565b60405160208183030381529060405295508734336001600160a01b03167f9c3ba68eb5742b8e3961aea0afc7371a71bf433c8a67a831803b64c064a178c28a8a6040516107629291906136c0565b60405180910390a4505050505092915050565b606060008061078f6000356001600160e01b031916611a0f565b91509150346000141580156107a2575080155b1561080c5761080a7f9c4705229491d365fb5434052e12a386d6771d976bea61070a8c694e8affea3d60001b86868080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061049f92505050565b505b6000356001600160e01b03191615801561082d57506001600160a01b038216155b1561084b57604051806020016040528060008152509250505061094b565b6001600160a01b03821661089e576040517fbb370b2b0000000000000000000000000000000000000000000000000000000081526001600160e01b03196000351660048201526024015b60405180910390fd5b600080836001600160a01b0316836108b75760006108b9565b345b888833346040516020016108d094939291906136e5565b60408051601f19818403018152908290526108ea91613715565b60006040518083038185875af1925050503d8060008114610927576040519150601f19603f3d011682016040523d82523d6000602084013e61092c565b606091505b5091509150811561094257935061094b92505050565b80518060208301fd5b92915050565b60006001600160e01b03198216630b135d3f60e11b148061099b57506001600160e01b031982167f24871b3d00000000000000000000000000000000000000000000000000000000145b806109b657506001600160e01b03198216631aed5a8560e21b145b806109ea57506001600160e01b031982167f94be599900000000000000000000000000000000000000000000000000000000145b80610a1e57506001600160e01b031982167f1a0eb6a500000000000000000000000000000000000000000000000000000000145b80610a2d5750610a2d82611b06565b8061094b575061094b82611b44565b600080546201000090046001600160a01b0316803b15610b6157600080826001600160a01b0316631626ba7e60e01b8787604051602401610a7e929190613731565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b0319909416939093179092529051610abc9190613715565b600060405180830381855afa9150503d8060008114610af7576040519150601f19603f3d011682016040523d82523d6000602084013e610afc565b606091505b50915091506000828015610b11575081516020145b8015610b3857508151630b135d3f60e11b90610b36908401602090810190850161374a565b145b905080610b4d576001600160e01b0319610b56565b630b135d3f60e11b5b94505050505061094b565b600080610b6e8686611b82565b90925090506000816004811115610b8757610b87613763565b14610ba057506001600160e01b0319925061094b915050565b826001600160a01b0316826001600160a01b031614610bc7576001600160e01b0319610bd0565b630b135d3f60e11b5b935050505061094b565b5092915050565b60603415610c6c576040516001600160e01b03196000351660208201527f9c4705229491d365fb5434052e12a386d6771d976bea61070a8c694e8affea3d90349033907f9c3ba68eb5742b8e3961aea0afc7371a71bf433c8a67a831803b64c064a178c29060240160408051601f1981840301815290829052610c6391613779565b60405180910390a45b6000546201000090046001600160a01b031633819003610c9a57610c9286868686611bc7565b915050610ceb565b6000610ca582611d57565b90506000610cb588888888611bc7565b90508115610ce657610ce68382604051602001610cd291906133e6565b604051602081830303815290604052611f23565b925050505b949350505050565b60603415610d7e576040516001600160e01b03196000351660208201527f9c4705229491d365fb5434052e12a386d6771d976bea61070a8c694e8affea3d90349033907f9c3ba68eb5742b8e3961aea0afc7371a71bf433c8a67a831803b64c064a178c29060240160408051601f1981840301815290829052610d7591613779565b60405180910390a45b6000546201000090046001600160a01b031633819003610da457610c9286868686612059565b6000610daf82611d57565b90506000610dbf88888888612059565b90508115610ce657610ce68382604051602001610cd2919061349d565b606061094b8261187b565b60608167ffffffffffffffff811115610e0257610e02613061565b604051908082528060200260200182016040528015610e3557816020015b6060815260200190600190039081610e205790505b50905060005b82811015610bda5760008030868685818110610e5957610e596137a3565b9050602002810190610e6b91906137b9565b604051610e79929190613800565b600060405180830381855af49150503d8060008114610eb4576040519150601f19603f3d011682016040523d82523d6000602084013e610eb9565b606091505b509150915081610f1b57805115610ed35780518082602001fd5b60405162461bcd60e51b815260206004820152601960248201527f4c5350303a20626174636843616c6c73207265766572746564000000000000006044820152606401610895565b80848481518110610f2e57610f2e6137a3565b60209081029190910101525050600101610e3b565b6000546201000090046001600160a01b031633819003610ff8576000546201000090046001600160a01b0316610f776121af565b6000546201000090046001600160a01b0316610ff457604080516001600160a01b0384166020820152600091810191909152610ff4907fa4e59c931d14f7c8a7a35027f92ee40b5f2886b9fdcdb78f30bc5ecce5a2f814906060015b60408051601f198184030181529190526001600160a01b03841691906122bb565b5050565b600061100382611d57565b905060006110206000546001600160a01b03620100009091041690565b905061102a6121af565b6000546201000090046001600160a01b031661108a57604080516001600160a01b038516602082015260009181019190915261108a907fa4e59c931d14f7c8a7a35027f92ee40b5f2886b9fdcdb78f30bc5ecce5a2f81490606001610fd3565b81156110a9576110a98360405180602001604052806000815250611f23565b50505b50565b600354600160a01b900460ff16156110f3576040517f5758dd0700000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600080546003546001600160a01b03620100009092048216929116903382146111445761111f82611d57565b905061112a8261234f565b600380546001600160a01b0319169055600060025561114c565b61114c6123e6565b604080516001600160a01b0380861660208301528416918101919091526111b4907fa4e59c931d14f7c8a7a35027f92ee40b5f2886b9fdcdb78f30bc5ecce5a2f814906060015b60408051601f198184030181529190526001600160a01b03861691906122bb565b604080516001600160a01b03808616602083015284169181019190915261121c907fceca317f109c43507871523e82dc2a3cc64dfa18f12da0b6db14f6e23f995538906060015b60408051601f198184030181529190526001600160a01b03851691906122bb565b80156110a9576110a98260405180602001604052806000815250611f23565b34156112c4576040516001600160e01b03196000351660208201527f9c4705229491d365fb5434052e12a386d6771d976bea61070a8c694e8affea3d90349033907f9c3ba68eb5742b8e3961aea0afc7371a71bf433c8a67a831803b64c064a178c29060240160408051601f19818403018152908290526112bb91613779565b60405180910390a45b6000546201000090046001600160a01b0316338190036112e8576110a9838361244c565b60006112f382611d57565b90506112ff848461244c565b801561131e5761131e8260405180602001604052806000815250611f23565b50505050565b34156113ad576040516001600160e01b03196000351660208201527f9c4705229491d365fb5434052e12a386d6771d976bea61070a8c694e8affea3d90349033907f9c3ba68eb5742b8e3961aea0afc7371a71bf433c8a67a831803b64c064a178c29060240160408051601f19818403018152908290526113a491613779565b60405180910390a45b80518251146113e8576040517f3bcc897900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b8151600003611423576040517f97da5f9500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6000546201000090046001600160a01b03163381900361148d5760005b835181101561131e5761148584828151811061145e5761145e6137a3565b6020026020010151848381518110611478576114786137a3565b602002602001015161244c565b600101611440565b600061149882611d57565b905060005b84518110156114dd576114d58582815181106114bb576114bb6137a3565b6020026020010151858381518110611478576114786137a3565b60010161149d565b50801561131e5761131e8260405180602001604052806000815250611f23565b600054610100900460ff161580801561151d5750600054600160ff909116105b806115375750303b158015611537575060005460ff166001145b6115a95760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a65640000000000000000000000000000000000006064820152608401610895565b6000805460ff1916600117905580156115cc576000805461ff0019166101001790555b6115d5826124a1565b8015610ff4576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15050565b6060815167ffffffffffffffff81111561163a5761163a613061565b60405190808252806020026020018201604052801561166d57816020015b60608152602001906001900390816116585790505b50905060005b82518110156116c35761169e838281518110611691576116916137a3565b602002602001015161187b565b8282815181106116b0576116b06137a3565b6020908102919091010152600101611673565b50919050565b6000546201000090046001600160a01b03163381900361179b576003805460ff60a01b1916600160a01b1790556116ff82612577565b816001600160a01b0316816001600160a01b03167f38d16b8cac22d99fc7c124b9cd0de2d3fa1faef420bfe791d8c362d765e2270060405160405180910390a3604080516001600160a01b03808416602083015284169181019190915261178a907fe17117c9d2665d1dbeb479ed8058bbebde3c50ac50e2e65619f60006caac6926906060016111fb565b6003805460ff60a01b191690555050565b60006117a682611d57565b6003805460ff60a01b1916600160a01b17905590506117c483612577565b826001600160a01b0316826001600160a01b03167f38d16b8cac22d99fc7c124b9cd0de2d3fa1faef420bfe791d8c362d765e2270060405160405180910390a3604080516001600160a01b03808516602083015285169181019190915261184f907fe17117c9d2665d1dbeb479ed8058bbebde3c50ac50e2e65619f60006caac692690606001611193565b6003805460ff60a01b1916905580156110a9576110a98260405180602001604052806000815250611f23565b600081815260016020526040902080546060919061189890613810565b80601f01602080910402602001604051908101604052809291908181526020018280546118c490613810565b80156119115780601f106118e657610100808354040283529160200191611911565b820191906000526020600020905b8154815290600101906020018083116118f457829003601f168201915b50505050509050919050565b604080516001600160e01b03198316602480830191909152825180830390910181526044909101909152602080820180516001600160e01b03166301ffc9a760e01b178152825160009392849283928392918391908a617530fa92503d9150600051905082801561198f575060208210155b801561199b5750600081115b979650505050505050565b604080517fffffffffffffffffffff00000000000000000000000000000000000000000000841660208201526000602a82018190526bffffffffffffffffffffffff198416602c83015291829101604051602081830303815290604052905080610ceb90613844565b60008080611a477fcee78b4094da86011096000000000000000000000000000000000000000000006001600160e01b031986166119a6565b90506000611a548261187b565b9050601481511015611a6d575060009485945092505050565b8051601503611aee5780601481518110611a8957611a896137a3565b01602001517fff00000000000000000000000000000000000000000000000000000000000000167f010000000000000000000000000000000000000000000000000000000000000003611aee57611adf816135e8565b60601c95600195509350505050565b611af7816135e8565b60601c95600095509350505050565b60006001600160e01b031982167fa918fa6b00000000000000000000000000000000000000000000000000000000148061094b575061094b826125e0565b600080611b576301ffc9a760e01b611a0f565b5090506001600160a01b038116611b715750600092915050565b611b7b818461191d565b9392505050565b6000808251604103611bb85760208301516040840151606085015160001a611bac8782858561261e565b94509450505050611bc0565b506000905060025b9250929050565b606083518551141580611be8575082518451141580611be857508151835114155b15611c1f576040517f3ff55f4d00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b8451600003611c5a576040517fe9ad2b5f00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6000855167ffffffffffffffff811115611c7657611c76613061565b604051908082528060200260200182016040528015611ca957816020015b6060815260200190600190039081611c945790505b50905060005b8651811015611d4d57611d28878281518110611ccd57611ccd6137a3565b6020026020010151878381518110611ce757611ce76137a3565b6020026020010151878481518110611d0157611d016137a3565b6020026020010151878581518110611d1b57611d1b6137a3565b6020026020010151612059565b828281518110611d3a57611d3a6137a3565b6020908102919091010152600101611caf565b5095945050505050565b6000816001600160a01b03163b600003611da8576040517f0c3923010000000000000000000000000000000000000000000000000000000081526001600160a01b0383166004820152602401610895565b6040517fde928f140000000000000000000000000000000000000000000000000000000081526001600160a01b0383169063de928f1490611df89033903090829034906000903690600401613868565b6020604051808303816000875af1925050508015611e33575060408051601f3d908101601f19168201909252611e30918101906138c5565b60015b611e72573d808015611e61576040519150601f19603f3d011682016040523d82523d6000602084013e611e66565b606091505b506116c36000826126e2565b7fffffff000000000000000000000000000000000000000000000000000000000081167fde928f000000000000000000000000000000000000000000000000000000000014611ee757604051639d6741e360e01b8152600060048201526001600160e01b031982166024820152604401610895565b8060031a60f81b7effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916600160f81b14915050919050565b919050565b816001600160a01b031663d3fc45d333303334600036604051602001611f4e969594939291906138e2565b60405160208183030381529060405280519060200120836040518363ffffffff1660e01b8152600401611f82929190613731565b6020604051808303816000875af1925050508015611fbd575060408051601f3d908101601f19168201909252611fba918101906138c5565b60015b611ffc573d808015611feb576040519150601f19603f3d011682016040523d82523d6000602084013e611ff0565b606091505b506110a96001826126e2565b6001600160e01b031981167fd3fc45d300000000000000000000000000000000000000000000000000000000146110a957604051639d6741e360e01b8152600160048201526001600160e01b031982166024820152604401610895565b6060846120725761206b848484612728565b9050610ceb565b600185036120ac576001600160a01b038416156120a257604051631820c12560e11b815260040160405180910390fd5b61206b8383612859565b600285036120e6576001600160a01b038416156120dc57604051631820c12560e11b815260040160405180910390fd5b61206b8383612973565b60038503612130578215612126576040517f72f2bc6a00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b61206b8483612a5d565b6004850361217a578215612170576040517f5ac8313500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b61206b8483612b61565b6040517f7583b3bc00000000000000000000000000000000000000000000000000000000815260048101869052602401610895565b60025443906000906121c39060c890613948565b905060006121d260c883613948565b9050808311806121e25750600254155b1561222a576002839055600380546001600160a01b03191690556040517f81b7f830f1f0084db6497c486cbe6974c86488dcc4e3738eab94ab6d6b1653e790600090a1505050565b8183101561226e576040517f1b0809420000000000000000000000000000000000000000000000000000000081526004810183905260248101829052604401610895565b612278600061234f565b60006002819055600380546001600160a01b03191690556040517fd1f66c3d2bc1993a86be5e3d33709d98f0442381befcedd29f578b9b2506b1ce9190a1505050565b6122d56001600160a01b038416631aed5a8560e21b61191d565b156110a957604051631aed5a8560e21b81526001600160a01b03841690636bb56a14906123089085908590600401613731565b6000604051808303816000875af1158015612327573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261131e9190810190613652565b6000546001600160a01b038281166201000090920416146110ac57600080546040516001600160a01b03808516936201000090930416917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b03831662010000027fffffffffffffffffffff0000000000000000000000000000000000000000ffff90911617905550565b6003546001600160a01b0316331461242c576040517f451e4528000000000000000000000000000000000000000000000000000000008152336004820152602401610895565b6124353361234f565b600380546001600160a01b03191690556000600255565b600082815260016020526040902061246482826139a9565b50817fece574603820d07bc9b91f2a932baadf4628aabcb8afba49776529c14a6104b282604051612495919061349d565b60405180910390a25050565b600054610100900460ff1661250c5760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b6064820152608401610895565b61251581612c12565b6110ac7feafec4d89fa9619884b600005ef83ad9559033e6e941db7d7c495acdce61634760001b6040518060400160405280600481526020017f5ef83ad90000000000000000000000000000000000000000000000000000000081525061244c565b306001600160a01b038216036125b9576040517fe052a6f800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600380546001600160a01b0319166001600160a01b03929092169190911790556000600255565b60006001600160e01b031982167f629aa69400000000000000000000000000000000000000000000000000000000148061094b575061094b82612d0b565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a083111561265557506000905060036126d9565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa1580156126a9573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b0381166126d2576000600192509250506126d9565b9150600090505b94509492505050565b8051156126f25780518082602001fd5b6040517f8c6a8ae30000000000000000000000000000000000000000000000000000000081528215156004820152602401610895565b606082471015612754576040516301bf351f60e31b815247600482015260248101849052604401610895565b61275d82613a69565b6001600160e01b031916846001600160a01b031660007f4810874456b8e6487bd861375cf6abd8e1c8bb5858c8ce36a86a04dabfac199e866040516127a491815260200190565b60405180910390a4600080856001600160a01b031685856040516127c89190613715565b60006040518083038185875af1925050503d8060008114612805576040519150601f19603f3d011682016040523d82523d6000602084013e61280a565b606091505b509150915061284f82826040518060400160405280601681526020017f455243373235583a20556e6b6e6f776e204572726f7200000000000000000000815250612d59565b9695505050505050565b606082471015612885576040516301bf351f60e31b815247600482015260248101849052604401610895565b81516000036128a75760405163b81cd8d960e01b815260040160405180910390fd5b600082516020840185f090506001600160a01b0381166128f3576040517f0b07489b00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6000801b816001600160a01b031660017fa1fb700aaee2ae4a2ff6f91ce7eba292f89c2f5488b8ec4c5c5c8150692595c38760405161293491815260200190565b60405180910390a46040516bffffffffffffffffffffffff19606083901b16602082015260340160405160208183030381529060405291505092915050565b606081516000036129975760405163b81cd8d960e01b815260040160405180910390fd5b60006129b083602085516129ab9190613a9d565b612d72565b905060006129cd846000602087516129c89190613a9d565b612dd8565b905060006129dc868484612f00565b905082816001600160a01b031660027fa1fb700aaee2ae4a2ff6f91ce7eba292f89c2f5488b8ec4c5c5c8150692595c389604051612a1c91815260200190565b60405180910390a46040516bffffffffffffffffffffffff19606083901b166020820152603401604051602081830303815290604052935050505092915050565b6060612a6882613a69565b6001600160e01b031916836001600160a01b031660037f4810874456b8e6487bd861375cf6abd8e1c8bb5858c8ce36a86a04dabfac199e6000604051612ab091815260200190565b60405180910390a4600080846001600160a01b031684604051612ad39190613715565b600060405180830381855afa9150503d8060008114612b0e576040519150601f19603f3d011682016040523d82523d6000602084013e612b13565b606091505b5091509150612b5882826040518060400160405280601681526020017f455243373235583a20556e6b6e6f776e204572726f7200000000000000000000815250612d59565b95945050505050565b6060612b6c82613a69565b6001600160e01b031916836001600160a01b031660047f4810874456b8e6487bd861375cf6abd8e1c8bb5858c8ce36a86a04dabfac199e6000604051612bb491815260200190565b60405180910390a4600080846001600160a01b031684604051612bd79190613715565b600060405180830381855af49150503d8060008114612b0e576040519150601f19603f3d011682016040523d82523d6000602084013e612b13565b600054610100900460ff16612c7d5760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b6064820152608401610895565b3415612d02577f9c4705229491d365fb5434052e12a386d6771d976bea61070a8c694e8affea3d60001b34336001600160a01b03167f9c3ba68eb5742b8e3961aea0afc7371a71bf433c8a67a831803b64c064a178c2604051612cf9906040808252600090820181905260606020830181905282015260800190565b60405180910390a45b6110ac8161234f565b60006001600160e01b031982167f7545acac00000000000000000000000000000000000000000000000000000000148061094b57506301ffc9a760e01b6001600160e01b031983161461094b565b60608315612d68575081611b7b565b611b7b8383613004565b6000612d7f826020613948565b83511015612dcf5760405162461bcd60e51b815260206004820152601560248201527f746f427974657333325f6f75744f66426f756e647300000000000000000000006044820152606401610895565b50016020015190565b606081612de681601f613948565b1015612e345760405162461bcd60e51b815260206004820152600e60248201527f736c6963655f6f766572666c6f770000000000000000000000000000000000006044820152606401610895565b612e3e8284613948565b84511015612e8e5760405162461bcd60e51b815260206004820152601160248201527f736c6963655f6f75744f66426f756e64730000000000000000000000000000006044820152606401610895565b606082158015612ead5760405191506000825260208201604052612ef7565b6040519150601f8416801560200281840101858101878315602002848b0101015b81831015612ee6578051835260209283019201612ece565b5050858452601f01601f1916604052505b50949350505050565b600083471015612f525760405162461bcd60e51b815260206004820152601d60248201527f437265617465323a20696e73756666696369656e742062616c616e63650000006044820152606401610895565b8151600003612fa35760405162461bcd60e51b815260206004820181905260248201527f437265617465323a2062797465636f6465206c656e677468206973207a65726f6044820152606401610895565b8282516020840186f590506001600160a01b038116611b7b5760405162461bcd60e51b815260206004820152601960248201527f437265617465323a204661696c6564206f6e206465706c6f79000000000000006044820152606401610895565b8151156130145781518083602001fd5b8060405162461bcd60e51b8152600401610895919061349d565b6001600160e01b0319811681146110ac57600080fd5b60006020828403121561305657600080fd5b8135611b7b8161302e565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f1916810167ffffffffffffffff811182821017156130a0576130a0613061565b604052919050565b600067ffffffffffffffff8211156130c2576130c2613061565b50601f01601f191660200190565b600082601f8301126130e157600080fd5b81356130f46130ef826130a8565b613077565b81815284602083860101111561310957600080fd5b816020850160208301376000918101602001919091529392505050565b6000806040838503121561313957600080fd5b82359150602083013567ffffffffffffffff81111561315757600080fd5b613163858286016130d0565b9150509250929050565b600067ffffffffffffffff82111561318757613187613061565b5060051b60200190565b600082601f8301126131a257600080fd5b813560206131b26130ef8361316d565b82815260059290921b840181019181810190868411156131d157600080fd5b8286015b848110156131ec57803583529183019183016131d5565b509695505050505050565b80356001600160a01b0381168114611f1e57600080fd5b600082601f83011261321f57600080fd5b8135602061322f6130ef8361316d565b82815260059290921b8401810191818101908684111561324e57600080fd5b8286015b848110156131ec57803567ffffffffffffffff8111156132725760008081fd5b6132808986838b01016130d0565b845250918301918301613252565b600080600080608085870312156132a457600080fd5b843567ffffffffffffffff808211156132bc57600080fd5b6132c888838901613191565b95506020915081870135818111156132df57600080fd5b8701601f810189136132f057600080fd5b80356132fe6130ef8261316d565b81815260059190911b8201840190848101908b83111561331d57600080fd5b928501925b8284101561334257613333846131f7565b82529285019290850190613322565b9750505050604087013591508082111561335b57600080fd5b61336788838901613191565b9350606087013591508082111561337d57600080fd5b5061338a8782880161320e565b91505092959194509250565b60005b838110156133b1578181015183820152602001613399565b50506000910152565b600081518084526133d2816020860160208601613396565b601f01601f19169290920160200192915050565b6000602080830181845280855180835260408601915060408160051b870101925083870160005b8281101561343b57603f198886030184526134298583516133ba565b9450928501929085019060010161340d565b5092979650505050505050565b6000806000806080858703121561345e57600080fd5b8435935061346e602086016131f7565b925060408501359150606085013567ffffffffffffffff81111561349157600080fd5b61338a878288016130d0565b602081526000611b7b60208301846133ba565b6000602082840312156134c257600080fd5b5035919050565b600080602083850312156134dc57600080fd5b823567ffffffffffffffff808211156134f457600080fd5b818501915085601f83011261350857600080fd5b81358181111561351757600080fd5b8660208260051b850101111561352c57600080fd5b60209290920196919550909350505050565b6000806040838503121561355157600080fd5b823567ffffffffffffffff8082111561356957600080fd5b61357586838701613191565b9350602085013591508082111561358b57600080fd5b506131638582860161320e565b6000602082840312156135aa57600080fd5b611b7b826131f7565b6000602082840312156135c557600080fd5b813567ffffffffffffffff8111156135dc57600080fd5b610ceb84828501613191565b805160208201516bffffffffffffffffffffffff19808216929190601483101561361c5780818460140360031b1b83161693505b505050919050565b6001600160a01b038516815283602082015282604082015260806060820152600061284f60808301846133ba565b60006020828403121561366457600080fd5b815167ffffffffffffffff81111561367b57600080fd5b8201601f8101841361368c57600080fd5b805161369a6130ef826130a8565b8181528560208385010111156136af57600080fd5b612b58826020830160208601613396565b6040815260006136d360408301856133ba565b8281036020840152612b5881856133ba565b8385823760609290921b6bffffffffffffffffffffffff1916919092019081526014810191909152603401919050565b60008251613727818460208701613396565b9190910192915050565b828152604060208201526000610ceb60408301846133ba565b60006020828403121561375c57600080fd5b5051919050565b634e487b7160e01b600052602160045260246000fd5b60408152600061378c60408301846133ba565b828103602093840152600081529190910192915050565b634e487b7160e01b600052603260045260246000fd5b6000808335601e198436030181126137d057600080fd5b83018035915067ffffffffffffffff8211156137eb57600080fd5b602001915036819003821315611bc057600080fd5b8183823760009101908152919050565b600181811c9082168061382457607f821691505b6020821081036116c357634e487b7160e01b600052602260045260246000fd5b805160208083015191908110156116c35760001960209190910360031b1b16919050565b60006001600160a01b038089168352808816602084015280871660408401525084606083015260a060808301528260a0830152828460c0840137600060c0848401015260c0601f19601f8501168301019050979650505050505050565b6000602082840312156138d757600080fd5b8151611b7b8161302e565b60006bffffffffffffffffffffffff19808960601b168352808860601b166014840152808760601b1660288401525084603c8301528284605c8401375060009101605c0190815295945050505050565b634e487b7160e01b600052601160045260246000fd5b8082018082111561094b5761094b613932565b601f8211156110a957600081815260208120601f850160051c810160208610156139825750805b601f850160051c820191505b818110156139a15782815560010161398e565b505050505050565b815167ffffffffffffffff8111156139c3576139c3613061565b6139d7816139d18454613810565b8461395b565b602080601f831160018114613a0c57600084156139f45750858301515b600019600386901b1c1916600185901b1785556139a1565b600085815260208120601f198616915b82811015613a3b57888601518255948401946001909101908401613a1c565b5085821015613a595787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b6000815160208301516001600160e01b03198082169350600483101561361c5760049290920360031b82901b161692915050565b8181038181111561094b5761094b61393256fea26469706673582212205e93045794bad29f018f57304ce06238033032f8017224f541c0bf47d0553b1564736f6c63430008110033"; const isSuperArgs = (xs) => xs.length > 1; class UniversalProfileInit__factory extends ethers.ContractFactory { constructor(...args) { if (isSuperArgs(args)) { super(...args); } else { super(_abi, _bytecode, args[0]); } } getDeployTransaction(overrides) { return super.getDeployTransaction(overrides || {}); } deploy(overrides) { return super.deploy(overrides || {}); } connect(runner) { return super.connect(runner); } static createInterface() { return new ethers.Interface(_abi); } static connect(address, runner) { return new ethers.Contract( address, _abi, runner ); } } __publicField(UniversalProfileInit__factory, "bytecode", _bytecode); __publicField(UniversalProfileInit__factory, "abi", _abi); const index$1 = { __proto__: null, LSP0ERC725AccountInit__factory: LSP0ERC725AccountInit__factory, LSP0ERC725Account__factory: LSP0ERC725Account__factory, LSP11BasicSocialRecoveryInit__factory: LSP11BasicSocialRecoveryInit__factory, LSP11BasicSocialRecovery__factory: LSP11BasicSocialRecovery__factory, LSP1UniversalReceiverDelegateUP__factory: LSP1UniversalReceiverDelegateUP__factory, LSP1UniversalReceiverDelegateVault__factory: LSP1UniversalReceiverDelegateVault__factory, LSP23LinkedContractsFactory__factory: LSP23LinkedContractsFactory__factory, LSP4DigitalAssetMetadataInitAbstract__factory: LSP4DigitalAssetMetadataInitAbstract__factory, LSP4DigitalAssetMetadata__factory: LSP4DigitalAssetMetadata__factory, LSP6KeyManagerInit__factory: LSP6KeyManagerInit__factory, LSP6KeyManager__factory: LSP6KeyManager__factory, LSP7CappedSupplyInitAbstract__factory: LSP7CappedSupplyInitAbstract__factory, LSP7CappedSupply__factory: LSP7CappedSupply__factory, LSP7DigitalAssetInitAbstract__factory: LSP7DigitalAssetInitAbstract__factory, LSP7DigitalAsset__factory: LSP7DigitalAsset__factory, LSP7MintableInit__factory: LSP7MintableInit__factory, LSP7Mintable__factory: LSP7Mintable__factory, LSP8CappedSupplyInitAbstract__factory: LSP8CappedSupplyInitAbstract__factory, LSP8CappedSupply__factory: LSP8CappedSupply__factory, LSP8IdentifiableDigitalAssetInitAbstract__factory: LSP8IdentifiableDigitalAssetInitAbstract__factory, LSP8IdentifiableDigitalAsset__factory: LSP8IdentifiableDigitalAsset__factory, LSP8MintableInit__factory: LSP8MintableInit__factory, LSP8Mintable__factory: LSP8Mintable__factory, LSP9VaultInit__factory: LSP9VaultInit__factory, LSP9Vault__factory: LSP9Vault__factory, UniversalProfileInit__factory: UniversalProfileInit__factory, UniversalProfile__factory: UniversalProfile__factory }; const index = { __proto__: null, LSP0ERC725AccountInit__factory: LSP0ERC725AccountInit__factory, LSP0ERC725Account__factory: LSP0ERC725Account__factory, LSP11BasicSocialRecoveryInit__factory: LSP11BasicSocialRecoveryInit__factory, LSP11BasicSocialRecovery__factory: LSP11BasicSocialRecovery__factory, LSP1UniversalReceiverDelegateUP__factory: LSP1UniversalReceiverDelegateUP__factory, LSP1UniversalReceiverDelegateVault__factory: LSP1UniversalReceiverDelegateVault__factory, LSP23LinkedContractsFactory__factory: LSP23LinkedContractsFactory__factory, LSP4DigitalAssetMetadataInitAbstract__factory: LSP4DigitalAssetMetadataInitAbstract__factory, LSP4DigitalAssetMetadata__factory: LSP4DigitalAssetMetadata__factory, LSP6KeyManagerInit__factory: LSP6KeyManagerInit__factory, LSP6KeyManager__factory: LSP6KeyManager__factory, LSP7CappedSupplyInitAbstract__factory: LSP7CappedSupplyInitAbstract__factory, LSP7CappedSupply__factory: LSP7CappedSupply__factory, LSP7DigitalAssetInitAbstract__factory: LSP7DigitalAssetInitAbstract__factory, LSP7DigitalAsset__factory: LSP7DigitalAsset__factory, LSP7MintableInit__factory: LSP7MintableInit__factory, LSP7Mintable__factory: LSP7Mintable__factory, LSP8CappedSupplyInitAbstract__factory: LSP8CappedSupplyInitAbstract__factory, LSP8CappedSupply__factory: LSP8CappedSupply__factory, LSP8IdentifiableDigitalAssetInitAbstract__factory: LSP8IdentifiableDigitalAssetInitAbstract__factory, LSP8IdentifiableDigitalAsset__factory: LSP8IdentifiableDigitalAsset__factory, LSP8MintableInit__factory: LSP8MintableInit__factory, LSP8Mintable__factory: LSP8Mintable__factory, LSP9VaultInit__factory: LSP9VaultInit__factory, LSP9Vault__factory: LSP9Vault__factory, UniversalProfileInit__factory: UniversalProfileInit__factory, UniversalProfile__factory: UniversalProfile__factory, factories: index$1 }; const validateIpfsUrl = (url, ipfsGateway) => { return url.startsWith("ipfs://") ? ipfsGateway ? ipfsGateway + url.replace("ipfs://", "") : defaultIpfsGateway + url.replace("ipfs://", "") : url; }; const decodeVerifiableURI = (data) => { return ERC725.decodeValueContent("VerifiableURI", data); }; const decodeAssetUrl = (assetUrlValue) => { const strippedAssetUrlValue = assetUrlValue.toString().substring(2); if (strippedAssetUrlValue.length < 72) { throw new Error(`Invalid 'JSONURL' value. Less than 36 bytes. Value: ${assetUrlValue}`); } const decodedJSONURL = { hashFunction: `0x${strippedAssetUrlValue.substring(0, 8)}`, hash: `0x${strippedAssetUrlValue.substring(8, 72)}`, url: ethers.toUtf8String(`0x${strippedAssetUrlValue.substring(72)}`) }; return decodedJSONURL; }; const decodeJsonUrl = (jsonUrlValue) => { const stringifiedJsonUrlValue = jsonUrlValue.toString().substring(2); if (stringifiedJsonUrlValue.length < 72) { throw new Error(`Invalid 'JSONURL' value. Less than 36 bytes. Value: ${jsonUrlValue}`); } const decodedJSONURL = { hashFunction: `0x${stringifiedJsonUrlValue.substring(0, 8)}`, hash: `0x${stringifiedJsonUrlValue.substring(8, 72)}`, url: ethers.toUtf8String(`0x${stringifiedJsonUrlValue.substring(72)}`) }; return decodedJSONURL; }; const validateJson = (json) => { if (typeof json !== "object") { throw new Error("`object` is not a valid JSON"); } try { const stringifyResult = JSON.stringify(json); JSON.parse(stringifyResult); } catch (error) { throw new Error("`object` is not a valid JSON"); } return json; }; const encodeVerifiableURI = (json, url) => { const validatedJson = validateJson(json); return ERC725.encodeValueContent("VerifiableURI", { json: validatedJson, url }); }; const encodeAssetUrl = (hashFunction, assetBytes, url) => { const hashFunctionDigest = ethers.keccak256(ethers.toUtf8Bytes(hashFunction)).substring(0, 10); const jsonDigest = ethers.keccak256(ethers.toUtf8Bytes(assetBytes)); const ASSETURLValue = ethers.concat([hashFunctionDigest, jsonDigest, ethers.toUtf8Bytes(url)]); return ASSETURLValue; }; const encodeJsonUrl = (hashFunction, json, url) => { const hashFunctionDigest = ethers.keccak256(ethers.toUtf8Bytes(hashFunction)).substring(0, 10); const jsonDigest = ethers.keccak256(ethers.toUtf8Bytes(json)); const JSONURLValue = ethers.concat([hashFunctionDigest, jsonDigest, ethers.toUtf8Bytes(url)]); return JSONURLValue; }; const generateArrayKey = (arrayKeyName) => { if (arrayKeyName.length < 2) { throw new Error("Array data key name must be longer than 2 characters."); } if (!arrayKeyName.endsWith("[]")) { throw new Error("Missing empty square brackets '[]' at the end of the data key name."); } return ethers.keccak256(ethers.toUtf8Bytes(arrayKeyName)); }; const generateArrayElementKeyAtIndex = (arrayKey, index) => { let arrayKeyHex = arrayKey; if (!ethers.isHexString(arrayKey, 32)) { arrayKeyHex = generateArrayKey(arrayKey); } const elementInArray = ethers.concat([arrayKeyHex.substring(0, 34), ethers.toBeHex(index, 16)]); return elementInArray; }; const generateMappingKey = (firstPart, lastPart) => { let firstPartHex = firstPart; if (!ethers.isHexString(firstPart, 10)) { if (ethers.isHexString(firstPart, 12) && firstPart.endsWith("0000")) { firstPartHex = firstPart.substring(0, 22); } else if (ethers.isHexString(firstPart)) { firstPartHex = ethers.keccak256(firstPart).substring(0, 22); } else if (typeof firstPart === "string") { firstPartHex = ethers.keccak256(ethers.toUtf8Bytes(firstPart)).substring(0, 22); } } let lastPartHex = lastPart; if (!ethers.isHexString(lastPart, 20)) { if (ethers.isHexString(lastPart)) { lastPartHex = ethers.keccak256(lastPart).substring(0, 42); } else if (typeof lastPart === "string") { lastPartHex = ethers.keccak256(ethers.toUtf8Bytes(lastPart)).substring(0, 42); } } const mappingDataKey = ethers.concat([firstPartHex, "0x0000", lastPartHex]); return mappingDataKey; }; const generateMappingWithGroupingKey = (firstPart, middlePart, lastPart) => { let firstPartHex = firstPart; if (!ethers.isHexString(firstPart, 6)) { if (ethers.isHexString(firstPart)) { firstPartHex = ethers.keccak256(firstPart).substring(0, 14); } else if (typeof firstPart === "string") { firstPartHex = ethers.keccak256(ethers.toUtf8Bytes(firstPart)).substring(0, 14); } } let middlePartHex = middlePart; if (!ethers.isHexString(middlePart, 4)) { if (ethers.isHexString(middlePart)) { middlePartHex = ethers.keccak256(middlePart).substring(0, 10); } else if (typeof middlePart === "string") { middlePartHex = ethers.keccak256(ethers.toUtf8Bytes(middlePart)).substring(0, 10); } } let lastPartHex = lastPart; if (!ethers.isHexString(lastPart, 20)) { if (ethers.isHexString(lastPart)) { lastPartHex = ethers.keccak256(lastPart).substring(0, 42); } else if (typeof lastPart === "string") { lastPartHex = ethers.keccak256(ethers.toUtf8Bytes(lastPart)).substring(0, 42); } } const mappingWithGroupingDataKey = ethers.concat([firstPartHex, middlePartHex, "0x0000", lastPartHex]); return mappingWithGroupingDataKey; }; const generateSingletonKey = (keyName) => { return ethers.keccak256(ethers.toUtf8Bytes(keyName)); }; const isCompactBytesArray = (compactBytesArray) => { if (!ethers.isHexString(compactBytesArray)) { throw new Error(`'compactBytesArray' is not hex. Value: '${compactBytesArray}'`); } let pointer = 0; const strippedCompactBytesArray = compactBytesArray.substring(2); while (pointer < strippedCompactBytesArray.length) { if (pointer + 4 >= strippedCompactBytesArray.length) return false; const elementLength = strippedCompactBytesArray.substring(pointer, pointer + 4); pointer += ethers.toNumber(`0x${elementLength}`) * 2 + 4; } if (pointer === strippedCompactBytesArray.length) return true; return false; }; const isValidArrayLengthValue = (arrayLength) => { if (ethers.isHexString(arrayLength, 16)) { return true; } return false; }; const removeElementFromArrayAndMap = async (erc725YContract, arrayKey, newArrayLength, removedElementIndexKey, removedElementIndex, removedElementMapKey) => { if (!ethers.isHexString(arrayKey, 32)) { throw new Error(`'arrayKey' data key is not of length 32 bytes. Value: '${arrayKey}'`); } if (!ethers.isHexString(removedElementIndexKey, 32)) { throw new Error( `'removedElementIndexKey' data key is not of length 32 bytes. Value: '${removedElementIndexKey}'` ); } if (!ethers.isHexString(removedElementMapKey, 32)) { throw new Error( `'removedElementMapKey' data key is not of length 32 bytes. Value: '${removedElementMapKey}'` ); } const dataKeys = []; const dataValues = []; dataKeys[0] = arrayKey; dataValues[0] = ethers.toBeHex(newArrayLength, 16); dataKeys[1] = removedElementMapKey; dataValues[1] = ""; const lastElementIndexKey = generateArrayElementKeyAtIndex(arrayKey, newArrayLength); const lastElementIndexValue = await erc725YContract.getData(lastElementIndexKey); if (!ethers.isHexString(lastElementIndexValue, 20)) { throw new Error( `'lastElementIndexValue' data key is not of length 20 bytes. Value: '${lastElementIndexValue}'` ); } dataKeys[2] = removedElementIndexKey; dataValues[2] = lastElementIndexValue; dataKeys[3] = lastElementIndexKey; dataValues[3] = ""; const lastElementMapKey = generateMappingKey(removedElementMapKey, lastElementIndexValue); const lastElementMapValue = ethers.concat([ (await erc725YContract.getData(lastElementMapKey)).substring(0, 10), ethers.toBeHex(removedElementIndex, 16) ]); dataKeys[4] = lastElementMapKey; dataValues[4] = lastElementMapValue; return { dataKeys, dataValues }; }; const removeLastElementFromArrayAndMap = (arrayKey, newArrayLength, removedElementIndexKey, removedElementMapKey) => { if (!ethers.isHexString(arrayKey, 32)) { throw new Error(`'arrayKey' data key is not of length 32 bytes. Value: '${arrayKey}'`); } if (!ethers.isHexString(removedElementIndexKey, 32)) { throw new Error( `'removedElementIndexKey' data key is not of length 32 bytes. Value: '${removedElementIndexKey}'` ); } if (!ethers.isHexString(removedElementMapKey, 32)) { throw new Error( `'removedElementMapKey' data key is not of length 32 bytes. Value: '${removedElementMapKey}'` ); } const dataKeys = []; const dataValues = []; dataKeys[0] = arrayKey; dataValues[0] = ethers.toBeHex(newArrayLength, 16); dataKeys[1] = removedElementMapKey; dataValues[1] = ""; dataKeys[2] = removedElementIndexKey; dataValues[2] = ""; return { dataKeys, dataValues }; }; const isProfileMetadata = (object) => { return "LSP3Profile" in object && "name" in object.LSP3Profile && "description" in object.LSP3Profile; }; async function getProfileMetadata(contract, provider) { const erc725y = provider ? await getErc725yContract(contract, provider) : await getErc725yContract(contract); const dataValue = await erc725y.getData(lspSmartContracts.ERC725YDataKeys.LSP3.LSP3Profile); const decodedDataValue = ERC725__default.decodeData( [{ value: dataValue, keyName: "LSP3Profile" }], [ LSP3ProfileMetadataSchema__default.filter( ({ name }) => name === "LSP3Profile" )[0] ] ); const { url } = decodedDataValue[0].value; const profileDataURL = validateIpfsUrl(url); let profileData; try { const response = await fetch__default(profileDataURL); profileData = await response.json(); } catch { throw new Error("Couldn't fetch Profile Data from the url."); } if (!isProfileMetadata(profileData)) { throw new Error("Fetched data is not `LSP3Profile`."); } return profileData ? profileData : defaultLSP3ProfileMetadata; } const erc725 = new ERC725__default(LSP3ProfileMetadataSchema__default); async function setProfileMetadata(erc725y, json, url, signer) { const erc725yContract = signer ? await getErc725yContract(erc725y, signer) : await getErc725yContract(erc725y); const validatedJson = validateJson(json); const { keys: [dataKey], values: [dataValue] } = erc725.encodeData([ { keyName: "LSP3Profile", value: { url, json: validatedJson } } ]); await erc725yContract.setData(dataKey, dataValue); } async function addDigitalAssetCreators(digitalAsset, newCreators, signer) { if (newCreators.length === 0) { throw new Error("`newCreators` length is 0."); } const digitalAssetContract = signer ? await getErc725yContract(digitalAsset, signer) : await getErc725yContract(digitalAsset); const creatorsLengthHex = await digitalAssetContract.getData( lspSmartContracts.ERC725YDataKeys.LSP4["LSP4Creators[]"].length ); let creatorsLength; if (creatorsLengthHex === "" || creatorsLengthHex === "0x") { creatorsLength = 0; } else if (!isValidArrayLengthValue(creatorsLengthHex)) { creatorsLength = 0; } else { creatorsLength = ethers.toNumber(creatorsLengthHex); } const dataKeys = [ lspSmartContracts.ERC725YDataKeys.LSP4["LSP4Creators[]"].length, ...newCreators.flatMap((newCreator, index) => [ generateArrayElementKeyAtIndex( lspSmartContracts.ERC725YDataKeys.LSP4["LSP4Creators[]"].length, creatorsLength + index ), ERC725__default.encodeKeyName("LSP4CreatorsMap:
", [newCreator.address.toString()]) ]) ]; const dataValues = [ ethers.toBeHex(creatorsLength + newCreators.length, 16), ...newCreators.flatMap((newCreator, index) => [ newCreator.address.toString(), ethers.concat([newCreator.interfaceId, ethers.toBeHex(index, 16)]) ]) ]; const tx = await digitalAssetContract.setDataBatch(dataKeys, dataValues); await tx.wait(1); } async function getDigitalAssetCreators(digitalAsset, provider) { const digitalAssetContract = provider ? await getErc725yContract(digitalAsset, provider) : await getErc725yContract(digitalAsset); const creatorsLengthHex = await digitalAssetContract.getData( lspSmartContracts.ERC725YDataKeys.LSP4["LSP4Creators[]"].length ); if (creatorsLengthHex === "" || creatorsLengthHex === "0x") { return []; } if (!isValidArrayLengthValue(creatorsLengthHex)) { throw new Error( `The data value for \`LSP4Creators[]\` data key is not a valid LSP2 array length value. Value: ${creatorsLengthHex}` ); } const creatorsLength = ethers.toNumber(creatorsLengthHex); const creators = []; for (let index = 0; index < creatorsLength; index++) { const creatorAddress = await digitalAssetContract.getData( generateArrayElementKeyAtIndex(lspSmartContracts.ERC725YDataKeys.LSP4["LSP4Creators[]"].length, index) ); if (!ethers.isAddress(creatorAddress)) { continue; } const creatorMap = await digitalAssetContract.getData( generateMappingKey(lspSmartContracts.ERC725YDataKeys.LSP4.LSP4CreatorsMap, creatorAddress) ); creators.push({ address: creatorAddress, interfaceId: ethers.isHexString(creatorMap, 20) ? creatorMap.substring(0, 10) : "0x" }); } return creators; } async function getIssuedAssets(issuer, provider) { const issuerContract = provider ? await getErc725yContract(issuer, provider) : await getErc725yContract(issuer); const issuedAssetsLengthHex = await issuerContract.getData( lspSmartContracts.ERC725YDataKeys.LSP12["LSP12IssuedAssets[]"].length ); if (issuedAssetsLengthHex === "" || issuedAssetsLengthHex === "0x") { return []; } if (!isValidArrayLengthValue(issuedAssetsLengthHex)) { throw new Error( `The data value for \`LSP12IssuedAssets[]\` data key is not a valid LSP2 array length value. Value: ${issuedAssetsLengthHex}` ); } const issuedAssetsLength = ethers.toNumber(issuedAssetsLengthHex); const digitalAssets = []; for (let index = 0; index < issuedAssetsLength; index++) { const issuedAssetAdress = await issuerContract.getData( generateArrayElementKeyAtIndex( lspSmartContracts.ERC725YDataKeys.LSP12["LSP12IssuedAssets[]"].length, index ) ); if (!ethers.isAddress(issuedAssetAdress)) { continue; } const issuerMap = await issuerContract.getData( generateMappingKey(lspSmartContracts.ERC725YDataKeys.LSP12.LSP12IssuedAssetsMap, issuedAssetAdress) ); digitalAssets.push({ address: issuedAssetAdress, interfaceId: ethers.isHexString(issuerMap, 20) ? issuerMap.substring(0, 10) : "0x" }); } return digitalAssets; } async function authenticateDigitalAssetCreators(digitalAsset, provider) { let fetchedCreators; let digitalAssetAddress; if (ethers.isAddress(digitalAsset)) { fetchedCreators = await getDigitalAssetCreators(digitalAsset, provider); digitalAssetAddress = digitalAsset; } else if (ethers.isAddressable(digitalAsset)) { fetchedCreators = provider ? await getDigitalAssetCreators(digitalAsset, provider) : await getDigitalAssetCreators(digitalAsset); digitalAssetAddress = await digitalAsset.getAddress(); } else { throw new Error( `The parameter \`digitalAssetAddress\` is not a valid address nor a valid contract instance of \`ERC725Y\`. Value: '${digitalAsset}'` ); } const digitalAssetCreators = { unauthenticatedCreators: [], authenticatedCreators: [] }; if (fetchedCreators.length === 0) { return digitalAssetCreators; } for (const creator of fetchedCreators) { if (["0x", "0xffffffff"].includes(creator.interfaceId.toString())) { digitalAssetCreators.unauthenticatedCreators.push(creator); continue; } let fetchedIssuedAssets; if (ethers.isAddress(digitalAsset)) { fetchedIssuedAssets = await getIssuedAssets(creator.address.toString(), provider); } else if (ethers.isAddressable(digitalAsset)) { fetchedIssuedAssets = provider ? await getIssuedAssets(creator.address.toString(), provider) : await getIssuedAssets( creator.address.toString(), digitalAsset.runner ); } const filteredIssuedAssets = fetchedIssuedAssets.filter( (asset) => ethers.getAddress(asset.address.toString()) === ethers.getAddress(digitalAssetAddress) ); if (filteredIssuedAssets.length === 0) { digitalAssetCreators.unauthenticatedCreators.push(creator); } else { digitalAssetCreators.authenticatedCreators.push(creator); } } return digitalAssetCreators; } async function removeDigitalAssetCreators(digitalAsset, signer) { const digitalAssetContract = signer ? await getErc725yContract(digitalAsset, signer) : await getErc725yContract(digitalAsset); const creatorsLengthHex = await digitalAssetContract.getData( lspSmartContracts.ERC725YDataKeys.LSP4["LSP4Creators[]"].length ); if (creatorsLengthHex === "" || creatorsLengthHex === "0x") { throw new Error("There are no LSP4 Creators."); } if (!isValidArrayLengthValue(creatorsLengthHex)) { throw new Error( `The data value for \`LSP4Creators[]\` data key is not a valid LSP2 array length value. Value: ${creatorsLengthHex}` ); } const creatorsLength = ethers.toNumber(creatorsLengthHex); const dataKeys = [lspSmartContracts.ERC725YDataKeys.LSP4["LSP4Creators[]"].length]; const dataValues = [ethers.toBeHex(0, 16)]; for (let index = 0; index < creatorsLength; index++) { const arrayIndexDataKey = generateArrayElementKeyAtIndex( lspSmartContracts.ERC725YDataKeys.LSP4["LSP4Creators[]"].length, index ); const arrayIndexDataValue = await digitalAssetContract.getData(arrayIndexDataKey); if (!ethers.isAddress(arrayIndexDataValue)) { dataKeys.push(arrayIndexDataKey); dataValues.push("0x"); continue; } dataKeys.push( arrayIndexDataKey, ERC725__default.encodeKeyName("LSP4CreatorsMap:
", [arrayIndexDataValue]) ); dataValues.push("0x", "0x"); } const tx = await digitalAssetContract.setDataBatch(dataKeys, dataValues); await tx.wait(1); } async function getAssetMetadata(digitalAsset, provider) { const digitalAssetContract = provider ? await getErc725yContract(digitalAsset, provider) : await getErc725yContract(digitalAsset); const dataValue = await digitalAssetContract.getData(lspSmartContracts.ERC725YDataKeys.LSP4.LSP4Metadata); const decodedDataValue = ERC725__default.decodeData( [{ value: dataValue, keyName: "LSP4Metadata" }], [ LSP4DigitalAssetSchema__default.filter( ({ name }) => name === "LSP4Metadata" )[0] ] ); const { url } = decodedDataValue[0].value; const validatedUrl = validateIpfsUrl(url); let assetMetadata; try { const response = await fetch__default(validatedUrl); assetMetadata = await response.json(); } catch { throw new Error("Couldn't fetch Asset Metadata from the url."); } if (!isAssetMetadata(assetMetadata)) { throw new Error("Fetched data is not `LSP4Metadata`"); } return assetMetadata; } const isAssetMetadata = (object) => { return "LSP4Metadata" in object && "name" in object.LSP4Metadata && "description" in object.LSP4Metadata && "links" in object.LSP4Metadata && "images" in object.LSP4Metadata && "assets" in object.LSP4Metadata && "icon" in object.LSP4Metadata; }; function generateLSP4JSON(name, description, links, attributes, icons, images, assets) { const metadata = { LSP4Metadata: { name, description, links: links.map((link) => ({ title: link.title, url: link.url })), icon: icons.icons.map((icon) => ({ width: icon.width, height: icon.height, url: icon.url, verification: { method: icon.verification.method, data: icon.verification.data } })), images: images.imageFields.map((field) => [ ...field.images.map((image) => ({ width: image.width, height: image.height, url: image.url, verification: { method: image.verification.method, data: image.verification.data } })), ...field.lsp7images.map((lsp7) => ({ address: lsp7.address })), ...field.lsp8images.map((lsp8) => ({ address: lsp8.address, tokenId: lsp8.tokenId })) ]), assets: [ ...assets.assets.map((asset) => ({ url: asset.url, fileType: asset.fileType, verification: { method: asset.verification.method, data: asset.verification.data } })), ...assets.lsp7assets.map((lsp7) => ({ address: lsp7.address })), ...assets.lsp8assets.map((lsp8) => ({ address: lsp8.address, tokenId: lsp8.tokenId })) ], attributes: attributes.map((attr) => ({ key: attr.key, value: attr.value, type: attr.type })) } }; return JSON.stringify(metadata); } function generateLSP4JSONWithHash(name, description, links, attributes, icons, images, assets) { const json = generateLSP4JSON(name, description, links, attributes, icons, images, assets); const hash = ethers.keccak256(Buffer.from(json)); return { json, hash }; } function generateLSP4JSONVerifiableURI(name, description, links, attributes, icons, images, assets) { const { json, hash } = generateLSP4JSONWithHash( name, description, links, attributes, icons, images, assets ); const base64Json = Buffer.from(json).toString("base64"); const dataUri = `data:application/json;base64,${base64Json}`; const dataUriBytes = ethers.hexlify(ethers.toUtf8Bytes(dataUri)); const byteSequence = "0x00006f357c6a0020" + // 0x0020 hash.slice(2) + dataUriBytes.slice(2); return byteSequence; } const generateReceivedAssetKeys = async (erc725YContract, assetAddress, assetInterfaceId) => { assert__default( ethers.isAddress(assetAddress), `'assetAddress' is not a valid address. Value: ${assetAddress}` ); assert__default( ethers.isHexString(assetInterfaceId, 4), `'assetInterfaceId' bytes length is not 4. Value: ${assetInterfaceId}` ); let currentArrayLengthBytes = await erc725YContract.getData( lspSmartContracts.ERC725YDataKeys.LSP5["LSP5ReceivedAssets[]"].length ); if (!isValidArrayLengthValue(currentArrayLengthBytes)) { if (currentArrayLengthBytes === "0x" || currentArrayLengthBytes === "") { currentArrayLengthBytes = ethers.toBeHex(0, 16); } else { throw new Error( `'LSP5ReceivedAssets[]' length invalid. Value: ${currentArrayLengthBytes}` ); } } if (currentArrayLengthBytes === `0x${"ff".repeat(16)}`) { throw new Error( `'LSP5ReceivedAssets[]' length reached max value. Value: ${currentArrayLengthBytes}` ); } const currentArrayLength = ethers.toNumber(currentArrayLengthBytes); const mapDataKey = generateMappingKey( lspSmartContracts.ERC725YDataKeys.LSP5.LSP5ReceivedAssetsMap, assetAddress.toString() ); const fetchedMapValue = await erc725YContract.getData(mapDataKey); if (!(fetchedMapValue === "0x") && !(fetchedMapValue === "")) { throw new Error(`Asset already registred. Asset address: ${assetAddress}`); } const lsp5DataKeys = []; const lsp5DataValues = []; lsp5DataKeys[0] = lspSmartContracts.ERC725YDataKeys.LSP5["LSP5ReceivedAssets[]"].length; lsp5DataValues[0] = ethers.toBeHex(currentArrayLength + 1, 16); lsp5DataKeys[1] = generateArrayElementKeyAtIndex( lspSmartContracts.ERC725YDataKeys.LSP5["LSP5ReceivedAssets[]"].length, currentArrayLength ); lsp5DataValues[1] = assetAddress; lsp5DataKeys[2] = mapDataKey; lsp5DataValues[2] = ethers.concat([assetInterfaceId, currentArrayLengthBytes]); return { lsp5DataKeys, lsp5DataValues }; }; const generateSentAssetKeys = async (erc725YContract, assetAddress) => { const currentArrayLengthBytes = await erc725YContract.getData( lspSmartContracts.ERC725YDataKeys.LSP5["LSP5ReceivedAssets[]"].length ); if (!isValidArrayLengthValue(currentArrayLengthBytes)) { throw new Error(`'LSP5ReceivedAssets[]' length invalid. Value: ${currentArrayLengthBytes}`); } if (currentArrayLengthBytes === ethers.toBeHex(0, 16)) { throw new Error("'LSP5ReceivedAssets[]' length is 0. Cannot remove asset."); } const newArrayLength = ethers.toNumber(currentArrayLengthBytes) - 1; const removedElementMapKey = generateMappingKey( lspSmartContracts.ERC725YDataKeys.LSP5.LSP5ReceivedAssetsMap, assetAddress.toString() ); const mapValue = await erc725YContract.getData(removedElementMapKey); if (mapValue === "" || mapValue === "0x") { throw new Error( `Asset is not registerd length is 0. Cannot remove asset. Asset address: '${assetAddress}'` ); } if (mapValue.length !== 20) { throw new Error( `Registered asset has invalid data in the map. Asset address: '${assetAddress}'. Map data: '${mapValue}'.` ); } const removedElementIndex = ethers.toNumber(`0x${mapValue.substring(10)}`); const removedElementIndexKey = generateArrayElementKeyAtIndex( lspSmartContracts.ERC725YDataKeys.LSP5["LSP5ReceivedAssets[]"].length, removedElementIndex ); if (removedElementIndex === newArrayLength) { return removeLastElementFromArrayAndMap( lspSmartContracts.ERC725YDataKeys.LSP5["LSP5ReceivedAssets[]"].length, newArrayLength, removedElementIndexKey, removedElementMapKey ); } else if (removedElementIndex < newArrayLength) { return removeElementFromArrayAndMap( erc725YContract, lspSmartContracts.ERC725YDataKeys.LSP5["LSP5ReceivedAssets[]"].length, newArrayLength, removedElementIndexKey, removedElementIndex, removedElementMapKey ); } else { throw new Error( `Element index is out of the array bounds. Array length: '${newArrayLength + 1}'. Asset index: '${removedElementIndex}'` ); } }; const createValidityTimestamp = (startingTimestamp, endingTimestamp) => { if (ethers.toBeHex(startingTimestamp).length > 34) { throw new Error(`The hex value of the number: '${startingTimestamp}' execeeds 16 bytes`); } if (ethers.toBeHex(endingTimestamp).length > 34) { throw new Error(`The hex value of the number: '${endingTimestamp}' execeeds 16 bytes`); } return ethers.concat([ethers.toBeHex(startingTimestamp, 16), ethers.toBeHex(endingTimestamp, 16)]); }; const decodeAllowedCalls = (allowedCalls) => { if (!ethers.isHexString(allowedCalls)) { throw new Error(`The parameter \`allowedCalls\` is not hex. Value: '${allowedCalls}'`); } const strippedAllowedCalls = allowedCalls.substring(2); let pointer = 0; const allowedInteractions = []; const allowedAddresses = []; const allowedStandards = []; const allowedFunctions = []; while (pointer < strippedAllowedCalls.length) { const bytesLength = ethers.toNumber( "0x" + strippedAllowedCalls.toString().substring(pointer, pointer + 4) ); pointer += 4; if (bytesLength !== 32) { throw new Error(`Invalid length. Length: '${bytesLength}'. Must be 32.`); } const stringLength = bytesLength * 2; if (pointer + stringLength > strippedAllowedCalls.length) { throw new Error( "Out of bounds, length of an element reaches past the length of `allowedCalls`" ); } const allowedCall = strippedAllowedCalls.toString().substring(pointer, pointer + stringLength); allowedInteractions.push(`0x${allowedCall.substring(0, 8)}`); allowedAddresses.push(`0x${allowedCall.substring(8, 48)}`); allowedStandards.push(`0x${allowedCall.substring(48, 56)}`); allowedFunctions.push(`0x${allowedCall.substring(56)}`); pointer += stringLength; } return { allowedInteractions, allowedAddresses, allowedStandards, allowedFunctions }; }; function encodeAllowedCalls(allowedInteractions, allowedAddresses, allowedStandards, allowedFunctions) { if (allowedInteractions.length !== allowedAddresses.length && allowedAddresses.length !== allowedStandards.length && allowedStandards.length !== allowedFunctions.length) { throw new Error( `Arrays must have the same length. 'allowedInteractions' length: ${allowedInteractions}. 'allowedAddresses' length: ${allowedAddresses}. 'allowedStandards' length: ${allowedStandards}. 'allowedFunctions' length: ${allowedFunctions}.` ); } const allowedCallLength = "0020"; let result = "0x"; for (let ii = 0; ii < allowedStandards.length; ii++) { if (!ethers.isHexString(allowedInteractions[ii])) { throw new Error( `Allowed interaction is not hex. Allowed interaction: '${allowedInteractions[ii]}'` ); } if (!ethers.isHexString(allowedInteractions[ii], 4)) { throw new Error( `Allowed interactions has invalid bytes length. Must be 4. Length: ${allowedInteractions[ii].length / 2 - 1}` ); } const allowedInteraction = allowedInteractions[ii].toString().substring(2); if (!ethers.isHexString(allowedAddresses[ii])) { throw new Error( `Allowed address is not hex. Allowed address: '${allowedAddresses[ii]}'` ); } if (!ethers.isHexString(allowedAddresses[ii], 20)) { throw new Error( `Allowed interactions has invalid bytes length. Must be 20. Length: ${allowedAddresses[ii].length / 2 - 1}` ); } const allowedAddress = allowedAddresses[ii].toString().substring(2).toLowerCase(); if (!ethers.isHexString(allowedStandards[ii])) { throw new Error( `Allowed standard is not hex. Allowed standard: '${allowedStandards[ii]}'` ); } if (!ethers.isHexString(allowedStandards[ii], 4)) { throw new Error( `Allowed interactions has invalid bytes length. Must be 4. Length: ${allowedStandards[ii].length / 2 - 1}` ); } const allowedStandard = allowedStandards[ii].toString().substring(2); if (!ethers.isHexString(allowedFunctions[ii])) { throw new Error( `Allowed function is not hex. Allowed function: '${allowedFunctions[ii]}'` ); } if (!ethers.isHexString(allowedFunctions[ii], 4)) { throw new Error( `Allowed interactions has invalid bytes length. Must be 4. Length: ${allowedFunctions[ii].length / 2 - 1}` ); } const allowedFunction = allowedFunctions[ii].toString().substring(2); result = result + allowedCallLength + allowedInteraction + allowedAddress + allowedStandard + allowedFunction; } return result; } function decodeAllowedERC725YDataKeys(allowedERC725YDataKeys) { if (!ethers.isHexString(allowedERC725YDataKeys)) { throw new Error( `The parameter \`allowedERC725YDataKeys\` is not hex. Value: '${allowedERC725YDataKeys}'` ); } const strippedAllowedERC725YDataKeys = allowedERC725YDataKeys.substring(2); let pointer = 0; const dataKeys = []; while (pointer < strippedAllowedERC725YDataKeys.length) { const bytesLength = ethers.toNumber( "0x" + strippedAllowedERC725YDataKeys.toString().substring(pointer, pointer + 4) ); pointer += 4; if (bytesLength === 0 || bytesLength > 32) { throw new Error( `Invalid length. Length: '${bytesLength}'. Must be bigger than 0 and smaller than 32.` ); } const stringLength = bytesLength * 2; if (pointer + stringLength > strippedAllowedERC725YDataKeys.length) { throw new Error( "Out of bounds, length of an element reaches past the length of `allowedERC725YDataKeys`" ); } dataKeys.push( "0x" + strippedAllowedERC725YDataKeys.toString().substring(pointer, pointer + stringLength) ); pointer += stringLength; } return dataKeys; } const encodeAllowedERC725YDataKeys = (dataKeys) => { let compactedBytes = "0x"; for (let i = 0; i < dataKeys.length; i++) { const dataKey = dataKeys[i]; if (!ethers.isHexString(dataKey)) { throw new Error(`Data key is not hex. Value: '${dataKey}'`); } const strippedDataKey = dataKey.replace("0x", ""); if (strippedDataKey.length === 0 || strippedDataKey.length > 64) { throw new Error( `Invalid length. Length: '${strippedDataKey.length / 2}'. Must be bigger than 0 and smaller than 32.` ); } compactedBytes += ethers.toBeHex(strippedDataKey.length / 2, 2).substring(2) + strippedDataKey; } return compactedBytes; }; function encodePermissions(permissions) { let result = BigInt(0); permissions.forEach((permission, index) => { if (typeof permission === "string") { if (!ethers.isHexString(permission)) { if (lspSmartContracts.PERMISSIONS[permission]) { const permissionAsBN2 = BigInt(lspSmartContracts.PERMISSIONS[permission]); result |= BigInt(permissionAsBN2); return; } throw new Error(`Permission: '${permission}' is not a hex string.`); } } else if (typeof permission === "boolean") { const permissionAsBN2 = BigInt(permission); result |= BigInt(permissionAsBN2) << BigInt(index); return; } const permissionAsBN = BigInt(permission); result |= BigInt(permissionAsBN); }); return ethers.toBeHex(result, 32); } function decodePermissions(permissions, decodedPermissionsType) { if (permissions === ethers.ZeroHash || permissions === "") { throw new Error("There are no permissions to decode"); } if (!ethers.isHexString(permissions)) { throw new Error(`Permissions is not hex. permissions: '${permissions}'`); } decodedPermissionsType = decodedPermissionsType ? decodedPermissionsType : "LSP6PermissionName"; const zeroStrippedPermissions = ethers.stripZerosLeft(permissions); const bigIntPermissions = BigInt(zeroStrippedPermissions); if (decodedPermissionsType === "boolean") { const decodedPermissions = []; for (let index = 0; index < zeroStrippedPermissions.length * 4; index++) { const bigIntPermission = BigInt(1) << BigInt(index) & bigIntPermissions; const booleanPermissions = bigIntPermission !== BigInt(0); decodedPermissions[index] = booleanPermissions; } return decodedPermissions; } else { const decodedPermissionsSet = /* @__PURE__ */ new Set([]); for (let index = 0; index < zeroStrippedPermissions.length * 4; index++) { const bigIntPermission = BigInt(1) << BigInt(index) & bigIntPermissions; if (decodedPermissionsType === "BytesLike") { const bytesLikePermissions = ethers.toBeHex(bigIntPermission, 32); if (bytesLikePermissions !== ethers.ZeroHash) { decodedPermissionsSet.add(bytesLikePermissions); } } else if (decodedPermissionsType === "bigint") { if (bigIntPermission !== BigInt(0)) { decodedPermissionsSet.add(bigIntPermission); } } else if (decodedPermissionsType === "LSP6PermissionName") { const bytesLikePermissions = ethers.toBeHex(bigIntPermission, 32); if (bytesLikePermissions !== ethers.ZeroHash) { const permissionName = Object.getOwnPropertyNames(lspSmartContracts.PERMISSIONS).filter( (permission) => lspSmartContracts.PERMISSIONS[permission] === bytesLikePermissions )[0]; if (permissionName) { decodedPermissionsSet.add(permissionName); } else { throw new Error( `LSP6 permission does not exist. Permission: ${bytesLikePermissions}` ); } } } } return decodedPermissionsSet; } } async function addIssuedAssets(issuer, newIssuedAssets, signer) { if (newIssuedAssets.length === 0) { throw new Error("`newIssuedAssets` length is 0."); } const issuerContract = signer ? await getErc725yContract(issuer, signer) : await getErc725yContract(issuer); const issuedAssetsLengthHex = await issuerContract.getData( lspSmartContracts.ERC725YDataKeys.LSP12["LSP12IssuedAssets[]"].length ); let issuedAssetsLength; if (issuedAssetsLengthHex === "" || issuedAssetsLengthHex === "0x") { issuedAssetsLength = 0; } else if (!isValidArrayLengthValue(issuedAssetsLengthHex)) { issuedAssetsLength = 0; } else { issuedAssetsLength = ethers.toNumber(issuedAssetsLengthHex); } const dataKeys = [ lspSmartContracts.ERC725YDataKeys.LSP12["LSP12IssuedAssets[]"].length, ...newIssuedAssets.flatMap((newIssuedAsset, index) => [ generateArrayElementKeyAtIndex( lspSmartContracts.ERC725YDataKeys.LSP12["LSP12IssuedAssets[]"].length, issuedAssetsLength + index ), ERC725__default.encodeKeyName("LSP12IssuedAssetsMap:
", [ newIssuedAsset.address.toString() ]) ]) ]; const dataValues = [ ethers.toBeHex(issuedAssetsLength + newIssuedAssets.length, 16), ...newIssuedAssets.flatMap((newIssuedAsset, index) => [ newIssuedAsset.address.toString(), ethers.concat([newIssuedAsset.interfaceId, ethers.toBeHex(index, 16)]) ]) ]; const tx = await issuerContract.setDataBatch(dataKeys, dataValues); await tx.wait(1); } async function authenticateIssuedAssets(issuer, provider) { let issuedAssets; let issuerAddress; if (ethers.isAddress(issuer)) { issuedAssets = await getIssuedAssets(issuer, provider); issuerAddress = issuer; } else if (ethers.isAddressable(issuer)) { issuedAssets = provider ? await getIssuedAssets(issuer, provider) : await getIssuedAssets(issuer); issuerAddress = await issuer.getAddress(); } else { throw new Error( `The parameter \`issuerAddress\` is not a valid address nor a valid contract instance of \`ERC725Y\`. Value: '${issuer}'` ); } const issuerAssets = { unauthenticatedAssets: [], authenticatedAssets: [] }; if (issuedAssets.length === 0) { return issuerAssets; } for (const issuedAsset of issuedAssets) { if (["0x", "0xffffffff"].includes(issuedAsset.interfaceId.toString())) { issuerAssets.unauthenticatedAssets.push(issuedAsset); continue; } let fetchedCreators; if (ethers.isAddress(issuer)) { fetchedCreators = await getDigitalAssetCreators( issuedAsset.address.toString(), provider ); } else if (ethers.isAddressable(issuer)) { fetchedCreators = provider ? await getDigitalAssetCreators(issuedAsset.address.toString(), provider) : await getDigitalAssetCreators( issuedAsset.address.toString(), issuer.runner ); } const filteredCreators = fetchedCreators.filter( (creator) => ethers.getAddress(creator.address.toString()) === ethers.getAddress(issuerAddress) ); if (filteredCreators.length === 0) { issuerAssets.unauthenticatedAssets.push(issuedAsset); } else { issuerAssets.authenticatedAssets.push(issuedAsset); } } return issuerAssets; } async function removeIssuedAssets(issuer, signer) { const issuerContract = signer ? await getErc725yContract(issuer, signer) : await getErc725yContract(issuer); const issuedAssetsLengthHex = await issuerContract.getData( lspSmartContracts.ERC725YDataKeys.LSP12["LSP12IssuedAssets[]"].length ); if (issuedAssetsLengthHex === "" || issuedAssetsLengthHex === "0x") { throw new Error("There are no LSP12 Issued Assets ."); } if (!isValidArrayLengthValue(issuedAssetsLengthHex)) { throw new Error( `The data value for \`LSP12IssuedAssets[]\` data key is not a valid LSP2 array length value. Value: ${issuedAssetsLengthHex}` ); } const issuedAssetsLength = ethers.toNumber(issuedAssetsLengthHex); const dataKeys = [lspSmartContracts.ERC725YDataKeys.LSP12["LSP12IssuedAssets[]"].length]; const dataValues = [ethers.toBeHex(0, 16)]; for (let index = 0; index < issuedAssetsLength; index++) { const arrayIndexDataKey = generateArrayElementKeyAtIndex( lspSmartContracts.ERC725YDataKeys.LSP12["LSP12IssuedAssets[]"].length, index ); const arrayIndexDataValue = await issuerContract.getData(arrayIndexDataKey); if (!ethers.isAddress(arrayIndexDataValue)) { dataKeys.push(arrayIndexDataKey); dataValues.push("0x"); continue; } dataKeys.push( arrayIndexDataKey, ERC725__default.encodeKeyName("LSP12IssuedAssetsMap:
", [arrayIndexDataValue]) ); dataValues.push("0x", "0x"); } const tx = await issuerContract.setDataBatch(dataKeys, dataValues); await tx.wait(1); } const deployUniversalProfile = async (signer, mainController, additionalDataKeys, additionalDataValues, additionalControllers, salt) => { const LSP23LinkedContractsFactory = LSP23LinkedContractsFactory__factory.connect( LSP23LinkedContractsFactoryAddress, signer ); const universalProfileInit = UniversalProfileInit__factory.connect( UniversalProfileInitAddress, signer ); const keyManagerInit = LSP6KeyManagerInit__factory.connect(LSP6KeyManagerInitAddress); const deploymentSalt = salt ? salt : ethers.randomBytes(32); const primaryContractDeploymentInit = { salt: deploymentSalt, fundingAmount: 0, implementationContract: UniversalProfileInitAddress, initializationCalldata: universalProfileInit.interface.encodeFunctionData("initialize", [ upPostDeploymentModuleAddress ]) }; const secondaryContractDeploymentInit = { fundingAmount: 0, implementationContract: LSP6KeyManagerInitAddress, addPrimaryContractAddress: true, initializationCalldata: keyManagerInit.interface.getFunction("initialize").selector, extraInitializationParams: "0x" }; const encodedSetData = new ethers.AbiCoder().encode( ["bytes32[]", "bytes[]"], [ [ lspSmartContracts.ERC725YDataKeys.LSP6["AddressPermissions[]"].length, lspSmartContracts.ERC725YDataKeys.LSP6["AddressPermissions[]"].index + "00".repeat(16), lspSmartContracts.ERC725YDataKeys.LSP6["AddressPermissions:Permissions"] + mainController.toString().substring(2), ...additionalDataKeys ? additionalDataKeys : [], ...additionalControllers ? additionalControllers.flatMap((controller, index) => [ lspSmartContracts.ERC725YDataKeys.LSP6["AddressPermissions[]"].index + ethers.toBeHex(index + 1, 16).substring(2), lspSmartContracts.ERC725YDataKeys.LSP6["AddressPermissions:Permissions"] + controller.address.toString().substring(2) ]) : [] ], [ ethers.toBeHex(1 + (additionalControllers ? additionalControllers.length : 0), 16), mainController, lspSmartContracts.ALL_PERMISSIONS, ...additionalDataValues ? additionalDataValues : [], ...additionalControllers ? additionalControllers.flatMap((controller) => [ controller.address, controller.permissions ]) : [] ] ] ); const [universalProfileAddress, keyManagerAddress] = await LSP23LinkedContractsFactory.connect( signer ).computeERC1167Addresses( primaryContractDeploymentInit, secondaryContractDeploymentInit, upPostDeploymentModuleAddress, encodedSetData ); const deploymentTransaction = await LSP23LinkedContractsFactory.connect( signer ).deployERC1167Proxies( primaryContractDeploymentInit, secondaryContractDeploymentInit, upPostDeploymentModuleAddress, encodedSetData ); await deploymentTransaction.wait(1); return { universalProfileAddress, keyManagerAddress }; }; exports.LSP1UniversalReceiverDelegateUPAddress = LSP1UniversalReceiverDelegateUPAddress; exports.LSP23LinkedContractsFactoryAddress = LSP23LinkedContractsFactoryAddress; exports.LSP6KeyManagerInitAddress = LSP6KeyManagerInitAddress; exports.LSP7MintableInitAddress = LSP7MintableInitAddress; exports.LSP8MintableInitAddress = LSP8MintableInitAddress; exports.UniversalProfileInitAddress = UniversalProfileInitAddress; exports.addDigitalAssetCreators = addDigitalAssetCreators; exports.addIssuedAssets = addIssuedAssets; exports.authenticateDigitalAssetCreators = authenticateDigitalAssetCreators; exports.authenticateIssuedAssets = authenticateIssuedAssets; exports.createValidityTimestamp = createValidityTimestamp; exports.decodeAllowedCalls = decodeAllowedCalls; exports.decodeAllowedERC725YDataKeys = decodeAllowedERC725YDataKeys; exports.decodeAssetUrl = decodeAssetUrl; exports.decodeJsonUrl = decodeJsonUrl; exports.decodePermissions = decodePermissions; exports.decodeVerifiableURI = decodeVerifiableURI; exports.defaultIpfsGateway = defaultIpfsGateway; exports.defaultLSP3ProfileMetadata = defaultLSP3ProfileMetadata; exports.deployUniversalProfile = deployUniversalProfile; exports.encodeAllowedCalls = encodeAllowedCalls; exports.encodeAllowedERC725YDataKeys = encodeAllowedERC725YDataKeys; exports.encodeAssetUrl = encodeAssetUrl; exports.encodeJsonUrl = encodeJsonUrl; exports.encodePermissions = encodePermissions; exports.encodeVerifiableURI = encodeVerifiableURI; exports.erc725Typechain = index$4; exports.generateArrayElementKeyAtIndex = generateArrayElementKeyAtIndex; exports.generateArrayKey = generateArrayKey; exports.generateLSP4JSON = generateLSP4JSON; exports.generateLSP4JSONVerifiableURI = generateLSP4JSONVerifiableURI; exports.generateLSP4JSONWithHash = generateLSP4JSONWithHash; exports.generateMappingKey = generateMappingKey; exports.generateMappingWithGroupingKey = generateMappingWithGroupingKey; exports.generateReceivedAssetKeys = generateReceivedAssetKeys; exports.generateSentAssetKeys = generateSentAssetKeys; exports.generateSingletonKey = generateSingletonKey; exports.getAssetMetadata = getAssetMetadata; exports.getDigitalAssetCreators = getDigitalAssetCreators; exports.getErc725yContract = getErc725yContract; exports.getIssuedAssets = getIssuedAssets; exports.getProfileMetadata = getProfileMetadata; exports.isAssetMetadata = isAssetMetadata; exports.isCompactBytesArray = isCompactBytesArray; exports.isProfileMetadata = isProfileMetadata; exports.isValidArrayLengthValue = isValidArrayLengthValue; exports.luksoTypechain = index; exports.openzeppelinTypechain = index$2; exports.removeDigitalAssetCreators = removeDigitalAssetCreators; exports.removeElementFromArrayAndMap = removeElementFromArrayAndMap; exports.removeIssuedAssets = removeIssuedAssets; exports.removeLastElementFromArrayAndMap = removeLastElementFromArrayAndMap; exports.setProfileMetadata = setProfileMetadata; exports.supportsLSPInterface = supportsLSPInterface; exports.upPostDeploymentModuleAddress = upPostDeploymentModuleAddress; exports.validateIpfsUrl = validateIpfsUrl;