702 lines
38 KiB
JSON
702 lines
38 KiB
JSON
{
|
|
"_format": "hh-sol-artifact-1",
|
|
"contractName": "TezosAdapter",
|
|
"sourceName": "contracts/bridge/adapters/non-evm/TezosAdapter.sol",
|
|
"abi": [
|
|
{
|
|
"inputs": [
|
|
{
|
|
"internalType": "address",
|
|
"name": "admin",
|
|
"type": "address"
|
|
}
|
|
],
|
|
"stateMutability": "nonpayable",
|
|
"type": "constructor"
|
|
},
|
|
{
|
|
"inputs": [],
|
|
"name": "AccessControlBadConfirmation",
|
|
"type": "error"
|
|
},
|
|
{
|
|
"inputs": [
|
|
{
|
|
"internalType": "address",
|
|
"name": "account",
|
|
"type": "address"
|
|
},
|
|
{
|
|
"internalType": "bytes32",
|
|
"name": "neededRole",
|
|
"type": "bytes32"
|
|
}
|
|
],
|
|
"name": "AccessControlUnauthorizedAccount",
|
|
"type": "error"
|
|
},
|
|
{
|
|
"inputs": [
|
|
{
|
|
"internalType": "address",
|
|
"name": "target",
|
|
"type": "address"
|
|
}
|
|
],
|
|
"name": "AddressEmptyCode",
|
|
"type": "error"
|
|
},
|
|
{
|
|
"inputs": [
|
|
{
|
|
"internalType": "address",
|
|
"name": "account",
|
|
"type": "address"
|
|
}
|
|
],
|
|
"name": "AddressInsufficientBalance",
|
|
"type": "error"
|
|
},
|
|
{
|
|
"inputs": [],
|
|
"name": "FailedInnerCall",
|
|
"type": "error"
|
|
},
|
|
{
|
|
"inputs": [],
|
|
"name": "ReentrancyGuardReentrantCall",
|
|
"type": "error"
|
|
},
|
|
{
|
|
"inputs": [
|
|
{
|
|
"internalType": "address",
|
|
"name": "token",
|
|
"type": "address"
|
|
}
|
|
],
|
|
"name": "SafeERC20FailedOperation",
|
|
"type": "error"
|
|
},
|
|
{
|
|
"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": "bytes32",
|
|
"name": "requestId",
|
|
"type": "bytes32"
|
|
},
|
|
{
|
|
"indexed": true,
|
|
"internalType": "string",
|
|
"name": "txHash",
|
|
"type": "string"
|
|
}
|
|
],
|
|
"name": "TezosBridgeConfirmed",
|
|
"type": "event"
|
|
},
|
|
{
|
|
"anonymous": false,
|
|
"inputs": [
|
|
{
|
|
"indexed": true,
|
|
"internalType": "bytes32",
|
|
"name": "requestId",
|
|
"type": "bytes32"
|
|
},
|
|
{
|
|
"indexed": true,
|
|
"internalType": "address",
|
|
"name": "sender",
|
|
"type": "address"
|
|
},
|
|
{
|
|
"indexed": true,
|
|
"internalType": "address",
|
|
"name": "token",
|
|
"type": "address"
|
|
},
|
|
{
|
|
"indexed": false,
|
|
"internalType": "uint256",
|
|
"name": "amount",
|
|
"type": "uint256"
|
|
},
|
|
{
|
|
"indexed": false,
|
|
"internalType": "string",
|
|
"name": "destination",
|
|
"type": "string"
|
|
}
|
|
],
|
|
"name": "TezosBridgeInitiated",
|
|
"type": "event"
|
|
},
|
|
{
|
|
"inputs": [],
|
|
"name": "BRIDGE_OPERATOR_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": "ORACLE_ROLE",
|
|
"outputs": [
|
|
{
|
|
"internalType": "bytes32",
|
|
"name": "",
|
|
"type": "bytes32"
|
|
}
|
|
],
|
|
"stateMutability": "view",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"inputs": [
|
|
{
|
|
"internalType": "address",
|
|
"name": "token",
|
|
"type": "address"
|
|
},
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "amount",
|
|
"type": "uint256"
|
|
},
|
|
{
|
|
"internalType": "bytes",
|
|
"name": "destination",
|
|
"type": "bytes"
|
|
},
|
|
{
|
|
"internalType": "bytes",
|
|
"name": "recipient",
|
|
"type": "bytes"
|
|
}
|
|
],
|
|
"name": "bridge",
|
|
"outputs": [
|
|
{
|
|
"internalType": "bytes32",
|
|
"name": "requestId",
|
|
"type": "bytes32"
|
|
}
|
|
],
|
|
"stateMutability": "payable",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"inputs": [
|
|
{
|
|
"internalType": "bytes32",
|
|
"name": "",
|
|
"type": "bytes32"
|
|
}
|
|
],
|
|
"name": "bridgeRequests",
|
|
"outputs": [
|
|
{
|
|
"internalType": "address",
|
|
"name": "sender",
|
|
"type": "address"
|
|
},
|
|
{
|
|
"internalType": "address",
|
|
"name": "token",
|
|
"type": "address"
|
|
},
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "amount",
|
|
"type": "uint256"
|
|
},
|
|
{
|
|
"internalType": "bytes",
|
|
"name": "destinationData",
|
|
"type": "bytes"
|
|
},
|
|
{
|
|
"internalType": "bytes32",
|
|
"name": "requestId",
|
|
"type": "bytes32"
|
|
},
|
|
{
|
|
"internalType": "enum IChainAdapter.BridgeStatus",
|
|
"name": "status",
|
|
"type": "uint8"
|
|
},
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "createdAt",
|
|
"type": "uint256"
|
|
},
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "completedAt",
|
|
"type": "uint256"
|
|
}
|
|
],
|
|
"stateMutability": "view",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"inputs": [
|
|
{
|
|
"internalType": "bytes32",
|
|
"name": "requestId",
|
|
"type": "bytes32"
|
|
}
|
|
],
|
|
"name": "cancelBridge",
|
|
"outputs": [
|
|
{
|
|
"internalType": "bool",
|
|
"name": "",
|
|
"type": "bool"
|
|
}
|
|
],
|
|
"stateMutability": "nonpayable",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"inputs": [
|
|
{
|
|
"internalType": "bytes32",
|
|
"name": "requestId",
|
|
"type": "bytes32"
|
|
},
|
|
{
|
|
"internalType": "string",
|
|
"name": "txHash",
|
|
"type": "string"
|
|
}
|
|
],
|
|
"name": "confirmTransaction",
|
|
"outputs": [],
|
|
"stateMutability": "nonpayable",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"inputs": [
|
|
{
|
|
"internalType": "address",
|
|
"name": "token",
|
|
"type": "address"
|
|
},
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "amount",
|
|
"type": "uint256"
|
|
},
|
|
{
|
|
"internalType": "bytes",
|
|
"name": "destination",
|
|
"type": "bytes"
|
|
}
|
|
],
|
|
"name": "estimateFee",
|
|
"outputs": [
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "fee",
|
|
"type": "uint256"
|
|
}
|
|
],
|
|
"stateMutability": "view",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"inputs": [
|
|
{
|
|
"internalType": "bytes32",
|
|
"name": "requestId",
|
|
"type": "bytes32"
|
|
}
|
|
],
|
|
"name": "getBridgeStatus",
|
|
"outputs": [
|
|
{
|
|
"components": [
|
|
{
|
|
"internalType": "address",
|
|
"name": "sender",
|
|
"type": "address"
|
|
},
|
|
{
|
|
"internalType": "address",
|
|
"name": "token",
|
|
"type": "address"
|
|
},
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "amount",
|
|
"type": "uint256"
|
|
},
|
|
{
|
|
"internalType": "bytes",
|
|
"name": "destinationData",
|
|
"type": "bytes"
|
|
},
|
|
{
|
|
"internalType": "bytes32",
|
|
"name": "requestId",
|
|
"type": "bytes32"
|
|
},
|
|
{
|
|
"internalType": "enum IChainAdapter.BridgeStatus",
|
|
"name": "status",
|
|
"type": "uint8"
|
|
},
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "createdAt",
|
|
"type": "uint256"
|
|
},
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "completedAt",
|
|
"type": "uint256"
|
|
}
|
|
],
|
|
"internalType": "struct IChainAdapter.BridgeRequest",
|
|
"name": "",
|
|
"type": "tuple"
|
|
}
|
|
],
|
|
"stateMutability": "view",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"inputs": [],
|
|
"name": "getChainIdentifier",
|
|
"outputs": [
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "chainId",
|
|
"type": "uint256"
|
|
},
|
|
{
|
|
"internalType": "string",
|
|
"name": "identifier",
|
|
"type": "string"
|
|
}
|
|
],
|
|
"stateMutability": "pure",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"inputs": [],
|
|
"name": "getChainType",
|
|
"outputs": [
|
|
{
|
|
"internalType": "string",
|
|
"name": "",
|
|
"type": "string"
|
|
}
|
|
],
|
|
"stateMutability": "pure",
|
|
"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": "isActive",
|
|
"outputs": [
|
|
{
|
|
"internalType": "bool",
|
|
"name": "",
|
|
"type": "bool"
|
|
}
|
|
],
|
|
"stateMutability": "view",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"inputs": [
|
|
{
|
|
"internalType": "address",
|
|
"name": "",
|
|
"type": "address"
|
|
}
|
|
],
|
|
"name": "nonces",
|
|
"outputs": [
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "",
|
|
"type": "uint256"
|
|
}
|
|
],
|
|
"stateMutability": "view",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"inputs": [
|
|
{
|
|
"internalType": "bytes32",
|
|
"name": "role",
|
|
"type": "bytes32"
|
|
},
|
|
{
|
|
"internalType": "address",
|
|
"name": "callerConfirmation",
|
|
"type": "address"
|
|
}
|
|
],
|
|
"name": "renounceRole",
|
|
"outputs": [],
|
|
"stateMutability": "nonpayable",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"inputs": [
|
|
{
|
|
"internalType": "bytes32",
|
|
"name": "role",
|
|
"type": "bytes32"
|
|
},
|
|
{
|
|
"internalType": "address",
|
|
"name": "account",
|
|
"type": "address"
|
|
}
|
|
],
|
|
"name": "revokeRole",
|
|
"outputs": [],
|
|
"stateMutability": "nonpayable",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"inputs": [
|
|
{
|
|
"internalType": "bool",
|
|
"name": "_isActive",
|
|
"type": "bool"
|
|
}
|
|
],
|
|
"name": "setIsActive",
|
|
"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": "bytes32",
|
|
"name": "",
|
|
"type": "bytes32"
|
|
}
|
|
],
|
|
"name": "txHashes",
|
|
"outputs": [
|
|
{
|
|
"internalType": "string",
|
|
"name": "",
|
|
"type": "string"
|
|
}
|
|
],
|
|
"stateMutability": "view",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"inputs": [
|
|
{
|
|
"internalType": "bytes",
|
|
"name": "destination",
|
|
"type": "bytes"
|
|
}
|
|
],
|
|
"name": "validateDestination",
|
|
"outputs": [
|
|
{
|
|
"internalType": "bool",
|
|
"name": "",
|
|
"type": "bool"
|
|
}
|
|
],
|
|
"stateMutability": "pure",
|
|
"type": "function"
|
|
}
|
|
],
|
|
"bytecode": "0x6080346200009957601f620018e338819003918201601f19168301916001600160401b038311848410176200009e578084926020946040528339810103126200009957516001600160a01b038116810362000099576200007b90600180556200006881620000b4565b50620000748162000134565b50620001d6565b50600160ff19600254161760025560405161164f9081620002748239f35b600080fd5b634e487b7160e01b600052604160045260246000fd5b6001600160a01b031660008181527fad3228b676f7d3cd4284a5443f17f1962b36e491b30a40b2405849e597ba5fb5602052604081205490919060ff166200013057818052816020526040822081835260205260408220600160ff198254161790553391600080516020620018c38339815191528180a4600190565b5090565b6001600160a01b031660008181527f0d4654aaffc87c2c9a3fd6a99770bc308fad799420104834ddcca8973d00903960205260408120549091907f7045adfe67d5f94dbfddcdb901e44bef55baacabb398c7cddda1bfd7620b15689060ff16620001d157808352826020526040832082845260205260408320600160ff19825416179055600080516020620018c3833981519152339380a4600190565b505090565b6001600160a01b031660008181527fa629f6981c2f6895a67dc766e8e03ff72d04a413d0d8773a3ca56e9e474032c160205260408120549091907f68e79a7bf1e0bc45d0a330c573bc367f9cf464fd326078812f301165fbda4ef19060ff16620001d157808352826020526040832082845260205260408320600160ff19825416179055600080516020620018c3833981519152339380a460019056fe608080604052600436101561001357600080fd5b60003560e01c90816301ffc9a7146110d55750806307e2cea51461109a57806322f3e2d414611077578063248a9ca3146110485780632750fc7814610fc15780632b368ac214610f755780632f2ff15d14610f3657806336568abe14610eef5780634be40fd114610eb457806360b4141114610e0a5780636cb4dfc014610dc457806370cf467114610b965780637ecebe0014610b5c5780638d75141514610a1857806391d14854146109cb578063941b96821461097657806397e67c3b14610930578063a217fddf14610914578063a8734a131461083a578063d046b4e2146106ce578063d547741f1461068d5763f33ffba31461011157600080fd5b608036600319011261068857610125611128565b6044356001600160401b03811161068857610144903690600401611154565b916064356001600160401b03811161068857610164903690600401611154565b505060026001541461067657600260015560ff600254161561063e576024351561060b576040516301b2d37f60e61b8152602060048201526024810184905283836044830137600060448583010152602081604481601f19601f8901168101030181305afa9081156105ff576000916105d0575b501561058b576101e93684846113cb565b336000526005602052604060002080549060001982146105755760018201905561026b60a860405180933360601b60208301526bffffffffffffffffffffffff198760601b1660348301526024356048830152855161024f816068850160208a016112b8565b82019060688201524260888201520360888101845201826111f2565b8051602090910120926001600160a01b0383166105115760243534106104d9576102be905b6040519561029d876111bb565b3387526001600160a01b0385166020880152602435604088015236916113cb565b6060850152826080850152600160a08501524260c0850152600060e0850152826000526003602052604060002060018060a01b038551166bffffffffffffffffffffffff60a01b9081835416178255600182019060018060a01b03602088015116908254161790556040850151600282015560608501518051906001600160401b0382116104c357610360826103576003860154611181565b60038601611342565b602090601f831160011461045157610391929160009183610446575b50508160011b916000199060031b1c19161790565b60038201555b608085015160048201556005810160a086015160068110156104305760209660079260e09260ff8019835416911617905560c081015160068501550151910155827f65e50156584ecba3fcd0b29a840d8015b27c95b505e5eed4cf4df2e3068f430060405193602435855260408786015260018060a01b03169380610421339560408301906112db565b0390a460018055604051908152f35b634e487b7160e01b600052602160045260246000fd5b01519050388061037c565b9190600384016000526020600020906000935b601f19841685106104a8576001945083601f1981161061048f575b505050811b016003820155610397565b015160001960f88460031b161c1916905538808061047f565b81810151835560209485019460019093019290910190610464565b634e487b7160e01b600052604160045260246000fd5b60405162461bcd60e51b815260206004820152601060248201526f092dce6eaccccd2c6d2cadce8408aa8960831b6044820152606490fd5b604051906323b872dd60e01b60208301523360248301523060448301526024356064830152606482528160a08101106001600160401b0360a0840111176104c35760a082016040526102be91610570906001600160a01b03861661151b565b610290565b634e487b7160e01b600052601160045260246000fd5b60405162461bcd60e51b815260206004820152601960248201527f496e76616c69642054657a6f732064657374696e6174696f6e000000000000006044820152606490fd5b6105f2915060203d6020116105f8575b6105ea81836111f2565b8101906113b3565b386101d8565b503d6105e0565b6040513d6000823e3d90fd5b60405162461bcd60e51b815260206004820152600b60248201526a16995c9bc8185b5bdd5b9d60aa1b6044820152606490fd5b60405162461bcd60e51b815260206004820152601060248201526f4164617074657220696e61637469766560801b6044820152606490fd5b604051633ee5aeb560e01b8152600490fd5b600080fd5b34610688576040366003190112610688576106cc6004356106ac61113e565b908060005260006020526106c7600160406000200154611402565b6114a6565b005b346106885760208060031936011261068857600435600052600381526040600020600581019060ff825416600681101561043057801590811561082f575b50156107fa5780546001600160a01b03908116338190036107c057600183015482169081610773575050600080836002829594839554169101549082821561076a575bf1156105ff575b805460ff1916600517905560405160018152f35b506108fc61074f565b915091600201546040519163a9059cbb60e01b86840152602483015260448201526044815260808101918183106001600160401b038411176104c3576107bb9260405261151b565b610756565b60405162461bcd60e51b81526004810186905260126024820152712737ba103932b8bab2b9ba1039b2b73232b960711b6044820152606490fd5b60405162461bcd60e51b815260048101849052600d60248201526c10d85b9b9bdd0818d85b98d95b609a1b6044820152606490fd5b60019150148461070c565b3461068857602080600319360112610688576004356000526004815260406000209060405191826000825461086e81611181565b93848452600191866001821691826000146108f25750506001146108b3575b505061089b925003836111f2565b6108af6040519282849384528301906112db565b0390f35b85925060005281600020906000915b8583106108da57505061089b9350820101858061088d565b805483890185015287945086939092019181016108c2565b925093505061089b94915060ff191682840152151560051b820101858061088d565b3461068857600036600319011261068857602060405160008152f35b34610688576000366003190112610688576108af604051610950816111d7565b600581526454657a6f7360d81b60208201526040519182916020835260208301906112db565b34610688576000366003190112610688576108af604051610996816111d7565b600d81526c15195e9bdccb53585a5b9b995d609a1b6020820152604051918291600083526040602084015260408301906112db565b34610688576040366003190112610688576109e461113e565b600435600052600060205260406000209060018060a01b0316600052602052602060ff604060002054166040519015158152f35b346106885760208060031936011261068857600060e0604051610a3a816111bb565b82815282848201528260408201526060808201528260808201528260a08201528260c082015201526004356000526003815260406000209060405190610a7f826111bb565b82546001600160a01b039081168352600184015481168284019081526002850154604085019081529194909290610ab860038201611213565b93606086019485526004820154946080870195865260ff6005840154169460a0880195600681101561043057610b4d938a918852600760068701549660c08c0197885201549660e08b019788526040519b8c9b828d525116908b0152511660408901525160608801525193610b3b610100958660808a01526101208901906112db565b955160a08801525160c0870190611300565b5160e085015251908301520390f35b34610688576020366003190112610688576001600160a01b03610b7d611128565b1660005260056020526020604060002054604051908152f35b34610688576040366003190112610688576004356001600160401b0360243581811161068857610bca903690600401611154565b3360009081527fa629f6981c2f6895a67dc766e8e03ff72d04a413d0d8773a3ca56e9e474032c160209081526040909120549193917f68e79a7bf1e0bc45d0a330c573bc367f9cf464fd326078812f301165fbda4ef19060ff1615610da657508460005260038152604060002090600582019182549260ff8416936006851015610430576001809503610d705760029060ff1916179055600742910155856000526004815260406000209285116104c3578491610c9183610c8b8654611181565b86611342565b600091601f8411600114610d0b5750509080610cc392600091610d00575b508160011b916000199060031b1c19161790565b90555b816040519283928337810160008152039020907f1886f2d14656d6560dc6b33e37ac06ddf80d634995d03c6cb680aa3a320914dd600080a3005b905084013587610caf565b60008581528181209492601f19841692905b838310610d565750505010610d3c575b5050600183811b019055610cc6565b830135600019600386901b60f8161c191690558480610d2d565b888601358755958601959481019489945091810191610d1d565b60405162461bcd60e51b815260048101859052600e60248201526d496e76616c69642073746174757360901b6044820152606490fd5b6044906040519063e2517d3f60e01b82523360048301526024820152fd5b34610688576020366003190112610688576004356001600160401b03811161068857610e00610df96020923690600401611154565b905061130d565b6040519015158152f35b34610688576020366003190112610688576004356000526003602052604060002060018060a01b0390818154169160018201541690600281015492610e5160038301611213565b91610ea6600482015493610e9660ff600585015416916007600686015495015495604051998a99610100928b5260208b015260408a01528060608a01528801906112db565b94608087015260a0860190611300565b60c084015260e08301520390f35b346106885760003660031901126106885760206040517f7045adfe67d5f94dbfddcdb901e44bef55baacabb398c7cddda1bfd7620b15688152f35b3461068857604036600319011261068857610f0861113e565b336001600160a01b03821603610f24576106cc906004356114a6565b60405163334bd91960e11b8152600490fd5b34610688576040366003190112610688576106cc600435610f5561113e565b90806000526000602052610f70600160406000200154611402565b611428565b3461068857606036600319011261068857610f8e611128565b506044356001600160401b03811161068857610fae903690600401611154565b5050602060405166038d7ea4c680008152f35b3461068857602036600319011261068857600435801515809103610688573360009081527fad3228b676f7d3cd4284a5443f17f1962b36e491b30a40b2405849e597ba5fb5602052604090205460ff16156110295760ff801960025416911617600255600080f35b60405163e2517d3f60e01b815233600482015260006024820152604490fd5b346106885760203660031901126106885760043560005260006020526020600160406000200154604051908152f35b3461068857600036600319011261068857602060ff600254166040519015158152f35b346106885760003660031901126106885760206040517f68e79a7bf1e0bc45d0a330c573bc367f9cf464fd326078812f301165fbda4ef18152f35b34610688576020366003190112610688576004359063ffffffff60e01b821680920361068857602091637965db0b60e01b8114908115611117575b5015158152f35b6301ffc9a760e01b14905083611110565b600435906001600160a01b038216820361068857565b602435906001600160a01b038216820361068857565b9181601f84011215610688578235916001600160401b038311610688576020838186019501011161068857565b90600182811c921680156111b1575b602083101461119b57565b634e487b7160e01b600052602260045260246000fd5b91607f1691611190565b61010081019081106001600160401b038211176104c357604052565b604081019081106001600160401b038211176104c357604052565b90601f801991011681019081106001600160401b038211176104c357604052565b9060405191826000825461122681611181565b908184526020946001916001811690816000146112965750600114611257575b505050611255925003836111f2565b565b600090815285812095935091905b81831061127e5750506112559350820101388080611246565b85548884018501529485019487945091830191611265565b9250505061125594925060ff191682840152151560051b820101388080611246565b60005b8381106112cb5750506000910152565b81810151838201526020016112bb565b906020916112f4815180928185528580860191016112b8565b601f01601f1916010190565b9060068210156104305752565b80158015611338575b6113325760238110159081611329575090565b60409150111590565b50600090565b5060408111611316565b90601f811161135057505050565b6000916000526020600020906020601f850160051c8301941061138e575b601f0160051c01915b82811061138357505050565b818155600101611377565b909250829061136e565b6001600160401b0381116104c357601f01601f191660200190565b90816020910312610688575180151581036106885790565b9291926113d782611398565b916113e560405193846111f2565b829481845281830111610688578281602093846000960137010152565b80600052600060205260406000203360005260205260ff6040600020541615610da65750565b9060009180835282602052604083209160018060a01b03169182845260205260ff604084205416156000146114a157808352826020526040832082845260205260408320600160ff198254161790557f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d339380a4600190565b505090565b9060009180835282602052604083209160018060a01b03169182845260205260ff6040842054166000146114a15780835282602052604083208284526020526040832060ff1981541690557ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b339380a4600190565b6000806115659260018060a01b03169360208151910182865af13d156115ae573d9061154682611398565b9161155460405193846111f2565b82523d6000602084013e5b836115b6565b8051908115159182611593575b505061157b5750565b60249060405190635274afe760e01b82526004820152fd5b6115a692506020809183010191016113b3565b153880611572565b60609061155f565b906115dd57508051156115cb57805190602001fd5b604051630a12f52160e11b8152600490fd5b81511580611610575b6115ee575090565b604051639996b31560e01b81526001600160a01b039091166004820152602490fd5b50803b156115e656fea2646970667358221220f7ea770bef5901f18a93223cd6f809d9f990d44b2286471c46355ae62817dad064736f6c634300081600332f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d",
|
|
"deployedBytecode": "0x608080604052600436101561001357600080fd5b60003560e01c90816301ffc9a7146110d55750806307e2cea51461109a57806322f3e2d414611077578063248a9ca3146110485780632750fc7814610fc15780632b368ac214610f755780632f2ff15d14610f3657806336568abe14610eef5780634be40fd114610eb457806360b4141114610e0a5780636cb4dfc014610dc457806370cf467114610b965780637ecebe0014610b5c5780638d75141514610a1857806391d14854146109cb578063941b96821461097657806397e67c3b14610930578063a217fddf14610914578063a8734a131461083a578063d046b4e2146106ce578063d547741f1461068d5763f33ffba31461011157600080fd5b608036600319011261068857610125611128565b6044356001600160401b03811161068857610144903690600401611154565b916064356001600160401b03811161068857610164903690600401611154565b505060026001541461067657600260015560ff600254161561063e576024351561060b576040516301b2d37f60e61b8152602060048201526024810184905283836044830137600060448583010152602081604481601f19601f8901168101030181305afa9081156105ff576000916105d0575b501561058b576101e93684846113cb565b336000526005602052604060002080549060001982146105755760018201905561026b60a860405180933360601b60208301526bffffffffffffffffffffffff198760601b1660348301526024356048830152855161024f816068850160208a016112b8565b82019060688201524260888201520360888101845201826111f2565b8051602090910120926001600160a01b0383166105115760243534106104d9576102be905b6040519561029d876111bb565b3387526001600160a01b0385166020880152602435604088015236916113cb565b6060850152826080850152600160a08501524260c0850152600060e0850152826000526003602052604060002060018060a01b038551166bffffffffffffffffffffffff60a01b9081835416178255600182019060018060a01b03602088015116908254161790556040850151600282015560608501518051906001600160401b0382116104c357610360826103576003860154611181565b60038601611342565b602090601f831160011461045157610391929160009183610446575b50508160011b916000199060031b1c19161790565b60038201555b608085015160048201556005810160a086015160068110156104305760209660079260e09260ff8019835416911617905560c081015160068501550151910155827f65e50156584ecba3fcd0b29a840d8015b27c95b505e5eed4cf4df2e3068f430060405193602435855260408786015260018060a01b03169380610421339560408301906112db565b0390a460018055604051908152f35b634e487b7160e01b600052602160045260246000fd5b01519050388061037c565b9190600384016000526020600020906000935b601f19841685106104a8576001945083601f1981161061048f575b505050811b016003820155610397565b015160001960f88460031b161c1916905538808061047f565b81810151835560209485019460019093019290910190610464565b634e487b7160e01b600052604160045260246000fd5b60405162461bcd60e51b815260206004820152601060248201526f092dce6eaccccd2c6d2cadce8408aa8960831b6044820152606490fd5b604051906323b872dd60e01b60208301523360248301523060448301526024356064830152606482528160a08101106001600160401b0360a0840111176104c35760a082016040526102be91610570906001600160a01b03861661151b565b610290565b634e487b7160e01b600052601160045260246000fd5b60405162461bcd60e51b815260206004820152601960248201527f496e76616c69642054657a6f732064657374696e6174696f6e000000000000006044820152606490fd5b6105f2915060203d6020116105f8575b6105ea81836111f2565b8101906113b3565b386101d8565b503d6105e0565b6040513d6000823e3d90fd5b60405162461bcd60e51b815260206004820152600b60248201526a16995c9bc8185b5bdd5b9d60aa1b6044820152606490fd5b60405162461bcd60e51b815260206004820152601060248201526f4164617074657220696e61637469766560801b6044820152606490fd5b604051633ee5aeb560e01b8152600490fd5b600080fd5b34610688576040366003190112610688576106cc6004356106ac61113e565b908060005260006020526106c7600160406000200154611402565b6114a6565b005b346106885760208060031936011261068857600435600052600381526040600020600581019060ff825416600681101561043057801590811561082f575b50156107fa5780546001600160a01b03908116338190036107c057600183015482169081610773575050600080836002829594839554169101549082821561076a575bf1156105ff575b805460ff1916600517905560405160018152f35b506108fc61074f565b915091600201546040519163a9059cbb60e01b86840152602483015260448201526044815260808101918183106001600160401b038411176104c3576107bb9260405261151b565b610756565b60405162461bcd60e51b81526004810186905260126024820152712737ba103932b8bab2b9ba1039b2b73232b960711b6044820152606490fd5b60405162461bcd60e51b815260048101849052600d60248201526c10d85b9b9bdd0818d85b98d95b609a1b6044820152606490fd5b60019150148461070c565b3461068857602080600319360112610688576004356000526004815260406000209060405191826000825461086e81611181565b93848452600191866001821691826000146108f25750506001146108b3575b505061089b925003836111f2565b6108af6040519282849384528301906112db565b0390f35b85925060005281600020906000915b8583106108da57505061089b9350820101858061088d565b805483890185015287945086939092019181016108c2565b925093505061089b94915060ff191682840152151560051b820101858061088d565b3461068857600036600319011261068857602060405160008152f35b34610688576000366003190112610688576108af604051610950816111d7565b600581526454657a6f7360d81b60208201526040519182916020835260208301906112db565b34610688576000366003190112610688576108af604051610996816111d7565b600d81526c15195e9bdccb53585a5b9b995d609a1b6020820152604051918291600083526040602084015260408301906112db565b34610688576040366003190112610688576109e461113e565b600435600052600060205260406000209060018060a01b0316600052602052602060ff604060002054166040519015158152f35b346106885760208060031936011261068857600060e0604051610a3a816111bb565b82815282848201528260408201526060808201528260808201528260a08201528260c082015201526004356000526003815260406000209060405190610a7f826111bb565b82546001600160a01b039081168352600184015481168284019081526002850154604085019081529194909290610ab860038201611213565b93606086019485526004820154946080870195865260ff6005840154169460a0880195600681101561043057610b4d938a918852600760068701549660c08c0197885201549660e08b019788526040519b8c9b828d525116908b0152511660408901525160608801525193610b3b610100958660808a01526101208901906112db565b955160a08801525160c0870190611300565b5160e085015251908301520390f35b34610688576020366003190112610688576001600160a01b03610b7d611128565b1660005260056020526020604060002054604051908152f35b34610688576040366003190112610688576004356001600160401b0360243581811161068857610bca903690600401611154565b3360009081527fa629f6981c2f6895a67dc766e8e03ff72d04a413d0d8773a3ca56e9e474032c160209081526040909120549193917f68e79a7bf1e0bc45d0a330c573bc367f9cf464fd326078812f301165fbda4ef19060ff1615610da657508460005260038152604060002090600582019182549260ff8416936006851015610430576001809503610d705760029060ff1916179055600742910155856000526004815260406000209285116104c3578491610c9183610c8b8654611181565b86611342565b600091601f8411600114610d0b5750509080610cc392600091610d00575b508160011b916000199060031b1c19161790565b90555b816040519283928337810160008152039020907f1886f2d14656d6560dc6b33e37ac06ddf80d634995d03c6cb680aa3a320914dd600080a3005b905084013587610caf565b60008581528181209492601f19841692905b838310610d565750505010610d3c575b5050600183811b019055610cc6565b830135600019600386901b60f8161c191690558480610d2d565b888601358755958601959481019489945091810191610d1d565b60405162461bcd60e51b815260048101859052600e60248201526d496e76616c69642073746174757360901b6044820152606490fd5b6044906040519063e2517d3f60e01b82523360048301526024820152fd5b34610688576020366003190112610688576004356001600160401b03811161068857610e00610df96020923690600401611154565b905061130d565b6040519015158152f35b34610688576020366003190112610688576004356000526003602052604060002060018060a01b0390818154169160018201541690600281015492610e5160038301611213565b91610ea6600482015493610e9660ff600585015416916007600686015495015495604051998a99610100928b5260208b015260408a01528060608a01528801906112db565b94608087015260a0860190611300565b60c084015260e08301520390f35b346106885760003660031901126106885760206040517f7045adfe67d5f94dbfddcdb901e44bef55baacabb398c7cddda1bfd7620b15688152f35b3461068857604036600319011261068857610f0861113e565b336001600160a01b03821603610f24576106cc906004356114a6565b60405163334bd91960e11b8152600490fd5b34610688576040366003190112610688576106cc600435610f5561113e565b90806000526000602052610f70600160406000200154611402565b611428565b3461068857606036600319011261068857610f8e611128565b506044356001600160401b03811161068857610fae903690600401611154565b5050602060405166038d7ea4c680008152f35b3461068857602036600319011261068857600435801515809103610688573360009081527fad3228b676f7d3cd4284a5443f17f1962b36e491b30a40b2405849e597ba5fb5602052604090205460ff16156110295760ff801960025416911617600255600080f35b60405163e2517d3f60e01b815233600482015260006024820152604490fd5b346106885760203660031901126106885760043560005260006020526020600160406000200154604051908152f35b3461068857600036600319011261068857602060ff600254166040519015158152f35b346106885760003660031901126106885760206040517f68e79a7bf1e0bc45d0a330c573bc367f9cf464fd326078812f301165fbda4ef18152f35b34610688576020366003190112610688576004359063ffffffff60e01b821680920361068857602091637965db0b60e01b8114908115611117575b5015158152f35b6301ffc9a760e01b14905083611110565b600435906001600160a01b038216820361068857565b602435906001600160a01b038216820361068857565b9181601f84011215610688578235916001600160401b038311610688576020838186019501011161068857565b90600182811c921680156111b1575b602083101461119b57565b634e487b7160e01b600052602260045260246000fd5b91607f1691611190565b61010081019081106001600160401b038211176104c357604052565b604081019081106001600160401b038211176104c357604052565b90601f801991011681019081106001600160401b038211176104c357604052565b9060405191826000825461122681611181565b908184526020946001916001811690816000146112965750600114611257575b505050611255925003836111f2565b565b600090815285812095935091905b81831061127e5750506112559350820101388080611246565b85548884018501529485019487945091830191611265565b9250505061125594925060ff191682840152151560051b820101388080611246565b60005b8381106112cb5750506000910152565b81810151838201526020016112bb565b906020916112f4815180928185528580860191016112b8565b601f01601f1916010190565b9060068210156104305752565b80158015611338575b6113325760238110159081611329575090565b60409150111590565b50600090565b5060408111611316565b90601f811161135057505050565b6000916000526020600020906020601f850160051c8301941061138e575b601f0160051c01915b82811061138357505050565b818155600101611377565b909250829061136e565b6001600160401b0381116104c357601f01601f191660200190565b90816020910312610688575180151581036106885790565b9291926113d782611398565b916113e560405193846111f2565b829481845281830111610688578281602093846000960137010152565b80600052600060205260406000203360005260205260ff6040600020541615610da65750565b9060009180835282602052604083209160018060a01b03169182845260205260ff604084205416156000146114a157808352826020526040832082845260205260408320600160ff198254161790557f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d339380a4600190565b505090565b9060009180835282602052604083209160018060a01b03169182845260205260ff6040842054166000146114a15780835282602052604083208284526020526040832060ff1981541690557ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b339380a4600190565b6000806115659260018060a01b03169360208151910182865af13d156115ae573d9061154682611398565b9161155460405193846111f2565b82523d6000602084013e5b836115b6565b8051908115159182611593575b505061157b5750565b60249060405190635274afe760e01b82526004820152fd5b6115a692506020809183010191016113b3565b153880611572565b60609061155f565b906115dd57508051156115cb57805190602001fd5b604051630a12f52160e11b8152600490fd5b81511580611610575b6115ee575090565b604051639996b31560e01b81526001600160a01b039091166004820152602490fd5b50803b156115e656fea2646970667358221220f7ea770bef5901f18a93223cd6f809d9f990d44b2286471c46355ae62817dad064736f6c63430008160033",
|
|
"linkReferences": {},
|
|
"deployedLinkReferences": {}
|
|
}
|