1369 lines
81 KiB
JSON
1369 lines
81 KiB
JSON
|
|
{
|
||
|
|
"_format": "hh-sol-artifact-1",
|
||
|
|
"contractName": "CommodityCCIPBridge",
|
||
|
|
"sourceName": "contracts/bridge/CommodityCCIPBridge.sol",
|
||
|
|
"abi": [
|
||
|
|
{
|
||
|
|
"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": [
|
||
|
|
{
|
||
|
|
"internalType": "address",
|
||
|
|
"name": "implementation",
|
||
|
|
"type": "address"
|
||
|
|
}
|
||
|
|
],
|
||
|
|
"name": "ERC1967InvalidImplementation",
|
||
|
|
"type": "error"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"inputs": [],
|
||
|
|
"name": "ERC1967NonPayable",
|
||
|
|
"type": "error"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"inputs": [],
|
||
|
|
"name": "FailedInnerCall",
|
||
|
|
"type": "error"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"inputs": [],
|
||
|
|
"name": "InvalidInitialization",
|
||
|
|
"type": "error"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"inputs": [],
|
||
|
|
"name": "NotInitializing",
|
||
|
|
"type": "error"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"inputs": [],
|
||
|
|
"name": "ReentrancyGuardReentrantCall",
|
||
|
|
"type": "error"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"inputs": [
|
||
|
|
{
|
||
|
|
"internalType": "address",
|
||
|
|
"name": "token",
|
||
|
|
"type": "address"
|
||
|
|
}
|
||
|
|
],
|
||
|
|
"name": "SafeERC20FailedOperation",
|
||
|
|
"type": "error"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"inputs": [],
|
||
|
|
"name": "UUPSUnauthorizedCallContext",
|
||
|
|
"type": "error"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"inputs": [
|
||
|
|
{
|
||
|
|
"internalType": "bytes32",
|
||
|
|
"name": "slot",
|
||
|
|
"type": "bytes32"
|
||
|
|
}
|
||
|
|
],
|
||
|
|
"name": "UUPSUnsupportedProxiableUUID",
|
||
|
|
"type": "error"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"anonymous": false,
|
||
|
|
"inputs": [
|
||
|
|
{
|
||
|
|
"indexed": true,
|
||
|
|
"internalType": "bytes32",
|
||
|
|
"name": "messageId",
|
||
|
|
"type": "bytes32"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"indexed": true,
|
||
|
|
"internalType": "address",
|
||
|
|
"name": "token",
|
||
|
|
"type": "address"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"indexed": true,
|
||
|
|
"internalType": "address",
|
||
|
|
"name": "sender",
|
||
|
|
"type": "address"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"indexed": false,
|
||
|
|
"internalType": "uint256",
|
||
|
|
"name": "amount",
|
||
|
|
"type": "uint256"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"indexed": false,
|
||
|
|
"internalType": "uint64",
|
||
|
|
"name": "destinationChain",
|
||
|
|
"type": "uint64"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"indexed": false,
|
||
|
|
"internalType": "address",
|
||
|
|
"name": "recipient",
|
||
|
|
"type": "address"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"indexed": false,
|
||
|
|
"internalType": "bool",
|
||
|
|
"name": "usedPMM",
|
||
|
|
"type": "bool"
|
||
|
|
}
|
||
|
|
],
|
||
|
|
"name": "BridgeExecuted",
|
||
|
|
"type": "event"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"anonymous": false,
|
||
|
|
"inputs": [
|
||
|
|
{
|
||
|
|
"indexed": true,
|
||
|
|
"internalType": "address",
|
||
|
|
"name": "token",
|
||
|
|
"type": "address"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"indexed": true,
|
||
|
|
"internalType": "bytes32",
|
||
|
|
"name": "certificateHash",
|
||
|
|
"type": "bytes32"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"indexed": false,
|
||
|
|
"internalType": "address",
|
||
|
|
"name": "custodian",
|
||
|
|
"type": "address"
|
||
|
|
}
|
||
|
|
],
|
||
|
|
"name": "CertificateRegistered",
|
||
|
|
"type": "event"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"anonymous": false,
|
||
|
|
"inputs": [
|
||
|
|
{
|
||
|
|
"indexed": true,
|
||
|
|
"internalType": "bytes32",
|
||
|
|
"name": "deliveryId",
|
||
|
|
"type": "bytes32"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"indexed": false,
|
||
|
|
"internalType": "enum CommodityCCIPBridge.DeliveryStatus",
|
||
|
|
"name": "status",
|
||
|
|
"type": "uint8"
|
||
|
|
}
|
||
|
|
],
|
||
|
|
"name": "DeliveryStatusUpdated",
|
||
|
|
"type": "event"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"anonymous": false,
|
||
|
|
"inputs": [
|
||
|
|
{
|
||
|
|
"indexed": true,
|
||
|
|
"internalType": "address",
|
||
|
|
"name": "token",
|
||
|
|
"type": "address"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"indexed": true,
|
||
|
|
"internalType": "uint64",
|
||
|
|
"name": "chainSelector",
|
||
|
|
"type": "uint64"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"indexed": false,
|
||
|
|
"internalType": "address",
|
||
|
|
"name": "receiverBridge",
|
||
|
|
"type": "address"
|
||
|
|
}
|
||
|
|
],
|
||
|
|
"name": "DestinationAdded",
|
||
|
|
"type": "event"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"anonymous": false,
|
||
|
|
"inputs": [
|
||
|
|
{
|
||
|
|
"indexed": true,
|
||
|
|
"internalType": "address",
|
||
|
|
"name": "token",
|
||
|
|
"type": "address"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"indexed": true,
|
||
|
|
"internalType": "uint64",
|
||
|
|
"name": "chainSelector",
|
||
|
|
"type": "uint64"
|
||
|
|
}
|
||
|
|
],
|
||
|
|
"name": "DestinationRemoved",
|
||
|
|
"type": "event"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"anonymous": false,
|
||
|
|
"inputs": [
|
||
|
|
{
|
||
|
|
"indexed": false,
|
||
|
|
"internalType": "uint64",
|
||
|
|
"name": "version",
|
||
|
|
"type": "uint64"
|
||
|
|
}
|
||
|
|
],
|
||
|
|
"name": "Initialized",
|
||
|
|
"type": "event"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"anonymous": false,
|
||
|
|
"inputs": [
|
||
|
|
{
|
||
|
|
"indexed": true,
|
||
|
|
"internalType": "bytes32",
|
||
|
|
"name": "messageId",
|
||
|
|
"type": "bytes32"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"indexed": true,
|
||
|
|
"internalType": "uint64",
|
||
|
|
"name": "sourceChainSelector",
|
||
|
|
"type": "uint64"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"indexed": false,
|
||
|
|
"internalType": "address",
|
||
|
|
"name": "sender",
|
||
|
|
"type": "address"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"indexed": false,
|
||
|
|
"internalType": "address",
|
||
|
|
"name": "token",
|
||
|
|
"type": "address"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"indexed": false,
|
||
|
|
"internalType": "uint256",
|
||
|
|
"name": "amount",
|
||
|
|
"type": "uint256"
|
||
|
|
}
|
||
|
|
],
|
||
|
|
"name": "MessageReceived",
|
||
|
|
"type": "event"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"anonymous": false,
|
||
|
|
"inputs": [
|
||
|
|
{
|
||
|
|
"indexed": true,
|
||
|
|
"internalType": "bytes32",
|
||
|
|
"name": "deliveryId",
|
||
|
|
"type": "bytes32"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"indexed": true,
|
||
|
|
"internalType": "bytes32",
|
||
|
|
"name": "messageId",
|
||
|
|
"type": "bytes32"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"indexed": false,
|
||
|
|
"internalType": "address",
|
||
|
|
"name": "token",
|
||
|
|
"type": "address"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"indexed": false,
|
||
|
|
"internalType": "uint256",
|
||
|
|
"name": "amount",
|
||
|
|
"type": "uint256"
|
||
|
|
}
|
||
|
|
],
|
||
|
|
"name": "PhysicalDeliveryRequested",
|
||
|
|
"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": "implementation",
|
||
|
|
"type": "address"
|
||
|
|
}
|
||
|
|
],
|
||
|
|
"name": "Upgraded",
|
||
|
|
"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": "UPGRADER_ROLE",
|
||
|
|
"outputs": [
|
||
|
|
{
|
||
|
|
"internalType": "bytes32",
|
||
|
|
"name": "",
|
||
|
|
"type": "bytes32"
|
||
|
|
}
|
||
|
|
],
|
||
|
|
"stateMutability": "view",
|
||
|
|
"type": "function"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"inputs": [],
|
||
|
|
"name": "UPGRADE_INTERFACE_VERSION",
|
||
|
|
"outputs": [
|
||
|
|
{
|
||
|
|
"internalType": "string",
|
||
|
|
"name": "",
|
||
|
|
"type": "string"
|
||
|
|
}
|
||
|
|
],
|
||
|
|
"stateMutability": "view",
|
||
|
|
"type": "function"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"inputs": [
|
||
|
|
{
|
||
|
|
"internalType": "address",
|
||
|
|
"name": "token",
|
||
|
|
"type": "address"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"internalType": "uint64",
|
||
|
|
"name": "chainSelector",
|
||
|
|
"type": "uint64"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"internalType": "address",
|
||
|
|
"name": "receiverBridge",
|
||
|
|
"type": "address"
|
||
|
|
}
|
||
|
|
],
|
||
|
|
"name": "addDestination",
|
||
|
|
"outputs": [],
|
||
|
|
"stateMutability": "nonpayable",
|
||
|
|
"type": "function"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"inputs": [
|
||
|
|
{
|
||
|
|
"internalType": "address",
|
||
|
|
"name": "custodian",
|
||
|
|
"type": "address"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"internalType": "bool",
|
||
|
|
"name": "approved",
|
||
|
|
"type": "bool"
|
||
|
|
}
|
||
|
|
],
|
||
|
|
"name": "approveCustodian",
|
||
|
|
"outputs": [],
|
||
|
|
"stateMutability": "nonpayable",
|
||
|
|
"type": "function"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"inputs": [
|
||
|
|
{
|
||
|
|
"internalType": "address",
|
||
|
|
"name": "",
|
||
|
|
"type": "address"
|
||
|
|
}
|
||
|
|
],
|
||
|
|
"name": "approvedCustodians",
|
||
|
|
"outputs": [
|
||
|
|
{
|
||
|
|
"internalType": "bool",
|
||
|
|
"name": "",
|
||
|
|
"type": "bool"
|
||
|
|
}
|
||
|
|
],
|
||
|
|
"stateMutability": "view",
|
||
|
|
"type": "function"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"inputs": [],
|
||
|
|
"name": "assetRegistry",
|
||
|
|
"outputs": [
|
||
|
|
{
|
||
|
|
"internalType": "contract UniversalAssetRegistry",
|
||
|
|
"name": "",
|
||
|
|
"type": "address"
|
||
|
|
}
|
||
|
|
],
|
||
|
|
"stateMutability": "view",
|
||
|
|
"type": "function"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"inputs": [
|
||
|
|
{
|
||
|
|
"components": [
|
||
|
|
{
|
||
|
|
"internalType": "address",
|
||
|
|
"name": "token",
|
||
|
|
"type": "address"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"internalType": "uint256",
|
||
|
|
"name": "amount",
|
||
|
|
"type": "uint256"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"internalType": "uint64",
|
||
|
|
"name": "destinationChain",
|
||
|
|
"type": "uint64"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"internalType": "address",
|
||
|
|
"name": "recipient",
|
||
|
|
"type": "address"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"internalType": "bytes32",
|
||
|
|
"name": "assetType",
|
||
|
|
"type": "bytes32"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"internalType": "bool",
|
||
|
|
"name": "usePMM",
|
||
|
|
"type": "bool"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"internalType": "bool",
|
||
|
|
"name": "useVault",
|
||
|
|
"type": "bool"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"internalType": "bytes",
|
||
|
|
"name": "complianceProof",
|
||
|
|
"type": "bytes"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"internalType": "bytes",
|
||
|
|
"name": "vaultInstructions",
|
||
|
|
"type": "bytes"
|
||
|
|
}
|
||
|
|
],
|
||
|
|
"internalType": "struct UniversalCCIPBridge.BridgeOperation",
|
||
|
|
"name": "op",
|
||
|
|
"type": "tuple"
|
||
|
|
}
|
||
|
|
],
|
||
|
|
"name": "bridge",
|
||
|
|
"outputs": [
|
||
|
|
{
|
||
|
|
"internalType": "bytes32",
|
||
|
|
"name": "messageId",
|
||
|
|
"type": "bytes32"
|
||
|
|
}
|
||
|
|
],
|
||
|
|
"stateMutability": "payable",
|
||
|
|
"type": "function"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"inputs": [
|
||
|
|
{
|
||
|
|
"internalType": "address",
|
||
|
|
"name": "token",
|
||
|
|
"type": "address"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"internalType": "uint256",
|
||
|
|
"name": "amount",
|
||
|
|
"type": "uint256"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"internalType": "uint64",
|
||
|
|
"name": "destinationChain",
|
||
|
|
"type": "uint64"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"internalType": "address",
|
||
|
|
"name": "recipient",
|
||
|
|
"type": "address"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"internalType": "bytes32",
|
||
|
|
"name": "certificateHash",
|
||
|
|
"type": "bytes32"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"internalType": "bytes",
|
||
|
|
"name": "custodianSignature",
|
||
|
|
"type": "bytes"
|
||
|
|
}
|
||
|
|
],
|
||
|
|
"name": "bridgeCommodity",
|
||
|
|
"outputs": [
|
||
|
|
{
|
||
|
|
"internalType": "bytes32",
|
||
|
|
"name": "messageId",
|
||
|
|
"type": "bytes32"
|
||
|
|
}
|
||
|
|
],
|
||
|
|
"stateMutability": "nonpayable",
|
||
|
|
"type": "function"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"inputs": [],
|
||
|
|
"name": "ccipRouter",
|
||
|
|
"outputs": [
|
||
|
|
{
|
||
|
|
"internalType": "contract IRouterClient",
|
||
|
|
"name": "",
|
||
|
|
"type": "address"
|
||
|
|
}
|
||
|
|
],
|
||
|
|
"stateMutability": "view",
|
||
|
|
"type": "function"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"inputs": [
|
||
|
|
{
|
||
|
|
"internalType": "address",
|
||
|
|
"name": "",
|
||
|
|
"type": "address"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"internalType": "bytes32",
|
||
|
|
"name": "",
|
||
|
|
"type": "bytes32"
|
||
|
|
}
|
||
|
|
],
|
||
|
|
"name": "certificates",
|
||
|
|
"outputs": [
|
||
|
|
{
|
||
|
|
"internalType": "bytes32",
|
||
|
|
"name": "certificateHash",
|
||
|
|
"type": "bytes32"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"internalType": "address",
|
||
|
|
"name": "custodian",
|
||
|
|
"type": "address"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"internalType": "uint256",
|
||
|
|
"name": "quantity",
|
||
|
|
"type": "uint256"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"internalType": "string",
|
||
|
|
"name": "commodityType",
|
||
|
|
"type": "string"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"internalType": "uint256",
|
||
|
|
"name": "issuedAt",
|
||
|
|
"type": "uint256"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"internalType": "uint256",
|
||
|
|
"name": "expiresAt",
|
||
|
|
"type": "uint256"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"internalType": "bool",
|
||
|
|
"name": "isValid",
|
||
|
|
"type": "bool"
|
||
|
|
}
|
||
|
|
],
|
||
|
|
"stateMutability": "view",
|
||
|
|
"type": "function"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"inputs": [
|
||
|
|
{
|
||
|
|
"internalType": "uint256",
|
||
|
|
"name": "",
|
||
|
|
"type": "uint256"
|
||
|
|
}
|
||
|
|
],
|
||
|
|
"name": "deliveryIds",
|
||
|
|
"outputs": [
|
||
|
|
{
|
||
|
|
"internalType": "bytes32",
|
||
|
|
"name": "",
|
||
|
|
"type": "bytes32"
|
||
|
|
}
|
||
|
|
],
|
||
|
|
"stateMutability": "view",
|
||
|
|
"type": "function"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"inputs": [
|
||
|
|
{
|
||
|
|
"internalType": "bytes32",
|
||
|
|
"name": "",
|
||
|
|
"type": "bytes32"
|
||
|
|
}
|
||
|
|
],
|
||
|
|
"name": "deliveryRequests",
|
||
|
|
"outputs": [
|
||
|
|
{
|
||
|
|
"internalType": "bytes32",
|
||
|
|
"name": "messageId",
|
||
|
|
"type": "bytes32"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"internalType": "address",
|
||
|
|
"name": "token",
|
||
|
|
"type": "address"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"internalType": "uint256",
|
||
|
|
"name": "amount",
|
||
|
|
"type": "uint256"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"internalType": "address",
|
||
|
|
"name": "requester",
|
||
|
|
"type": "address"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"internalType": "string",
|
||
|
|
"name": "deliveryAddress",
|
||
|
|
"type": "string"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"internalType": "uint256",
|
||
|
|
"name": "requestedAt",
|
||
|
|
"type": "uint256"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"internalType": "enum CommodityCCIPBridge.DeliveryStatus",
|
||
|
|
"name": "status",
|
||
|
|
"type": "uint8"
|
||
|
|
}
|
||
|
|
],
|
||
|
|
"stateMutability": "view",
|
||
|
|
"type": "function"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"inputs": [
|
||
|
|
{
|
||
|
|
"internalType": "address",
|
||
|
|
"name": "",
|
||
|
|
"type": "address"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"internalType": "uint64",
|
||
|
|
"name": "",
|
||
|
|
"type": "uint64"
|
||
|
|
}
|
||
|
|
],
|
||
|
|
"name": "destinations",
|
||
|
|
"outputs": [
|
||
|
|
{
|
||
|
|
"internalType": "address",
|
||
|
|
"name": "receiverBridge",
|
||
|
|
"type": "address"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"internalType": "bool",
|
||
|
|
"name": "enabled",
|
||
|
|
"type": "bool"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"internalType": "uint256",
|
||
|
|
"name": "addedAt",
|
||
|
|
"type": "uint256"
|
||
|
|
}
|
||
|
|
],
|
||
|
|
"stateMutability": "view",
|
||
|
|
"type": "function"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"inputs": [
|
||
|
|
{
|
||
|
|
"internalType": "address",
|
||
|
|
"name": "token",
|
||
|
|
"type": "address"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"internalType": "uint64",
|
||
|
|
"name": "chainSelector",
|
||
|
|
"type": "uint64"
|
||
|
|
}
|
||
|
|
],
|
||
|
|
"name": "getDestination",
|
||
|
|
"outputs": [
|
||
|
|
{
|
||
|
|
"components": [
|
||
|
|
{
|
||
|
|
"internalType": "address",
|
||
|
|
"name": "receiverBridge",
|
||
|
|
"type": "address"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"internalType": "bool",
|
||
|
|
"name": "enabled",
|
||
|
|
"type": "bool"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"internalType": "uint256",
|
||
|
|
"name": "addedAt",
|
||
|
|
"type": "uint256"
|
||
|
|
}
|
||
|
|
],
|
||
|
|
"internalType": "struct UniversalCCIPBridge.Destination",
|
||
|
|
"name": "",
|
||
|
|
"type": "tuple"
|
||
|
|
}
|
||
|
|
],
|
||
|
|
"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": "address",
|
||
|
|
"name": "user",
|
||
|
|
"type": "address"
|
||
|
|
}
|
||
|
|
],
|
||
|
|
"name": "getUserNonce",
|
||
|
|
"outputs": [
|
||
|
|
{
|
||
|
|
"internalType": "uint256",
|
||
|
|
"name": "",
|
||
|
|
"type": "uint256"
|
||
|
|
}
|
||
|
|
],
|
||
|
|
"stateMutability": "view",
|
||
|
|
"type": "function"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"inputs": [
|
||
|
|
{
|
||
|
|
"internalType": "address",
|
||
|
|
"name": "user",
|
||
|
|
"type": "address"
|
||
|
|
}
|
||
|
|
],
|
||
|
|
"name": "getUserVault",
|
||
|
|
"outputs": [
|
||
|
|
{
|
||
|
|
"internalType": "address",
|
||
|
|
"name": "",
|
||
|
|
"type": "address"
|
||
|
|
}
|
||
|
|
],
|
||
|
|
"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": "_assetRegistry",
|
||
|
|
"type": "address"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"internalType": "address",
|
||
|
|
"name": "_ccipRouter",
|
||
|
|
"type": "address"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"internalType": "address",
|
||
|
|
"name": "admin",
|
||
|
|
"type": "address"
|
||
|
|
}
|
||
|
|
],
|
||
|
|
"name": "initialize",
|
||
|
|
"outputs": [],
|
||
|
|
"stateMutability": "nonpayable",
|
||
|
|
"type": "function"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"inputs": [
|
||
|
|
{
|
||
|
|
"internalType": "bytes32",
|
||
|
|
"name": "messageId",
|
||
|
|
"type": "bytes32"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"internalType": "string",
|
||
|
|
"name": "deliveryAddress",
|
||
|
|
"type": "string"
|
||
|
|
}
|
||
|
|
],
|
||
|
|
"name": "initiatePhysicalDelivery",
|
||
|
|
"outputs": [
|
||
|
|
{
|
||
|
|
"internalType": "bytes32",
|
||
|
|
"name": "deliveryId",
|
||
|
|
"type": "bytes32"
|
||
|
|
}
|
||
|
|
],
|
||
|
|
"stateMutability": "nonpayable",
|
||
|
|
"type": "function"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"inputs": [],
|
||
|
|
"name": "liquidityManager",
|
||
|
|
"outputs": [
|
||
|
|
{
|
||
|
|
"internalType": "address",
|
||
|
|
"name": "",
|
||
|
|
"type": "address"
|
||
|
|
}
|
||
|
|
],
|
||
|
|
"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": "",
|
||
|
|
"type": "bytes32"
|
||
|
|
}
|
||
|
|
],
|
||
|
|
"name": "processedMessages",
|
||
|
|
"outputs": [
|
||
|
|
{
|
||
|
|
"internalType": "bool",
|
||
|
|
"name": "",
|
||
|
|
"type": "bool"
|
||
|
|
}
|
||
|
|
],
|
||
|
|
"stateMutability": "view",
|
||
|
|
"type": "function"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"inputs": [],
|
||
|
|
"name": "proxiableUUID",
|
||
|
|
"outputs": [
|
||
|
|
{
|
||
|
|
"internalType": "bytes32",
|
||
|
|
"name": "",
|
||
|
|
"type": "bytes32"
|
||
|
|
}
|
||
|
|
],
|
||
|
|
"stateMutability": "view",
|
||
|
|
"type": "function"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"inputs": [
|
||
|
|
{
|
||
|
|
"internalType": "address",
|
||
|
|
"name": "token",
|
||
|
|
"type": "address"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"internalType": "bytes32",
|
||
|
|
"name": "certificateHash",
|
||
|
|
"type": "bytes32"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"internalType": "address",
|
||
|
|
"name": "custodian",
|
||
|
|
"type": "address"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"internalType": "uint256",
|
||
|
|
"name": "quantity",
|
||
|
|
"type": "uint256"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"internalType": "string",
|
||
|
|
"name": "commodityType",
|
||
|
|
"type": "string"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"internalType": "uint256",
|
||
|
|
"name": "expiresAt",
|
||
|
|
"type": "uint256"
|
||
|
|
}
|
||
|
|
],
|
||
|
|
"name": "registerCertificate",
|
||
|
|
"outputs": [],
|
||
|
|
"stateMutability": "nonpayable",
|
||
|
|
"type": "function"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"inputs": [
|
||
|
|
{
|
||
|
|
"internalType": "address",
|
||
|
|
"name": "token",
|
||
|
|
"type": "address"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"internalType": "uint64",
|
||
|
|
"name": "chainSelector",
|
||
|
|
"type": "uint64"
|
||
|
|
}
|
||
|
|
],
|
||
|
|
"name": "removeDestination",
|
||
|
|
"outputs": [],
|
||
|
|
"stateMutability": "nonpayable",
|
||
|
|
"type": "function"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"inputs": [
|
||
|
|
{
|
||
|
|
"internalType": "bytes32",
|
||
|
|
"name": "role",
|
||
|
|
"type": "bytes32"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"internalType": "address",
|
||
|
|
"name": "callerConfirmation",
|
||
|
|
"type": "address"
|
||
|
|
}
|
||
|
|
],
|
||
|
|
"name": "renounceRole",
|
||
|
|
"outputs": [],
|
||
|
|
"stateMutability": "nonpayable",
|
||
|
|
"type": "function"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"inputs": [
|
||
|
|
{
|
||
|
|
"internalType": "address",
|
||
|
|
"name": "token",
|
||
|
|
"type": "address"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"internalType": "bytes32",
|
||
|
|
"name": "certificateHash",
|
||
|
|
"type": "bytes32"
|
||
|
|
}
|
||
|
|
],
|
||
|
|
"name": "revokeCertificate",
|
||
|
|
"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": "_ccipRouter",
|
||
|
|
"type": "address"
|
||
|
|
}
|
||
|
|
],
|
||
|
|
"name": "setCCIPRouter",
|
||
|
|
"outputs": [],
|
||
|
|
"stateMutability": "nonpayable",
|
||
|
|
"type": "function"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"inputs": [
|
||
|
|
{
|
||
|
|
"internalType": "address",
|
||
|
|
"name": "_liquidityManager",
|
||
|
|
"type": "address"
|
||
|
|
}
|
||
|
|
],
|
||
|
|
"name": "setLiquidityManager",
|
||
|
|
"outputs": [],
|
||
|
|
"stateMutability": "nonpayable",
|
||
|
|
"type": "function"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"inputs": [
|
||
|
|
{
|
||
|
|
"internalType": "address",
|
||
|
|
"name": "_vaultFactory",
|
||
|
|
"type": "address"
|
||
|
|
}
|
||
|
|
],
|
||
|
|
"name": "setVaultFactory",
|
||
|
|
"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": "",
|
||
|
|
"type": "address"
|
||
|
|
}
|
||
|
|
],
|
||
|
|
"name": "tokenCustodians",
|
||
|
|
"outputs": [
|
||
|
|
{
|
||
|
|
"internalType": "address",
|
||
|
|
"name": "",
|
||
|
|
"type": "address"
|
||
|
|
}
|
||
|
|
],
|
||
|
|
"stateMutability": "view",
|
||
|
|
"type": "function"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"inputs": [
|
||
|
|
{
|
||
|
|
"internalType": "bytes32",
|
||
|
|
"name": "deliveryId",
|
||
|
|
"type": "bytes32"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"internalType": "enum CommodityCCIPBridge.DeliveryStatus",
|
||
|
|
"name": "status",
|
||
|
|
"type": "uint8"
|
||
|
|
}
|
||
|
|
],
|
||
|
|
"name": "updateDeliveryStatus",
|
||
|
|
"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"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"inputs": [
|
||
|
|
{
|
||
|
|
"internalType": "address",
|
||
|
|
"name": "",
|
||
|
|
"type": "address"
|
||
|
|
}
|
||
|
|
],
|
||
|
|
"name": "userVaults",
|
||
|
|
"outputs": [
|
||
|
|
{
|
||
|
|
"internalType": "address",
|
||
|
|
"name": "",
|
||
|
|
"type": "address"
|
||
|
|
}
|
||
|
|
],
|
||
|
|
"stateMutability": "view",
|
||
|
|
"type": "function"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"inputs": [
|
||
|
|
{
|
||
|
|
"internalType": "address",
|
||
|
|
"name": "",
|
||
|
|
"type": "address"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"internalType": "bytes32",
|
||
|
|
"name": "",
|
||
|
|
"type": "bytes32"
|
||
|
|
}
|
||
|
|
],
|
||
|
|
"name": "validCertificates",
|
||
|
|
"outputs": [
|
||
|
|
{
|
||
|
|
"internalType": "bool",
|
||
|
|
"name": "",
|
||
|
|
"type": "bool"
|
||
|
|
}
|
||
|
|
],
|
||
|
|
"stateMutability": "view",
|
||
|
|
"type": "function"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"inputs": [],
|
||
|
|
"name": "vaultFactory",
|
||
|
|
"outputs": [
|
||
|
|
{
|
||
|
|
"internalType": "address",
|
||
|
|
"name": "",
|
||
|
|
"type": "address"
|
||
|
|
}
|
||
|
|
],
|
||
|
|
"stateMutability": "view",
|
||
|
|
"type": "function"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"inputs": [],
|
||
|
|
"name": "withdraw",
|
||
|
|
"outputs": [],
|
||
|
|
"stateMutability": "nonpayable",
|
||
|
|
"type": "function"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"stateMutability": "payable",
|
||
|
|
"type": "receive"
|
||
|
|
}
|
||
|
|
],
|
||
|
|
"bytecode": "0x60a08060405234620000d157306080527ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a009081549060ff8260401c16620000c257506001600160401b036002600160401b0319828216016200007c575b6040516133df9081620000d7823960805181818161111801526111d20152f35b6001600160401b031990911681179091556040519081527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d290602090a13880806200005c565b63f92ee8a960e01b8152600490fd5b600080fdfe608080604052600436101561001d575b50361561001b57600080fd5b005b60003560e01c90816301ffc9a714612544575080630b189b92146124ca5780630de22984146124a15780630fe3472c14611d5357806315886a5514611d065780631e3357fc14611772578063248a9ca3146117365780632958d031146103955780632f2ff15d146116ea57806331c1e16a1461166f578063338274381461164657806336568abe146115ff578063377631d7146115395780633c1624d4146114f65780633ccfd60b146114b05780633ea7fbdb1461146d5780634b3192dd1461142e5780634be40fd1146113f35780634f1ef2861461118257806352d1902d1461110557806363673e50146110925780636834e3a814610c8d5780636f739c7a1461103b578063704f884814610fb157806378387c0414610cfe57806378835dd914610cc75780637ecebe0014610c8d57806388ba16ab14610c5c5780638a1856c21461093757806391d14854146108dd578063979d7e86146108b45780639833ca2014610809578063a217fddf146107ed578063a6425c311461074e578063ad3cb1cc14610708578063c0c53b8b1461051c578063c45d6f9914610480578063cad3642f14610445578063d547741f146103f9578063d8a06f73146103d0578063f2380a0814610395578063f72c0d8b1461035a5763fa29f52614610203573861000f565b346103555760603660031901126103555761021c612597565b6102246125d9565b9061022d6125c3565b90610236612bc7565b6001600160a01b039081169182156103235781169081156102ee577f204fe11fb8c7a51e768e894685e74e8fe9e8741492ea62d715826577a7a40eb5916020916001604051916102858361261c565b838352848301828152604084019142835288600052600487526001600160401b0360406000209a16998a6000528752604060002094511684549160ff60a01b9051151560a01b16916affffffffffffffffffffff60a81b161717835551910155604051908152a3005b60405162461bcd60e51b815260206004820152600d60248201526c2d32b937903932b1b2b4bb32b960991b6044820152606490fd5b60405162461bcd60e51b815260206004820152600a6024820152692d32b937903a37b5b2b760b11b6044820152606490fd5b600080fd5b346103555760003660031901126103555760206040517f189ab7a9244df0848122154315af71fe140f3db0fe014031783b0946b8c9d2e38152f35b346103555760203660031901126103555760206001600160a01b03806103b9612597565b166000526005825260406000205416604051908152f35b34610355576000366003190112610355576003546040516001600160a01b039091168152602090f35b346103555760403660031901126103555761001b6004356104186125ad565b908060005260008051602061336a833981519152602052610440600160406000200154612c7b565b613222565b346103555760203660031901126103555760206001600160a01b0380610469612597565b16600052600a825260406000205416604051908152f35b3461035557602036600319011261035557600435600052600c6020526040600020805460018060a01b039161051883600183015416936105086002840154916003850154166104d1600486016127b8565b9060ff600660058801549701541693604051988998895260208901526040880152606087015260e0608087015260e0860190612880565b9260a085015260c08401906128a5565b0390f35b3461035557606036600319011261035557610535612597565b61053d6125ad565b6105456125c3565b917ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a009182549360ff8560401c1615926001600160401b03861695861580610701575b600180981490816106f7575b1590816106ee575b506106dc5767ffffffffffffffff19811687178655846106bd575b506105bf6132a5565b6105c76132a5565b6105cf6132a5565b8560008051602061338a833981519152556105e86132a5565b6001600160a01b0390811690811561068857610636936001600160601b0360a01b9283600054161760005516908161067b575b505061062681612fc5565b5061063081613053565b50613103565b5061063d57005b805468ff0000000000000000191690556040519081527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d290602090a1005b865416178555858061061b565b60405162461bcd60e51b815260206004820152600d60248201526c5a65726f20726567697374727960981b6044820152606490fd5b68ffffffffffffffffff191668010000000000000001178555866105b6565b60405163f92ee8a960e01b8152600490fd5b9050158861059b565b303b159150610593565b5084610587565b3461035557600036600319011261035557610518604051
|
||
|
|
"deployedBytecode": "0x608080604052600436101561001d575b50361561001b57600080fd5b005b60003560e01c90816301ffc9a714612544575080630b189b92146124ca5780630de22984146124a15780630fe3472c14611d5357806315886a5514611d065780631e3357fc14611772578063248a9ca3146117365780632958d031146103955780632f2ff15d146116ea57806331c1e16a1461166f578063338274381461164657806336568abe146115ff578063377631d7146115395780633c1624d4146114f65780633ccfd60b146114b05780633ea7fbdb1461146d5780634b3192dd1461142e5780634be40fd1146113f35780634f1ef2861461118257806352d1902d1461110557806363673e50146110925780636834e3a814610c8d5780636f739c7a1461103b578063704f884814610fb157806378387c0414610cfe57806378835dd914610cc75780637ecebe0014610c8d57806388ba16ab14610c5c5780638a1856c21461093757806391d14854146108dd578063979d7e86146108b45780639833ca2014610809578063a217fddf146107ed578063a6425c311461074e578063ad3cb1cc14610708578063c0c53b8b1461051c578063c45d6f9914610480578063cad3642f14610445578063d547741f146103f9578063d8a06f73146103d0578063f2380a0814610395578063f72c0d8b1461035a5763fa29f52614610203573861000f565b346103555760603660031901126103555761021c612597565b6102246125d9565b9061022d6125c3565b90610236612bc7565b6001600160a01b039081169182156103235781169081156102ee577f204fe11fb8c7a51e768e894685e74e8fe9e8741492ea62d715826577a7a40eb5916020916001604051916102858361261c565b838352848301828152604084019142835288600052600487526001600160401b0360406000209a16998a6000528752604060002094511684549160ff60a01b9051151560a01b16916affffffffffffffffffffff60a81b161717835551910155604051908152a3005b60405162461bcd60e51b815260206004820152600d60248201526c2d32b937903932b1b2b4bb32b960991b6044820152606490fd5b60405162461bcd60e51b815260206004820152600a6024820152692d32b937903a37b5b2b760b11b6044820152606490fd5b600080fd5b346103555760003660031901126103555760206040517f189ab7a9244df0848122154315af71fe140f3db0fe014031783b0946b8c9d2e38152f35b346103555760203660031901126103555760206001600160a01b03806103b9612597565b166000526005825260406000205416604051908152f35b34610355576000366003190112610355576003546040516001600160a01b039091168152602090f35b346103555760403660031901126103555761001b6004356104186125ad565b908060005260008051602061336a833981519152602052610440600160406000200154612c7b565b613222565b346103555760203660031901126103555760206001600160a01b0380610469612597565b16600052600a825260406000205416604051908152f35b3461035557602036600319011261035557600435600052600c6020526040600020805460018060a01b039161051883600183015416936105086002840154916003850154166104d1600486016127b8565b9060ff600660058801549701541693604051988998895260208901526040880152606087015260e0608087015260e0860190612880565b9260a085015260c08401906128a5565b0390f35b3461035557606036600319011261035557610535612597565b61053d6125ad565b6105456125c3565b917ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a009182549360ff8560401c1615926001600160401b03861695861580610701575b600180981490816106f7575b1590816106ee575b506106dc5767ffffffffffffffff19811687178655846106bd575b506105bf6132a5565b6105c76132a5565b6105cf6132a5565b8560008051602061338a833981519152556105e86132a5565b6001600160a01b0390811690811561068857610636936001600160601b0360a01b9283600054161760005516908161067b575b505061062681612fc5565b5061063081613053565b50613103565b5061063d57005b805468ff0000000000000000191690556040519081527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d290602090a1005b865416178555858061061b565b60405162461bcd60e51b815260206004820152600d60248201526c5a65726f20726567697374727960981b6044820152606490fd5b68ffffffffffffffffff191668010000000000000001178555866105b6565b60405163f92ee8a960e01b8152600490fd5b9050158861059b565b303b159150610593565b5084610587565b34610355576000366003190112610355576105186040516107288161266d565b60058152640352e302e360dc1b6020820152604051918291602083526020830190612880565b34610355576040366003190112610355576060610769612597565b6107716125d9565b610779612ba8565b5060018060a01b0380921660005260046020526001600160401b0360406000209116600052602052604060002090604051906107b48261261c565b6040600184549283169485855260ff602086019460a01c1615158452015492019182526040519283525115156020830152516040820152f35b3461035557
|
||
|
|
"linkReferences": {},
|
||
|
|
"deployedLinkReferences": {}
|
||
|
|
}
|