[ { "inputs": [ { "internalType": "uint96", "name": "_royalty", "type": "uint96" }, { "internalType": "address", "name": "_royaltyRecipient", "type": "address" }, { "internalType": "string", "name": "_name", "type": "string" }, { "internalType": "string", "name": "_symbol", "type": "string" } ], "stateMutability": "nonpayable", "type": "constructor" }, { "inputs": [ { "internalType": "address", "name": "operator", "type": "address" } ], "name": "OperatorNotAllowed", "type": "error" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "owner", "type": "address" }, { "indexed": true, "internalType": "address", "name": "approved", "type": "address" }, { "indexed": true, "internalType": "uint256", "name": "tokenId", "type": "uint256" } ], "name": "Approval", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "owner", "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": true, "internalType": "address", "name": "previousOwner", "type": "address" }, { "indexed": true, "internalType": "address", "name": "newOwner", "type": "address" } ], "name": "OwnershipTransferred", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "from", "type": "address" }, { "indexed": true, "internalType": "address", "name": "to", "type": "address" }, { "indexed": true, "internalType": "uint256", "name": "tokenId", "type": "uint256" } ], "name": "Transfer", "type": "event" }, { "inputs": [], "name": "OPERATOR_FILTER_REGISTRY", "outputs": [ { "internalType": "contract IOperatorFilterRegistry", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "_burner", "type": "address" } ], "name": "addBurner", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "_minter", "type": "address" } ], "name": "addMinter", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "", "type": "address" } ], "name": "allowedBurner", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "", "type": "address" } ], "name": "allowedMinter", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "_operator", "type": "address" }, { "internalType": "uint256", "name": "_tokenId", "type": "uint256" } ], "name": "approve", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "owner", "type": "address" } ], "name": "balanceOf", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256[]", "name": "_ids", "type": "uint256[]" } ], "name": "burn", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "tokenId", "type": "uint256" } ], "name": "getApproved", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "owner", "type": "address" }, { "internalType": "address", "name": "operator", "type": "address" } ], "name": "isApprovedForAll", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "isBurnLocked", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "isMetadataLocked", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "isMintLocked", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "lockBurn", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "lockMetadata", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "lockMint", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "metadataResolver", "outputs": [ { "internalType": "contract IMetadataResolver", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "_to", "type": "address" }, { "internalType": "uint256[]", "name": "_ids", "type": "uint256[]" } ], "name": "mint", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "name", "outputs": [ { "internalType": "string", "name": "", "type": "string" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "owner", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "tokenId", "type": "uint256" } ], "name": "ownerOf", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "_burner", "type": "address" } ], "name": "removeBurner", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "_minter", "type": "address" } ], "name": "removeMinter", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "renounceOwnership", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "_tokenId", "type": "uint256" }, { "internalType": "uint256", "name": "_salePrice", "type": "uint256" } ], "name": "royaltyInfo", "outputs": [ { "internalType": "address", "name": "", "type": "address" }, { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "_from", "type": "address" }, { "internalType": "address", "name": "_to", "type": "address" }, { "internalType": "uint256", "name": "_tokenId", "type": "uint256" } ], "name": "safeTransferFrom", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "_from", "type": "address" }, { "internalType": "address", "name": "_to", "type": "address" }, { "internalType": "uint256", "name": "_tokenId", "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": "address", "name": "_receiver", "type": "address" }, { "internalType": "uint96", "name": "_feeNumerator", "type": "uint96" } ], "name": "setDefaultRoyalty", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "_metadataResolverAddress", "type": "address" } ], "name": "setMetadataResolver", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "_tokenId", "type": "uint256" }, { "internalType": "address", "name": "_receiver", "type": "address" }, { "internalType": "uint96", "name": "_feeNumerator", "type": "uint96" } ], "name": "setTokenRoyalty", "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": "symbol", "outputs": [ { "internalType": "string", "name": "", "type": "string" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "_tokenId", "type": "uint256" } ], "name": "tokenURI", "outputs": [ { "internalType": "string", "name": "", "type": "string" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "totalSupply", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "_from", "type": "address" }, { "internalType": "address", "name": "_to", "type": "address" }, { "internalType": "uint256", "name": "_tokenId", "type": "uint256" } ], "name": "transferFrom", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "newOwner", "type": "address" } ], "name": "transferOwnership", "outputs": [], "stateMutability": "nonpayable", "type": "function" } ]
60806040523480156200001157600080fd5b506040516200276738038062002767833981016040819052620000349162000405565b733cc6cdda760b79bafa08df41ecfa224f810dceb66001838360006200005b83826200053f565b5060016200006a82826200053f565b5050506200008762000081620001e560201b60201c565b620001e9565b6daaeb6d7670e522a718067333cd4e3b15620001cc5780156200011a57604051633e9f1edf60e11b81523060048201526001600160a01b03831660248201526daaeb6d7670e522a718067333cd4e90637d3e3dbe906044015b600060405180830381600087803b158015620000fb57600080fd5b505af115801562000110573d6000803e3d6000fd5b50505050620001cc565b6001600160a01b038216156200016b5760405163a0af290360e01b81523060048201526001600160a01b03831660248201526daaeb6d7670e522a718067333cd4e9063a0af290390604401620000e0565b604051632210724360e11b81523060048201526daaeb6d7670e522a718067333cd4e90634420e48690602401600060405180830381600087803b158015620001b257600080fd5b505af1158015620001c7573d6000803e3d6000fd5b505050505b50620001db905083856200023b565b505050506200060b565b3390565b600880546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b6127106001600160601b0382161115620002af5760405162461bcd60e51b815260206004820152602a60248201527f455243323938313a20726f79616c7479206665652077696c6c206578636565646044820152692073616c65507269636560b01b60648201526084015b60405180910390fd5b6001600160a01b038216620003075760405162461bcd60e51b815260206004820152601960248201527f455243323938313a20696e76616c6964207265636569766572000000000000006044820152606401620002a6565b604080518082019091526001600160a01b039092168083526001600160601b039091166020909201829052600160a01b90910217600655565b634e487b7160e01b600052604160045260246000fd5b600082601f8301126200036857600080fd5b81516001600160401b038082111562000385576200038562000340565b604051601f8301601f19908116603f01168101908282118183101715620003b057620003b062000340565b81604052838152602092508683858801011115620003cd57600080fd5b600091505b83821015620003f15785820183015181830184015290820190620003d2565b600093810190920192909252949350505050565b600080600080608085870312156200041c57600080fd5b84516001600160601b03811681146200043457600080fd5b60208601519094506001600160a01b03811681146200045257600080fd5b60408601519093506001600160401b03808211156200047057600080fd5b6200047e8883890162000356565b935060608701519150808211156200049557600080fd5b50620004a48782880162000356565b91505092959194509250565b600181811c90821680620004c557607f821691505b602082108103620004e657634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200053a57600081815260208120601f850160051c81016020861015620005155750805b601f850160051c820191505b81811015620005365782815560010162000521565b5050505b505050565b81516001600160401b038111156200055b576200055b62000340565b62000573816200056c8454620004b0565b84620004ec565b602080601f831160018114620005ab5760008415620005925750858301515b600019600386901b1c1916600185901b17855562000536565b600085815260208120601f198616915b82811015620005dc57888601518255948401946001909101908401620005bb565b5085821015620005fb5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b61214c806200061b6000396000f3fe608060405234801561001057600080fd5b50600436106102275760003560e01c80637995c1e411610130578063b88d4fde116100b8578063df10580a1161007c578063df10580a146104d6578063e0b6bb67146104ea578063e985e9c5146104f2578063f2fde38b14610505578063f44637ba1461051857600080fd5b8063b88d4fde14610475578063bd3c996b14610488578063c87b56dd1461049c578063d7e45cd7146104af578063de836ebd146104c357600080fd5b8063983b2d56116100ff578063983b2d5614610421578063989bdbb614610434578063a0c76f621461043c578063a22cb4651461044f578063b80f55c91461046257600080fd5b80637995c1e4146103d25780638b78f0ef146103e55780638da5cb5b1461040857806395d89b411461041957600080fd5b806323b872dd116101b357806342842e0e1161018257806342842e0e1461037e5780635944c753146103915780636352211e146103a457806370a08231146103b7578063715018a6146103ca57600080fd5b806323b872dd146103115780632a55205a146103245780633092afd51461035657806341f434341461036957600080fd5b8063081812fc116101fa578063081812fc14610291578063095ea7b3146102bc57806318160ddd146102cf5780631a2f459f146102e65780631aff0dba1461030957600080fd5b806301ffc9a71461022c578063028468581461025457806304634d8d1461026957806306fdde031461027c575b600080fd5b61023f61023a3660046119ab565b61052b565b60405190151581526020015b60405180910390f35b6102676102623660046119eb565b61053c565b005b610267610277366004611a1d565b610565565b61028461057b565b60405161024b9190611aa0565b6102a461029f366004611ab3565b61060d565b6040516001600160a01b03909116815260200161024b565b6102676102ca366004611acc565b610634565b6102d8600c5481565b60405190815260200161024b565b61023f6102f43660046119eb565b600a6020526000908152604090205460ff1681565b61026761064d565b61026761031f366004611af6565b61066a565b610337610332366004611b32565b610695565b604080516001600160a01b03909316835260208301919091520161024b565b6102676103643660046119eb565b610741565b6102a46daaeb6d7670e522a718067333cd4e81565b61026761038c366004611af6565b61076a565b61026761039f366004611b54565b61078f565b6102a46103b2366004611ab3565b6107a2565b6102d86103c53660046119eb565b610807565b61026761088d565b6102676103e03660046119eb565b6108a1565b61023f6103f33660046119eb565b60096020526000908152604090205460ff1681565b6008546001600160a01b03166102a4565b610284610925565b61026761042f3660046119eb565b610934565b610267610960565b600b546102a4906001600160a01b031681565b61026761045d366004611b9e565b61097d565b610267610470366004611c9c565b610991565b610267610483366004611cf9565b610ab8565b60085461023f90600160a81b900460ff1681565b6102846104aa366004611ab3565b610ae5565b60085461023f90600160b01b900460ff1681565b6102676104d1366004611da4565b610b61565b60085461023f90600160a01b900460ff1681565b610267610cae565b61023f610500366004611df2565b610ccb565b6102676105133660046119eb565b610cf9565b6102676105263660046119eb565b610d72565b600061053682610d9e565b92915050565b610544610dc3565b6001600160a01b03166000908152600a60205260409020805460ff19169055565b61056d610dc3565b6105778282610e1d565b5050565b60606000805461058a90611e1c565b80601f01602080910402602001604051908101604052809291908181526020018280546105b690611e1c565b80156106035780601f106105d857610100808354040283529160200191610603565b820191906000526020600020905b8154815290600101906020018083116105e657829003601f168201915b5050505050905090565b600061061882610ed7565b506000908152600460205260409020546001600160a01b031690565b8161063e81610f36565b6106488383610fef565b505050565b610655610dc3565b6008805460ff60a81b1916600160a81b179055565b826001600160a01b03811633146106845761068433610f36565b61068f8484846110ff565b50505050565b60008281526007602090815260408083208151808301909252546001600160a01b038116808352600160a01b9091046001600160601b031692820192909252829161070a5750604080518082019091526006546001600160a01b0381168252600160a01b90046001600160601b031660208201525b602081015160009061271090610729906001600160601b031687611e6c565b6107339190611e83565b915196919550909350505050565b610749610dc3565b6001600160a01b03166000908152600960205260409020805460ff19169055565b826001600160a01b03811633146107845761078433610f36565b61068f848484611130565b610797610dc3565b61064883838361114b565b6000818152600260205260408120546001600160a01b0316806105365760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b60448201526064015b60405180910390fd5b60006001600160a01b0382166108715760405162461bcd60e51b815260206004820152602960248201527f4552433732313a2061646472657373207a65726f206973206e6f7420612076616044820152683634b21037bbb732b960b91b60648201526084016107fe565b506001600160a01b031660009081526003602052604090205490565b610895610dc3565b61089f6000611216565b565b6108a9610dc3565b600854600160b01b900460ff16156109035760405162461bcd60e51b815260206004820152601c60248201527f4c6f636b61626c653a206d65746164617461206973206c6f636b65640000000060448201526064016107fe565b600b80546001600160a01b0319166001600160a01b0392909216919091179055565b60606001805461058a90611e1c565b61093c610dc3565b6001600160a01b03166000908152600960205260409020805460ff19166001179055565b610968610dc3565b6008805460ff60b01b1916600160b01b179055565b8161098781610f36565b6106488383611268565b336000908152600a602052604090205460ff16610a025760405162461bcd60e51b815260206004820152602960248201527f50726f7465637465644d696e744275726e3a2063616c6c6572206973206e6f74604482015268103090313ab93732b960b91b60648201526084016107fe565b600854600160a81b900460ff1615610a5c5760405162461bcd60e51b815260206004820152601860248201527f4c6f636b61626c653a206275726e206973206c6f636b6564000000000000000060448201526064016107fe565b60005b8151811015610a9c57610a8a828281518110610a7d57610a7d611ea5565b6020026020010151611273565b80610a9481611ebb565b915050610a5f565b508051600c6000828254610ab09190611ed4565b909155505050565b836001600160a01b0381163314610ad257610ad233610f36565b610ade85858585611308565b5050505050565b6060610af082610ed7565b600b54604051633bb3a24d60e01b8152600481018490526001600160a01b0390911690633bb3a24d90602401600060405180830381865afa158015610b39573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526105369190810190611ee7565b3360009081526009602052604090205460ff1680610b98575033610b8d6008546001600160a01b031690565b6001600160a01b0316145b610bf65760405162461bcd60e51b815260206004820152602960248201527f50726f7465637465644d696e744275726e3a2063616c6c6572206973206e6f7460448201526810309036b4b73a32b960b91b60648201526084016107fe565b600854600160a01b900460ff1615610c505760405162461bcd60e51b815260206004820152601860248201527f4c6f636b61626c653a206d696e74206973206c6f636b6564000000000000000060448201526064016107fe565b60005b8151811015610c9157610c7f83838381518110610c7257610c72611ea5565b602002602001015161133a565b80610c8981611ebb565b915050610c53565b508051600c6000828254610ca59190611f5e565b90915550505050565b610cb6610dc3565b6008805460ff60a01b1916600160a01b179055565b6001600160a01b03918216600090815260056020908152604080832093909416825291909152205460ff1690565b610d01610dc3565b6001600160a01b038116610d665760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016107fe565b610d6f81611216565b50565b610d7a610dc3565b6001600160a01b03166000908152600a60205260409020805460ff19166001179055565b60006001600160e01b0319821663152a902d60e11b1480610536575061053682611354565b6008546001600160a01b0316331461089f5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016107fe565b6127106001600160601b0382161115610e485760405162461bcd60e51b81526004016107fe90611f71565b6001600160a01b038216610e9e5760405162461bcd60e51b815260206004820152601960248201527f455243323938313a20696e76616c69642072656365697665720000000000000060448201526064016107fe565b604080518082019091526001600160a01b039092168083526001600160601b039091166020909201829052600160a01b90910217600655565b6000818152600260205260409020546001600160a01b0316610d6f5760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b60448201526064016107fe565b6daaeb6d7670e522a718067333cd4e3b15610d6f57604051633185c44d60e21b81523060048201526001600160a01b03821660248201526daaeb6d7670e522a718067333cd4e9063c617113490604401602060405180830381865afa158015610fa3573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610fc79190611fbb565b610d6f57604051633b79c77360e21b81526001600160a01b03821660048201526024016107fe565b6000610ffa826107a2565b9050806001600160a01b0316836001600160a01b0316036110675760405162461bcd60e51b815260206004820152602160248201527f4552433732313a20617070726f76616c20746f2063757272656e74206f776e656044820152603960f91b60648201526084016107fe565b336001600160a01b038216148061108357506110838133610ccb565b6110f55760405162461bcd60e51b815260206004820152603d60248201527f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60448201527f6b656e206f776e6572206f7220617070726f76656420666f7220616c6c00000060648201526084016107fe565b61064883836113a4565b6111093382611412565b6111255760405162461bcd60e51b81526004016107fe90611fd8565b610648838383611471565b61064883838360405180602001604052806000815250610ab8565b6127106001600160601b03821611156111765760405162461bcd60e51b81526004016107fe90611f71565b6001600160a01b0382166111cc5760405162461bcd60e51b815260206004820152601b60248201527f455243323938313a20496e76616c696420706172616d6574657273000000000060448201526064016107fe565b6040805180820182526001600160a01b0393841681526001600160601b0392831660208083019182526000968752600790529190942093519051909116600160a01b029116179055565b600880546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b6105773383836115d5565b600061127e826107a2565b9050611289826107a2565b600083815260046020908152604080832080546001600160a01b03199081169091556001600160a01b0385168085526003845282852080546000190190558785526002909352818420805490911690555192935084927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908390a45050565b6113123383611412565b61132e5760405162461bcd60e51b81526004016107fe90611fd8565b61068f848484846116a3565b6105778282604051806020016040528060008152506116d6565b60006001600160e01b031982166380ac58cd60e01b148061138557506001600160e01b03198216635b5e139f60e01b145b8061053657506301ffc9a760e01b6001600160e01b0319831614610536565b600081815260046020526040902080546001600160a01b0319166001600160a01b03841690811790915581906113d9826107a2565b6001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b60008061141e836107a2565b9050806001600160a01b0316846001600160a01b0316148061144557506114458185610ccb565b806114695750836001600160a01b031661145e8461060d565b6001600160a01b0316145b949350505050565b826001600160a01b0316611484826107a2565b6001600160a01b0316146114aa5760405162461bcd60e51b81526004016107fe90612025565b6001600160a01b03821661150c5760405162461bcd60e51b8152602060048201526024808201527f4552433732313a207472616e7366657220746f20746865207a65726f206164646044820152637265737360e01b60648201526084016107fe565b826001600160a01b031661151f826107a2565b6001600160a01b0316146115455760405162461bcd60e51b81526004016107fe90612025565b600081815260046020908152604080832080546001600160a01b03199081169091556001600160a01b0387811680865260038552838620805460001901905590871680865283862080546001019055868652600290945282852080549092168417909155905184937fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b816001600160a01b0316836001600160a01b0316036116365760405162461bcd60e51b815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c65720000000000000060448201526064016107fe565b6001600160a01b03838116600081815260056020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a3505050565b6116ae848484611471565b6116ba84848484611709565b61068f5760405162461bcd60e51b81526004016107fe9061206a565b6116e0838361180a565b6116ed6000848484611709565b6106485760405162461bcd60e51b81526004016107fe9061206a565b60006001600160a01b0384163b156117ff57604051630a85bd0160e11b81526001600160a01b0385169063150b7a029061174d9033908990889088906004016120bc565b6020604051808303816000875af1925050508015611788575060408051601f3d908101601f19168201909252611785918101906120f9565b60015b6117e5573d8080156117b6576040519150601f19603f3d011682016040523d82523d6000602084013e6117bb565b606091505b5080516000036117dd5760405162461bcd60e51b81526004016107fe9061206a565b805181602001fd5b6001600160e01b031916630a85bd0160e11b149050611469565b506001949350505050565b6001600160a01b0382166118605760405162461bcd60e51b815260206004820181905260248201527f4552433732313a206d696e7420746f20746865207a65726f206164647265737360448201526064016107fe565b6000818152600260205260409020546001600160a01b0316156118c55760405162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e7465640000000060448201526064016107fe565b6000818152600260205260409020546001600160a01b03161561192a5760405162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e7465640000000060448201526064016107fe565b6001600160a01b038216600081815260036020908152604080832080546001019055848352600290915280822080546001600160a01b0319168417905551839291907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908290a45050565b6001600160e01b031981168114610d6f57600080fd5b6000602082840312156119bd57600080fd5b81356119c881611995565b9392505050565b80356001600160a01b03811681146119e657600080fd5b919050565b6000602082840312156119fd57600080fd5b6119c8826119cf565b80356001600160601b03811681146119e657600080fd5b60008060408385031215611a3057600080fd5b611a39836119cf565b9150611a4760208401611a06565b90509250929050565b60005b83811015611a6b578181015183820152602001611a53565b50506000910152565b60008151808452611a8c816020860160208601611a50565b601f01601f19169290920160200192915050565b6020815260006119c86020830184611a74565b600060208284031215611ac557600080fd5b5035919050565b60008060408385031215611adf57600080fd5b611ae8836119cf565b946020939093013593505050565b600080600060608486031215611b0b57600080fd5b611b14846119cf565b9250611b22602085016119cf565b9150604084013590509250925092565b60008060408385031215611b4557600080fd5b50508035926020909101359150565b600080600060608486031215611b6957600080fd5b83359250611b79602085016119cf565b9150611b8760408501611a06565b90509250925092565b8015158114610d6f57600080fd5b60008060408385031215611bb157600080fd5b611bba836119cf565b91506020830135611bca81611b90565b809150509250929050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f1916810167ffffffffffffffff81118282101715611c1457611c14611bd5565b604052919050565b600082601f830112611c2d57600080fd5b8135602067ffffffffffffffff821115611c4957611c49611bd5565b8160051b611c58828201611beb565b9283528481018201928281019087851115611c7257600080fd5b83870192505b84831015611c9157823582529183019190830190611c78565b979650505050505050565b600060208284031215611cae57600080fd5b813567ffffffffffffffff811115611cc557600080fd5b61146984828501611c1c565b600067ffffffffffffffff821115611ceb57611ceb611bd5565b50601f01601f191660200190565b60008060008060808587031215611d0f57600080fd5b611d18856119cf565b9350611d26602086016119cf565b925060408501359150606085013567ffffffffffffffff811115611d4957600080fd5b8501601f81018713611d5a57600080fd5b8035611d6d611d6882611cd1565b611beb565b818152886020838501011115611d8257600080fd5b8160208401602083013760006020838301015280935050505092959194509250565b60008060408385031215611db757600080fd5b611dc0836119cf565b9150602083013567ffffffffffffffff811115611ddc57600080fd5b611de885828601611c1c565b9150509250929050565b60008060408385031215611e0557600080fd5b611e0e836119cf565b9150611a47602084016119cf565b600181811c90821680611e3057607f821691505b602082108103611e5057634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052601160045260246000fd5b808202811582820484141761053657610536611e56565b600082611ea057634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052603260045260246000fd5b600060018201611ecd57611ecd611e56565b5060010190565b8181038181111561053657610536611e56565b600060208284031215611ef957600080fd5b815167ffffffffffffffff811115611f1057600080fd5b8201601f81018413611f2157600080fd5b8051611f2f611d6882611cd1565b818152856020838501011115611f4457600080fd5b611f55826020830160208601611a50565b95945050505050565b8082018082111561053657610536611e56565b6020808252602a908201527f455243323938313a20726f79616c7479206665652077696c6c206578636565646040820152692073616c65507269636560b01b606082015260800190565b600060208284031215611fcd57600080fd5b81516119c881611b90565b6020808252602d908201527f4552433732313a2063616c6c6572206973206e6f7420746f6b656e206f776e6560408201526c1c881bdc88185c1c1c9bdd9959609a1b606082015260800190565b60208082526025908201527f4552433732313a207472616e736665722066726f6d20696e636f72726563742060408201526437bbb732b960d91b606082015260800190565b60208082526032908201527f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560408201527131b2b4bb32b91034b6b83632b6b2b73a32b960711b606082015260800190565b6001600160a01b03858116825284166020820152604081018390526080606082018190526000906120ef90830184611a74565b9695505050505050565b60006020828403121561210b57600080fd5b81516119c88161199556fea26469706673582212209d855d6c2be2a06bacf8ba3f764abce37c06d406a26ae5eb8f7cd5d1b9d5152a64736f6c6343000812003300000000000000000000000000000000000000000000000000000000000003e8000000000000000000000000ed8b0f296a201d46066d895998bc5c191e47086d000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000c0000000000000000000000000000000000000000000000000000000000000000f44616e69656c6c61446f6f646c6573000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000024444000000000000000000000000000000000000000000000000000000000000