999 lines
48 KiB
JSON
999 lines
48 KiB
JSON
{
|
|
"_format": "hh-sol-artifact-1",
|
|
"contractName": "LiquidityManager",
|
|
"sourceName": "contracts/liquidity/LiquidityManager.sol",
|
|
"abi": [
|
|
{
|
|
"inputs": [],
|
|
"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": "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": [],
|
|
"name": "UUPSUnauthorizedCallContext",
|
|
"type": "error"
|
|
},
|
|
{
|
|
"inputs": [
|
|
{
|
|
"internalType": "bytes32",
|
|
"name": "slot",
|
|
"type": "bytes32"
|
|
}
|
|
],
|
|
"name": "UUPSUnsupportedProxiableUUID",
|
|
"type": "error"
|
|
},
|
|
{
|
|
"anonymous": false,
|
|
"inputs": [
|
|
{
|
|
"indexed": true,
|
|
"internalType": "address",
|
|
"name": "token",
|
|
"type": "address"
|
|
},
|
|
{
|
|
"components": [
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "minAmountForPMM",
|
|
"type": "uint256"
|
|
},
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "maxSlippageBps",
|
|
"type": "uint256"
|
|
},
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "timeout",
|
|
"type": "uint256"
|
|
},
|
|
{
|
|
"internalType": "bool",
|
|
"name": "autoCreate",
|
|
"type": "bool"
|
|
},
|
|
{
|
|
"internalType": "bool",
|
|
"name": "enabled",
|
|
"type": "bool"
|
|
}
|
|
],
|
|
"indexed": false,
|
|
"internalType": "struct LiquidityManager.LiquidityConfig",
|
|
"name": "config",
|
|
"type": "tuple"
|
|
}
|
|
],
|
|
"name": "AssetConfigured",
|
|
"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": "address",
|
|
"name": "token",
|
|
"type": "address"
|
|
},
|
|
{
|
|
"indexed": false,
|
|
"internalType": "uint256",
|
|
"name": "amount",
|
|
"type": "uint256"
|
|
},
|
|
{
|
|
"indexed": false,
|
|
"internalType": "address",
|
|
"name": "provider",
|
|
"type": "address"
|
|
}
|
|
],
|
|
"name": "LiquidityProvided",
|
|
"type": "event"
|
|
},
|
|
{
|
|
"anonymous": false,
|
|
"inputs": [
|
|
{
|
|
"indexed": true,
|
|
"internalType": "bytes32",
|
|
"name": "messageId",
|
|
"type": "bytes32"
|
|
}
|
|
],
|
|
"name": "LiquidityReleased",
|
|
"type": "event"
|
|
},
|
|
{
|
|
"anonymous": false,
|
|
"inputs": [
|
|
{
|
|
"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": "LiquidityReserved",
|
|
"type": "event"
|
|
},
|
|
{
|
|
"anonymous": false,
|
|
"inputs": [
|
|
{
|
|
"indexed": true,
|
|
"internalType": "address",
|
|
"name": "provider",
|
|
"type": "address"
|
|
},
|
|
{
|
|
"indexed": false,
|
|
"internalType": "uint256",
|
|
"name": "priority",
|
|
"type": "uint256"
|
|
}
|
|
],
|
|
"name": "ProviderAdded",
|
|
"type": "event"
|
|
},
|
|
{
|
|
"anonymous": false,
|
|
"inputs": [
|
|
{
|
|
"indexed": true,
|
|
"internalType": "address",
|
|
"name": "provider",
|
|
"type": "address"
|
|
}
|
|
],
|
|
"name": "ProviderRemoved",
|
|
"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": "DEFAULT_ADMIN_ROLE",
|
|
"outputs": [
|
|
{
|
|
"internalType": "bytes32",
|
|
"name": "",
|
|
"type": "bytes32"
|
|
}
|
|
],
|
|
"stateMutability": "view",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"inputs": [],
|
|
"name": "LIQUIDITY_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": "provider",
|
|
"type": "address"
|
|
},
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "priority",
|
|
"type": "uint256"
|
|
}
|
|
],
|
|
"name": "addProvider",
|
|
"outputs": [],
|
|
"stateMutability": "nonpayable",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"inputs": [
|
|
{
|
|
"internalType": "address",
|
|
"name": "",
|
|
"type": "address"
|
|
}
|
|
],
|
|
"name": "assetConfigs",
|
|
"outputs": [
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "minAmountForPMM",
|
|
"type": "uint256"
|
|
},
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "maxSlippageBps",
|
|
"type": "uint256"
|
|
},
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "timeout",
|
|
"type": "uint256"
|
|
},
|
|
{
|
|
"internalType": "bool",
|
|
"name": "autoCreate",
|
|
"type": "bool"
|
|
},
|
|
{
|
|
"internalType": "bool",
|
|
"name": "enabled",
|
|
"type": "bool"
|
|
}
|
|
],
|
|
"stateMutability": "view",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"inputs": [
|
|
{
|
|
"internalType": "address",
|
|
"name": "token",
|
|
"type": "address"
|
|
},
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "minAmountForPMM",
|
|
"type": "uint256"
|
|
},
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "maxSlippageBps",
|
|
"type": "uint256"
|
|
},
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "timeout",
|
|
"type": "uint256"
|
|
},
|
|
{
|
|
"internalType": "bool",
|
|
"name": "autoCreate",
|
|
"type": "bool"
|
|
},
|
|
{
|
|
"internalType": "bool",
|
|
"name": "enabled",
|
|
"type": "bool"
|
|
}
|
|
],
|
|
"name": "configureAsset",
|
|
"outputs": [],
|
|
"stateMutability": "nonpayable",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"inputs": [
|
|
{
|
|
"internalType": "address",
|
|
"name": "token",
|
|
"type": "address"
|
|
}
|
|
],
|
|
"name": "getAssetConfig",
|
|
"outputs": [
|
|
{
|
|
"components": [
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "minAmountForPMM",
|
|
"type": "uint256"
|
|
},
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "maxSlippageBps",
|
|
"type": "uint256"
|
|
},
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "timeout",
|
|
"type": "uint256"
|
|
},
|
|
{
|
|
"internalType": "bool",
|
|
"name": "autoCreate",
|
|
"type": "bool"
|
|
},
|
|
{
|
|
"internalType": "bool",
|
|
"name": "enabled",
|
|
"type": "bool"
|
|
}
|
|
],
|
|
"internalType": "struct LiquidityManager.LiquidityConfig",
|
|
"name": "",
|
|
"type": "tuple"
|
|
}
|
|
],
|
|
"stateMutability": "view",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"inputs": [
|
|
{
|
|
"internalType": "address",
|
|
"name": "tokenIn",
|
|
"type": "address"
|
|
},
|
|
{
|
|
"internalType": "address",
|
|
"name": "tokenOut",
|
|
"type": "address"
|
|
},
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "amountIn",
|
|
"type": "uint256"
|
|
}
|
|
],
|
|
"name": "getBestQuote",
|
|
"outputs": [
|
|
{
|
|
"internalType": "address",
|
|
"name": "bestProvider",
|
|
"type": "address"
|
|
},
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "bestAmountOut",
|
|
"type": "uint256"
|
|
},
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "bestSlippageBps",
|
|
"type": "uint256"
|
|
}
|
|
],
|
|
"stateMutability": "view",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"inputs": [
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "index",
|
|
"type": "uint256"
|
|
}
|
|
],
|
|
"name": "getProvider",
|
|
"outputs": [
|
|
{
|
|
"internalType": "address",
|
|
"name": "",
|
|
"type": "address"
|
|
}
|
|
],
|
|
"stateMutability": "view",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"inputs": [],
|
|
"name": "getProviderCount",
|
|
"outputs": [
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "",
|
|
"type": "uint256"
|
|
}
|
|
],
|
|
"stateMutability": "view",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"inputs": [
|
|
{
|
|
"internalType": "bytes32",
|
|
"name": "messageId",
|
|
"type": "bytes32"
|
|
}
|
|
],
|
|
"name": "getReservation",
|
|
"outputs": [
|
|
{
|
|
"components": [
|
|
{
|
|
"internalType": "bytes32",
|
|
"name": "messageId",
|
|
"type": "bytes32"
|
|
},
|
|
{
|
|
"internalType": "address",
|
|
"name": "token",
|
|
"type": "address"
|
|
},
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "amount",
|
|
"type": "uint256"
|
|
},
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "reservedAt",
|
|
"type": "uint256"
|
|
},
|
|
{
|
|
"internalType": "bool",
|
|
"name": "released",
|
|
"type": "bool"
|
|
}
|
|
],
|
|
"internalType": "struct LiquidityManager.LiquidityReservation",
|
|
"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": "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": "admin",
|
|
"type": "address"
|
|
}
|
|
],
|
|
"name": "initialize",
|
|
"outputs": [],
|
|
"stateMutability": "nonpayable",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"inputs": [
|
|
{
|
|
"internalType": "address",
|
|
"name": "token",
|
|
"type": "address"
|
|
},
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "amount",
|
|
"type": "uint256"
|
|
},
|
|
{
|
|
"internalType": "bytes",
|
|
"name": "strategyParams",
|
|
"type": "bytes"
|
|
}
|
|
],
|
|
"name": "provideLiquidity",
|
|
"outputs": [
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "liquidityProvided",
|
|
"type": "uint256"
|
|
}
|
|
],
|
|
"stateMutability": "nonpayable",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"inputs": [
|
|
{
|
|
"internalType": "address",
|
|
"name": "",
|
|
"type": "address"
|
|
}
|
|
],
|
|
"name": "providerInfo",
|
|
"outputs": [
|
|
{
|
|
"internalType": "address",
|
|
"name": "providerContract",
|
|
"type": "address"
|
|
},
|
|
{
|
|
"internalType": "bool",
|
|
"name": "active",
|
|
"type": "bool"
|
|
},
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "priority",
|
|
"type": "uint256"
|
|
},
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "totalVolume",
|
|
"type": "uint256"
|
|
},
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "successfulSwaps",
|
|
"type": "uint256"
|
|
},
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "failedSwaps",
|
|
"type": "uint256"
|
|
}
|
|
],
|
|
"stateMutability": "view",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"inputs": [
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "",
|
|
"type": "uint256"
|
|
}
|
|
],
|
|
"name": "providers",
|
|
"outputs": [
|
|
{
|
|
"internalType": "contract ILiquidityProvider",
|
|
"name": "",
|
|
"type": "address"
|
|
}
|
|
],
|
|
"stateMutability": "view",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"inputs": [],
|
|
"name": "proxiableUUID",
|
|
"outputs": [
|
|
{
|
|
"internalType": "bytes32",
|
|
"name": "",
|
|
"type": "bytes32"
|
|
}
|
|
],
|
|
"stateMutability": "view",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"inputs": [
|
|
{
|
|
"internalType": "bytes32",
|
|
"name": "messageId",
|
|
"type": "bytes32"
|
|
}
|
|
],
|
|
"name": "releaseLiquidity",
|
|
"outputs": [],
|
|
"stateMutability": "nonpayable",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"inputs": [
|
|
{
|
|
"internalType": "address",
|
|
"name": "provider",
|
|
"type": "address"
|
|
}
|
|
],
|
|
"name": "removeProvider",
|
|
"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": "bytes32",
|
|
"name": "",
|
|
"type": "bytes32"
|
|
}
|
|
],
|
|
"name": "reservations",
|
|
"outputs": [
|
|
{
|
|
"internalType": "bytes32",
|
|
"name": "messageId",
|
|
"type": "bytes32"
|
|
},
|
|
{
|
|
"internalType": "address",
|
|
"name": "token",
|
|
"type": "address"
|
|
},
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "amount",
|
|
"type": "uint256"
|
|
},
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "reservedAt",
|
|
"type": "uint256"
|
|
},
|
|
{
|
|
"internalType": "bool",
|
|
"name": "released",
|
|
"type": "bool"
|
|
}
|
|
],
|
|
"stateMutability": "view",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"inputs": [
|
|
{
|
|
"internalType": "bytes32",
|
|
"name": "messageId",
|
|
"type": "bytes32"
|
|
},
|
|
{
|
|
"internalType": "address",
|
|
"name": "token",
|
|
"type": "address"
|
|
},
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "amount",
|
|
"type": "uint256"
|
|
}
|
|
],
|
|
"name": "reserveLiquidity",
|
|
"outputs": [],
|
|
"stateMutability": "nonpayable",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"inputs": [
|
|
{
|
|
"internalType": "bytes32",
|
|
"name": "role",
|
|
"type": "bytes32"
|
|
},
|
|
{
|
|
"internalType": "address",
|
|
"name": "account",
|
|
"type": "address"
|
|
}
|
|
],
|
|
"name": "revokeRole",
|
|
"outputs": [],
|
|
"stateMutability": "nonpayable",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"inputs": [
|
|
{
|
|
"internalType": "bytes4",
|
|
"name": "interfaceId",
|
|
"type": "bytes4"
|
|
}
|
|
],
|
|
"name": "supportsInterface",
|
|
"outputs": [
|
|
{
|
|
"internalType": "bool",
|
|
"name": "",
|
|
"type": "bool"
|
|
}
|
|
],
|
|
"stateMutability": "view",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"inputs": [
|
|
{
|
|
"internalType": "address",
|
|
"name": "newImplementation",
|
|
"type": "address"
|
|
},
|
|
{
|
|
"internalType": "bytes",
|
|
"name": "data",
|
|
"type": "bytes"
|
|
}
|
|
],
|
|
"name": "upgradeToAndCall",
|
|
"outputs": [],
|
|
"stateMutability": "payable",
|
|
"type": "function"
|
|
}
|
|
],
|
|
"bytecode": "0x60a080604052346100cc57306080527ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a009081549060ff8260401c166100bd57506001600160401b036002600160401b031982821601610078575b604051611a9b90816100d28239608051818181610ba00152610caf0152f35b6001600160401b031990911681179091556040519081527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d290602090a1388080610059565b63f92ee8a960e01b8152600490fd5b600080fdfe608080604052600436101561001357600080fd5b60003560e01c90816301ffc9a71461142b57508063228c04b8146111ff578063248a9ca3146111c35780632f2ff15d14611177578063307ef41814610fc357806336568abe14610f7c5780633ae2591614610f0657806346ce417514610ee85780634f1ef28614610c3357806350f3fc8114610c0a57806352d1902d14610b8d5780635c42d07914610b565780636ec3ab6714610aad578063700a98c71461098c5780637609d7f61461091e5780638925955d146107aa5780638a355a571461074157806391d14854146106e7578063a1b416f914610683578063a217fddf14610667578063ad3cb1cc146105bc578063b7b3142f14610513578063c4d66de814610399578063d4549402146102bc578063d4c537b114610281578063d547741f14610233578063ec68555f146101935763f72c0d8b1461015357600080fd5b3461018e57600036600319011261018e5760206040517f189ab7a9244df0848122154315af71fe140f3db0fe014031783b0946b8c9d2e38152f35b600080fd5b3461018e57602036600319011261018e576101ac611551565b50600435600052600360205260a060406000206040516101cb816114aa565b815491828252600180851b0380600183015416906020840191825260028301549160408501928352608060ff60046003870154966060890197885201541695019415158552604051958652511660208501525160408401525160608301525115156080820152f35b3461018e57604036600319011261018e5761027f600435610252611494565b9080600052600080516020611a4683398151915260205261027a60016040600020015461166e565b6118fe565b005b3461018e57600036600319011261018e5760206040517f1c1d6a5f3ae1f700280a9c372e31677fd4d4d07a3bf95b17a36a890c8ab4a1a58152f35b3461018e57602036600319011261018e576004356102d86115f4565b806000526003602052604060002060038101541561036557600401805460ff811661032d5760ff191660011790557f2e44aa5ff708aab9430792132c7d27a206e9abd04cfc558da8b85edbbe8f699a600080a2005b60405162461bcd60e51b815260206004820152601060248201526f105b1c9958591e481c995b19585cd95960821b6044820152606490fd5b60405162461bcd60e51b815260206004820152600c60248201526b139bdd081c995cd95c9d995960a21b6044820152606490fd5b3461018e57602036600319011261018e576103b261147e565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a0090815460ff8160401c16159167ffffffffffffffff82168015908161050b575b6001149081610501575b1590816104f8575b506104e65767ffffffffffffffff198216600117845561048391836104c7575b5061042e611981565b610436611981565b61043e611981565b60017f9b779b17422d0df92223018b32b4d1fa46e071723d6817e2486d003becc55f005561046a611981565b610473816116a1565b5061047d8161172f565b506117df565b5061048a57005b68ff00000000000000001981541690557fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d2602060405160018152a1005b68ffffffffffffffffff19166801000000000000000117845584610425565b60405163f92ee8a960e01b8152600490fd5b90501585610405565b303b1591506103fd565b8491506103f3565b3461018e57606036600319011261018e5761052c61147e565b60443567ffffffffffffffff80821161018e573660238301121561018e57816004013590811161018e573691016024011161018e577f9b779b17422d0df92223018b32b4d1fa46e071723d6817e2486d003becc55f0060028154146105aa5760016105a0602093600284556024359061157c565b9155604051908152f35b604051633ee5aeb560e01b8152600490fd5b3461018e57600036600319011261018e576040516040810181811067ffffffffffffffff8211176106515760405260058152602090640352e302e360dc1b60208201526040518092602082528251908160208401526000935b828510610638575050604092506000838284010152601f80199101168101030190f35b8481018201518686016040015293810193859350610615565b634e487b7160e01b600052604160045260246000fd5b3461018e57600036600319011261018e57602060405160008152f35b3461018e57602036600319011261018e57600435600052600360205260a06040600020805490600180841b0360018201541690600281015460ff60046003840154930154169260405194855260208501526040840152606083015215156080820152f35b3461018e57604036600319011261018e57610700611494565b600435600052600080516020611a4683398151915260205260406000209060018060a01b0316600052602052602060ff604060002054166040519015158152f35b3461018e57602036600319011261018e5761075a61147e565b6107626115f4565b6001600160a01b03166000818152600260205260408120805460ff60a01b191690557f1589f8555933761a3cff8aa925061be3b46e2dd43f621322ab611d300f62b1d99080a2005b3461018e57606036600319011261018e576004356107c6611494565b6044356107d16115f4565b82156108e4578260005260036020526003604060002001546108ac577f4a118b7157bb5a568f4398d4fe6ba2ef3f37419aa4b76e3332c316a00685aea59160409161089f8351610820816114aa565b8681526004602082019460018060a01b038091169586815287840186815260608501914283526080860193600085528c60005260036020528a60002096518755600187019151166bffffffffffffffffffffffff60a01b82541617905551600285015551600384015551151591019060ff801983541691151516179055565b82519182526020820152a2005b60405162461bcd60e51b815260206004820152601060248201526f105b1c9958591e481c995cd95c9d995960821b6044820152606490fd5b60405162461bcd60e51b8152602060048201526012602482015271125b9d985b1a59081b595cdcd859d948125160721b6044820152606490fd5b3461018e57602036600319011261018e576001600160a01b0361093f61147e565b16600052600060205260a0604060002060ff8154916001810154906003600282015491015491604051948552602085015260408401528181161515606084015260081c1615156080820152f35b3461018e5760c036600319011261018e576109a561147e565b6084359081151580920361018e5760a4359182151580930361018e577fcf4195a751abd945f8cecd6a30cb43bbc2e2f5899f681d71bf7cc4c4fe1e9c739160ff60a0926109f06115f4565b81604051936109fe856114aa565b602435855260208501906044358252604086019060643582526060870194855260808701998a52600180891b03169889600052600060205260406000209651875560018701925183556002870191518255610a6c6003880195511515869060ff801983541691151516179055565b5115159161ff0085549360081b1661ff001984161780955560405196548752546020870152546040860152161515606084015260081c1615156080820152a2005b3461018e57602036600319011261018e57610ac661147e565b610ace611551565b5060018060a01b0316600052600060205260a0604060002060405190610af3826114aa565b8054918281526001820154916020820192835260036002820154916040840192835201549260ff6080606085019482871615158652019460081c161515845260405194855251602085015251604084015251151560608301525115156080820152f35b3461018e57602036600319011261018e576020610b74600435611504565b905460405160039290921b1c6001600160a01b03168152f35b3461018e57600036600319011261018e577f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03163003610bf85760206040517f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc8152f35b60405163703e46dd60e11b8152600490fd5b3461018e57602036600319011261018e5760043560015481101561018e57610b74602091611504565b604036600319011261018e57610c4761147e565b602490813567ffffffffffffffff811161018e573660238201121561018e578060040135610c74816114e8565b92610c8260405194856114c6565b818452602091828501933687838301011161018e5781600092888693018737860101526001600160a01b037f00000000000000000000000000000000000000000000000000000000000000008116308114908115610eba575b50610bf8577f189ab7a9244df0848122154315af71fe140f3db0fe014031783b0946b8c9d2e380600052600080516020611a468339815191528452604060002033600052845260ff6040600020541615610e9d57508116936040516352d1902d60e01b81528381600481895afa60009181610e6e575b50610d6e57604051634c9c8ce360e01b8152600481018790528790fd5b8590877f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc91828103610e595750843b15610e43575080546001600160a01b03191682179055604051907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b600080a2815115610e285750600061027f9481925190845af4903d15610e1f573d610e02816114e8565b90610e1060405192836114c6565b8152600081943d92013e6119c2565b606092506119c2565b935050505034610e3457005b63b398979f60e01b8152600490fd5b604051634c9c8ce360e01b815260048101849052fd5b60405190632a87526960e21b82526004820152fd5b9091508481813d8311610e96575b610e8681836114c6565b8101031261018e57519088610d51565b503d610e7c565b866044916040519163e2517d3f60e01b8352336004840152820152fd5b9050817f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5416141587610cdb565b3461018e57600036600319011261018e576020600154604051908152f35b3461018e57602036600319011261018e5760c06001600160a01b0380610f2a61147e565b1660005260026020526040600020805490600181015460028201549060ff6004600385015494015494604051968116875260a01c161515602086015260408501526060840152608083015260a0820152f35b3461018e57604036600319011261018e57610f95611494565b336001600160a01b03821603610fb15761027f906004356118fe565b60405163334bd91960e11b8152600490fd5b3461018e57604036600319011261018e57610fdc61147e565b602435610fe76115f4565b6001600160a01b039182169182156111435782600052600260205260ff60406000205460a01c1661110e5760015468010000000000000000811015610651578060016110369201600155611504565b81549060031b908386831b921b19161790556040519160c083019280841067ffffffffffffffff8511176106515760046020937f7611bed4d4cecb0ffd91f83265a1def050ff505765b584fe17e8812cd4da43dc95604052868352848301600181526040840185815260608501906000825260808601926000845260a0870194600086528b60005260028a52604060002097511687549160ff60a01b9051151560a01b16916affffffffffffffffffffff60a81b161717865551600186015551600285015551600384015551910155604051908152a2005b60405162461bcd60e51b815260206004820152600d60248201526c105b1c9958591e481859191959609a1b6044820152606490fd5b60405162461bcd60e51b815260206004820152600c60248201526b5a65726f206164647265737360a01b6044820152606490fd5b3461018e57604036600319011261018e5761027f600435611196611494565b9080600052600080516020611a468339815191526020526111be60016040600020015461166e565b611889565b3461018e57602036600319011261018e57600435600052600080516020611a468339815191526020526020600160406000200154604051908152f35b3461018e57606036600319011261018e5761121861147e565b611220611494565b6001546000199260009283929190835b83811061125957604080516001600160a01b038816815260208101879052908101889052606090f35b61126281611504565b905460018060a01b039160031b1c16600052600260205260ff60406000205460a01c16156113e6576044602061129783611504565b90546040516372ecf29d60e11b81526001600160a01b0388811660048301528781166024830152909485939092849260039290921b1c165afa600091816113ee575b506112e957506001905b01611230565b156113e657606460406112fb83611504565b9054825163c515ee2360e01b81526001600160a01b03888116600483015287811660248301526044803590830152909485939092849260039290921b1c165afa806000926000926113ab575b506113565750506001906112e3565b8682118015611398575b61136f575b50506001906112e3565b955095509550600161138087611504565b828060a01b0391549060031b1c169594969088611365565b5086821480156113605750888110611360565b925090506040823d6040116113de575b816113c8604093836114c6565b8101031261018e5760208251920151908a611347565b3d91506113bb565b6001906112e3565b9091506020813d602011611423575b8161140a602093836114c6565b8101031261018e5751801515810361018e5790896112d9565b3d91506113fd565b3461018e57602036600319011261018e576004359063ffffffff60e01b821680920361018e57602091637965db0b60e01b811490811561146d575b5015158152f35b6301ffc9a760e01b14905083611466565b600435906001600160a01b038216820361018e57565b602435906001600160a01b038216820361018e57565b60a0810190811067ffffffffffffffff82111761065157604052565b90601f8019910116810190811067ffffffffffffffff82111761065157604052565b67ffffffffffffffff811161065157601f01601f191660200190565b60015481101561153b5760016000527fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf60190600090565b634e487b7160e01b600052603260045260246000fd5b6040519061155e826114aa565b60006080838281528260208201528260408201528260608201520152565b60018060a01b031660005260006020526080604060002060405161159f816114aa565b60ff6003835493848452600181015460208501526002810154604085015201548181161515606084015260081c16159081159384910152916115ea575b506115e45790565b50600090565b90508110386115dc565b3360009081527fa318d9f23e21f8785f5b2293c04dcace955e53ea5fd8a7524a0e62232e9a958a60205260409020547f1c1d6a5f3ae1f700280a9c372e31677fd4d4d07a3bf95b17a36a890c8ab4a1a59060ff16156116505750565b6044906040519063e2517d3f60e01b82523360048301526024820152fd5b80600052600080516020611a4683398151915260205260406000203360005260205260ff60406000205416156116505750565b6001600160a01b031660008181527fb7db2dd08fcb62d0c9e08c51941cae53c267786a0b75803fb7960902fc8ef97d6020526040812054909190600080516020611a468339815191529060ff1661172a578280526020526040822081835260205260408220600160ff198254161790553391600080516020611a268339815191528180a4600190565b505090565b6001600160a01b031660008181527fa318d9f23e21f8785f5b2293c04dcace955e53ea5fd8a7524a0e62232e9a958a60205260408120549091907f1c1d6a5f3ae1f700280a9c372e31677fd4d4d07a3bf95b17a36a890c8ab4a1a590600080516020611a468339815191529060ff166117d9578184526020526040832082845260205260408320600160ff19825416179055600080516020611a26833981519152339380a4600190565b50505090565b6001600160a01b031660008181527fab71e3f32666744d246edff3f96e4bdafee2e9867098cdd118a979a7464786a860205260408120549091907f189ab7a9244df0848122154315af71fe140f3db0fe014031783b0946b8c9d2e390600080516020611a468339815191529060ff166117d9578184526020526040832082845260205260408320600160ff19825416179055600080516020611a26833981519152339380a4600190565b90600091808352600080516020611a4683398151915280602052604084209260018060a01b03169283855260205260ff604085205416156000146117d9578184526020526040832082845260205260408320600160ff19825416179055600080516020611a26833981519152339380a4600190565b90600091808352600080516020611a4683398151915280602052604084209260018060a01b03169283855260205260ff6040852054166000146117d957818452602052604083208284526020526040832060ff1981541690557ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b339380a4600190565b60ff7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a005460401c16156119b057565b604051631afcd79f60e31b8152600490fd5b906119e957508051156119d757805190602001fd5b604051630a12f52160e11b8152600490fd5b81511580611a1c575b6119fa575090565b604051639996b31560e01b81526001600160a01b039091166004820152602490fd5b50803b156119f256fe2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d02dd7bc7dec4dceedda775e58dd541e08a116c6c53815c0bd028192f7b626800a26469706673582212206caef6e9726303acf58d8cd0f611b3f0fdc1456c7ce3fd949aedb019df2bfdce64736f6c63430008160033",
|
|
"deployedBytecode": "0x608080604052600436101561001357600080fd5b60003560e01c90816301ffc9a71461142b57508063228c04b8146111ff578063248a9ca3146111c35780632f2ff15d14611177578063307ef41814610fc357806336568abe14610f7c5780633ae2591614610f0657806346ce417514610ee85780634f1ef28614610c3357806350f3fc8114610c0a57806352d1902d14610b8d5780635c42d07914610b565780636ec3ab6714610aad578063700a98c71461098c5780637609d7f61461091e5780638925955d146107aa5780638a355a571461074157806391d14854146106e7578063a1b416f914610683578063a217fddf14610667578063ad3cb1cc146105bc578063b7b3142f14610513578063c4d66de814610399578063d4549402146102bc578063d4c537b114610281578063d547741f14610233578063ec68555f146101935763f72c0d8b1461015357600080fd5b3461018e57600036600319011261018e5760206040517f189ab7a9244df0848122154315af71fe140f3db0fe014031783b0946b8c9d2e38152f35b600080fd5b3461018e57602036600319011261018e576101ac611551565b50600435600052600360205260a060406000206040516101cb816114aa565b815491828252600180851b0380600183015416906020840191825260028301549160408501928352608060ff60046003870154966060890197885201541695019415158552604051958652511660208501525160408401525160608301525115156080820152f35b3461018e57604036600319011261018e5761027f600435610252611494565b9080600052600080516020611a4683398151915260205261027a60016040600020015461166e565b6118fe565b005b3461018e57600036600319011261018e5760206040517f1c1d6a5f3ae1f700280a9c372e31677fd4d4d07a3bf95b17a36a890c8ab4a1a58152f35b3461018e57602036600319011261018e576004356102d86115f4565b806000526003602052604060002060038101541561036557600401805460ff811661032d5760ff191660011790557f2e44aa5ff708aab9430792132c7d27a206e9abd04cfc558da8b85edbbe8f699a600080a2005b60405162461bcd60e51b815260206004820152601060248201526f105b1c9958591e481c995b19585cd95960821b6044820152606490fd5b60405162461bcd60e51b815260206004820152600c60248201526b139bdd081c995cd95c9d995960a21b6044820152606490fd5b3461018e57602036600319011261018e576103b261147e565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a0090815460ff8160401c16159167ffffffffffffffff82168015908161050b575b6001149081610501575b1590816104f8575b506104e65767ffffffffffffffff198216600117845561048391836104c7575b5061042e611981565b610436611981565b61043e611981565b60017f9b779b17422d0df92223018b32b4d1fa46e071723d6817e2486d003becc55f005561046a611981565b610473816116a1565b5061047d8161172f565b506117df565b5061048a57005b68ff00000000000000001981541690557fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d2602060405160018152a1005b68ffffffffffffffffff19166801000000000000000117845584610425565b60405163f92ee8a960e01b8152600490fd5b90501585610405565b303b1591506103fd565b8491506103f3565b3461018e57606036600319011261018e5761052c61147e565b60443567ffffffffffffffff80821161018e573660238301121561018e57816004013590811161018e573691016024011161018e577f9b779b17422d0df92223018b32b4d1fa46e071723d6817e2486d003becc55f0060028154146105aa5760016105a0602093600284556024359061157c565b9155604051908152f35b604051633ee5aeb560e01b8152600490fd5b3461018e57600036600319011261018e576040516040810181811067ffffffffffffffff8211176106515760405260058152602090640352e302e360dc1b60208201526040518092602082528251908160208401526000935b828510610638575050604092506000838284010152601f80199101168101030190f35b8481018201518686016040015293810193859350610615565b634e487b7160e01b600052604160045260246000fd5b3461018e57600036600319011261018e57602060405160008152f35b3461018e57602036600319011261018e57600435600052600360205260a06040600020805490600180841b0360018201541690600281015460ff60046003840154930154169260405194855260208501526040840152606083015215156080820152f35b3461018e57604036600319011261018e57610700611494565b600435600052600080516020611a4683398151915260205260406000209060018060a01b0316600052602052602060ff604060002054166040519015158152f35b3461018e57602036600319011261018e5761075a61147e565b6107626115f4565b6001600160a01b03166000818152600260205260408120805460ff60a01b191690557f1589f8555933761a3cff8aa925061be3b46e2dd43f621322ab611d300f62b1d99080a2005b3461018e57606036600319011261018e576004356107c6611494565b6044356107d16115f4565b82156108e4578260005260036020526003604060002001546108ac577f4a118b7157bb5a568f4398d4fe6ba2ef3f37419aa4b76e3332c316a00685aea59160409161089f8351610820816114aa565b8681526004602082019460018060a01b038091169586815287840186815260608501914283526080860193600085528c60005260036020528a60002096518755600187019151166bffffffffffffffffffffffff60a01b82541617905551600285015551600384015551151591019060ff801983541691151516179055565b82519182526020820152a2005b60405162461bcd60e51b815260206004820152601060248201526f105b1c9958591e481c995cd95c9d995960821b6044820152606490fd5b60405162461bcd60e51b8152602060048201526012602482015271125b9d985b1a59081b595cdcd859d948125160721b6044820152606490fd5b3461018e57602036600319011261018e576001600160a01b0361093f61147e565b16600052600060205260a0604060002060ff8154916001810154906003600282015491015491604051948552602085015260408401528181161515606084015260081c1615156080820152f35b3461018e5760c036600319011261018e576109a561147e565b6084359081151580920361018e5760a4359182151580930361018e577fcf4195a751abd945f8cecd6a30cb43bbc2e2f5899f681d71bf7cc4c4fe1e9c739160ff60a0926109f06115f4565b81604051936109fe856114aa565b602435855260208501906044358252604086019060643582526060870194855260808701998a52600180891b03169889600052600060205260406000209651875560018701925183556002870191518255610a6c6003880195511515869060ff801983541691151516179055565b5115159161ff0085549360081b1661ff001984161780955560405196548752546020870152546040860152161515606084015260081c1615156080820152a2005b3461018e57602036600319011261018e57610ac661147e565b610ace611551565b5060018060a01b0316600052600060205260a0604060002060405190610af3826114aa565b8054918281526001820154916020820192835260036002820154916040840192835201549260ff6080606085019482871615158652019460081c161515845260405194855251602085015251604084015251151560608301525115156080820152f35b3461018e57602036600319011261018e576020610b74600435611504565b905460405160039290921b1c6001600160a01b03168152f35b3461018e57600036600319011261018e577f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03163003610bf85760206040517f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc8152f35b60405163703e46dd60e11b8152600490fd5b3461018e57602036600319011261018e5760043560015481101561018e57610b74602091611504565b604036600319011261018e57610c4761147e565b602490813567ffffffffffffffff811161018e573660238201121561018e578060040135610c74816114e8565b92610c8260405194856114c6565b818452602091828501933687838301011161018e5781600092888693018737860101526001600160a01b037f00000000000000000000000000000000000000000000000000000000000000008116308114908115610eba575b50610bf8577f189ab7a9244df0848122154315af71fe140f3db0fe014031783b0946b8c9d2e380600052600080516020611a468339815191528452604060002033600052845260ff6040600020541615610e9d57508116936040516352d1902d60e01b81528381600481895afa60009181610e6e575b50610d6e57604051634c9c8ce360e01b8152600481018790528790fd5b8590877f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc91828103610e595750843b15610e43575080546001600160a01b03191682179055604051907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b600080a2815115610e285750600061027f9481925190845af4903d15610e1f573d610e02816114e8565b90610e1060405192836114c6565b8152600081943d92013e6119c2565b606092506119c2565b935050505034610e3457005b63b398979f60e01b8152600490fd5b604051634c9c8ce360e01b815260048101849052fd5b60405190632a87526960e21b82526004820152fd5b9091508481813d8311610e96575b610e8681836114c6565b8101031261018e57519088610d51565b503d610e7c565b866044916040519163e2517d3f60e01b8352336004840152820152fd5b9050817f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5416141587610cdb565b3461018e57600036600319011261018e576020600154604051908152f35b3461018e57602036600319011261018e5760c06001600160a01b0380610f2a61147e565b1660005260026020526040600020805490600181015460028201549060ff6004600385015494015494604051968116875260a01c161515602086015260408501526060840152608083015260a0820152f35b3461018e57604036600319011261018e57610f95611494565b336001600160a01b03821603610fb15761027f906004356118fe565b60405163334bd91960e11b8152600490fd5b3461018e57604036600319011261018e57610fdc61147e565b602435610fe76115f4565b6001600160a01b039182169182156111435782600052600260205260ff60406000205460a01c1661110e5760015468010000000000000000811015610651578060016110369201600155611504565b81549060031b908386831b921b19161790556040519160c083019280841067ffffffffffffffff8511176106515760046020937f7611bed4d4cecb0ffd91f83265a1def050ff505765b584fe17e8812cd4da43dc95604052868352848301600181526040840185815260608501906000825260808601926000845260a0870194600086528b60005260028a52604060002097511687549160ff60a01b9051151560a01b16916affffffffffffffffffffff60a81b161717865551600186015551600285015551600384015551910155604051908152a2005b60405162461bcd60e51b815260206004820152600d60248201526c105b1c9958591e481859191959609a1b6044820152606490fd5b60405162461bcd60e51b815260206004820152600c60248201526b5a65726f206164647265737360a01b6044820152606490fd5b3461018e57604036600319011261018e5761027f600435611196611494565b9080600052600080516020611a468339815191526020526111be60016040600020015461166e565b611889565b3461018e57602036600319011261018e57600435600052600080516020611a468339815191526020526020600160406000200154604051908152f35b3461018e57606036600319011261018e5761121861147e565b611220611494565b6001546000199260009283929190835b83811061125957604080516001600160a01b038816815260208101879052908101889052606090f35b61126281611504565b905460018060a01b039160031b1c16600052600260205260ff60406000205460a01c16156113e6576044602061129783611504565b90546040516372ecf29d60e11b81526001600160a01b0388811660048301528781166024830152909485939092849260039290921b1c165afa600091816113ee575b506112e957506001905b01611230565b156113e657606460406112fb83611504565b9054825163c515ee2360e01b81526001600160a01b03888116600483015287811660248301526044803590830152909485939092849260039290921b1c165afa806000926000926113ab575b506113565750506001906112e3565b8682118015611398575b61136f575b50506001906112e3565b955095509550600161138087611504565b828060a01b0391549060031b1c169594969088611365565b5086821480156113605750888110611360565b925090506040823d6040116113de575b816113c8604093836114c6565b8101031261018e5760208251920151908a611347565b3d91506113bb565b6001906112e3565b9091506020813d602011611423575b8161140a602093836114c6565b8101031261018e5751801515810361018e5790896112d9565b3d91506113fd565b3461018e57602036600319011261018e576004359063ffffffff60e01b821680920361018e57602091637965db0b60e01b811490811561146d575b5015158152f35b6301ffc9a760e01b14905083611466565b600435906001600160a01b038216820361018e57565b602435906001600160a01b038216820361018e57565b60a0810190811067ffffffffffffffff82111761065157604052565b90601f8019910116810190811067ffffffffffffffff82111761065157604052565b67ffffffffffffffff811161065157601f01601f191660200190565b60015481101561153b5760016000527fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf60190600090565b634e487b7160e01b600052603260045260246000fd5b6040519061155e826114aa565b60006080838281528260208201528260408201528260608201520152565b60018060a01b031660005260006020526080604060002060405161159f816114aa565b60ff6003835493848452600181015460208501526002810154604085015201548181161515606084015260081c16159081159384910152916115ea575b506115e45790565b50600090565b90508110386115dc565b3360009081527fa318d9f23e21f8785f5b2293c04dcace955e53ea5fd8a7524a0e62232e9a958a60205260409020547f1c1d6a5f3ae1f700280a9c372e31677fd4d4d07a3bf95b17a36a890c8ab4a1a59060ff16156116505750565b6044906040519063e2517d3f60e01b82523360048301526024820152fd5b80600052600080516020611a4683398151915260205260406000203360005260205260ff60406000205416156116505750565b6001600160a01b031660008181527fb7db2dd08fcb62d0c9e08c51941cae53c267786a0b75803fb7960902fc8ef97d6020526040812054909190600080516020611a468339815191529060ff1661172a578280526020526040822081835260205260408220600160ff198254161790553391600080516020611a268339815191528180a4600190565b505090565b6001600160a01b031660008181527fa318d9f23e21f8785f5b2293c04dcace955e53ea5fd8a7524a0e62232e9a958a60205260408120549091907f1c1d6a5f3ae1f700280a9c372e31677fd4d4d07a3bf95b17a36a890c8ab4a1a590600080516020611a468339815191529060ff166117d9578184526020526040832082845260205260408320600160ff19825416179055600080516020611a26833981519152339380a4600190565b50505090565b6001600160a01b031660008181527fab71e3f32666744d246edff3f96e4bdafee2e9867098cdd118a979a7464786a860205260408120549091907f189ab7a9244df0848122154315af71fe140f3db0fe014031783b0946b8c9d2e390600080516020611a468339815191529060ff166117d9578184526020526040832082845260205260408320600160ff19825416179055600080516020611a26833981519152339380a4600190565b90600091808352600080516020611a4683398151915280602052604084209260018060a01b03169283855260205260ff604085205416156000146117d9578184526020526040832082845260205260408320600160ff19825416179055600080516020611a26833981519152339380a4600190565b90600091808352600080516020611a4683398151915280602052604084209260018060a01b03169283855260205260ff6040852054166000146117d957818452602052604083208284526020526040832060ff1981541690557ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b339380a4600190565b60ff7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a005460401c16156119b057565b604051631afcd79f60e31b8152600490fd5b906119e957508051156119d757805190602001fd5b604051630a12f52160e11b8152600490fd5b81511580611a1c575b6119fa575090565b604051639996b31560e01b81526001600160a01b039091166004820152602490fd5b50803b156119f256fe2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d02dd7bc7dec4dceedda775e58dd541e08a116c6c53815c0bd028192f7b626800a26469706673582212206caef6e9726303acf58d8cd0f611b3f0fdc1456c7ce3fd949aedb019df2bfdce64736f6c63430008160033",
|
|
"linkReferences": {},
|
|
"deployedLinkReferences": {}
|
|
}
|