[ { "inputs": [ { "internalType": "address", "name": "adminAddress", "type": "address" }, { "internalType": "address", "name": "minterAddress", "type": "address" }, { "internalType": "address", "name": "pauserAddress", "type": "address" }, { "internalType": "string", "name": "baseURIValue", "type": "string" } ], "stateMutability": "nonpayable", "type": "constructor" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "account", "type": "address" }, { "indexed": true, "internalType": "address", "name": "operator", "type": "address" }, { "indexed": false, "internalType": "bool", "name": "approved", "type": "bool" } ], "name": "ApprovalForAll", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "address", "name": "account", "type": "address" } ], "name": "Paused", "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": "royaltyReceiver", "type": "address" }, { "indexed": false, "internalType": "uint256", "name": "royaltyFeeBps", "type": "uint256" } ], "name": "RoyaltyInfoSet", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "operator", "type": "address" }, { "indexed": true, "internalType": "address", "name": "from", "type": "address" }, { "indexed": true, "internalType": "address", "name": "to", "type": "address" }, { "indexed": false, "internalType": "uint256[]", "name": "ids", "type": "uint256[]" }, { "indexed": false, "internalType": "uint256[]", "name": "values", "type": "uint256[]" } ], "name": "TransferBatch", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "operator", "type": "address" }, { "indexed": true, "internalType": "address", "name": "from", "type": "address" }, { "indexed": true, "internalType": "address", "name": "to", "type": "address" }, { "indexed": false, "internalType": "uint256", "name": "id", "type": "uint256" }, { "indexed": false, "internalType": "uint256", "name": "value", "type": "uint256" } ], "name": "TransferSingle", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "string", "name": "value", "type": "string" }, { "indexed": true, "internalType": "uint256", "name": "id", "type": "uint256" } ], "name": "URI", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "address", "name": "account", "type": "address" } ], "name": "Unpaused", "type": "event" }, { "inputs": [], "name": "ALCHEMIST_CRATE_TYPE_ID", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "BISHOP_CRATE_TYPE_ID", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "BPS", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "CRAFTSMAN_CRATE_TYPE_ID", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "DEFAULT_ADMIN_ROLE", "outputs": [ { "internalType": "bytes32", "name": "", "type": "bytes32" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "FARMER_CRATE_TYPE_ID", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "MAX_CAP_PER_TYPE_ID", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "MERCHANT_CRATE_TYPE_ID", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "MINTER_ROLE", "outputs": [ { "internalType": "bytes32", "name": "", "type": "bytes32" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "PAUSER_ROLE", "outputs": [ { "internalType": "bytes32", "name": "", "type": "bytes32" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "account", "type": "address" }, { "internalType": "uint256", "name": "id", "type": "uint256" } ], "name": "balanceOf", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address[]", "name": "accounts", "type": "address[]" }, { "internalType": "uint256[]", "name": "ids", "type": "uint256[]" } ], "name": "balanceOfBatch", "outputs": [ { "internalType": "uint256[]", "name": "", "type": "uint256[]" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "account", "type": "address" }, { "internalType": "uint256", "name": "id", "type": "uint256" }, { "internalType": "uint256", "name": "value", "type": "uint256" } ], "name": "burn", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "account", "type": "address" }, { "internalType": "uint256[]", "name": "ids", "type": "uint256[]" }, { "internalType": "uint256[]", "name": "values", "type": "uint256[]" } ], "name": "burnBatch", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "id", "type": "uint256" } ], "name": "exists", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "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": "account", "type": "address" }, { "internalType": "address", "name": "operator", "type": "address" } ], "name": "isApprovedForAll", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "to", "type": "address" }, { "internalType": "uint256", "name": "id", "type": "uint256" }, { "internalType": "uint256", "name": "amount", "type": "uint256" }, { "internalType": "bytes", "name": "data", "type": "bytes" } ], "name": "mint", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "to", "type": "address" }, { "internalType": "uint256[]", "name": "ids", "type": "uint256[]" }, { "internalType": "uint256[]", "name": "amounts", "type": "uint256[]" }, { "internalType": "bytes", "name": "data", "type": "bytes" } ], "name": "mintBatch", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "pause", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "paused", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "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": [], "name": "royaltyFeeBps", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "", "type": "uint256" }, { "internalType": "uint256", "name": "_value", "type": "uint256" } ], "name": "royaltyInfo", "outputs": [ { "internalType": "address", "name": "_receiver", "type": "address" }, { "internalType": "uint256", "name": "_royaltyAmount", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "royaltyReceiver", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "from", "type": "address" }, { "internalType": "address", "name": "to", "type": "address" }, { "internalType": "uint256[]", "name": "ids", "type": "uint256[]" }, { "internalType": "uint256[]", "name": "amounts", "type": "uint256[]" }, { "internalType": "bytes", "name": "data", "type": "bytes" } ], "name": "safeBatchTransferFrom", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "from", "type": "address" }, { "internalType": "address", "name": "to", "type": "address" }, { "internalType": "uint256", "name": "id", "type": "uint256" }, { "internalType": "uint256", "name": "amount", "type": "uint256" }, { "internalType": "bytes", "name": "data", "type": "bytes" } ], "name": "safeTransferFrom", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "operator", "type": "address" }, { "internalType": "bool", "name": "approved", "type": "bool" } ], "name": "setApprovalForAll", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "string", "name": "newBaseURI", "type": "string" } ], "name": "setBaseUri", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "_royaltyFeeBps", "type": "uint256" }, { "internalType": "address", "name": "_royaltyReceiver", "type": "address" } ], "name": "setRoyaltyInfo", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "tokenId", "type": "uint256" }, { "internalType": "string", "name": "tokenURI", "type": "string" } ], "name": "setURI", "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": "uint256", "name": "id", "type": "uint256" } ], "name": "totalSupply", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "name": "typeIdConfigs", "outputs": [ { "internalType": "uint256", "name": "maxCap", "type": "uint256" }, { "internalType": "uint256", "name": "supply", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "unpause", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "id", "type": "uint256" } ], "name": "uri", "outputs": [ { "internalType": "string", "name": "", "type": "string" } ], "stateMutability": "view", "type": "function" } ]
60a06040819052600060808190526200001b916006916200069d565b503480156200002957600080fd5b50604051620046f8380380620046f88339810160408190526200004c9162000760565b8080620000598162000311565b506005805460ff19169055620000716000336200032a565b6200008c600080516020620046d8833981519152336200032a565b620000a7600080516020620046b8833981519152336200032a565b50620000b56000856200032a565b620000d0600080516020620046d8833981519152846200032a565b620000eb600080516020620046b8833981519152836200032a565b620000f860003362000336565b62000113600080516020620046b88339815191523362000336565b6200011e8162000379565b620003076040805180820182526101358082526000602080840182815260038352600b80835294517f64c15cc42be7899b001f818cf4433057002112c418d1d3a67cd5cb453051d33e55517f64c15cc42be7899b001f818cf4433057002112c418d1d3a67cd5cb453051d33f55845180860186528381528082018381526004845285835290517f12d0c11577e2f0950f57c455c117796550b79f444811db8ba2f69c57b646c78455517f12d0c11577e2f0950f57c455c117796550b79f444811db8ba2f69c57b646c78555845180860186528381528082018381526005845285835290517febae6141bae5521e99e0a8d610356b0f501fea54980b59c84841db43ba7204f455517febae6141bae5521e99e0a8d610356b0f501fea54980b59c84841db43ba7204f555845180860186528381528082018381526001845285835290517f72c6bfb7988af3a1efa6568f02a999bc52252641c659d85961ca3d372b57d5cf55517f72c6bfb7988af3a1efa6568f02a999bc52252641c659d85961ca3d372b57d5d0558451808601909552918452838201818152600290915291905290517fa50eece07c7db1631545c0069bd8f5f54d5935e215d59097edf258a44ba9163455517fa50eece07c7db1631545c0069bd8f5f54d5935e215d59097edf258a44ba9163555565b50505050620008e6565b8051620003269060049060208401906200069d565b5050565b6200032682826200038e565b6200034d8282620003cc60201b620011fc1760201c565b6000828152600160209081526040909120620003749183906200127b6200044c821b17901c565b505050565b8051620003269060069060208401906200069d565b620003a582826200046c60201b620012901760201c565b6000828152600160209081526040909120620003749183906200132e6200050c821b17901c565b6000828152602081815260408083206001600160a01b038516845290915290205460ff161562000326576000828152602081815260408083206001600160a01b0385168085529252808320805460ff1916905551339285917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a45050565b600062000463836001600160a01b03841662000523565b90505b92915050565b6000828152602081815260408083206001600160a01b038516845290915290205460ff1662000326576000828152602081815260408083206001600160a01b03851684529091529020805460ff19166001179055620004c83390565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b600062000463836001600160a01b0384166200064b565b60008181526001830160205260408120548015620006405760006200054a6001836200086f565b855490915060009062000560906001906200086f565b9050818114620005e45760008660000182815481106200059057634e487b7160e01b600052603260045260246000fd5b9060005260206000200154905080876000018481548110620005c257634e487b7160e01b600052603260045260246000fd5b6000918252602080832090910192909255918252600188019052604090208390555b85548690806200060457634e487b7160e01b600052603160045260246000fd5b60019003818190600052602060002001600090559055856001016000868152602001908152602001600020600090556001935050505062000466565b600091505062000466565b6000818152600183016020526040812054620006945750815460018181018455600084815260208082209093018490558454848252828601909352604090209190915562000466565b50600062000466565b828054620006ab9062000893565b90600052602060002090601f016020900481019282620006cf57600085556200071a565b82601f10620006ea57805160ff19168380011785556200071a565b828001600101855582156200071a579182015b828111156200071a578251825591602001919060010190620006fd565b50620007289291506200072c565b5090565b5b808211156200072857600081556001016200072d565b80516001600160a01b03811681146200075b57600080fd5b919050565b6000806000806080858703121562000776578384fd5b620007818562000743565b935060206200079281870162000743565b9350620007a26040870162000743565b60608701519093506001600160401b0380821115620007bf578384fd5b818801915088601f830112620007d3578384fd5b815181811115620007e857620007e8620008d0565b604051601f8201601f19908116603f01168101908382118183101715620008135762000813620008d0565b816040528281528b868487010111156200082b578687fd5b8693505b828410156200084e57848401860151818501870152928501926200082f565b828411156200085f57868684830101525b989b979a50959850505050505050565b6000828210156200088e57634e487b7160e01b81526011600452602481fd5b500390565b600181811c90821680620008a857607f821691505b60208210811415620008ca57634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052604160045260246000fd5b613dc280620008f66000396000f3fe608060405234801561001057600080fd5b50600436106102d25760003560e01c80638522246f11610186578063a70e5bb9116100e3578063d539139311610097578063e985e9c511610071578063e985e9c514610642578063f242432a1461067e578063f5298aca1461069157600080fd5b8063d5391393146105e1578063d547741f14610608578063e63ab1e91461061b57600080fd5b8063bd85b039116100c8578063bd85b039146105a5578063ca15c873146105c5578063cb9c7277146105d857600080fd5b8063a70e5bb91461058a578063b5de3d141461059257600080fd5b80639bb4b74d1161013a578063a0bcfc7f1161011f578063a0bcfc7f1461055c578063a217fddf1461056f578063a22cb4651461057757600080fd5b80639bb4b74d146105415780639fbc87131461054957600080fd5b80639010d07c1161016b5780639010d07c146104d6578063911927651461050157806391d148541461050a57600080fd5b80638522246f14610487578063862440e2146104c357600080fd5b80633f4ba83a116102345780635c975abb116101e85780636b20c454116101cd5780636b20c45414610459578063731133e91461046c5780638456cb591461047f57600080fd5b80635c975abb1461044657806361b9e8a31461045157600080fd5b80634e1273f4116102195780634e1273f4146103fc5780634f558e791461041c5780635a1ffea41461043e57600080fd5b80633f4ba83a146103ec5780634753a517146103f457600080fd5b8063249d39e91161028b5780632eb2c2d6116102705780632eb2c2d6146103b35780632f2ff15d146103c657806336568abe146103d957600080fd5b8063249d39e9146103785780632a55205a1461038157600080fd5b80630e89341c116102bc5780630e89341c146103205780631f7fdffa14610340578063248a9ca31461035557600080fd5b8062fdd58e146102d757806301ffc9a7146102fd575b600080fd5b6102ea6102e53660046135f4565b6106a4565b6040519081526020015b60405180910390f35b61031061030b3660046137c8565b610752565b60405190151581526020016102f4565b61033361032e36600461376d565b610790565b6040516102f49190613b3d565b61035361034e366004613525565b6107fa565b005b6102ea61036336600461376d565b60009081526020819052604090206001015490565b6102ea61271081565b61039461038f3660046137a7565b6108a8565b604080516001600160a01b0390931683526020830191909152016102f4565b6103536103c13660046133ab565b6108de565b6103536103d4366004613785565b610972565b6103536103e7366004613785565b61099c565b610353610a28565b6102ea600381565b61040f61040a3660046136a2565b610ace565b6040516102f49190613b05565b61031061042a36600461376d565b600090815260086020526040902054151590565b6102ea600581565b60055460ff16610310565b6102ea600281565b6103536104673660046134b4565b610c44565b61035361047a36600461364f565b610ccf565b610353610e4f565b6104ae61049536600461376d565b600b602052600090815260409020805460019091015482565b604080519283526020830191909152016102f4565b6103536104d136600461386d565b610ef3565b6104e96104e43660046137a7565b610f65565b6040516001600160a01b0390911681526020016102f4565b6102ea60095481565b610310610518366004613785565b6000918252602082815260408084206001600160a01b0393909316845291905290205460ff1690565b6102ea600481565b600a546104e9906001600160a01b031681565b61035361056a366004613800565b610f84565b6102ea600081565b6103536105853660046135ba565b61102b565b6102ea600181565b6103536105a0366004613785565b611036565b6102ea6105b336600461376d565b60009081526008602052604090205490565b6102ea6105d336600461376d565b6110a8565b6102ea61013581565b6102ea7f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a681565b610353610616366004613785565b6110bf565b6102ea7f65d7a28e3265b37a6474929f336521b332c1681b933f6cb9f3376673440d862a81565b610310610650366004613382565b6001600160a01b03918216600090815260036020908152604080832093909416825291909152205460ff1690565b61035361068c366004613451565b6110e4565b61035361069f36600461361d565b611171565b60006001600160a01b0383166107275760405162461bcd60e51b815260206004820152602a60248201527f455243313135353a2061646472657373207a65726f206973206e6f742061207660448201527f616c6964206f776e65720000000000000000000000000000000000000000000060648201526084015b60405180910390fd5b5060008181526002602090815260408083206001600160a01b03861684529091529020545b92915050565b60006001600160e01b031982167f2a55205a00000000000000000000000000000000000000000000000000000000148061074c575061074c82611343565b6000818152600b60205260409020600101546060906107f15760405162461bcd60e51b815260206004820152600360248201527f2169640000000000000000000000000000000000000000000000000000000000604482015260640161071e565b61074c8261134e565b6108247f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a633610518565b6108965760405162461bcd60e51b815260206004820152603860248201527f455243313135355072657365744d696e7465725061757365723a206d7573742060448201527f68617665206d696e74657220726f6c6520746f206d696e740000000000000000606482015260840161071e565b6108a28484848461142d565b50505050565b600a546009546001600160a01b0390911690600090612710906108cb9085613bac565b6108d59190613b8c565b90509250929050565b6001600160a01b0385163314806108fa57506108fa8533610650565b61095e5760405162461bcd60e51b815260206004820152602f60248201527f455243313135353a2063616c6c6572206973206e6f7420746f6b656e206f776e60448201526e195c881b9bdc88185c1c1c9bdd9959608a1b606482015260840161071e565b61096b8585858585611729565b5050505050565b60008281526020819052604090206001015461098d816119b4565b61099783836119c1565b505050565b6001600160a01b0381163314610a1a5760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201527f20726f6c657320666f722073656c660000000000000000000000000000000000606482015260840161071e565b610a2482826119e3565b5050565b610a527f65d7a28e3265b37a6474929f336521b332c1681b933f6cb9f3376673440d862a33610518565b610ac45760405162461bcd60e51b815260206004820152603b60248201527f455243313135355072657365744d696e7465725061757365723a206d7573742060448201527f686176652070617573657220726f6c6520746f20756e70617573650000000000606482015260840161071e565b610acc611a05565b565b60608151835114610b475760405162461bcd60e51b815260206004820152602960248201527f455243313135353a206163636f756e747320616e6420696473206c656e67746860448201527f206d69736d617463680000000000000000000000000000000000000000000000606482015260840161071e565b6000835167ffffffffffffffff811115610b7157634e487b7160e01b600052604160045260246000fd5b604051908082528060200260200182016040528015610b9a578160200160208202803683370190505b50905060005b8451811015610c3c57610c01858281518110610bcc57634e487b7160e01b600052603260045260246000fd5b6020026020010151858381518110610bf457634e487b7160e01b600052603260045260246000fd5b60200260200101516106a4565b828281518110610c2157634e487b7160e01b600052603260045260246000fd5b6020908102919091010152610c3581613c8d565b9050610ba0565b509392505050565b6001600160a01b038316331480610c605750610c608333610650565b610cc45760405162461bcd60e51b815260206004820152602f60248201527f455243313135353a2063616c6c6572206973206e6f7420746f6b656e206f776e60448201526e195c881b9bdc88185c1c1c9bdd9959608a1b606482015260840161071e565b610997838383611a57565b60008211610d095760405162461bcd60e51b815260206004820152600760248201526608585b5bdd5b9d60ca1b604482015260640161071e565b6000838152600b602052604090208054600190910154610d2a908490613b74565b1115610d785760405162461bcd60e51b815260206004820152600f60248201527f6d61785f6361705f726561636865640000000000000000000000000000000000604482015260640161071e565b610da27f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a633610518565b610e145760405162461bcd60e51b815260206004820152603860248201527f455243313135355072657365744d696e7465725061757365723a206d7573742060448201527f68617665206d696e74657220726f6c6520746f206d696e740000000000000000606482015260840161071e565b6000838152600b6020526040902060010154610e31908390613b74565b6000848152600b60205260409020600101556108a284848484611ccb565b610e797f65d7a28e3265b37a6474929f336521b332c1681b933f6cb9f3376673440d862a33610518565b610eeb5760405162461bcd60e51b815260206004820152603960248201527f455243313135355072657365744d696e7465725061757365723a206d7573742060448201527f686176652070617573657220726f6c6520746f20706175736500000000000000606482015260840161071e565b610acc611df0565b610f1d7f65d7a28e3265b37a6474929f336521b332c1681b933f6cb9f3376673440d862a33610518565b610f5b5760405162461bcd60e51b815260206004820152600f60248201526e085858d8d95cdcd7d858d8dbdd5b9d608a1b604482015260640161071e565b610a248282611e2d565b6000828152600160205260408120610f7d9083611e91565b9392505050565b610fae7f65d7a28e3265b37a6474929f336521b332c1681b933f6cb9f3376673440d862a33610518565b610fec5760405162461bcd60e51b815260206004820152600f60248201526e085858d8d95cdcd7d858d8dbdd5b9d608a1b604482015260640161071e565b610a2482828080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611e9d92505050565b610a24338383611eb0565b6110607f65d7a28e3265b37a6474929f336521b332c1681b933f6cb9f3376673440d862a33610518565b61109e5760405162461bcd60e51b815260206004820152600f60248201526e085858d8d95cdcd7d858d8dbdd5b9d608a1b604482015260640161071e565b610a248282611fa5565b600081815260016020526040812061074c90612066565b6000828152602081905260409020600101546110da816119b4565b61099783836119e3565b6001600160a01b03851633148061110057506111008533610650565b6111645760405162461bcd60e51b815260206004820152602f60248201527f455243313135353a2063616c6c6572206973206e6f7420746f6b656e206f776e60448201526e195c881b9bdc88185c1c1c9bdd9959608a1b606482015260840161071e565b61096b8585858585612070565b6001600160a01b03831633148061118d575061118d8333610650565b6111f15760405162461bcd60e51b815260206004820152602f60248201527f455243313135353a2063616c6c6572206973206e6f7420746f6b656e206f776e60448201526e195c881b9bdc88185c1c1c9bdd9959608a1b606482015260840161071e565b61099783838361222d565b6000828152602081815260408083206001600160a01b038516845290915290205460ff1615610a24576000828152602081815260408083206001600160a01b0385168085529252808320805460ff1916905551339285917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a45050565b6000610f7d836001600160a01b0384166123c1565b6000828152602081815260408083206001600160a01b038516845290915290205460ff16610a24576000828152602081815260408083206001600160a01b03851684529091529020805460ff191660011790556112ea3390565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b6000610f7d836001600160a01b0384166124de565b600061074c8261252d565b60008181526007602052604081208054606092919061136c90613c25565b80601f016020809104026020016040519081016040528092919081815260200182805461139890613c25565b80156113e55780601f106113ba576101008083540402835291602001916113e5565b820191906000526020600020905b8154815290600101906020018083116113c857829003601f168201915b505050505090506000815111611403576113fe8361259f565b610f7d565b60068160405160200161141792919061393d565b6040516020818303038152906040529392505050565b6001600160a01b03841661148d5760405162461bcd60e51b815260206004820152602160248201527f455243313135353a206d696e7420746f20746865207a65726f206164647265736044820152607360f81b606482015260840161071e565b81518351146114ef5760405162461bcd60e51b815260206004820152602860248201527f455243313135353a2069647320616e6420616d6f756e7473206c656e677468206044820152670dad2e6dac2e8c6d60c31b606482015260840161071e565b60005b835181101561171c57600083828151811061151d57634e487b7160e01b600052603260045260246000fd5b60200260200101511161155c5760405162461bcd60e51b815260206004820152600760248201526608585b5bdd5b9d60ca1b604482015260640161071e565b600b600085838151811061158057634e487b7160e01b600052603260045260246000fd5b60200260200101518152602001908152602001600020600001548382815181106115ba57634e487b7160e01b600052603260045260246000fd5b6020026020010151600b60008785815181106115e657634e487b7160e01b600052603260045260246000fd5b602002602001015181526020019081526020016000206001015461160a9190613b74565b11156116585760405162461bcd60e51b815260206004820152600f60248201527f6d61785f6361705f726561636865640000000000000000000000000000000000604482015260640161071e565b82818151811061167857634e487b7160e01b600052603260045260246000fd5b6020026020010151600b60008684815181106116a457634e487b7160e01b600052603260045260246000fd5b60200260200101518152602001908152602001600020600101546116c89190613b74565b600b60008684815181106116ec57634e487b7160e01b600052603260045260246000fd5b6020026020010151815260200190815260200160002060010181905550808061171490613c8d565b9150506114f2565b506108a284848484612633565b815183511461178b5760405162461bcd60e51b815260206004820152602860248201527f455243313135353a2069647320616e6420616d6f756e7473206c656e677468206044820152670dad2e6dac2e8c6d60c31b606482015260840161071e565b6001600160a01b0384166117ef5760405162461bcd60e51b815260206004820152602560248201527f455243313135353a207472616e7366657220746f20746865207a65726f206164604482015264647265737360d81b606482015260840161071e565b336117fe818787878787612825565b60005b845181101561194657600085828151811061182c57634e487b7160e01b600052603260045260246000fd5b60200260200101519050600085838151811061185857634e487b7160e01b600052603260045260246000fd5b60209081029190910181015160008481526002835260408082206001600160a01b038e1683529093529190912054909150818110156118ec5760405162461bcd60e51b815260206004820152602a60248201527f455243313135353a20696e73756666696369656e742062616c616e636520666f60448201526939103a3930b739b332b960b11b606482015260840161071e565b60008381526002602090815260408083206001600160a01b038e8116855292528083208585039055908b1682528120805484929061192b908490613b74565b925050819055505050508061193f90613c8d565b9050611801565b50846001600160a01b0316866001600160a01b0316826001600160a01b03167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8787604051611996929190613b18565b60405180910390a46119ac818787878787612841565b505050505050565b6119be81336129f6565b50565b6119cb8282611290565b6000828152600160205260409020610997908261132e565b6119ed82826111fc565b6000828152600160205260409020610997908261127b565b611a0d612a74565b6005805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa335b6040516001600160a01b03909116815260200160405180910390a1565b6001600160a01b038316611ab95760405162461bcd60e51b815260206004820152602360248201527f455243313135353a206275726e2066726f6d20746865207a65726f206164647260448201526265737360e81b606482015260840161071e565b8051825114611b1b5760405162461bcd60e51b815260206004820152602860248201527f455243313135353a2069647320616e6420616d6f756e7473206c656e677468206044820152670dad2e6dac2e8c6d60c31b606482015260840161071e565b6000339050611b3e81856000868660405180602001604052806000815250612825565b60005b8351811015611c5e576000848281518110611b6c57634e487b7160e01b600052603260045260246000fd5b602002602001015190506000848381518110611b9857634e487b7160e01b600052603260045260246000fd5b60209081029190910181015160008481526002835260408082206001600160a01b038c168352909352919091205490915081811015611c255760405162461bcd60e51b8152602060048201526024808201527f455243313135353a206275726e20616d6f756e7420657863656564732062616c604482015263616e636560e01b606482015260840161071e565b60009283526002602090815260408085206001600160a01b038b1686529091529092209103905580611c5681613c8d565b915050611b41565b5060006001600160a01b0316846001600160a01b0316826001600160a01b03167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8686604051611caf929190613b18565b60405180910390a46040805160208101909152600090526108a2565b6001600160a01b038416611d2b5760405162461bcd60e51b815260206004820152602160248201527f455243313135353a206d696e7420746f20746865207a65726f206164647265736044820152607360f81b606482015260840161071e565b336000611d3785612ac6565b90506000611d4485612ac6565b9050611d5583600089858589612825565b60008681526002602090815260408083206001600160a01b038b16845290915281208054879290611d87908490613b74565b909155505060408051878152602081018790526001600160a01b03808a1692600092918716917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a4611de783600089898989612b1f565b50505050505050565b611df8612c2a565b6005805460ff191660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258611a3a3390565b60008281526007602090815260409091208251611e4c928401906131dc565b50817f6bb7ff708619ba0610cba295a58592e0451dee2622938c8755667688daf3529b611e7884610790565b604051611e859190613b3d565b60405180910390a25050565b6000610f7d8383612c7d565b8051610a249060069060208401906131dc565b816001600160a01b0316836001600160a01b03161415611f385760405162461bcd60e51b815260206004820152602960248201527f455243313135353a2073657474696e6720617070726f76616c2073746174757360448201527f20666f722073656c660000000000000000000000000000000000000000000000606482015260840161071e565b6001600160a01b03838116600081815260036020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a3505050565b6001600160a01b038116611ffb5760405162461bcd60e51b815260206004820152601160248201527f21726f79616c74795f7265636569766572000000000000000000000000000000604482015260640161071e565b6009829055600a80547fffffffffffffffffffffffff0000000000000000000000000000000000000000166001600160a01b0383169081179091556040518381527f984cbbb47b413608120ad6b444ea0004fe19b6f88a5c0992e612b97fd3cb631e90602001611e85565b600061074c825490565b6001600160a01b0384166120d45760405162461bcd60e51b815260206004820152602560248201527f455243313135353a207472616e7366657220746f20746865207a65726f206164604482015264647265737360d81b606482015260840161071e565b3360006120e085612ac6565b905060006120ed85612ac6565b90506120fd838989858589612825565b60008681526002602090815260408083206001600160a01b038c168452909152902054858110156121835760405162461bcd60e51b815260206004820152602a60248201527f455243313135353a20696e73756666696369656e742062616c616e636520666f60448201526939103a3930b739b332b960b11b606482015260840161071e565b60008781526002602090815260408083206001600160a01b038d8116855292528083208985039055908a168252812080548892906121c2908490613b74565b909155505060408051888152602081018890526001600160a01b03808b16928c821692918816917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a4612222848a8a8a8a8a612b1f565b505050505050505050565b6001600160a01b03831661228f5760405162461bcd60e51b815260206004820152602360248201527f455243313135353a206275726e2066726f6d20746865207a65726f206164647260448201526265737360e81b606482015260840161071e565b33600061229b84612ac6565b905060006122a884612ac6565b90506122c883876000858560405180602001604052806000815250612825565b60008581526002602090815260408083206001600160a01b038a168452909152902054848110156123475760405162461bcd60e51b8152602060048201526024808201527f455243313135353a206275726e20616d6f756e7420657863656564732062616c604482015263616e636560e01b606482015260840161071e565b60008681526002602090815260408083206001600160a01b038b81168086529184528285208a8703905582518b81529384018a90529092908816917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a4604080516020810190915260009052611de7565b600081815260018301602052604081205480156124d45760006123e5600183613bcb565b85549091506000906123f990600190613bcb565b905081811461247a57600086600001828154811061242757634e487b7160e01b600052603260045260246000fd5b906000526020600020015490508087600001848154811061245857634e487b7160e01b600052603260045260246000fd5b6000918252602080832090910192909255918252600188019052604090208390555b855486908061249957634e487b7160e01b600052603160045260246000fd5b60019003818190600052602060002001600090559055856001016000868152602001908152602001600020600090556001935050505061074c565b600091505061074c565b60008181526001830160205260408120546125255750815460018181018455600084815260208082209093018490558454848252828601909352604090209190915561074c565b50600061074c565b60006001600160e01b031982167fd9b67a2600000000000000000000000000000000000000000000000000000000148061259057506001600160e01b031982167f0e89341c00000000000000000000000000000000000000000000000000000000145b8061074c575061074c82612cb5565b6060600480546125ae90613c25565b80601f01602080910402602001604051908101604052809291908181526020018280546125da90613c25565b80156126275780601f106125fc57610100808354040283529160200191612627565b820191906000526020600020905b81548152906001019060200180831161260a57829003601f168201915b50505050509050919050565b6001600160a01b0384166126935760405162461bcd60e51b815260206004820152602160248201527f455243313135353a206d696e7420746f20746865207a65726f206164647265736044820152607360f81b606482015260840161071e565b81518351146126f55760405162461bcd60e51b815260206004820152602860248201527f455243313135353a2069647320616e6420616d6f756e7473206c656e677468206044820152670dad2e6dac2e8c6d60c31b606482015260840161071e565b3361270581600087878787612825565b60005b84518110156127bd5783818151811061273157634e487b7160e01b600052603260045260246000fd5b60200260200101516002600087848151811061275d57634e487b7160e01b600052603260045260246000fd5b602002602001015181526020019081526020016000206000886001600160a01b03166001600160a01b0316815260200190815260200160002060008282546127a59190613b74565b909155508190506127b581613c8d565b915050612708565b50846001600160a01b031660006001600160a01b0316826001600160a01b03167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb878760405161280e929190613b18565b60405180910390a461096b81600087878787612841565b612833868686868686612cf3565b6119ac868686868686612d01565b6001600160a01b0384163b156119ac5760405163bc197c8160e01b81526001600160a01b0385169063bc197c81906128859089908990889088908890600401613a64565b602060405180830381600087803b15801561289f57600080fd5b505af19250505080156128cf575060408051601f3d908101601f191682019092526128cc918101906137e4565b60015b612985576128db613cd4565b806308c379a0141561291557506128f0613cec565b806128fb5750612917565b8060405162461bcd60e51b815260040161071e9190613b3d565b505b60405162461bcd60e51b815260206004820152603460248201527f455243313135353a207472616e7366657220746f206e6f6e204552433131353560448201527f526563656976657220696d706c656d656e746572000000000000000000000000606482015260840161071e565b6001600160e01b0319811663bc197c8160e01b14611de75760405162461bcd60e51b815260206004820152602860248201527f455243313135353a204552433131353552656365697665722072656a656374656044820152676420746f6b656e7360c01b606482015260840161071e565b6000828152602081815260408083206001600160a01b038516845290915290205460ff16610a2457612a32816001600160a01b03166014612ed5565b612a3d836020612ed5565b604051602001612a4e9291906139e3565b60408051601f198184030181529082905262461bcd60e51b825261071e91600401613b3d565b60055460ff16610acc5760405162461bcd60e51b815260206004820152601460248201527f5061757361626c653a206e6f7420706175736564000000000000000000000000604482015260640161071e565b60408051600180825281830190925260609160009190602080830190803683370190505090508281600081518110612b0e57634e487b7160e01b600052603260045260246000fd5b602090810291909101015292915050565b6001600160a01b0384163b156119ac5760405163f23a6e6160e01b81526001600160a01b0385169063f23a6e6190612b639089908990889088908890600401613ac2565b602060405180830381600087803b158015612b7d57600080fd5b505af1925050508015612bad575060408051601f3d908101601f19168201909252612baa918101906137e4565b60015b612bb9576128db613cd4565b6001600160e01b0319811663f23a6e6160e01b14611de75760405162461bcd60e51b815260206004820152602860248201527f455243313135353a204552433131353552656365697665722072656a656374656044820152676420746f6b656e7360c01b606482015260840161071e565b60055460ff1615610acc5760405162461bcd60e51b815260206004820152601060248201527f5061757361626c653a2070617573656400000000000000000000000000000000604482015260640161071e565b6000826000018281548110612ca257634e487b7160e01b600052603260045260246000fd5b9060005260206000200154905092915050565b60006001600160e01b031982167f5a05180f00000000000000000000000000000000000000000000000000000000148061074c575061074c826130fc565b6119ac868686868686613163565b612d0f868686868686612cf3565b6001600160a01b038516612db25760005b8351811015612db057828181518110612d4957634e487b7160e01b600052603260045260246000fd5b602002602001015160086000868481518110612d7557634e487b7160e01b600052603260045260246000fd5b602002602001015181526020019081526020016000206000828254612d9a9190613b74565b90915550612da9905081613c8d565b9050612d20565b505b6001600160a01b0384166119ac5760005b8351811015611de7576000848281518110612dee57634e487b7160e01b600052603260045260246000fd5b602002602001015190506000848381518110612e1a57634e487b7160e01b600052603260045260246000fd5b6020026020010151905060006008600084815260200190815260200160002054905081811015612eb25760405162461bcd60e51b815260206004820152602860248201527f455243313135353a206275726e20616d6f756e74206578636565647320746f7460448201527f616c537570706c79000000000000000000000000000000000000000000000000606482015260840161071e565b60009283526008602052604090922091039055612ece81613c8d565b9050612dc3565b60606000612ee4836002613bac565b612eef906002613b74565b67ffffffffffffffff811115612f1557634e487b7160e01b600052604160045260246000fd5b6040519080825280601f01601f191660200182016040528015612f3f576020820181803683370190505b5090507f300000000000000000000000000000000000000000000000000000000000000081600081518110612f8457634e487b7160e01b600052603260045260246000fd5b60200101906001600160f81b031916908160001a9053507f780000000000000000000000000000000000000000000000000000000000000081600181518110612fdd57634e487b7160e01b600052603260045260246000fd5b60200101906001600160f81b031916908160001a9053506000613001846002613bac565b61300c906001613b74565b90505b60018111156130ad577f303132333435363738396162636465660000000000000000000000000000000085600f166010811061305b57634e487b7160e01b600052603260045260246000fd5b1a60f81b82828151811061307f57634e487b7160e01b600052603260045260246000fd5b60200101906001600160f81b031916908160001a90535060049490941c936130a681613c0e565b905061300f565b508315610f7d5760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e74604482015260640161071e565b60006001600160e01b031982167f7965db0b00000000000000000000000000000000000000000000000000000000148061074c57507f01ffc9a7000000000000000000000000000000000000000000000000000000006001600160e01b031983161461074c565b60055460ff16156119ac5760405162461bcd60e51b815260206004820152602c60248201527f455243313135355061757361626c653a20746f6b656e207472616e736665722060448201527f7768696c65207061757365640000000000000000000000000000000000000000606482015260840161071e565b8280546131e890613c25565b90600052602060002090601f01602090048101928261320a5760008555613250565b82601f1061322357805160ff1916838001178555613250565b82800160010185558215613250579182015b82811115613250578251825591602001919060010190613235565b5061325c929150613260565b5090565b5b8082111561325c5760008155600101613261565b600067ffffffffffffffff83111561328f5761328f613cbe565b6040516132a6601f8501601f191660200182613c60565b8091508381528484840111156132bb57600080fd5b83836020830137600060208583010152509392505050565b80356001600160a01b03811681146132ea57600080fd5b919050565b600082601f8301126132ff578081fd5b8135602061330c82613b50565b6040516133198282613c60565b8381528281019150858301600585901b87018401881015613338578586fd5b855b858110156133565781358452928401929084019060010161333a565b5090979650505050505050565b600082601f830112613373578081fd5b610f7d83833560208501613275565b60008060408385031215613394578182fd5b61339d836132d3565b91506108d5602084016132d3565b600080600080600060a086880312156133c2578081fd5b6133cb866132d3565b94506133d9602087016132d3565b9350604086013567ffffffffffffffff808211156133f5578283fd5b61340189838a016132ef565b94506060880135915080821115613416578283fd5b61342289838a016132ef565b93506080880135915080821115613437578283fd5b5061344488828901613363565b9150509295509295909350565b600080600080600060a08688031215613468578081fd5b613471866132d3565b945061347f602087016132d3565b93506040860135925060608601359150608086013567ffffffffffffffff8111156134a8578182fd5b61344488828901613363565b6000806000606084860312156134c8578283fd5b6134d1846132d3565b9250602084013567ffffffffffffffff808211156134ed578384fd5b6134f9878388016132ef565b9350604086013591508082111561350e578283fd5b5061351b868287016132ef565b9150509250925092565b6000806000806080858703121561353a578384fd5b613543856132d3565b9350602085013567ffffffffffffffff8082111561355f578485fd5b61356b888389016132ef565b94506040870135915080821115613580578384fd5b61358c888389016132ef565b935060608701359150808211156135a1578283fd5b506135ae87828801613363565b91505092959194509250565b600080604083850312156135cc578182fd5b6135d5836132d3565b9150602083013580151581146135e9578182fd5b809150509250929050565b60008060408385031215613606578182fd5b61360f836132d3565b946020939093013593505050565b600080600060608486031215613631578081fd5b61363a846132d3565b95602085013595506040909401359392505050565b60008060008060808587031215613664578182fd5b61366d856132d3565b93506020850135925060408501359150606085013567ffffffffffffffff811115613696578182fd5b6135ae87828801613363565b600080604083850312156136b4578182fd5b823567ffffffffffffffff808211156136cb578384fd5b818501915085601f8301126136de578384fd5b813560206136eb82613b50565b6040516136f88282613c60565b8381528281019150858301600585901b870184018b1015613717578889fd5b8896505b848710156137405761372c816132d3565b83526001969096019591830191830161371b565b5096505086013592505080821115613756578283fd5b50613763858286016132ef565b9150509250929050565b60006020828403121561377e578081fd5b5035919050565b60008060408385031215613797578182fd5b823591506108d5602084016132d3565b600080604083850312156137b9578182fd5b50508035926020909101359150565b6000602082840312156137d9578081fd5b8135610f7d81613d76565b6000602082840312156137f5578081fd5b8151610f7d81613d76565b60008060208385031215613812578182fd5b823567ffffffffffffffff80821115613829578384fd5b818501915085601f83011261383c578384fd5b81358181111561384a578485fd5b86602082850101111561385b578485fd5b60209290920196919550909350505050565b6000806040838503121561387f578182fd5b82359150602083013567ffffffffffffffff81111561389c578182fd5b8301601f810185136138ac578182fd5b61376385823560208401613275565b6000815180845260208085019450808401835b838110156138ea578151875295820195908201906001016138ce565b509495945050505050565b6000815180845261390d816020860160208601613be2565b601f01601f19169290920160200192915050565b60008151613933818560208601613be2565b9290920192915050565b600080845482600182811c91508083168061395957607f831692505b602080841082141561397957634e487b7160e01b87526022600452602487fd5b81801561398d576001811461399e576139ca565b60ff198616895284890196506139ca565b60008b815260209020885b868110156139c25781548b8201529085019083016139a9565b505084890196505b5050505050506139da8185613921565b95945050505050565b7f416363657373436f6e74726f6c3a206163636f756e7420000000000000000000815260008351613a1b816017850160208801613be2565b7f206973206d697373696e6720726f6c65200000000000000000000000000000006017918401918201528351613a58816028840160208801613be2565b01602801949350505050565b60006001600160a01b03808816835280871660208401525060a06040830152613a9060a08301866138bb565b8281036060840152613aa281866138bb565b90508281036080840152613ab681856138f5565b98975050505050505050565b60006001600160a01b03808816835280871660208401525084604083015283606083015260a06080830152613afa60a08301846138f5565b979650505050505050565b602081526000610f7d60208301846138bb565b604081526000613b2b60408301856138bb565b82810360208401526139da81856138bb565b602081526000610f7d60208301846138f5565b600067ffffffffffffffff821115613b6a57613b6a613cbe565b5060051b60200190565b60008219821115613b8757613b87613ca8565b500190565b600082613ba757634e487b7160e01b81526012600452602481fd5b500490565b6000816000190483118215151615613bc657613bc6613ca8565b500290565b600082821015613bdd57613bdd613ca8565b500390565b60005b83811015613bfd578181015183820152602001613be5565b838111156108a25750506000910152565b600081613c1d57613c1d613ca8565b506000190190565b600181811c90821680613c3957607f821691505b60208210811415613c5a57634e487b7160e01b600052602260045260246000fd5b50919050565b601f8201601f1916810167ffffffffffffffff81118282101715613c8657613c86613cbe565b6040525050565b6000600019821415613ca157613ca1613ca8565b5060010190565b634e487b7160e01b600052601160045260246000fd5b634e487b7160e01b600052604160045260246000fd5b600060033d1115613ce957600481823e5160e01c5b90565b600060443d1015613cfa5790565b6040516003193d81016004833e81513d67ffffffffffffffff8160248401118184111715613d2a57505050505090565b8285019150815181811115613d425750505050505090565b843d8701016020828501011115613d5c5750505050505090565b613d6b60208286010187613c60565b509095945050505050565b6001600160e01b0319811681146119be57600080fdfea264697066735822122085a9821090b7c60760875d13a0c840a9b4b32f299fa9f63a4ed6e32afb9ae83d64736f6c6343000804003365d7a28e3265b37a6474929f336521b332c1681b933f6cb9f3376673440d862a9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a6000000000000000000000000a70dbc2030fa25657a90f61714665c85c608e0e6000000000000000000000000a70dbc2030fa25657a90f61714665c85c608e0e6000000000000000000000000a70dbc2030fa25657a90f61714665c85c608e0e60000000000000000000000000000000000000000000000000000000000000080000000000000000000000000000000000000000000000000000000000000003768747470733a2f2f6173736574732e666965666170692e6e65742f6372617465732f666965662d776f6f64656e2f6d657461646174612f000000000000000000