[ { "inputs": [ { "internalType": "string", "name": "name", "type": "string" }, { "internalType": "string", "name": "symbol", "type": "string" }, { "internalType": "uint256", "name": "howManyTokens", "type": "uint256" }, { "internalType": "uint256", "name": "supplyPerToken", "type": "uint256" }, { "internalType": "string", "name": "baseURI", "type": "string" }, { "internalType": "address", "name": "royaltiesRecipient", "type": "address" }, { "internalType": "uint24", "name": "royaltiesBasispoints", "type": "uint24" } ], "stateMutability": "nonpayable", "type": "constructor" }, { "inputs": [ { "internalType": "address", "name": "receiver", "type": "address" } ], "name": "ERC1155ReceiverRejectedTokens", "type": "error" }, { "inputs": [ { "internalType": "uint256", "name": "id", "type": "uint256" }, { "internalType": "address", "name": "owner", "type": "address" }, { "internalType": "uint256", "name": "owned", "type": "uint256" }, { "internalType": "uint256", "name": "requested", "type": "uint256" } ], "name": "InsufficientTokens", "type": "error" }, { "inputs": [], "name": "InvalidAddress", "type": "error" }, { "inputs": [], "name": "Unauthorized", "type": "error" }, { "inputs": [ { "internalType": "address", "name": "operator", "type": "address" } ], "name": "UnauthorizedTransfer", "type": "error" }, { "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": "string", "name": "uri", "type": "string" } ], "name": "BaseUriUpdate", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "address", "name": "recipient", "type": "address" }, { "indexed": false, "internalType": "uint24", "name": "amount", "type": "uint24" } ], "name": "RoyaltyInfoUpdate", "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" }, { "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": [], "name": "baseURI", "outputs": [ { "internalType": "string", "name": "", "type": "string" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "creator", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "creatorOwnershipBitMap", "outputs": [ { "internalType": "uint256[]", "name": "", "type": "uint256[]" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "id", "type": "uint256" } ], "name": "exists", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "howManyTokens", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "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": "uint256", "name": "id", "type": "uint256" } ], "name": "isOwnedByCreator", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "name", "outputs": [ { "internalType": "string", "name": "", "type": "string" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint24", "name": "basispoints", "type": "uint24" } ], "name": "reduceRoyalties", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "royalties", "outputs": [ { "internalType": "address", "name": "recipient", "type": "address" }, { "internalType": "uint24", "name": "amount", "type": "uint24" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "", "type": "uint256" }, { "internalType": "uint256", "name": "salePrice", "type": "uint256" } ], "name": "royaltyInfo", "outputs": [ { "internalType": "address", "name": "receiver", "type": "address" }, { "internalType": "uint256", "name": "royaltyAmount", "type": "uint256" } ], "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": [], "name": "supplyPerToken", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "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": "id", "type": "uint256" } ], "name": "totalSupply", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "recipient", "type": "address" } ], "name": "transferRoyaltiesRecipient", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "string", "name": "_baseURI", "type": "string" } ], "name": "updateBaseURI", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "tokenId", "type": "uint256" } ], "name": "uri", "outputs": [ { "internalType": "string", "name": "", "type": "string" } ], "stateMutability": "view", "type": "function" } ]
60806040523480156200001157600080fd5b50604051620021e5380380620021e583398101604081905262000034916200021d565b6001600055600380546001600160a01b0319163217905581818888888888600462000060868262000385565b5060056200006f858262000385565b5060066200007e828262000385565b5050600855600755506200009590508282620000a4565b50505050505050505062000451565b6127108162ffffff1611156200010e5760405162461bcd60e51b815260206004820152602560248201527f455243323938313a20726f79616c7479206261736973706f696e747320746f6f604482015264040d0d2ced60db1b606482015260840160405180910390fd5b600a805462ffffff909216600160a01b026001600160b81b03199092166001600160a01b0390931692909217179055565b634e487b7160e01b600052604160045260246000fd5b600082601f8301126200016757600080fd5b81516001600160401b03808211156200018457620001846200013f565b604051601f8301601f19908116603f01168101908282118183101715620001af57620001af6200013f565b81604052838152602092508683858801011115620001cc57600080fd5b600091505b83821015620001f05785820183015181830184015290820190620001d1565b600093810190920192909252949350505050565b805162ffffff811681146200021857600080fd5b919050565b600080600080600080600060e0888a0312156200023957600080fd5b87516001600160401b03808211156200025157600080fd5b6200025f8b838c0162000155565b985060208a01519150808211156200027657600080fd5b620002848b838c0162000155565b975060408a0151965060608a0151955060808a0151915080821115620002a957600080fd5b50620002b88a828b0162000155565b60a08a015190945090506001600160a01b0381168114620002d857600080fd5b9150620002e860c0890162000204565b905092959891949750929550565b600181811c908216806200030b57607f821691505b6020821081036200032c57634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200038057600081815260208120601f850160051c810160208610156200035b5750805b601f850160051c820191505b818110156200037c5782815560010162000367565b5050505b505050565b81516001600160401b03811115620003a157620003a16200013f565b620003b981620003b28454620002f6565b8462000332565b602080601f831160018114620003f15760008415620003d85750858301515b600019600386901b1c1916600185901b1785556200037c565b600085815260208120601f198616915b82811015620004225788860151825594840194600190910190840162000401565b5085821015620004415787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b611d8480620004616000396000f3fe608060405234801561001057600080fd5b506004361061014c5760003560e01c80636c0360eb116100c3578063a22cb4651161007c578063a22cb465146102f5578063b789308414610308578063bd85b03914610311578063e985e9c514610324578063f053dc5c14610337578063f242432a1461037b57600080fd5b80636c0360eb1461028457806378dfc4e81461028c5780637dbd127e146102be5780637f3aa0c4146102c7578063931688cb146102da57806395d89b41146102ed57600080fd5b80630e89341c116101155780630e89341c146101ef5780632a55205a146102025780632eb2c2d61461023457806343a65f85146102475780634e1273f41461025c5780634f558e791461026f57600080fd5b8062fdd58e1461015157806301ffc9a71461017757806302d05d3f1461019a57806306fdde03146101c557806308cc197c146101da575b600080fd5b61016461015f3660046113a0565b61038e565b6040519081526020015b60405180910390f35b61018a6101853660046113e3565b6103fa565b604051901515815260200161016e565b6003546101ad906001600160a01b031681565b6040516001600160a01b03909116815260200161016e565b6101cd610405565b60405161016e9190611450565b6101ed6101e836600461146a565b610493565b005b6101cd6101fd366004611485565b61052d565b61021561021036600461149e565b6105da565b604080516001600160a01b03909316835260208301919091520161016e565b6101ed610242366004611616565b610618565b61024f6107bf565b60405161016e91906116fb565b61024f61026a36600461170e565b6107dc565b61018a61027d366004611485565b6007541190565b6101cd610906565b61018a61029a366004611485565b600881901c600090815260096020526040902054600160ff9092169190911b161590565b61016460075481565b6101ed6102d53660046117d9565b610913565b6101ed6102e83660046117fe565b610a19565b6101cd610a80565b6101ed610303366004611847565b610a8d565b61016460085481565b61016461031f366004611485565b610a9c565b61018a610332366004611883565b610abc565b600a54610358906001600160a01b03811690600160a01b900462ffffff1682565b604080516001600160a01b03909316835262ffffff90911660208301520161016e565b6101ed6103893660046118ad565b610aea565b60008061039b8484610bc1565b9050600081116103ee576003546001600160a01b0385811691161480156103db5750600883901c600090815260096020526040902054600160ff85161b16155b6103e65760006103f0565b6008546103f0565b805b9150505b92915050565b60006103f482610c18565b6004805461041290611912565b80601f016020809104026020016040519081016040528092919081815260200182805461043e90611912565b801561048b5780601f106104605761010080835404028352916020019161048b565b820191906000526020600020905b81548152906001019060200180831161046e57829003601f168201915b505050505081565b600a546001600160a01b03163381146104be576040516282b42960e81b815260040160405180910390fd5b600a546104d8908390600160a01b900462ffffff16610c3d565b600a54604080516001600160a01b0385168152600160a01b90920462ffffff1660208301527f578e3eb2d4c9089ff58a6f307429a8aa35c32a32693f6a480b217fe7e6c8035091015b60405180910390a15050565b606061053a826007541190565b6105a85760405162461bcd60e51b815260206004820152603460248201527f49455243313135354d657461646174615552493a20757269207175657279206660448201527337b9103737b732bc34b9ba32b73a103a37b5b2b760611b60648201526084015b60405180910390fd5b60066105b383610cd3565b6040516020016105c492919061194c565b6040516020818303038152906040529050919050565b600a546001600160a01b038116906000906127109061060590600160a01b900462ffffff1685611a08565b61060f9190611a1f565b90509250929050565b610620610dff565b846001600160a01b0381163314801590610641575061063f8133610abc565b155b1561066157604051639a2983a360e01b815233600482015260240161059f565b846001600160a01b0381166106895760405163e6c4247b60e01b815260040160405180910390fd5b83518551146106eb5760405162461bcd60e51b815260206004820152602860248201527f455243313135353a2069647320616e6420616d6f756e7473206c656e677468206044820152670dad2e6dac2e8c6d60c31b606482015260840161059f565b60005b855181101561074657610736888888848151811061070e5761070e611a41565b602002602001015188858151811061072857610728611a41565b602002602001015188610e58565b61073f81611a57565b90506106ee565b50856001600160a01b0316876001600160a01b0316336001600160a01b03167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8888604051610796929190611a70565b60405180910390a46107ac338888888888610efc565b50506107b86001600055565b5050505050565b60606107d7600754600961101290919063ffffffff16565b905090565b606081518351146108415760405162461bcd60e51b815260206004820152602960248201527f455243313135353a206163636f756e747320616e6420696473206c656e677468604482015268040dad2e6dac2e8c6d60bb1b606482015260840161059f565b6000835167ffffffffffffffff81111561085d5761085d6114c0565b604051908082528060200260200182016040528015610886578160200160208202803683370190505b50905060005b84518110156108fe576108d18582815181106108aa576108aa611a41565b60200260200101518583815181106108c4576108c4611a41565b602002602001015161038e565b8282815181106108e3576108e3611a41565b60209081029190910101526108f781611a57565b905061088c565b509392505050565b6006805461041290611912565b600a546001600160a01b031633811461093e576040516282b42960e81b815260040160405180910390fd5b600a5462ffffff600160a01b9091048116908316106109bc5760405162461bcd60e51b815260206004820152603460248201527f455243323938313a207265647563656420726f79616c7479206261736973706f60448201527334b73a399036bab9ba1031329039b6b0b63632b960611b606482015260840161059f565b600a546109d2906001600160a01b031683610c3d565b600a54604080516001600160a01b03909216825262ffffff841660208301527f578e3eb2d4c9089ff58a6f307429a8aa35c32a32693f6a480b217fe7e6c803509101610521565b600a546001600160a01b0316338114610a44576040516282b42960e81b815260040160405180910390fd5b6006610a508382611ae9565b507fc35611e34b3940869a5132c8bc8ec4854192b0bfea25d0b9b38bcdeec2c09a7f826040516105219190611450565b6005805461041290611912565b610a983383836110ca565b5050565b6000610aa9826007541190565b610ab45760006103f4565b505060085490565b6001600160a01b03918216600090815260026020908152604080832093909416825291909152205460ff1690565b610af2610dff565b846001600160a01b0381163314801590610b135750610b118133610abc565b155b15610b3357604051639a2983a360e01b815233600482015260240161059f565b846001600160a01b038116610b5b5760405163e6c4247b60e01b815260040160405180910390fd5b610b688787878787610e58565b60408051868152602081018690526001600160a01b0380891692908a169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a46107ac3388888888886111aa565b6000826001600160a01b038116610beb5760405163e6c4247b60e01b815260040160405180910390fd5b60008381526001602090815260408083206001600160a01b038816845290915290205491505b5092915050565b60006001600160e01b0319821663152a902d60e11b14806103f457506103f482611271565b6127108162ffffff161115610ca25760405162461bcd60e51b815260206004820152602560248201527f455243323938313a20726f79616c7479206261736973706f696e747320746f6f604482015264040d0d2ced60db1b606482015260840161059f565b600a805462ffffff909216600160a01b026001600160b81b03199092166001600160a01b0390931692909217179055565b606081600003610cfa5750506040805180820190915260018152600360fc1b602082015290565b8160005b8115610d245780610d0e81611a57565b9150610d1d9050600a83611a1f565b9150610cfe565b60008167ffffffffffffffff811115610d3f57610d3f6114c0565b6040519080825280601f01601f191660200182016040528015610d69576020820181803683370190505b509050815b8515610df657610d7f600182611ba9565b90506000610d8e600a88611a1f565b610d9990600a611a08565b610da39088611ba9565b610dae906030611bbc565b905060008160f81b905080848481518110610dcb57610dcb611a41565b60200101906001600160f81b031916908160001a905350610ded600a89611a1f565b97505050610d6e565b50949350505050565b600260005403610e515760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c00604482015260640161059f565b6002600055565b6003546001600160a01b038681169116148015610e8e5750600883901c600090815260096020526040902054600160ff85161b16155b15610eef57600883901c60009081526009602052604090208054600160ff86161b17905560085460008481526001602090815260408083206003546001600160a01b0316845290915281208054909190610ee9908490611bd5565b90915550505b6107b88585858585611296565b6001600160a01b0384163b1561100a5760405163bc197c8160e01b81526001600160a01b0385169063bc197c8190610f409089908990889088908890600401611be8565b6020604051808303816000875af1925050508015610f7b575060408051601f3d908101601f19168201909252610f7891810190611c46565b60015b610fcc57610f87611c63565b806308c379a003610fc05750610f9b611c7f565b80610fa65750610fc2565b8060405162461bcd60e51b815260040161059f9190611450565b505b3d6000803e3d6000fd5b6001600160e01b0319811663bc197c8160e01b14611008576040516305e02e2d60e41b81526001600160a01b038616600482015260240161059f565b505b505050505050565b606060008260ff1611611026576000611029565b60015b61103a9060ff16600884901c611bd5565b67ffffffffffffffff811115611052576110526114c0565b60405190808252806020026020018201604052801561107b578160200160208202803683370190505b50905060005b8151811015610c115760008181526020859052604090205482518390839081106110ad576110ad611a41565b6020908102919091010152806110c281611a57565b915050611081565b816001600160a01b0316836001600160a01b03160361113d5760405162461bcd60e51b815260206004820152602960248201527f455243313135353a2073657474696e6720617070726f76616c20737461747573604482015268103337b91039b2b63360b91b606482015260840161059f565b6001600160a01b03838116600081815260026020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a3505050565b6001600160a01b0384163b1561100a5760405163f23a6e6160e01b81526001600160a01b0385169063f23a6e61906111ee9089908990889088908890600401611d09565b6020604051808303816000875af1925050508015611229575060408051601f3d908101601f1916820190925261122691810190611c46565b60015b61123557610f87611c63565b6001600160e01b0319811663f23a6e6160e01b14611008576040516305e02e2d60e41b81526001600160a01b038616600482015260240161059f565b60006001600160e01b031982166303a24d0760e21b14806103f457506103f48261134f565b60008381526001602090815260408083206001600160a01b0389168452909152902054828110156112fa5760405163376c5de960e01b8152600481018590526001600160a01b0387166024820152604481018290526064810184905260840161059f565b6113048382611ba9565b60008581526001602090815260408083206001600160a01b038b81168552925280832093909355871681529081208054859290611342908490611bd5565b9091555050505050505050565b60006001600160e01b03198216636cdb3d1360e11b14806103f457506301ffc9a760e01b6001600160e01b03198316146103f4565b80356001600160a01b038116811461139b57600080fd5b919050565b600080604083850312156113b357600080fd5b6113bc83611384565b946020939093013593505050565b6001600160e01b0319811681146113e057600080fd5b50565b6000602082840312156113f557600080fd5b81356103ee816113ca565b60005b8381101561141b578181015183820152602001611403565b50506000910152565b6000815180845261143c816020860160208601611400565b601f01601f19169290920160200192915050565b6020815260006114636020830184611424565b9392505050565b60006020828403121561147c57600080fd5b61146382611384565b60006020828403121561149757600080fd5b5035919050565b600080604083850312156114b157600080fd5b50508035926020909101359150565b634e487b7160e01b600052604160045260246000fd5b601f8201601f1916810167ffffffffffffffff811182821017156114fc576114fc6114c0565b6040525050565b600067ffffffffffffffff82111561151d5761151d6114c0565b5060051b60200190565b600082601f83011261153857600080fd5b8135602061154582611503565b60405161155282826114d6565b83815260059390931b850182019282810191508684111561157257600080fd5b8286015b8481101561158d5780358352918301918301611576565b509695505050505050565b600067ffffffffffffffff8311156115b2576115b26114c0565b6040516115c9601f8501601f1916602001826114d6565b8091508381528484840111156115de57600080fd5b83836020830137600060208583010152509392505050565b600082601f83011261160757600080fd5b61146383833560208501611598565b600080600080600060a0868803121561162e57600080fd5b61163786611384565b945061164560208701611384565b9350604086013567ffffffffffffffff8082111561166257600080fd5b61166e89838a01611527565b9450606088013591508082111561168457600080fd5b61169089838a01611527565b935060808801359150808211156116a657600080fd5b506116b3888289016115f6565b9150509295509295909350565b600081518084526020808501945080840160005b838110156116f0578151875295820195908201906001016116d4565b509495945050505050565b60208152600061146360208301846116c0565b6000806040838503121561172157600080fd5b823567ffffffffffffffff8082111561173957600080fd5b818501915085601f83011261174d57600080fd5b8135602061175a82611503565b60405161176782826114d6565b83815260059390931b850182019282810191508984111561178757600080fd5b948201945b838610156117ac5761179d86611384565b8252948201949082019061178c565b965050860135925050808211156117c257600080fd5b506117cf85828601611527565b9150509250929050565b6000602082840312156117eb57600080fd5b813562ffffff811681146103ee57600080fd5b60006020828403121561181057600080fd5b813567ffffffffffffffff81111561182757600080fd5b8201601f8101841361183857600080fd5b6103f084823560208401611598565b6000806040838503121561185a57600080fd5b61186383611384565b91506020830135801515811461187857600080fd5b809150509250929050565b6000806040838503121561189657600080fd5b61189f83611384565b915061060f60208401611384565b600080600080600060a086880312156118c557600080fd5b6118ce86611384565b94506118dc60208701611384565b93506040860135925060608601359150608086013567ffffffffffffffff81111561190657600080fd5b6116b3888289016115f6565b600181811c9082168061192657607f821691505b60208210810361194657634e487b7160e01b600052602260045260246000fd5b50919050565b600080845461195a81611912565b600182811680156119725760018114611987576119b6565b60ff19841687528215158302870194506119b6565b8860005260208060002060005b858110156119ad5781548a820152908401908201611994565b50505082870194505b50602f60f81b8452865192506119d28382860160208a01611400565b64173539b7b760d91b939092019182019290925260060195945050505050565b634e487b7160e01b600052601160045260246000fd5b80820281158282048414176103f4576103f46119f2565b600082611a3c57634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052603260045260246000fd5b600060018201611a6957611a696119f2565b5060010190565b604081526000611a8360408301856116c0565b8281036020840152611a9581856116c0565b95945050505050565b601f821115611ae457600081815260208120601f850160051c81016020861015611ac55750805b601f850160051c820191505b8181101561100a57828155600101611ad1565b505050565b815167ffffffffffffffff811115611b0357611b036114c0565b611b1781611b118454611912565b84611a9e565b602080601f831160018114611b4c5760008415611b345750858301515b600019600386901b1c1916600185901b17855561100a565b600085815260208120601f198616915b82811015611b7b57888601518255948401946001909101908401611b5c565b5085821015611b995787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b818103818111156103f4576103f46119f2565b60ff81811683821601908111156103f4576103f46119f2565b808201808211156103f4576103f46119f2565b6001600160a01b0386811682528516602082015260a060408201819052600090611c14908301866116c0565b8281036060840152611c2681866116c0565b90508281036080840152611c3a8185611424565b98975050505050505050565b600060208284031215611c5857600080fd5b81516103ee816113ca565b600060033d1115611c7c5760046000803e5060005160e01c5b90565b600060443d1015611c8d5790565b6040516003193d81016004833e81513d67ffffffffffffffff8160248401118184111715611cbd57505050505090565b8285019150815181811115611cd55750505050505090565b843d8701016020828501011115611cef5750505050505090565b611cfe602082860101876114d6565b509095945050505050565b6001600160a01b03868116825285166020820152604081018490526060810183905260a060808201819052600090611d4390830184611424565b97965050505050505056fea264697066735822122067af72f2eddb09da05fb002b28d9f12edce96c2842bcb92d5b4b9bc714809f4764736f6c6343000811003300000000000000000000000000000000000000000000000000000000000000e000000000000000000000000000000000000000000000000000000000000001200000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000001600000000000000000000000003884c2e833c33bc3790fddd35de340c81c92f92600000000000000000000000000000000000000000000000000000000000000fa0000000000000000000000000000000000000000000000000000000000000007576f6e64657273000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003574e4400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000035697066733a2f2f516d57724d7169456476565a386b4d55456438477a447977544d4e454e71685059696d476f465933376d5352394b0000000000000000000000