0g-storage-node/storage-contracts-abis/ChunkLinearReward.json
2025-03-28 09:16:57 +08:00

631 lines
53 KiB
JSON

{
"_format": "hh-sol-artifact-1",
"contractName": "ChunkLinearReward",
"sourceName": "contracts/reward/ChunkLinearReward.sol",
"abi": [
{
"inputs": [
{
"internalType": "uint256",
"name": "releaseSeconds_",
"type": "uint256"
}
],
"stateMutability": "nonpayable",
"type": "constructor"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "uint256",
"name": "pricingIndex",
"type": "uint256"
},
{
"indexed": true,
"internalType": "address",
"name": "beneficiary",
"type": "address"
},
{
"indexed": true,
"internalType": "bytes32",
"name": "minerId",
"type": "bytes32"
},
{
"indexed": false,
"internalType": "uint256",
"name": "amount",
"type": "uint256"
}
],
"name": "DistributeReward",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "bytes32",
"name": "role",
"type": "bytes32"
},
{
"indexed": true,
"internalType": "bytes32",
"name": "previousAdminRole",
"type": "bytes32"
},
{
"indexed": true,
"internalType": "bytes32",
"name": "newAdminRole",
"type": "bytes32"
}
],
"name": "RoleAdminChanged",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "bytes32",
"name": "role",
"type": "bytes32"
},
{
"indexed": true,
"internalType": "address",
"name": "account",
"type": "address"
},
{
"indexed": true,
"internalType": "address",
"name": "sender",
"type": "address"
}
],
"name": "RoleGranted",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "bytes32",
"name": "role",
"type": "bytes32"
},
{
"indexed": true,
"internalType": "address",
"name": "account",
"type": "address"
},
{
"indexed": true,
"internalType": "address",
"name": "sender",
"type": "address"
}
],
"name": "RoleRevoked",
"type": "event"
},
{
"inputs": [],
"name": "DEFAULT_ADMIN_ROLE",
"outputs": [
{
"internalType": "bytes32",
"name": "",
"type": "bytes32"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "PARAMS_ADMIN_ROLE",
"outputs": [
{
"internalType": "bytes32",
"name": "",
"type": "bytes32"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "baseReward",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "pricingIndex",
"type": "uint256"
},
{
"internalType": "address payable",
"name": "beneficiary",
"type": "address"
},
{
"internalType": "bytes32",
"name": "minerID",
"type": "bytes32"
}
],
"name": "claimMineReward",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [],
"name": "donate",
"outputs": [],
"stateMutability": "payable",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "beforeLength",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "chargedSectors",
"type": "uint256"
}
],
"name": "fillReward",
"outputs": [],
"stateMutability": "payable",
"type": "function"
},
{
"inputs": [],
"name": "firstRewardableChunk",
"outputs": [
{
"internalType": "uint64",
"name": "",
"type": "uint64"
},
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "bytes32",
"name": "role",
"type": "bytes32"
}
],
"name": "getRoleAdmin",
"outputs": [
{
"internalType": "bytes32",
"name": "",
"type": "bytes32"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "bytes32",
"name": "role",
"type": "bytes32"
},
{
"internalType": "uint256",
"name": "index",
"type": "uint256"
}
],
"name": "getRoleMember",
"outputs": [
{
"internalType": "address",
"name": "",
"type": "address"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "bytes32",
"name": "role",
"type": "bytes32"
}
],
"name": "getRoleMemberCount",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "bytes32",
"name": "role",
"type": "bytes32"
},
{
"internalType": "address",
"name": "account",
"type": "address"
}
],
"name": "grantRole",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "bytes32",
"name": "role",
"type": "bytes32"
},
{
"internalType": "address",
"name": "account",
"type": "address"
}
],
"name": "hasRole",
"outputs": [
{
"internalType": "bool",
"name": "",
"type": "bool"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "market_",
"type": "address"
},
{
"internalType": "address",
"name": "mine_",
"type": "address"
}
],
"name": "initialize",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [],
"name": "initialized",
"outputs": [
{
"internalType": "bool",
"name": "",
"type": "bool"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "market",
"outputs": [
{
"internalType": "address",
"name": "",
"type": "address"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "mine",
"outputs": [
{
"internalType": "address",
"name": "",
"type": "address"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "dest",
"type": "address"
}
],
"name": "payments",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "releaseSeconds",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "bytes32",
"name": "role",
"type": "bytes32"
},
{
"internalType": "address",
"name": "account",
"type": "address"
}
],
"name": "renounceRole",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "bytes32",
"name": "role",
"type": "bytes32"
},
{
"internalType": "address",
"name": "account",
"type": "address"
}
],
"name": "revokeRole",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "pricingIndex",
"type": "uint256"
}
],
"name": "rewardDeadline",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"name": "rewards",
"outputs": [
{
"internalType": "uint128",
"name": "lockedReward",
"type": "uint128"
},
{
"internalType": "uint128",
"name": "claimableReward",
"type": "uint128"
},
{
"internalType": "uint128",
"name": "distributedReward",
"type": "uint128"
},
{
"internalType": "uint40",
"name": "startTime",
"type": "uint40"
},
{
"internalType": "uint40",
"name": "lastUpdate",
"type": "uint40"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "serviceFeeRateBps",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "baseReward_",
"type": "uint256"
}
],
"name": "setBaseReward",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "bps",
"type": "uint256"
}
],
"name": "setServiceFeeRate",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "treasury_",
"type": "address"
}
],
"name": "setTreasury",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "bytes4",
"name": "interfaceId",
"type": "bytes4"
}
],
"name": "supportsInterface",
"outputs": [
{
"internalType": "bool",
"name": "",
"type": "bool"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "totalBaseReward",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "treasury",
"outputs": [
{
"internalType": "address",
"name": "",
"type": "address"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "address payable",
"name": "payee",
"type": "address"
}
],
"name": "withdrawPayments",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
}
],
"bytecode": "0x60a060405234801561001057600080fd5b5060405161283038038061283083398101604081905261002f91610037565b608052610050565b60006020828403121561004957600080fd5b5051919050565b6080516127b0610080600039600081816102c4015281816107ac0152818161162c015261171001526127b06000f3fe608060405260043610620001f35760003560e01c80639010d07c116200010b578063b7a3c04c11620000a1578063e2982c21116200006c578063e2982c2114620005e0578063ed88c68e1462000605578063f0f44260146200060f578063f301af42146200063457600080fd5b8063b7a3c04c1462000559578063c0575111146200057e578063ca15c8731462000596578063d547741f14620005bb57600080fd5b80639b1d309111620000e25780639b1d309114620004bf578063a217fddf14620004e4578063b15d20da14620004fb578063b3b30c1a146200052057600080fd5b80639010d07c146200045357806391d14854146200047857806399f4b251146200049d57600080fd5b806331b3eb94116200018d57806361d027b3116200015857806361d027b314620003c657806376ad03bc14620004015780637f1b5e43146200041957806380f55605146200043157600080fd5b806331b3eb94146200034057806336568abe1462000365578063485cc955146200038a57806359e9670014620003af57600080fd5b8063158ef93e11620001ce578063158ef93e146200028d5780632129593114620002b0578063248a9ca314620002e65780632f2ff15d146200031b57600080fd5b806301ffc9a714620001f85780630373a23a14620002325780630a539a191462000259575b600080fd5b3480156200020557600080fd5b506200021d6200021736600462001d78565b620006e0565b60405190151581526020015b60405180910390f35b3480156200023f57600080fd5b50620002576200025136600462001da4565b6200070e565b005b3480156200026657600080fd5b506200027e6200027836600462001da4565b6200072f565b60405190815260200162000229565b3480156200029a57600080fd5b506000546200021d90600160a01b900460ff1681565b348015620002bd57600080fd5b506200027e7f000000000000000000000000000000000000000000000000000000000000000081565b348015620002f357600080fd5b506200027e6200030536600462001da4565b6000908152600160208190526040909120015490565b3480156200032857600080fd5b50620002576200033a36600462001dd4565b620007ea565b3480156200034d57600080fd5b50620002576200035f36600462001e07565b62000819565b3480156200037257600080fd5b50620002576200038436600462001dd4565b6200087d565b3480156200039757600080fd5b5062000257620003a936600462001e27565b62000903565b62000257620003c036600462001e5a565b62000a2c565b348015620003d357600080fd5b50600954620003e8906001600160a01b031681565b6040516001600160a01b03909116815260200162000229565b3480156200040e57600080fd5b506200027e60075481565b3480156200042657600080fd5b506200027e60065481565b3480156200043e57600080fd5b50600354620003e8906001600160a01b031681565b3480156200046057600080fd5b50620003e86200047236600462001e5a565b62000e9d565b3480156200048557600080fd5b506200021d6200049736600462001dd4565b62000eb7565b348015620004aa57600080fd5b50600454620003e8906001600160a01b031681565b348015620004cc57600080fd5b5062000257620004de36600462001da4565b62000ee2565b348015620004f157600080fd5b506200027e600081565b3480156200050857600080fd5b506200027e6000805160206200275b83398151915281565b3480156200052d57600080fd5b506200053862000f03565b6040805167ffffffffffffffff909316835260208301919091520162000229565b3480156200056657600080fd5b50620002576200057836600462001e7d565b62000fc9565b3480156200058b57600080fd5b506200027e60085481565b348015620005a357600080fd5b506200027e620005b536600462001da4565b620011f8565b348015620005c857600080fd5b5062000257620005da36600462001dd4565b62001211565b348015620005ed57600080fd5b506200027e620005ff36600462001e07565b6200123b565b62000257620012ad565b3480156200061c57600080fd5b50620002576200062e36600462001e07565b620012c8565b3480156200064157600080fd5b506200069d6200065336600462001da4565b600560205260009081526040902080546001909101546001600160801b0380831692600160801b908190048216929182169164ffffffffff918104821691600160a81b9091041685565b604080516001600160801b0396871681529486166020860152929094169183019190915264ffffffffff9081166060830152909116608082015260a00162000229565b60006001600160e01b03198216635a05180f60e01b1480620007085750620007088262001306565b92915050565b6000805160206200275b83398151915262000729816200133d565b50600755565b6000818152600560209081526040808320815160a08101835281546001600160801b038082168352600160801b918290048116958301959095526001909201549384169281019290925264ffffffffff908304811660608301819052600160a81b909304166080820152908203620007aa5750600092915050565b7f0000000000000000000000000000000000000000000000000000000000000000816060015164ffffffffff16620007e3919062001ece565b9392505050565b6000828152600160208190526040909120015462000808816200133d565b6200081483836200134c565b505050565b6000546040516351cff8d960e01b81526001600160a01b038381166004830152909116906351cff8d990602401600060405180830381600087803b1580156200086157600080fd5b505af115801562000876573d6000803e3d6000fd5b5050505050565b6001600160a01b0381163314620008f35760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b60648201526084015b60405180910390fd5b620008ff828262001372565b5050565b600054600160a01b900460ff16156200096b5760405162461bcd60e51b8152602060048201526024808201527f5a67496e697469616c697a61626c653a20616c726561647920696e697469616c6044820152631a5e995960e21b6064820152608401620008ea565b6000805460ff60a01b1916600160a01b17815562000991906200098b3390565b6200134c565b620009ac6000805160206200275b833981519152336200134c565b600380546001600160a01b038085166001600160a01b0319928316179092556004805492841692909116919091179055604051620009ea9062001d6a565b604051809103906000f08015801562000a07573d6000803e3d6000fd5b50600080546001600160a01b0319166001600160a01b03929092169190911790555050565b6003546001600160a01b0316336001600160a01b03161462000a915760405162461bcd60e51b815260206004820152601f60248201527f53656e64657220646f6573206e6f742068617665207065726d697373696f6e006044820152606401620008ea565b60006127106008543462000aa6919062001ee4565b62000ab2919062001f1c565b9050801562000ad35760095462000ad3906001600160a01b03168262001398565b600062000ae1823462001f33565b90508260008161010062000af86104008062001ee4565b62000b069061040062001ee4565b62000b1390600862001ee4565b62000b1f919062001f1c565b62000b2b908562001ee4565b62000b37919062001f1c565b9050600062000b47838862001ece565b9050600061010062000b5c6104008062001ee4565b62000b6a9061040062001ee4565b62000b7790600862001ee4565b62000b83919062001f1c565b62000b8f908962001f49565b61010062000ba06104008062001ee4565b62000bae9061040062001ee4565b62000bbb90600862001ee4565b62000bc7919062001f1c565b62000bd3919062001f33565b90506000600161010062000bea6104008062001ee4565b62000bf89061040062001ee4565b62000c0590600862001ee4565b62000c11919062001f1c565b62000c1d848c62001ece565b62000c29919062001f1c565b62000c35919062001f33565b9050600061010062000c4a6104008062001ee4565b62000c589061040062001ee4565b62000c6590600862001ee4565b62000c71919062001f1c565b62000c7e60018662001f33565b62000c8a919062001f49565b62000c9790600162001ece565b9050600061010062000cac6104008062001ee4565b62000cba9061040062001ee4565b62000cc790600862001ee4565b62000cd3919062001f1c565b62000cdf838762001f33565b62000ceb919062001f1c565b9050600061010062000d006104008062001ee4565b62000d0e9061040062001ee4565b62000d1b90600862001ee4565b62000d27919062001f1c565b62000d3483600162001ece565b62000d40919062001ee4565b8614905081840362000d6d57600084815260056020526040902062000d67908a83620014b7565b62000e8f565b62000dd861010062000d826104008062001ee4565b62000d909061040062001ee4565b62000d9d90600862001ee4565b62000da9919062001f1c565b62000db5878a62001ee4565b62000dc1919062001f1c565b6000868152600560205260409020906001620014b7565b600062000de785600162001ece565b90505b8281101562000e2457600081815260056020526040902062000e0f90896001620014b7565b8062000e1b8162001f60565b91505062000dea565b5062000e8f61010062000e3a6104008062001ee4565b62000e489061040062001ee4565b62000e5590600862001ee4565b62000e61919062001f1c565b62000e6d858a62001ee4565b62000e79919062001f1c565b60008481526005602052604090209083620014b7565b505050505050505050505050565b6000828152600260205260408120620007e39083620015f2565b60009182526001602090815260408084206001600160a01b0393909316845291905290205460ff1690565b6000805160206200275b83398151915262000efd816200133d565b50600855565b600080806104005b62000f208167ffffffffffffffff1662001600565b1562000f3e5790508062000f3660028262001f7c565b905062000f0b565b8067ffffffffffffffff168267ffffffffffffffff16101562000fc0576000600262000f6b848462001faf565b62000f77919062001fd3565b62000f83908462001ffd565b905062000f9a8167ffffffffffffffff1662001600565b1562000fb55762000fad81600162001ffd565b925062000fb9565b8091505b5062000f3e565b50924292509050565b6004546001600160a01b0316336001600160a01b0316146200102e5760405162461bcd60e51b815260206004820152601f60248201527f53656e64657220646f6573206e6f742068617665207065726d697373696f6e006044820152606401620008ea565b6000838152600560209081526040808320815160a08101835281546001600160801b038082168352600160801b918290048116958301959095526001909201549384169281019290925264ffffffffff90830481166060830152600160a81b909204909116608082015290620010a48262001623565b9050620010b2828262001651565b6000620010bf83620016a4565b60008781526005602090815260408083208751928801516001600160801b03938416600160801b9185168202178255918801516001909101805460608a015160808b0151939095166001600160a81b03199091161764ffffffffff9485169093029290921764ffffffffff60a81b1916600160a81b9390911692909202919091179055909150620011528785846200170b565b90506000816006541162001169576006546200116b565b815b905062001179818462001ece565b925080600660008282546200118f919062001f33565b90915550508215620011ee57620011a7878462001762565b85876001600160a01b0316897ff099de0c527342bff1397d08daae31c3de66104f48886094fbe9126a21ebf4b086604051620011e591815260200190565b60405180910390a45b5050505050505050565b60008181526002602052604081206200070890620017c9565b600082815260016020819052604090912001546200122f816200133d565b62000814838362001372565b600080546040516371d4ed8d60e11b81526001600160a01b0384811660048301529091169063e3a9db1a90602401602060405180830381865afa15801562001287573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000708919062002021565b3460066000828254620012c1919062001ece565b9091555050565b6000805160206200275b833981519152620012e3816200133d565b50600980546001600160a01b0319166001600160a01b0392909216919091179055565b60006001600160e01b03198216637965db0b60e01b14806200070857506301ffc9a760e01b6001600160e01b031983161462000708565b620013498133620017d4565b50565b62001358828262001838565b6000828152600260205260409020620008149082620018a6565b6200137e8282620018bd565b600082815260026020526040902062000814908262001927565b80471015620013ea5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a20696e73756666696369656e742062616c616e63650000006044820152606401620008ea565b6000826001600160a01b03168260405160006040518083038185875af1925050503d806000811462001439576040519150601f19603f3d011682016040523d82523d6000602084013e6200143e565b606091505b5050905080620008145760405162461bcd60e51b815260206004820152603a60248201527f416464726573733a20756e61626c6520746f2073656e642076616c75652c207260448201527f6563697069656e74206d617920686176652072657665727465640000000000006064820152608401620008ea565b6001600160801b03821115620015025760405162461bcd60e51b815260206004820152600f60248201526e526577617264206f766572666c6f7760881b6044820152606401620008ea565b6001830154600160801b900464ffffffffff1615620015645760405162461bcd60e51b815260206004820181905260248201527f526577617264206974656d20686173206265656e20696e697469616c697a65646044820152606401620008ea565b825482908490600090620015839084906001600160801b03166200203b565b92506101000a8154816001600160801b0302191690836001600160801b03160217905550801562000814575050600101805469ffffffffffffffffffff60801b1916600160801b4264ffffffffff1690810264ffffffffff60a81b191691909117600160a81b91909102179055565b6000620007e383836200193e565b6000806200160e836200072f565b90508015801590620007e35750421192915050565b600062000708827f00000000000000000000000000000000000000000000000000000000000000006200196b565b80826000018181516200166591906200205e565b6001600160801b0316905250602082018051829190620016879083906200203b565b6001600160801b03169052505064ffffffffff4216608090910152565b60008060028360200151620016ba919062002081565b90508083602001818151620016d091906200205e565b6001600160801b0316905250604083018051829190620016f29083906200203b565b6001600160801b03908116909152919091169392505050565b6000427f0000000000000000000000000000000000000000000000000000000000000000846060015164ffffffffff1662001747919062001ece565b1115620017585750600754620007e3565b5060009392505050565b60005460405163f340fa0160e01b81526001600160a01b0384811660048301529091169063f340fa019083906024016000604051808303818588803b158015620017ab57600080fd5b505af1158015620017c0573d6000803e3d6000fd5b50505050505050565b600062000708825490565b620017e0828262000eb7565b620008ff57620017f08162001a40565b620017fd83602062001a53565b60405160200162001810929190620020c4565b60408051601f198184030181529082905262461bcd60e51b8252620008ea916004016200213d565b62001844828262000eb7565b620008ff5760008281526001602081815260408084206001600160a01b0386168086529252808420805460ff19169093179092559051339285917f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d9190a45050565b6000620007e3836001600160a01b03841662001c0d565b620018c9828262000eb7565b15620008ff5760008281526001602090815260408083206001600160a01b0385168085529252808320805460ff1916905551339285917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a45050565b6000620007e3836001600160a01b03841662001c5f565b600082600001828154811062001958576200195862002172565b9060005260206000200154905092915050565b6000826080015164ffffffffff166000036200198a5750600062000708565b600083604001518460200151620019a291906200203b565b6001600160801b0316905060008185600001516001600160801b0316620019ca919062001ece565b90506000856060015164ffffffffff1642620019e7919062001f33565b9050600085620019f8838562001ee4565b62001a04919062001f1c565b90508281111562001a125750815b8381101562001a2957600094505050505062000708565b62001a35848262001f33565b979650505050505050565b6060620007086001600160a01b03831660145b6060600062001a6483600262001ee4565b62001a7190600262001ece565b67ffffffffffffffff81111562001a8c5762001a8c62002188565b6040519080825280601f01601f19166020018201604052801562001ab7576020820181803683370190505b509050600360fc1b8160008151811062001ad55762001ad562002172565b60200101906001600160f81b031916908160001a905350600f60fb1b8160018151811062001b075762001b0762002172565b60200101906001600160f81b031916908160001a905350600062001b2d84600262001ee4565b62001b3a90600162001ece565b90505b600181111562001bbc576f181899199a1a9b1b9c1cb0b131b232b360811b85600f166010811062001b725762001b7262002172565b1a60f81b82828151811062001b8b5762001b8b62002172565b60200101906001600160f81b031916908160001a90535060049490941c9362001bb4816200219e565b905062001b3d565b508315620007e35760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152606401620008ea565b600081815260018301602052604081205462001c565750815460018181018455600084815260208082209093018490558454848252828601909352604090209190915562000708565b50600062000708565b6000818152600183016020526040812054801562001d5857600062001c8660018362001f33565b855490915060009062001c9c9060019062001f33565b905081811462001d0857600086600001828154811062001cc05762001cc062002172565b906000526020600020015490508087600001848154811062001ce65762001ce662002172565b6000918252602080832090910192909255918252600188019052604090208390555b855486908062001d1c5762001d1c620021b8565b60019003818190600052602060002001600090559055856001016000868152602001908152602001600020600090556001935050505062000708565b600091505062000708565b5092915050565b61058c80620021cf83390190565b60006020828403121562001d8b57600080fd5b81356001600160e01b031981168114620007e357600080fd5b60006020828403121562001db757600080fd5b5035919050565b6001600160a01b03811681146200134957600080fd5b6000806040838503121562001de857600080fd5b82359150602083013562001dfc8162001dbe565b809150509250929050565b60006020828403121562001e1a57600080fd5b8135620007e38162001dbe565b6000806040838503121562001e3b57600080fd5b823562001e488162001dbe565b9150602083013562001dfc8162001dbe565b6000806040838503121562001e6e57600080fd5b50508035926020909101359150565b60008060006060848603121562001e9357600080fd5b83359250602084013562001ea78162001dbe565b929592945050506040919091013590565b634e487b7160e01b600052601160045260246000fd5b8082018082111562000708576200070862001eb8565b600081600019048311821515161562001f015762001f0162001eb8565b500290565b634e487b7160e01b600052601260045260246000fd5b60008262001f2e5762001f2e62001f06565b500490565b8181038181111562000708576200070862001eb8565b60008262001f5b5762001f5b62001f06565b500690565b60006001820162001f755762001f7562001eb8565b5060010190565b600067ffffffffffffffff8083168185168183048111821515161562001fa65762001fa662001eb8565b02949350505050565b67ffffffffffffffff82811682821603908082111562001d635762001d6362001eb8565b600067ffffffffffffffff8084168062001ff15762001ff162001f06565b92169190910492915050565b67ffffffffffffffff81811683821601908082111562001d635762001d6362001eb8565b6000602082840312156200203457600080fd5b5051919050565b6001600160801b0381811683821601908082111562001d635762001d6362001eb8565b6001600160801b0382811682821603908082111562001d635762001d6362001eb8565b60006001600160801b038084168062001ff15762001ff162001f06565b60005b83811015620020bb578181015183820152602001620020a1565b50506000910152565b7f416363657373436f6e74726f6c3a206163636f756e7420000000000000000000815260008351620020fe8160178501602088016200209e565b7001034b99036b4b9b9b4b733903937b6329607d1b6017918401918201528351620021318160288401602088016200209e565b01602801949350505050565b60208152600082518060208401526200215e8160408501602087016200209e565b601f01601f19169190910160400192915050565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052604160045260246000fd5b600081620021b057620021b062001eb8565b506000190190565b634e487b7160e01b600052603160045260246000fdfe608060405234801561001057600080fd5b5061001a3361001f565b61006f565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b61050e8061007e6000396000f3fe6080604052600436106100555760003560e01c806351cff8d91461005a578063715018a61461007c5780638da5cb5b14610091578063e3a9db1a146100be578063f2fde38b14610102578063f340fa0114610122575b600080fd5b34801561006657600080fd5b5061007a61007536600461048d565b610135565b005b34801561008857600080fd5b5061007a6101ac565b34801561009d57600080fd5b506000546040516001600160a01b0390911681526020015b60405180910390f35b3480156100ca57600080fd5b506100f46100d936600461048d565b6001600160a01b031660009081526001602052604090205490565b6040519081526020016100b5565b34801561010e57600080fd5b5061007a61011d36600461048d565b6101c0565b61007a61013036600461048d565b61023e565b61013d6102b0565b6001600160a01b0381166000818152600160205260408120805491905590610165908261030a565b816001600160a01b03167f7084f5476618d8e60b11ef0d7d3f06914655adb8793e28ff7f018d4c76d505d5826040516101a091815260200190565b60405180910390a25050565b6101b46102b0565b6101be6000610428565b565b6101c86102b0565b6001600160a01b0381166102325760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084015b60405180910390fd5b61023b81610428565b50565b6102466102b0565b6001600160a01b0381166000908152600160205260408120805434928392916102709084906104b1565b90915550506040518181526001600160a01b038316907f2da466a7b24304f47e87fa2e1e5a81b9831ce54fec19055ce277ca2f39ba42c4906020016101a0565b6000546001600160a01b031633146101be5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610229565b8047101561035a5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a20696e73756666696369656e742062616c616e63650000006044820152606401610229565b6000826001600160a01b03168260405160006040518083038185875af1925050503d80600081146103a7576040519150601f19603f3d011682016040523d82523d6000602084013e6103ac565b606091505b50509050806104235760405162461bcd60e51b815260206004820152603a60248201527f416464726573733a20756e61626c6520746f2073656e642076616c75652c207260448201527f6563697069656e74206d617920686176652072657665727465640000000000006064820152608401610229565b505050565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6001600160a01b038116811461023b57600080fd5b60006020828403121561049f57600080fd5b81356104aa81610478565b9392505050565b808201808211156104d257634e487b7160e01b600052601160045260246000fd5b9291505056fea2646970667358221220e52cf2b51f0a8d14b10d6c445edb47884f6fbd6d5fbaed7572ef106f818cf48064736f6c63430008100033b9d69e0ca90be54a40811e436234a7f7908b87ff2bec27e64f878b166da8e8e5a26469706673582212201e9be16811569c74c4fa39ff7de9abd31c5407f8d2984261b17a40e4799f962764736f6c63430008100033",
"deployedBytecode": "0x608060405260043610620001f35760003560e01c80639010d07c116200010b578063b7a3c04c11620000a1578063e2982c21116200006c578063e2982c2114620005e0578063ed88c68e1462000605578063f0f44260146200060f578063f301af42146200063457600080fd5b8063b7a3c04c1462000559578063c0575111146200057e578063ca15c8731462000596578063d547741f14620005bb57600080fd5b80639b1d309111620000e25780639b1d309114620004bf578063a217fddf14620004e4578063b15d20da14620004fb578063b3b30c1a146200052057600080fd5b80639010d07c146200045357806391d14854146200047857806399f4b251146200049d57600080fd5b806331b3eb94116200018d57806361d027b3116200015857806361d027b314620003c657806376ad03bc14620004015780637f1b5e43146200041957806380f55605146200043157600080fd5b806331b3eb94146200034057806336568abe1462000365578063485cc955146200038a57806359e9670014620003af57600080fd5b8063158ef93e11620001ce578063158ef93e146200028d5780632129593114620002b0578063248a9ca314620002e65780632f2ff15d146200031b57600080fd5b806301ffc9a714620001f85780630373a23a14620002325780630a539a191462000259575b600080fd5b3480156200020557600080fd5b506200021d6200021736600462001d78565b620006e0565b60405190151581526020015b60405180910390f35b3480156200023f57600080fd5b50620002576200025136600462001da4565b6200070e565b005b3480156200026657600080fd5b506200027e6200027836600462001da4565b6200072f565b60405190815260200162000229565b3480156200029a57600080fd5b506000546200021d90600160a01b900460ff1681565b348015620002bd57600080fd5b506200027e7f000000000000000000000000000000000000000000000000000000000000000081565b348015620002f357600080fd5b506200027e6200030536600462001da4565b6000908152600160208190526040909120015490565b3480156200032857600080fd5b50620002576200033a36600462001dd4565b620007ea565b3480156200034d57600080fd5b50620002576200035f36600462001e07565b62000819565b3480156200037257600080fd5b50620002576200038436600462001dd4565b6200087d565b3480156200039757600080fd5b5062000257620003a936600462001e27565b62000903565b62000257620003c036600462001e5a565b62000a2c565b348015620003d357600080fd5b50600954620003e8906001600160a01b031681565b6040516001600160a01b03909116815260200162000229565b3480156200040e57600080fd5b506200027e60075481565b3480156200042657600080fd5b506200027e60065481565b3480156200043e57600080fd5b50600354620003e8906001600160a01b031681565b3480156200046057600080fd5b50620003e86200047236600462001e5a565b62000e9d565b3480156200048557600080fd5b506200021d6200049736600462001dd4565b62000eb7565b348015620004aa57600080fd5b50600454620003e8906001600160a01b031681565b348015620004cc57600080fd5b5062000257620004de36600462001da4565b62000ee2565b348015620004f157600080fd5b506200027e600081565b3480156200050857600080fd5b506200027e6000805160206200275b83398151915281565b3480156200052d57600080fd5b506200053862000f03565b6040805167ffffffffffffffff909316835260208301919091520162000229565b3480156200056657600080fd5b50620002576200057836600462001e7d565b62000fc9565b3480156200058b57600080fd5b506200027e60085481565b348015620005a357600080fd5b506200027e620005b536600462001da4565b620011f8565b348015620005c857600080fd5b5062000257620005da36600462001dd4565b62001211565b348015620005ed57600080fd5b506200027e620005ff36600462001e07565b6200123b565b62000257620012ad565b3480156200061c57600080fd5b50620002576200062e36600462001e07565b620012c8565b3480156200064157600080fd5b506200069d6200065336600462001da4565b600560205260009081526040902080546001909101546001600160801b0380831692600160801b908190048216929182169164ffffffffff918104821691600160a81b9091041685565b604080516001600160801b0396871681529486166020860152929094169183019190915264ffffffffff9081166060830152909116608082015260a00162000229565b60006001600160e01b03198216635a05180f60e01b1480620007085750620007088262001306565b92915050565b6000805160206200275b83398151915262000729816200133d565b50600755565b6000818152600560209081526040808320815160a08101835281546001600160801b038082168352600160801b918290048116958301959095526001909201549384169281019290925264ffffffffff908304811660608301819052600160a81b909304166080820152908203620007aa5750600092915050565b7f0000000000000000000000000000000000000000000000000000000000000000816060015164ffffffffff16620007e3919062001ece565b9392505050565b6000828152600160208190526040909120015462000808816200133d565b6200081483836200134c565b505050565b6000546040516351cff8d960e01b81526001600160a01b038381166004830152909116906351cff8d990602401600060405180830381600087803b1580156200086157600080fd5b505af115801562000876573d6000803e3d6000fd5b5050505050565b6001600160a01b0381163314620008f35760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b60648201526084015b60405180910390fd5b620008ff828262001372565b5050565b600054600160a01b900460ff16156200096b5760405162461bcd60e51b8152602060048201526024808201527f5a67496e697469616c697a61626c653a20616c726561647920696e697469616c6044820152631a5e995960e21b6064820152608401620008ea565b6000805460ff60a01b1916600160a01b17815562000991906200098b3390565b6200134c565b620009ac6000805160206200275b833981519152336200134c565b600380546001600160a01b038085166001600160a01b0319928316179092556004805492841692909116919091179055604051620009ea9062001d6a565b604051809103906000f08015801562000a07573d6000803e3d6000fd5b50600080546001600160a01b0319166001600160a01b03929092169190911790555050565b6003546001600160a01b0316336001600160a01b03161462000a915760405162461bcd60e51b815260206004820152601f60248201527f53656e64657220646f6573206e6f742068617665207065726d697373696f6e006044820152606401620008ea565b60006127106008543462000aa6919062001ee4565b62000ab2919062001f1c565b9050801562000ad35760095462000ad3906001600160a01b03168262001398565b600062000ae1823462001f33565b90508260008161010062000af86104008062001ee4565b62000b069061040062001ee4565b62000b1390600862001ee4565b62000b1f919062001f1c565b62000b2b908562001ee4565b62000b37919062001f1c565b9050600062000b47838862001ece565b9050600061010062000b5c6104008062001ee4565b62000b6a9061040062001ee4565b62000b7790600862001ee4565b62000b83919062001f1c565b62000b8f908962001f49565b61010062000ba06104008062001ee4565b62000bae9061040062001ee4565b62000bbb90600862001ee4565b62000bc7919062001f1c565b62000bd3919062001f33565b90506000600161010062000bea6104008062001ee4565b62000bf89061040062001ee4565b62000c0590600862001ee4565b62000c11919062001f1c565b62000c1d848c62001ece565b62000c29919062001f1c565b62000c35919062001f33565b9050600061010062000c4a6104008062001ee4565b62000c589061040062001ee4565b62000c6590600862001ee4565b62000c71919062001f1c565b62000c7e60018662001f33565b62000c8a919062001f49565b62000c9790600162001ece565b9050600061010062000cac6104008062001ee4565b62000cba9061040062001ee4565b62000cc790600862001ee4565b62000cd3919062001f1c565b62000cdf838762001f33565b62000ceb919062001f1c565b9050600061010062000d006104008062001ee4565b62000d0e9061040062001ee4565b62000d1b90600862001ee4565b62000d27919062001f1c565b62000d3483600162001ece565b62000d40919062001ee4565b8614905081840362000d6d57600084815260056020526040902062000d67908a83620014b7565b62000e8f565b62000dd861010062000d826104008062001ee4565b62000d909061040062001ee4565b62000d9d90600862001ee4565b62000da9919062001f1c565b62000db5878a62001ee4565b62000dc1919062001f1c565b6000868152600560205260409020906001620014b7565b600062000de785600162001ece565b90505b8281101562000e2457600081815260056020526040902062000e0f90896001620014b7565b8062000e1b8162001f60565b91505062000dea565b5062000e8f61010062000e3a6104008062001ee4565b62000e489061040062001ee4565b62000e5590600862001ee4565b62000e61919062001f1c565b62000e6d858a62001ee4565b62000e79919062001f1c565b60008481526005602052604090209083620014b7565b505050505050505050505050565b6000828152600260205260408120620007e39083620015f2565b60009182526001602090815260408084206001600160a01b0393909316845291905290205460ff1690565b6000805160206200275b83398151915262000efd816200133d565b50600855565b600080806104005b62000f208167ffffffffffffffff1662001600565b1562000f3e5790508062000f3660028262001f7c565b905062000f0b565b8067ffffffffffffffff168267ffffffffffffffff16101562000fc0576000600262000f6b848462001faf565b62000f77919062001fd3565b62000f83908462001ffd565b905062000f9a8167ffffffffffffffff1662001600565b1562000fb55762000fad81600162001ffd565b925062000fb9565b8091505b5062000f3e565b50924292509050565b6004546001600160a01b0316336001600160a01b0316146200102e5760405162461bcd60e51b815260206004820152601f60248201527f53656e64657220646f6573206e6f742068617665207065726d697373696f6e006044820152606401620008ea565b6000838152600560209081526040808320815160a08101835281546001600160801b038082168352600160801b918290048116958301959095526001909201549384169281019290925264ffffffffff90830481166060830152600160a81b909204909116608082015290620010a48262001623565b9050620010b2828262001651565b6000620010bf83620016a4565b60008781526005602090815260408083208751928801516001600160801b03938416600160801b9185168202178255918801516001909101805460608a015160808b0151939095166001600160a81b03199091161764ffffffffff9485169093029290921764ffffffffff60a81b1916600160a81b9390911692909202919091179055909150620011528785846200170b565b90506000816006541162001169576006546200116b565b815b905062001179818462001ece565b925080600660008282546200118f919062001f33565b90915550508215620011ee57620011a7878462001762565b85876001600160a01b0316897ff099de0c527342bff1397d08daae31c3de66104f48886094fbe9126a21ebf4b086604051620011e591815260200190565b60405180910390a45b5050505050505050565b60008181526002602052604081206200070890620017c9565b600082815260016020819052604090912001546200122f816200133d565b62000814838362001372565b600080546040516371d4ed8d60e11b81526001600160a01b0384811660048301529091169063e3a9db1a90602401602060405180830381865afa15801562001287573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000708919062002021565b3460066000828254620012c1919062001ece565b9091555050565b6000805160206200275b833981519152620012e3816200133d565b50600980546001600160a01b0319166001600160a01b0392909216919091179055565b60006001600160e01b03198216637965db0b60e01b14806200070857506301ffc9a760e01b6001600160e01b031983161462000708565b620013498133620017d4565b50565b62001358828262001838565b6000828152600260205260409020620008149082620018a6565b6200137e8282620018bd565b600082815260026020526040902062000814908262001927565b80471015620013ea5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a20696e73756666696369656e742062616c616e63650000006044820152606401620008ea565b6000826001600160a01b03168260405160006040518083038185875af1925050503d806000811462001439576040519150601f19603f3d011682016040523d82523d6000602084013e6200143e565b606091505b5050905080620008145760405162461bcd60e51b815260206004820152603a60248201527f416464726573733a20756e61626c6520746f2073656e642076616c75652c207260448201527f6563697069656e74206d617920686176652072657665727465640000000000006064820152608401620008ea565b6001600160801b03821115620015025760405162461bcd60e51b815260206004820152600f60248201526e526577617264206f766572666c6f7760881b6044820152606401620008ea565b6001830154600160801b900464ffffffffff1615620015645760405162461bcd60e51b815260206004820181905260248201527f526577617264206974656d20686173206265656e20696e697469616c697a65646044820152606401620008ea565b825482908490600090620015839084906001600160801b03166200203b565b92506101000a8154816001600160801b0302191690836001600160801b03160217905550801562000814575050600101805469ffffffffffffffffffff60801b1916600160801b4264ffffffffff1690810264ffffffffff60a81b191691909117600160a81b91909102179055565b6000620007e383836200193e565b6000806200160e836200072f565b90508015801590620007e35750421192915050565b600062000708827f00000000000000000000000000000000000000000000000000000000000000006200196b565b80826000018181516200166591906200205e565b6001600160801b0316905250602082018051829190620016879083906200203b565b6001600160801b03169052505064ffffffffff4216608090910152565b60008060028360200151620016ba919062002081565b90508083602001818151620016d091906200205e565b6001600160801b0316905250604083018051829190620016f29083906200203b565b6001600160801b03908116909152919091169392505050565b6000427f0000000000000000000000000000000000000000000000000000000000000000846060015164ffffffffff1662001747919062001ece565b1115620017585750600754620007e3565b5060009392505050565b60005460405163f340fa0160e01b81526001600160a01b0384811660048301529091169063f340fa019083906024016000604051808303818588803b158015620017ab57600080fd5b505af1158015620017c0573d6000803e3d6000fd5b50505050505050565b600062000708825490565b620017e0828262000eb7565b620008ff57620017f08162001a40565b620017fd83602062001a53565b60405160200162001810929190620020c4565b60408051601f198184030181529082905262461bcd60e51b8252620008ea916004016200213d565b62001844828262000eb7565b620008ff5760008281526001602081815260408084206001600160a01b0386168086529252808420805460ff19169093179092559051339285917f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d9190a45050565b6000620007e3836001600160a01b03841662001c0d565b620018c9828262000eb7565b15620008ff5760008281526001602090815260408083206001600160a01b0385168085529252808320805460ff1916905551339285917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a45050565b6000620007e3836001600160a01b03841662001c5f565b600082600001828154811062001958576200195862002172565b9060005260206000200154905092915050565b6000826080015164ffffffffff166000036200198a5750600062000708565b600083604001518460200151620019a291906200203b565b6001600160801b0316905060008185600001516001600160801b0316620019ca919062001ece565b90506000856060015164ffffffffff1642620019e7919062001f33565b9050600085620019f8838562001ee4565b62001a04919062001f1c565b90508281111562001a125750815b8381101562001a2957600094505050505062000708565b62001a35848262001f33565b979650505050505050565b6060620007086001600160a01b03831660145b6060600062001a6483600262001ee4565b62001a7190600262001ece565b67ffffffffffffffff81111562001a8c5762001a8c62002188565b6040519080825280601f01601f19166020018201604052801562001ab7576020820181803683370190505b509050600360fc1b8160008151811062001ad55762001ad562002172565b60200101906001600160f81b031916908160001a905350600f60fb1b8160018151811062001b075762001b0762002172565b60200101906001600160f81b031916908160001a905350600062001b2d84600262001ee4565b62001b3a90600162001ece565b90505b600181111562001bbc576f181899199a1a9b1b9c1cb0b131b232b360811b85600f166010811062001b725762001b7262002172565b1a60f81b82828151811062001b8b5762001b8b62002172565b60200101906001600160f81b031916908160001a90535060049490941c9362001bb4816200219e565b905062001b3d565b508315620007e35760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152606401620008ea565b600081815260018301602052604081205462001c565750815460018181018455600084815260208082209093018490558454848252828601909352604090209190915562000708565b50600062000708565b6000818152600183016020526040812054801562001d5857600062001c8660018362001f33565b855490915060009062001c9c9060019062001f33565b905081811462001d0857600086600001828154811062001cc05762001cc062002172565b906000526020600020015490508087600001848154811062001ce65762001ce662002172565b6000918252602080832090910192909255918252600188019052604090208390555b855486908062001d1c5762001d1c620021b8565b60019003818190600052602060002001600090559055856001016000868152602001908152602001600020600090556001935050505062000708565b600091505062000708565b5092915050565b61058c80620021cf83390190565b60006020828403121562001d8b57600080fd5b81356001600160e01b031981168114620007e357600080fd5b60006020828403121562001db757600080fd5b5035919050565b6001600160a01b03811681146200134957600080fd5b6000806040838503121562001de857600080fd5b82359150602083013562001dfc8162001dbe565b809150509250929050565b60006020828403121562001e1a57600080fd5b8135620007e38162001dbe565b6000806040838503121562001e3b57600080fd5b823562001e488162001dbe565b9150602083013562001dfc8162001dbe565b6000806040838503121562001e6e57600080fd5b50508035926020909101359150565b60008060006060848603121562001e9357600080fd5b83359250602084013562001ea78162001dbe565b929592945050506040919091013590565b634e487b7160e01b600052601160045260246000fd5b8082018082111562000708576200070862001eb8565b600081600019048311821515161562001f015762001f0162001eb8565b500290565b634e487b7160e01b600052601260045260246000fd5b60008262001f2e5762001f2e62001f06565b500490565b8181038181111562000708576200070862001eb8565b60008262001f5b5762001f5b62001f06565b500690565b60006001820162001f755762001f7562001eb8565b5060010190565b600067ffffffffffffffff8083168185168183048111821515161562001fa65762001fa662001eb8565b02949350505050565b67ffffffffffffffff82811682821603908082111562001d635762001d6362001eb8565b600067ffffffffffffffff8084168062001ff15762001ff162001f06565b92169190910492915050565b67ffffffffffffffff81811683821601908082111562001d635762001d6362001eb8565b6000602082840312156200203457600080fd5b5051919050565b6001600160801b0381811683821601908082111562001d635762001d6362001eb8565b6001600160801b0382811682821603908082111562001d635762001d6362001eb8565b60006001600160801b038084168062001ff15762001ff162001f06565b60005b83811015620020bb578181015183820152602001620020a1565b50506000910152565b7f416363657373436f6e74726f6c3a206163636f756e7420000000000000000000815260008351620020fe8160178501602088016200209e565b7001034b99036b4b9b9b4b733903937b6329607d1b6017918401918201528351620021318160288401602088016200209e565b01602801949350505050565b60208152600082518060208401526200215e8160408501602087016200209e565b601f01601f19169190910160400192915050565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052604160045260246000fd5b600081620021b057620021b062001eb8565b506000190190565b634e487b7160e01b600052603160045260246000fdfe608060405234801561001057600080fd5b5061001a3361001f565b61006f565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b61050e8061007e6000396000f3fe6080604052600436106100555760003560e01c806351cff8d91461005a578063715018a61461007c5780638da5cb5b14610091578063e3a9db1a146100be578063f2fde38b14610102578063f340fa0114610122575b600080fd5b34801561006657600080fd5b5061007a61007536600461048d565b610135565b005b34801561008857600080fd5b5061007a6101ac565b34801561009d57600080fd5b506000546040516001600160a01b0390911681526020015b60405180910390f35b3480156100ca57600080fd5b506100f46100d936600461048d565b6001600160a01b031660009081526001602052604090205490565b6040519081526020016100b5565b34801561010e57600080fd5b5061007a61011d36600461048d565b6101c0565b61007a61013036600461048d565b61023e565b61013d6102b0565b6001600160a01b0381166000818152600160205260408120805491905590610165908261030a565b816001600160a01b03167f7084f5476618d8e60b11ef0d7d3f06914655adb8793e28ff7f018d4c76d505d5826040516101a091815260200190565b60405180910390a25050565b6101b46102b0565b6101be6000610428565b565b6101c86102b0565b6001600160a01b0381166102325760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084015b60405180910390fd5b61023b81610428565b50565b6102466102b0565b6001600160a01b0381166000908152600160205260408120805434928392916102709084906104b1565b90915550506040518181526001600160a01b038316907f2da466a7b24304f47e87fa2e1e5a81b9831ce54fec19055ce277ca2f39ba42c4906020016101a0565b6000546001600160a01b031633146101be5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610229565b8047101561035a5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a20696e73756666696369656e742062616c616e63650000006044820152606401610229565b6000826001600160a01b03168260405160006040518083038185875af1925050503d80600081146103a7576040519150601f19603f3d011682016040523d82523d6000602084013e6103ac565b606091505b50509050806104235760405162461bcd60e51b815260206004820152603a60248201527f416464726573733a20756e61626c6520746f2073656e642076616c75652c207260448201527f6563697069656e74206d617920686176652072657665727465640000000000006064820152608401610229565b505050565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6001600160a01b038116811461023b57600080fd5b60006020828403121561049f57600080fd5b81356104aa81610478565b9392505050565b808201808211156104d257634e487b7160e01b600052601160045260246000fd5b9291505056fea2646970667358221220e52cf2b51f0a8d14b10d6c445edb47884f6fbd6d5fbaed7572ef106f818cf48064736f6c63430008100033b9d69e0ca90be54a40811e436234a7f7908b87ff2bec27e64f878b166da8e8e5a26469706673582212201e9be16811569c74c4fa39ff7de9abd31c5407f8d2984261b17a40e4799f962764736f6c63430008100033",
"linkReferences": {},
"deployedLinkReferences": {}
}