/* Autogenerated file. Do not edit manually. */ /* tslint:disable */ /* eslint-disable */ import { Signer, utils, Contract, ContractFactory, Overrides } from "ethers"; import { Provider, TransactionRequest } from "@ethersproject/providers"; import type { DstChainPaymentV2, DstChainPaymentV2Interface, } from "../DstChainPaymentV2"; const _abi = [ { anonymous: false, inputs: [ { indexed: false, internalType: "uint8", name: "version", type: "uint8", }, ], name: "Initialized", type: "event", }, { anonymous: false, inputs: [ { indexed: false, internalType: "address", name: "to", type: "address", }, { indexed: false, internalType: "uint256", name: "value", type: "uint256", }, ], name: "NativeWithdrawal", 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: false, internalType: "address", name: "provider", type: "address", }, { indexed: false, internalType: "bytes32", name: "account", type: "bytes32", }, { components: [ { internalType: "enum ResourceData.ResourceType", name: "resourceType", type: "uint8", }, { internalType: "uint256[]", name: "values", type: "uint256[]", }, ], indexed: false, internalType: "struct ResourceData.ValuePayload[]", name: "payloads", type: "tuple[]", }, { indexed: false, internalType: "uint256", name: "value", type: "uint256", }, { indexed: false, internalType: "uint256", name: "nonce", type: "uint256", }, { indexed: false, internalType: "uint256", name: "amount", type: "uint256", }, ], name: "Paid", type: "event", }, { 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: "PauserAdded", type: "event", }, { anonymous: false, inputs: [ { indexed: false, internalType: "address", name: "account", type: "address", }, ], name: "PauserRemoved", type: "event", }, { anonymous: false, inputs: [ { indexed: false, internalType: "contract IRouter", name: "router", type: "address", }, ], name: "RouterUpdated", type: "event", }, { anonymous: false, inputs: [ { indexed: false, internalType: "address", name: "account", type: "address", }, ], name: "Unpaused", type: "event", }, { anonymous: false, inputs: [ { indexed: false, internalType: "contract IERC20Upgradeable", name: "token", type: "address", }, { indexed: false, internalType: "address", name: "to", type: "address", }, { indexed: false, internalType: "uint256", name: "value", type: "uint256", }, ], name: "Withdrawal", type: "event", }, { inputs: [ { internalType: "address", name: "account", type: "address", }, ], name: "addPauser", outputs: [], stateMutability: "nonpayable", type: "function", }, { inputs: [ { internalType: "address", name: "provider", type: "address", }, ], name: "balanceOf", outputs: [ { internalType: "uint256", name: "", type: "uint256", }, ], stateMutability: "view", type: "function", }, { inputs: [ { internalType: "bytes", name: "message", type: "bytes", }, ], name: "celerExec", outputs: [], stateMutability: "nonpayable", type: "function", }, { inputs: [ { internalType: "bytes", name: "message", type: "bytes", }, ], name: "decodeMessage", outputs: [ { internalType: "address", name: "provider", type: "address", }, { internalType: "bytes32", name: "account", type: "bytes32", }, { components: [ { internalType: "enum ResourceData.ResourceType", name: "resourceType", type: "uint8", }, { internalType: "uint256[]", name: "values", type: "uint256[]", }, ], internalType: "struct ResourceData.ValuePayload[]", name: "payloads", type: "tuple[]", }, { internalType: "uint256", name: "nonce", type: "uint256", }, { internalType: "uint256", name: "amount", type: "uint256", }, { internalType: "bytes", name: "signature", type: "bytes", }, ], stateMutability: "pure", type: "function", }, { inputs: [ { internalType: "address", name: "provider", type: "address", }, { internalType: "bytes32", name: "account", type: "bytes32", }, ], name: "fee", outputs: [ { internalType: "uint256", name: "", type: "uint256", }, ], stateMutability: "view", type: "function", }, { inputs: [ { internalType: "address", name: "provider", type: "address", }, { internalType: "enum ResourceData.ResourceType", name: "resourceType", type: "uint8", }, { internalType: "uint256", name: "value", type: "uint256", }, ], name: "getAmountOf", outputs: [ { internalType: "uint256", name: "", type: "uint256", }, ], stateMutability: "view", type: "function", }, { inputs: [ { internalType: "address", name: "provider", type: "address", }, { internalType: "enum ResourceData.ResourceType", name: "resourceType", type: "uint8", }, { internalType: "uint256", name: "amount", type: "uint256", }, ], name: "getValueOf", outputs: [ { internalType: "uint256", name: "", type: "uint256", }, ], stateMutability: "view", type: "function", }, { inputs: [ { internalType: "address", name: "provider", type: "address", }, { internalType: "uint256", name: "nonce", type: "uint256", }, { internalType: "uint256", name: "amount", type: "uint256", }, ], name: "hashTypedDataV4ForVoucher", outputs: [ { internalType: "bytes32", name: "", type: "bytes32", }, ], stateMutability: "view", type: "function", }, { inputs: [ { internalType: "address", name: "provider", type: "address", }, { internalType: "uint256", name: "nonce", type: "uint256", }, { internalType: "uint256", name: "amount", type: "uint256", }, ], name: "hashVoucherTypes", outputs: [ { internalType: "bytes32", name: "", type: "bytes32", }, ], stateMutability: "view", type: "function", }, { inputs: [ { internalType: "string", name: "name", type: "string", }, { internalType: "string", name: "version", type: "string", }, { internalType: "string", name: "types", type: "string", }, ], name: "initializeEIP712", outputs: [], stateMutability: "nonpayable", type: "function", }, { inputs: [ { internalType: "address", name: "provider", type: "address", }, { internalType: "bytes32", name: "account", type: "bytes32", }, { internalType: "uint256", name: "storageFee", type: "uint256", }, { internalType: "uint256", name: "expirationFee", type: "uint256", }, ], name: "ipfsAllocations", outputs: [ { internalType: "uint256", name: "amount", type: "uint256", }, { internalType: "uint256", name: "expiration", type: "uint256", }, ], stateMutability: "view", type: "function", }, { inputs: [ { internalType: "address", name: "provider", type: "address", }, { internalType: "bytes32", name: "account", type: "bytes32", }, { internalType: "uint256", name: "amount", type: "uint256", }, { internalType: "uint256", name: "expiration", type: "uint256", }, ], name: "ipfsAlloctionsFee", outputs: [ { internalType: "uint256", name: "storageFee", type: "uint256", }, { internalType: "uint256", name: "expirationFee", type: "uint256", }, ], stateMutability: "view", type: "function", }, { inputs: [ { internalType: "address", name: "account", type: "address", }, ], name: "isPauser", 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: "contract IERC20Upgradeable", name: "token", type: "address", }, { internalType: "address", name: "to", type: "address", }, { internalType: "uint256", name: "value", type: "uint256", }, ], name: "ownerWithdrawERC20", outputs: [], stateMutability: "nonpayable", type: "function", }, { inputs: [ { internalType: "address payable", name: "to", type: "address", }, { internalType: "uint256", name: "value", type: "uint256", }, ], name: "ownerWithdrawNative", 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: "address", name: "", type: "address", }, ], name: "pausers", outputs: [ { internalType: "bool", name: "", type: "bool", }, ], stateMutability: "view", type: "function", }, { inputs: [ { internalType: "address", name: "provider", type: "address", }, { internalType: "bytes32", name: "account", type: "bytes32", }, { components: [ { internalType: "enum ResourceData.ResourceType", name: "resourceType", type: "uint8", }, { internalType: "uint256[]", name: "values", type: "uint256[]", }, ], internalType: "struct ResourceData.ValuePayload[]", name: "payloads", type: "tuple[]", }, { internalType: "uint256", name: "nonce", type: "uint256", }, { internalType: "uint256", name: "amount", type: "uint256", }, { internalType: "bytes", name: "signature", type: "bytes", }, ], name: "pay", outputs: [ { internalType: "uint256", name: "value", type: "uint256", }, ], stateMutability: "nonpayable", type: "function", }, { inputs: [ { internalType: "address", name: "provider", type: "address", }, { internalType: "enum ResourceData.ResourceType", name: "resourceType", type: "uint8", }, ], name: "priceOf", outputs: [ { internalType: "uint256", name: "", type: "uint256", }, ], stateMutability: "view", type: "function", }, { inputs: [ { internalType: "address", name: "provider", type: "address", }, ], name: "providerBalance", outputs: [ { internalType: "uint256", name: "", type: "uint256", }, ], stateMutability: "view", type: "function", }, { inputs: [ { internalType: "address", name: "account", type: "address", }, ], name: "removePauser", outputs: [], stateMutability: "nonpayable", type: "function", }, { inputs: [], name: "renounceOwnership", outputs: [], stateMutability: "nonpayable", type: "function", }, { inputs: [], name: "renouncePauser", outputs: [], stateMutability: "nonpayable", type: "function", }, { inputs: [], name: "router", outputs: [ { internalType: "contract IRouter", name: "", type: "address", }, ], stateMutability: "view", type: "function", }, { inputs: [ { internalType: "address", name: "newOwner", type: "address", }, ], name: "transferOwnership", outputs: [], stateMutability: "nonpayable", type: "function", }, { inputs: [], name: "unpause", outputs: [], stateMutability: "nonpayable", type: "function", }, { inputs: [], name: "voucherTypedHash", outputs: [ { internalType: "bytes32", name: "", type: "bytes32", }, ], stateMutability: "view", type: "function", }, { inputs: [ { internalType: "address", name: "", type: "address", }, { internalType: "uint256", name: "", type: "uint256", }, ], name: "vouchers", outputs: [ { internalType: "uint256", name: "", type: "uint256", }, ], stateMutability: "view", type: "function", }, ]; const _bytecode = "0x608060405234801561001057600080fd5b506140a1806100206000396000f3fe608060405234801561001057600080fd5b50600436106101da5760003560e01c8063827fbd1d11610104578063a322c81d116100a2578063f2fde38b11610071578063f2fde38b14610424578063f7ec35cb14610437578063f887ea401461044a578063f8eb66241461046a57600080fd5b8063a322c81d1461039f578063b76bfac2146103d5578063ce841dd2146103fe578063e1e382d91461041157600080fd5b80638da5cb5b116100de5780638da5cb5b1461033f57806393563a95146103585780639412cbe51461036b57806394e48f891461037e57600080fd5b8063827fbd1d1461031a57806382dc1ec4146103245780638456cb591461033757600080fd5b8063634d45b21161017c5780636ef8d66d1161014b5780636ef8d66d146102d457806370a08231146102dc578063715018a6146102ef57806380f51c12146102f757600080fd5b8063634d45b21461027657806365d6b40c1461029b578063699256f4146102ae5780636b2c0f55146102c157600080fd5b806346fbf68e116101b857806346fbf68e146102255780635c975abb146102455780635e1a544c146102505780636267834e1461026357600080fd5b806316ed488d146101df57806335da9b23146102085780633f4ba83a1461021b575b600080fd5b6101f26101ed366004612695565b610496565b6040516101ff91906126ed565b60405180910390f35b6101f2610216366004612713565b6104d2565b6102236105e7565b005b610238610233366004612748565b61061f565b6040516101ff9190612771565b60975460ff16610238565b6101f261025e36600461277f565b61063d565b61022361027136600461280d565b610751565b610289610284366004612948565b61095a565b6040516101ff96959493929190612b28565b6101f26102a9366004612713565b61098c565b6102236102bc366004612b8f565b610a48565b6102236102cf366004612748565b610af6565b610223610b2c565b6101f26102ea366004612748565b610b35565b610223610c65565b610238610305366004612748565b60c96020526000908152604090205460ff1681565b6101f26101015481565b610223610332366004612748565b610c99565b610223610ccc565b6065546001600160a01b03166040516101ff9190612bc2565b610223610366366004612bef565b610cf9565b610223610379366004612c24565b610d6a565b61039161038c366004612cb7565b610e3e565b6040516101ff929190612d1b565b6101f26103ad366004612b8f565b6001600160a01b0391909116600090815260cc60209081526040808320938352929052205490565b6101f26103e3366004612748565b6001600160a01b0316600090815260cb602052604090205490565b61039161040c366004612cb7565b6110fe565b6101f261041f366004612ecd565b611304565b610223610432366004612748565b61144c565b6101f2610445366004612695565b6114a5565b60ca5461045d906001600160a01b031681565b6040516101ff9190612f9f565b6101f2610478366004612b8f565b61010260209081526000928352604080842090915290825290205481565b6000610101548484846040516020016104b29493929190612fad565b6040516020818303038152906040528051906020012090505b9392505050565b60008060ca60009054906101000a90046001600160a01b03166001600160a01b03166337187fc36040518163ffffffff1660e01b815260040160206040518083038186803b15801561052357600080fd5b505afa158015610537573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061055b9190612fed565b6040516335da9b2360e01b81529091506001600160a01b038216906335da9b239061058e9088908890889060040161300e565b60206040518083038186803b1580156105a657600080fd5b505afa1580156105ba573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105de9190613041565b95945050505050565b6105f03361061f565b6106155760405162461bcd60e51b815260040161060c90613097565b60405180910390fd5b61061d6114c2565b565b6001600160a01b0316600090815260c9602052604090205460ff1690565b60008060ca60009054906101000a90046001600160a01b03166001600160a01b03166337187fc36040518163ffffffff1660e01b815260040160206040518083038186803b15801561068e57600080fd5b505afa1580156106a2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106c69190612fed565b604051631786951360e21b81529091506001600160a01b03821690635e1a544c906106f790879087906004016130a7565b60206040518083038186803b15801561070f57600080fd5b505afa158015610723573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107479190613041565b9150505b92915050565b60ca54604080516303bf7e6b60e21b815290516000926001600160a01b031691630efdf9ac916004808301926020929190829003018186803b15801561079657600080fd5b505afa1580156107aa573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107ce91906130cd565b9050336001600160a01b038216146107f85760405162461bcd60e51b815260040161060c9061313b565b60975460ff161561081b5760405162461bcd60e51b815260040161060c90613172565b60008060008060008061086389898080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061095a92505050565b955095509550955095509550600060ca60009054906101000a90046001600160a01b03166001600160a01b031663c24126766040518163ffffffff1660e01b815260040160206040518083038186803b1580156108bf57600080fd5b505afa1580156108d3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108f79190612fed565b9050600061090a82898989898989611528565b90507fd69233c4d4c07911a44762fb49e793100eb94db44cf846ddcec7f6210e9c143a88888884898960405161094596959493929190613182565b60405180910390a15050505050505050505050565b60008060606000806060868060200190518101906109789190613399565b949c939b5091995097509550909350915050565b60008060ca60009054906101000a90046001600160a01b03166001600160a01b03166337187fc36040518163ffffffff1660e01b815260040160206040518083038186803b1580156109dd57600080fd5b505afa1580156109f1573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a159190612fed565b604051631975ad0360e21b81529091506001600160a01b038216906365d6b40c9061058e9088908890889060040161300e565b6065546001600160a01b03163314610a725760405162461bcd60e51b815260040161060c9061347c565b6040516000906001600160a01b0384169083156108fc0290849084818181858888f19350505050905080610ab85760405162461bcd60e51b815260040161060c906134d8565b7f2c876ecb97b3c6854f2488d373403f903eacb800e51c159a5c0c7a9c857e48278383604051610ae99291906134e8565b60405180910390a1505050565b6065546001600160a01b03163314610b205760405162461bcd60e51b815260040161060c9061347c565b610b29816118b7565b50565b61061d336118b7565b60ca54604080516314b47ed960e31b815290516000926001600160a01b03169163a5a3f6c8916004808301926020929190829003018186803b158015610b7a57600080fd5b505afa158015610b8e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610bb29190612fed565b6001600160a01b0316636b074a07836040518263ffffffff1660e01b8152600401610bdd9190612bc2565b60206040518083038186803b158015610bf557600080fd5b505afa158015610c09573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c2d9190613509565b610c495760405162461bcd60e51b815260040161060c9061356c565b506001600160a01b0316600090815260cb602052604090205490565b6065546001600160a01b03163314610c8f5760405162461bcd60e51b815260040161060c9061347c565b61061d6000611937565b6065546001600160a01b03163314610cc35760405162461bcd60e51b815260040161060c9061347c565b610b2981611989565b610cd53361061f565b610cf15760405162461bcd60e51b815260040161060c90613097565b61061d611a02565b6065546001600160a01b03163314610d235760405162461bcd60e51b815260040161060c9061347c565b610d376001600160a01b0384168383611a5a565b7f2717ead6b9200dd235aad468c9809ea400fe33ac69b5bfaa6d3e90fc922b6398838383604051610ae99392919061357c565b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103546001600160a01b03163314610db35760405162461bcd60e51b815260040161060c906135d9565b600a6000610dc082611ab5565b90508015610dd8576000805461ff0019166101001790555b610de28585611b42565b82516020840120610101558015610e37576000805461ff00191690556040517f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb384740249890610e2e9084906135f2565b60405180910390a15b5050505050565b600080600060ca60009054906101000a90046001600160a01b03166001600160a01b031663740e80616040518163ffffffff1660e01b815260040160206040518083038186803b158015610e9157600080fd5b505afa158015610ea5573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ec99190612fed565b60405162f304db60e01b8152909150879087906001600160a01b0384169062f304db90610efc9085908590600401613600565b60206040518083038186803b158015610f1457600080fd5b505afa158015610f28573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f4c9190613509565b15610f9c57600087118015610f615750600086115b610f7d5760405162461bcd60e51b815260040161060c9061365e565b610f89826004896104d2565b9450610f958587611b77565b93506110f2565b6000871180610fab5750600086115b610fc75760405162461bcd60e51b815260040161060c906136a2565b61105561104e836004866001600160a01b0316633a01873287876040518363ffffffff1660e01b8152600401610ffe929190613600565b60206040518083038186803b15801561101657600080fd5b505afa15801561102a573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102169190613041565b8890611b77565b94506110ef6110e88360046102168b886001600160a01b0316634d30b6be89896040518363ffffffff1660e01b8152600401611092929190613600565b60206040518083038186803b1580156110aa57600080fd5b505afa1580156110be573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110e29190613041565b90611b83565b8790611b77565b93505b50505094509492505050565b600080600060ca60009054906101000a90046001600160a01b03166001600160a01b031663740e80616040518163ffffffff1660e01b815260040160206040518083038186803b15801561115157600080fd5b505afa158015611165573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111899190612fed565b60405162f304db60e01b8152909150879087906001600160a01b0384169062f304db906111bc9085908590600401613600565b60206040518083038186803b1580156111d457600080fd5b505afa1580156111e8573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061120c9190613509565b1561125e576000871180156112215750600086115b61123d5760405162461bcd60e51b815260040161060c9061365e565b61125261124b83600461063d565b8890611b8f565b9450610f958688611b8f565b600087118061126d5750600086115b6112895760405162461bcd60e51b815260040161060c906136a2565b6112c061124b836004866001600160a01b0316633a01873287876040518363ffffffff1660e01b8152600401610ffe929190613600565b94506110ef6112fd83600461021689886001600160a01b0316634d30b6be89896040518363ffffffff1660e01b8152600401611092929190613600565b8790611b8f565b600061131260975460ff1690565b1561132f5760405162461bcd60e51b815260040161060c90613172565b600260015414156113525760405162461bcd60e51b815260040161060c906136e6565b600260015560ca5460408051636120933b60e11b815290516000926001600160a01b03169163c2412676916004808301926020929190829003018186803b15801561139c57600080fd5b505afa1580156113b0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113d49190612fed565b90506113e581898989898989611528565b91506113fc6001600160a01b038216333085611b9b565b7fd69233c4d4c07911a44762fb49e793100eb94db44cf846ddcec7f6210e9c143a88888885898960405161143596959493929190613182565b60405180910390a150600180559695505050505050565b6065546001600160a01b031633146114765760405162461bcd60e51b815260040161060c9061347c565b6001600160a01b03811661149c5760405162461bcd60e51b815260040161060c90613739565b610b2981611937565b60006114ba6114b5858585610496565b611bc2565b949350505050565b60975460ff166114e45760405162461bcd60e51b815260040161060c90613774565b6097805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa335b60405161151e9190612bc2565b60405180910390a1565b60ca54604080516350e420e560e11b815290516000926001600160a01b03169163a1c841ca916004808301926020929190829003018186803b15801561156d57600080fd5b505afa158015611581573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906115a59190612fed565b6001600160a01b0316632d52976488886040518363ffffffff1660e01b81526004016115d2929190613600565b60206040518083038186803b1580156115ea57600080fd5b505afa1580156115fe573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906116229190613509565b61163e5760405162461bcd60e51b815260040161060c906137c5565b611649878787611bd5565b90508281101561166b5760405162461bcd60e51b815260040161060c9061382f565b821561181a576001600160a01b038716600090815261010260209081526040808320878452909152902054156116b35760405162461bcd60e51b815260040161060c90613873565b60006116c08886866114a5565b905060ca60009054906101000a90046001600160a01b03166001600160a01b031663a5a3f6c86040518163ffffffff1660e01b815260040160206040518083038186803b15801561171057600080fd5b505afa158015611724573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117489190612fed565b6001600160a01b031663238a4d1e8983866040518463ffffffff1660e01b815260040161177793929190613883565b602060405180830381600087803b15801561179157600080fd5b505af11580156117a5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117c99190613509565b6117e55760405162461bcd60e51b815260040161060c906138ef565b6117ef8483613915565b6001600160a01b03891660009081526101026020908152604080832089845290915290208590559150505b61182488826122f5565b6001600160a01b038816600090815260cb602052604090205490915061184b90829061392c565b6001600160a01b038816600090815260cb602090815260408083209390935560cc81528282208983529052205461188390829061392c565b6001600160a01b03909716600090815260cc6020908152604080832098835297905295909520959095555091949350505050565b6118c08161061f565b6118dc5760405162461bcd60e51b815260040161060c90613978565b6001600160a01b038116600090815260c9602052604090819020805460ff19169055517fcd265ebaf09df2871cc7bd4133404a235ba12eff2041bb89d9c714a2621c7c7e9061192c908390612bc2565b60405180910390a150565b606580546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b6119928161061f565b156119af5760405162461bcd60e51b815260040161060c906139c6565b6001600160a01b038116600090815260c9602052604090819020805460ff19166001179055517f6719d08c1888103bea251a4ed56406bd0c3e69723c8a1686e017e7bbe159b6f89061192c908390612bc2565b60975460ff1615611a255760405162461bcd60e51b815260040161060c90613172565b6097805460ff191660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a2586115113390565b611ab08363a9059cbb60e01b8484604051602401611a79929190613600565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152612353565b505050565b60008054610100900460ff1615611afc578160ff166001148015611ad85750303b155b611af45760405162461bcd60e51b815260040161060c90613a21565b506000919050565b60005460ff808416911610611b235760405162461bcd60e51b815260040161060c90613a21565b506000805460ff191660ff92909216919091179055600190565b919050565b600054610100900460ff16611b695760405162461bcd60e51b815260040161060c90613a79565b611b7382826123e2565b5050565b60006104cb8284613a89565b60006104cb828461392c565b60006104cb8284613abe565b611bbc846323b872dd60e01b858585604051602401611a7993929190613ad2565b50505050565b600061074b611bcf612423565b8361245f565b600080825111611bf75760405162461bcd60e51b815260040161060c90613b1e565b60ca54604080516337187fc360e01b815290516000926001600160a01b0316916337187fc3916004808301926020929190829003018186803b158015611c3c57600080fd5b505afa158015611c50573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611c749190612fed565b905060005b83518110156122ec576000848281518110611c9657611c96613b2e565b6020026020010151905060016004811115611cb357611cb361298b565b81516004811115611cc657611cc661298b565b1415611e8457806020015151600114611cf15760405162461bcd60e51b815260040161060c90613b85565b6000836001600160a01b03166365d6b40c8984600001518560200151600081518110611d1f57611d1f613b2e565b60200260200101516040518463ffffffff1660e01b8152600401611d459392919061300e565b60206040518083038186803b158015611d5d57600080fd5b505afa158015611d71573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611d959190613041565b905060ca60009054906101000a90046001600160a01b03166001600160a01b03166322b31aba6040518163ffffffff1660e01b815260040160206040518083038186803b158015611de557600080fd5b505afa158015611df9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611e1d9190612fed565b6001600160a01b0316630de482878989846040518463ffffffff1660e01b8152600401611e4c93929190613b95565b600060405180830381600087803b158015611e6657600080fd5b505af1158015611e7a573d6000803e3d6000fd5b5050505050612283565b600381516004811115611e9957611e9961298b565b1415611fb857806020015151600114611ec45760405162461bcd60e51b815260040161060c90613bee565b6000836001600160a01b03166365d6b40c8984600001518560200151600081518110611ef257611ef2613b2e565b60200260200101516040518463ffffffff1660e01b8152600401611f189392919061300e565b60206040518083038186803b158015611f3057600080fd5b505afa158015611f44573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611f689190613041565b905060ca60009054906101000a90046001600160a01b03166001600160a01b031663a2d2f2db6040518163ffffffff1660e01b815260040160206040518083038186803b158015611de557600080fd5b600281516004811115611fcd57611fcd61298b565b14156120ec57806020015151600114611ff85760405162461bcd60e51b815260040161060c90613c3c565b6000836001600160a01b03166365d6b40c898460000151856020015160008151811061202657612026613b2e565b60200260200101516040518463ffffffff1660e01b815260040161204c9392919061300e565b60206040518083038186803b15801561206457600080fd5b505afa158015612078573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061209c9190613041565b905060ca60009054906101000a90046001600160a01b03166001600160a01b031663f931ca566040518163ffffffff1660e01b815260040160206040518083038186803b158015611de557600080fd5b6004815160048111156121015761210161298b565b141561226b5780602001515160021461212c5760405162461bcd60e51b815260040161060c90613c8c565b6000806121778989856020015160008151811061214b5761214b613b2e565b6020026020010151866020015160018151811061216a5761216a613b2e565b60200260200101516110fe565b9150915060ca60009054906101000a90046001600160a01b03166001600160a01b031663740e80616040518163ffffffff1660e01b815260040160206040518083038186803b1580156121c957600080fd5b505afa1580156121dd573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906122019190612fed565b6001600160a01b031663a5a2d6178a8a85856040518563ffffffff1660e01b81526004016122329493929190613c9c565b600060405180830381600087803b15801561224c57600080fd5b505af1158015612260573d6000803e3d6000fd5b505050505050612283565b60405162461bcd60e51b815260040161060c90613cfa565b60005b8160200151518110156122d7576122c3826020015182815181106122ac576122ac613b2e565b602002602001015186611b8390919063ffffffff16565b9450806122cf81613d0a565b915050612286565b505080806122e490613d0a565b915050611c79565b50509392505050565b60008061230184612492565b905060128082116123345761232b6123198284612523565b61232490600a613e33565b8590611b8f565b9250505061074b565b6105de6123418383612523565b61234c90600a613e33565b8590611b77565b60006123a8826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b031661252f9092919063ffffffff16565b805190915015611ab057808060200190518101906123c69190613509565b611ab05760405162461bcd60e51b815260040161060c90613e89565b600054610100900460ff166124095760405162461bcd60e51b815260040161060c90613a79565b81516020928301208151919092012060cd9190915560ce55565b600061245a7f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f61245260cd5490565b60ce5461253e565b905090565b60008282604051602001612474929190613e9f565b60405160208183030381529060405280519060200120905092915050565b6000806000836001600160a01b03166040516124ad90613ed0565b600060405180830381855afa9150503d80600081146124e8576040519150601f19603f3d011682016040523d82523d6000602084013e6124ed565b606091505b50915091508161250f5760405162461bcd60e51b815260040161060c90613f19565b808060200190518101906114ba9190613041565b60006104cb8284613915565b60606114ba8484600085612559565b600083838346306040516020016104b2959493929190613f29565b60608247101561257b5760405162461bcd60e51b815260040161060c90613fb8565b6001600160a01b0385163b6125a25760405162461bcd60e51b815260040161060c90613ffc565b600080866001600160a01b031685876040516125be919061402e565b60006040518083038185875af1925050503d80600081146125fb576040519150601f19603f3d011682016040523d82523d6000602084013e612600565b606091505b509150915061261082828661261b565b979650505050505050565b6060831561262a5750816104cb565b82511561263a5782518084602001fd5b8160405162461bcd60e51b815260040161060c919061403a565b60006001600160a01b03821661074b565b61266e81612654565b8114610b2957600080fd5b803561074b81612665565b8061266e565b803561074b81612684565b6000806000606084860312156126ad576126ad600080fd5b60006126b98686612679565b93505060206126ca8682870161268a565b92505060406126db8682870161268a565b9150509250925092565b805b82525050565b6020810161074b82846126e5565b60058110610b2957600080fd5b803561074b816126fb565b60008060006060848603121561272b5761272b600080fd5b60006127378686612679565b93505060206126ca86828701612708565b60006020828403121561275d5761275d600080fd5b60006107478484612679565b8015156126e7565b6020810161074b8284612769565b6000806040838503121561279557612795600080fd5b60006127a18585612679565b92505060206127b285828601612708565b9150509250929050565b60008083601f8401126127d1576127d1600080fd5b5081356001600160401b038111156127eb576127eb600080fd5b60208301915083600182028301111561280657612806600080fd5b9250929050565b6000806020838503121561282357612823600080fd5b82356001600160401b0381111561283c5761283c600080fd5b612848858286016127bc565b92509250509250929050565b634e487b7160e01b600052604160045260246000fd5b601f19601f83011681018181106001600160401b038211171561288f5761288f612854565b6040525050565b60006128a160405190565b9050611b3d828261286a565b60006001600160401b038211156128c6576128c6612854565b601f19601f83011660200192915050565b82818337506000910152565b60006128f66128f1846128ad565b612896565b90508281526020810184848401111561291157612911600080fd5b61291c8482856128d7565b509392505050565b600082601f83011261293857612938600080fd5b81356107478482602086016128e3565b60006020828403121561295d5761295d600080fd5b81356001600160401b0381111561297657612976600080fd5b61074784828501612924565b6126e781612654565b634e487b7160e01b600052602160045260246000fd5b60058110610b2957610b2961298b565b80611b3d816129a1565b600061074b826129b1565b6126e7816129bb565b60006129db83836126e5565b505060200190565b60006129ed825190565b80845260209384019383018060005b83811015612a21578151612a1088826129cf565b9750602083019250506001016129fc565b509495945050505050565b80516000906040840190612a4085826129c6565b50602083015184820360208601526105de82826129e3565b60006104cb8383612a2c565b6000612a6e825190565b80845260208401935083602082028501612a888560200190565b8060005b85811015612abd5784840389528151612aa58582612a58565b94506020830160209a909a0199925050600101612a8c565b5091979650505050505050565b60005b83811015612ae5578181015183820152602001612acd565b83811115611bbc5750506000910152565b6000612b00825190565b808452602084019350612b17818560208601612aca565b601f01601f19169290920192915050565b60c08101612b368289612982565b612b4360208301886126e5565b8181036040830152612b558187612a64565b9050612b6460608301866126e5565b612b7160808301856126e5565b81810360a0830152612b838184612af6565b98975050505050505050565b60008060408385031215612ba557612ba5600080fd5b6000612bb18585612679565b92505060206127b28582860161268a565b6020810161074b8284612982565b600061074b82612654565b61266e81612bd0565b803561074b81612bdb565b600080600060608486031215612c0757612c07600080fd5b6000612c138686612be4565b93505060206126ca86828701612679565b600080600060608486031215612c3c57612c3c600080fd5b83356001600160401b03811115612c5557612c55600080fd5b612c6186828701612924565b93505060208401356001600160401b03811115612c8057612c80600080fd5b612c8c86828701612924565b92505060408401356001600160401b03811115612cab57612cab600080fd5b6126db86828701612924565b60008060008060808587031215612cd057612cd0600080fd5b6000612cdc8787612679565b9450506020612ced8782880161268a565b9350506040612cfe8782880161268a565b9250506060612d0f8782880161268a565b91505092959194509250565b60408101612d2982856126e5565b6104cb60208301846126e5565b60006001600160401b03821115612d4f57612d4f612854565b5060209081020190565b6000612d676128f184612d36565b83815290506020808201908402830185811115612d8657612d86600080fd5b835b81811015612daa5780612d9b888261268a565b84525060209283019201612d88565b5050509392505050565b600082601f830112612dc857612dc8600080fd5b8135610747848260208601612d59565b600060408284031215612ded57612ded600080fd5b612df76040612896565b90506000612e058484612708565b82525060208201356001600160401b03811115612e2457612e24600080fd5b612e3084828501612db4565b60208301525092915050565b6000612e4a6128f184612d36565b83815290506020808201908402830185811115612e6957612e69600080fd5b835b81811015612daa5780356001600160401b03811115612e8c57612e8c600080fd5b808601612e998982612dd8565b8552505060209283019201612e6b565b600082601f830112612ebd57612ebd600080fd5b8135610747848260208601612e3c565b60008060008060008060c08789031215612ee957612ee9600080fd5b6000612ef58989612679565b9650506020612f0689828a0161268a565b95505060408701356001600160401b03811115612f2557612f25600080fd5b612f3189828a01612ea9565b9450506060612f4289828a0161268a565b9350506080612f5389828a0161268a565b92505060a08701356001600160401b03811115612f7257612f72600080fd5b612f7e89828a01612924565b9150509295509295509295565b600061074b82612bd0565b6126e781612f8b565b6020810161074b8284612f96565b60808101612fbb82876126e5565b612fc86020830186612982565b612fd560408301856126e5565b6105de60608301846126e5565b805161074b81612bdb565b60006020828403121561300257613002600080fd5b60006107478484612fe2565b6060810161301c8286612982565b61302960208301856129c6565b6114ba60408301846126e5565b805161074b81612684565b60006020828403121561305657613056600080fd5b60006107478484613036565b60208082527f5061757365723a2063616c6c6572206973206e6f742074686520706175736572910190815260005b5060200190565b6020808252810161074b81613062565b604081016130b58285612982565b6104cb60208301846129c6565b805161074b81612665565b6000602082840312156130e2576130e2600080fd5b600061074784846130c2565b602d81526000602082017f526f75746572577261707065723a2063616c6c6572206973206e6f74206d657381526c39b0b3b2903932b1b2b4bb32b960991b602082015291505b5060400190565b6020808252810161074b816130ee565b601081526000602082016f14185d5cd8589b194e881c185d5cd95960821b81529150613090565b6020808252810161074b8161314b565b60c081016131908289612982565b61319d60208301886126e5565b81810360408301526131af8187612a64565b90506131be60608301866126e5565b6131cb60808301856126e5565b61261060a08301846126e5565b805161074b816126fb565b60006131f16128f184612d36565b8381529050602080820190840283018581111561321057613210600080fd5b835b81811015612daa57806132258882613036565b84525060209283019201613212565b600082601f83011261324857613248600080fd5b81516107478482602086016131e3565b60006040828403121561326d5761326d600080fd5b6132776040612896565b9050600061328584846131d8565b82525060208201516001600160401b038111156132a4576132a4600080fd5b612e3084828501613234565b60006132be6128f184612d36565b838152905060208082019084028301858111156132dd576132dd600080fd5b835b81811015612daa5780516001600160401b0381111561330057613300600080fd5b80860161330d8982613258565b85525050602092830192016132df565b600082601f83011261333157613331600080fd5b81516107478482602086016132b0565b600061334f6128f1846128ad565b90508281526020810184848401111561336a5761336a600080fd5b61291c848285612aca565b600082601f83011261338957613389600080fd5b8151610747848260208601613341565b60008060008060008060c087890312156133b5576133b5600080fd5b60006133c189896130c2565b96505060206133d289828a01613036565b95505060408701516001600160401b038111156133f1576133f1600080fd5b6133fd89828a0161331d565b945050606061340e89828a01613036565b935050608061341f89828a01613036565b92505060a08701516001600160401b0381111561343e5761343e600080fd5b612f7e89828a01613375565b60208082527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657291019081526000613090565b6020808252810161074b8161344a565b602f81526000602082017f4f776e6572576974686472617761626c653a207769746864726177206e61746981526e1d99481d1bdad95b8819985a5b1959608a1b60208201529150613134565b6020808252810161074b8161348c565b60408101612d298285612f96565b80151561266e565b805161074b816134f6565b60006020828403121561351e5761351e600080fd5b600061074784846134fe565b602581526000602082017f447374436861696e5061796d656e743a206e6f6e6578697374656e742070726f8152643b34b232b960d91b60208201529150613134565b6020808252810161074b8161352a565b6060810161358a8286612f96565b6130296020830185612982565b602581526000602082017f41646d696e577261707065723a2063616c6c6572206973206e6f74207468652081526430b236b4b760d91b60208201529150613134565b6020808252810161074b81613597565b60ff81166126e7565b6020810161074b82846135e9565b60408101612d298285612982565b603381526000602082017f447374436861696e5061796d656e743a20696e76616c696420706172616d7320815272199bdc88195e1c1a5c9959081858d8dbdd5b9d606a1b60208201529150613134565b6020808252810161074b8161360e565b601f81526000602082017f447374436861696e5061796d656e743a20696e76616c696420706172616d730081529150613090565b6020808252810161074b8161366e565b601f81526000602082017f5265656e7472616e637947756172643a207265656e7472616e742063616c6c0081529150613090565b6020808252810161074b816136b2565b602681526000602082017f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206181526564647265737360d01b60208201529150613134565b6020808252810161074b816136f6565b601481526000602082017314185d5cd8589b194e881b9bdd081c185d5cd95960621b81529150613090565b6020808252810161074b81613749565b602481526000602082017f447374436861696e5061796d656e743a206e6f6e6578697374656e74206163638152631bdd5b9d60e21b60208201529150613134565b6020808252810161074b81613784565b603b81526000602082017f447374436861696e5061796d656e743a20766f756368657220616d6f756e742081527f6973206c657373207468616e207265736f757263652076616c7565000000000060208201529150613134565b6020808252810161074b816137d5565b601d81526000602082017f447374436861696e5061796d656e743a206e6f6e63652065786973747300000081529150613090565b6020808252810161074b8161383f565b606081016138918286612982565b61389e60208301856126e5565b81810360408301526105de8184612af6565b602281526000602082017f447374436861696e5061796d656e743a20696e76616c6964207369676e617475815261726560f01b60208201529150613134565b6020808252810161074b816138b0565b634e487b7160e01b600052601160045260246000fd5b600082821015613927576139276138ff565b500390565b6000821982111561393f5761393f6138ff565b500190565b601d81526000602082017f5061757365723a206163636f756e74206973206e6f742070617573657200000081529150613090565b6020808252810161074b81613944565b602181526000602082017f5061757365723a206163636f756e7420697320616c72656164792070617573658152603960f91b60208201529150613134565b6020808252810161074b81613988565b602e81526000602082017f496e697469616c697a61626c653a20636f6e747261637420697320616c72656181526d191e481a5b9a5d1a585b1a5e995960921b60208201529150613134565b6020808252810161074b816139d6565b602b81526000602082017f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206981526a6e697469616c697a696e6760a81b60208201529150613134565b6020808252810161074b81613a31565b6000816000190483118215151615613aa357613aa36138ff565b500290565b634e487b7160e01b600052601260045260246000fd5b600082613acd57613acd613aa8565b500490565b6060810161358a8286612982565b602181526000602082017f447374436861696e5061796d656e743a20696e76616c6964207061796c6f61648152607360f81b60208201529150613134565b6020808252810161074b81613ae0565b634e487b7160e01b600052603260045260246000fd5b6036815260006020820160008051602061404c833981519152815275656e67746820666f72204275696c64696e6754696d6560501b60208201529150613134565b6020808252810161074b81613b44565b60608101613ba38286612982565b61302960208301856126e5565b6033815260006020820160008051602061404c833981519152815272656e67746820666f7220415253746f7261676560681b60208201529150613134565b6020808252810161074b81613bb0565b6033815260006020820160008051602061404c8339815191528152720cadccee8d040ccdee44084c2dcc8eed2c8e8d606b1b60208201529150613134565b6020808252810161074b81613bfe565b6035815260006020820160008051602061404c833981519152815274656e67746820666f72204950465353746f7261676560581b60208201529150613134565b6020808252810161074b81613c4c565b60808101613caa8287612982565b612fc860208301866126e5565b602681526000602082017f447374436861696e5061796d656e743a20756e6b6e6f776e207265736f75726381526565207479706560d01b60208201529150613134565b6020808252810161074b81613cb7565b6000600019821415613d1e57613d1e6138ff565b5060010190565b80825b6001851115613d6457808604811115613d4357613d436138ff565b6001851615613d5157908102905b8002613d5d8560011c90565b9450613d28565b94509492505050565b600082613d7c575060016104cb565b81613d89575060006104cb565b8160018114613d9f5760028114613da957613dd6565b60019150506104cb565b60ff841115613dba57613dba6138ff565b8360020a915084821115613dd057613dd06138ff565b506104cb565b5060208310610133831016604e8410600b8410161715613e09575081810a83811115613e0457613e046138ff565b6104cb565b613e168484846001613d25565b92509050818404811115613e2c57613e2c6138ff565b0292915050565b60006104cb6000198484613d6d565b602a81526000602082017f5361666545524332303a204552433230206f7065726174696f6e20646964206e8152691bdd081cdd58d8d9595960b21b60208201529150613134565b6020808252810161074b81613e42565b806126e7565b61190160f01b81526002016000613eb68285613e99565b602082019150613ec68284613e99565b5060200192915050565b63313ce56760e01b815260006004820161074b565b601b81526000602082017f5265736f75726365446174613a20696e76616c696420746f6b656e000000000081529150613090565b6020808252810161074b81613ee5565b60a08101613f3782886126e5565b613f4460208301876126e5565b613f5160408301866126e5565b613f5e60608301856126e5565b613f6b6080830184612982565b9695505050505050565b602681526000602082017f416464726573733a20696e73756666696369656e742062616c616e636520666f8152651c8818d85b1b60d21b60208201529150613134565b6020808252810161074b81613f75565b601d81526000602082017f416464726573733a2063616c6c20746f206e6f6e2d636f6e747261637400000081529150613090565b6020808252810161074b81613fc8565b6000614016825190565b614024818560208601612aca565b9290920192915050565b60006104cb828461400c565b602080825281016104cb8184612af656fe447374436861696e5061796d656e743a20696e76616c69642076616c7565206ca26469706673582212200cc42349b3da795e41af38150306f1f65aa067a69df1019cbf46bc179acaf73464736f6c63430008090033"; export class DstChainPaymentV2__factory extends ContractFactory { constructor( ...args: [signer: Signer] | ConstructorParameters ) { if (args.length === 1) { super(_abi, _bytecode, args[0]); } else { super(...args); } } deploy( overrides?: Overrides & { from?: string | Promise } ): Promise { return super.deploy(overrides || {}) as Promise; } getDeployTransaction( overrides?: Overrides & { from?: string | Promise } ): TransactionRequest { return super.getDeployTransaction(overrides || {}); } attach(address: string): DstChainPaymentV2 { return super.attach(address) as DstChainPaymentV2; } connect(signer: Signer): DstChainPaymentV2__factory { return super.connect(signer) as DstChainPaymentV2__factory; } static readonly bytecode = _bytecode; static readonly abi = _abi; static createInterface(): DstChainPaymentV2Interface { return new utils.Interface(_abi) as DstChainPaymentV2Interface; } static connect( address: string, signerOrProvider: Signer | Provider ): DstChainPaymentV2 { return new Contract(address, _abi, signerOrProvider) as DstChainPaymentV2; } }