[ { "inputs": [], "stateMutability": "nonpayable", "type": "constructor" }, { "inputs": [], "name": "ApprovalCallerNotOwnerNorApproved", "type": "error" }, { "inputs": [], "name": "ApprovalQueryForNonexistentToken", "type": "error" }, { "inputs": [], "name": "ApproveToCaller", "type": "error" }, { "inputs": [], "name": "BalanceQueryForZeroAddress", "type": "error" }, { "inputs": [], "name": "InvalidQueryRange", "type": "error" }, { "inputs": [], "name": "MintERC2309QuantityExceedsLimit", "type": "error" }, { "inputs": [], "name": "MintToZeroAddress", "type": "error" }, { "inputs": [], "name": "MintZeroQuantity", "type": "error" }, { "inputs": [], "name": "OwnerQueryForNonexistentToken", "type": "error" }, { "inputs": [], "name": "OwnershipNotInitializedForExtraData", "type": "error" }, { "inputs": [], "name": "TransferCallerNotOwnerNorApproved", "type": "error" }, { "inputs": [], "name": "TransferFromIncorrectOwner", "type": "error" }, { "inputs": [], "name": "TransferToNonERC721ReceiverImplementer", "type": "error" }, { "inputs": [], "name": "TransferToZeroAddress", "type": "error" }, { "inputs": [], "name": "URIQueryForNonexistentToken", "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": "uint256", "name": "fromTokenId", "type": "uint256" }, { "indexed": false, "internalType": "uint256", "name": "toTokenId", "type": "uint256" }, { "indexed": true, "internalType": "address", "name": "from", "type": "address" }, { "indexed": true, "internalType": "address", "name": "to", "type": "address" } ], "name": "ConsecutiveTransfer", "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": [ { "internalType": "address", "name": "to", "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": [], "name": "baseURI", "outputs": [ { "internalType": "string", "name": "", "type": "string" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "name": "canFren", "outputs": [ { "internalType": "uint8", "name": "", "type": "uint8" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "tokenId", "type": "uint256" } ], "name": "explicitOwnershipOf", "outputs": [ { "components": [ { "internalType": "address", "name": "addr", "type": "address" }, { "internalType": "uint64", "name": "startTimestamp", "type": "uint64" }, { "internalType": "bool", "name": "burned", "type": "bool" }, { "internalType": "uint24", "name": "extraData", "type": "uint24" } ], "internalType": "struct IERC721A.TokenOwnership", "name": "", "type": "tuple" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256[]", "name": "tokenIds", "type": "uint256[]" } ], "name": "explicitOwnershipsOf", "outputs": [ { "components": [ { "internalType": "address", "name": "addr", "type": "address" }, { "internalType": "uint64", "name": "startTimestamp", "type": "uint64" }, { "internalType": "bool", "name": "burned", "type": "bool" }, { "internalType": "uint24", "name": "extraData", "type": "uint24" } ], "internalType": "struct IERC721A.TokenOwnership[]", "name": "", "type": "tuple[]" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "to", "type": "address" }, { "internalType": "uint256", "name": "frenToken", "type": "uint256" } ], "name": "frenFren", "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": [ { "internalType": "address", "name": "to", "type": "address" } ], "name": "mint", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "start", "type": "uint256" }, { "internalType": "uint256", "name": "end", "type": "uint256" } ], "name": "mintToBleanz", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address[]", "name": "to", "type": "address[]" } ], "name": "multiMint", "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": "uint256", "name": "tokenId", "type": "uint256" } ], "name": "redeemCert", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "renounceOwnership", "outputs": [], "stateMutability": "nonpayable", "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": "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": [ { "internalType": "address", "name": "owner", "type": "address" } ], "name": "tokensOfOwner", "outputs": [ { "internalType": "uint256[]", "name": "", "type": "uint256[]" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "owner", "type": "address" }, { "internalType": "uint256", "name": "start", "type": "uint256" }, { "internalType": "uint256", "name": "stop", "type": "uint256" } ], "name": "tokensOfOwnerIn", "outputs": [ { "internalType": "uint256[]", "name": "", "type": "uint256[]" } ], "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" }, { "inputs": [ { "internalType": "string", "name": "_newURI", "type": "string" } ], "name": "updateBaseURI", "outputs": [], "stateMutability": "nonpayable", "type": "function" } ]
60e06040526035608081815290620020cd60a039805162000029916009916020909101906200012d565b50600a80546001600160a01b0319167384404952344e7380574f40f6cb7b15d8fd17471d1790553480156200005d57600080fd5b5060405180606001604052806024815260200162002102602491396040518060400160405280600481526020016310d1549560e21b8152508160029080519060200190620000ad9291906200012d565b508051620000c39060039060208401906200012d565b50506000805550620000d533620000db565b6200020f565b600880546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b8280546200013b90620001d3565b90600052602060002090601f0160209004810192826200015f5760008555620001aa565b82601f106200017a57805160ff1916838001178555620001aa565b82800160010185558215620001aa579182015b82811115620001aa5782518255916020019190600101906200018d565b50620001b8929150620001bc565b5090565b5b80821115620001b85760008155600101620001bd565b600181811c90821680620001e857607f821691505b6020821081036200020957634e487b7160e01b600052602260045260246000fd5b50919050565b611eae806200021f6000396000f3fe608060405234801561001057600080fd5b50600436106101cf5760003560e01c8063715018a611610104578063a22cb465116100a2578063c87b56dd11610071578063c87b56dd146103e7578063dfa83391146103fa578063e985e9c51461042f578063f2fde38b1461046b57600080fd5b8063a22cb4651461038e578063ae15413e146103a1578063b88d4fde146103b4578063c23dc68f146103c757600080fd5b80638da5cb5b116100de5780638da5cb5b1461034f578063931688cb1461036057806395d89b411461037357806399a2557a1461037b57600080fd5b8063715018a614610314578063759f47a21461031c5780638462151c1461032f57600080fd5b806342842e0e116101715780636352211e1161014b5780636352211e146102d35780636a627842146102e65780636c0360eb146102f957806370a082311461030157600080fd5b806342842e0e1461028d578063438098d0146102a05780635bbb2177146102b357600080fd5b8063095ea7b3116101ad578063095ea7b31461023c57806318160ddd1461025157806323b872dd1461026757806337d8447d1461027a57600080fd5b806301ffc9a7146101d457806306fdde03146101fc578063081812fc14610211575b600080fd5b6101e76101e23660046117fc565b61047e565b60405190151581526020015b60405180910390f35b6102046104d0565b6040516101f39190611866565b61022461021f366004611879565b610562565b6040516001600160a01b0390911681526020016101f3565b61024f61024a3660046118a7565b6105a6565b005b600154600054035b6040519081526020016101f3565b61024f6102753660046118d3565b610646565b61024f610288366004611879565b6107e4565b61024f61029b3660046118d3565b6108c3565b61024f6102ae366004611960565b6108e3565b6102c66102c1366004611960565b610939565b6040516101f391906119df565b6102246102e1366004611879565b610a05565b61024f6102f4366004611a21565b610a10565b610204610a26565b61025961030f366004611a21565b610ab4565b61024f610b03565b61024f61032a366004611a3e565b610b17565b61034261033d366004611a21565b610bcf565b6040516101f39190611a60565b6008546001600160a01b0316610224565b61024f61036e366004611a98565b610cd8565b610204610cec565b610342610389366004611b0a565b610cfb565b61024f61039c366004611b3f565b610e75565b61024f6103af3660046118a7565b610f0a565b61024f6103c2366004611b93565b611038565b6103da6103d5366004611879565b61107c565b6040516101f39190611c73565b6102046103f5366004611879565b6110f4565b61041d610408366004611879565b600b6020526000908152604090205460ff1681565b60405160ff90911681526020016101f3565b6101e761043d366004611c81565b6001600160a01b03918216600090815260076020908152604080832093909416825291909152205460ff1690565b61024f610479366004611a21565b61116e565b60006301ffc9a760e01b6001600160e01b0319831614806104af57506380ac58cd60e01b6001600160e01b03198316145b806104ca5750635b5e139f60e01b6001600160e01b03198316145b92915050565b6060600280546104df90611caf565b80601f016020809104026020016040519081016040528092919081815260200182805461050b90611caf565b80156105585780601f1061052d57610100808354040283529160200191610558565b820191906000526020600020905b81548152906001019060200180831161053b57829003601f168201915b5050505050905090565b600061056d826111e4565b61058a576040516333d1c03960e21b815260040160405180910390fd5b506000908152600660205260409020546001600160a01b031690565b60006105b182610a05565b9050336001600160a01b038216146105ea576105cd813361043d565b6105ea576040516367d9dca160e11b815260040160405180910390fd5b60008281526006602052604080822080546001600160a01b0319166001600160a01b0387811691821790925591518593918516917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591a4505050565b60006106518261120b565b9050836001600160a01b0316816001600160a01b0316146106845760405162a1148160e81b815260040160405180910390fd5b600082815260066020526040902080546106b08187335b6001600160a01b039081169116811491141790565b6106db576106be863361043d565b6106db57604051632ce44b5f60e11b815260040160405180910390fd5b6001600160a01b03851661070257604051633a954ecd60e21b815260040160405180910390fd5b61070f8686866001611272565b801561071a57600082555b6001600160a01b038681166000908152600560205260408082208054600019019055918716808252919020805460010190554260a01b17600160e11b17600085815260046020526040812091909155600160e11b841690036107ac576001840160008181526004602052604081205490036107aa5760005481146107aa5760008181526004602052604090208490555b505b83856001600160a01b0316876001600160a01b0316600080516020611e5983398151915260405160405180910390a45b505050505050565b336107ee82610a05565b6001600160a01b0316146108445760405162461bcd60e51b8152602060048201526018602482015277596f7520646f6e2774206f776e207468617420434552542160401b60448201526064015b60405180910390fd5b6000818152600b60205260409020805460ff19169055610863816112c5565b600a54604051634878964160e01b81523360048201526001600160a01b0390911690634878964190602401600060405180830381600087803b1580156108a857600080fd5b505af11580156108bc573d6000803e3d6000fd5b5050505050565b6108de83838360405180602001604052806000815250611038565b505050565b6108eb6112d0565b60005b818110156108de5761092783838381811061090b5761090b611ce9565b90506020020160208101906109209190611a21565b600161132a565b8061093181611d15565b9150506108ee565b60608160008167ffffffffffffffff81111561095757610957611b7d565b6040519080825280602002602001820160405280156109a957816020015b6040805160808101825260008082526020808301829052928201819052606082015282526000199092019101816109755790505b50905060005b8281146109fc576109d78686838181106109cb576109cb611ce9565b9050602002013561107c565b8282815181106109e9576109e9611ce9565b60209081029190910101526001016109af565b50949350505050565b60006104ca8261120b565b610a186112d0565b610a2381600161132a565b50565b60098054610a3390611caf565b80601f0160208091040260200160405190810160405280929190818152602001828054610a5f90611caf565b8015610aac5780601f10610a8157610100808354040283529160200191610aac565b820191906000526020600020905b815481529060010190602001808311610a8f57829003601f168201915b505050505081565b60006001600160a01b038216610add576040516323d3ad8160e21b815260040160405180910390fd5b506001600160a01b031660009081526005602052604090205467ffffffffffffffff1690565b610b0b6112d0565b610b156000611411565b565b610b1f6112d0565b73d4d1980a11a23020b6f7f04d0d9f0feaf323cb35825b828111610bc9576040516331a9108f60e11b8152600481018290526000906001600160a01b03841690636352211e90602401602060405180830381865afa158015610b85573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ba99190611d2e565b9050610bb681600161132a565b5080610bc181611d15565b915050610b36565b50505050565b60606000806000610bdf85610ab4565b905060008167ffffffffffffffff811115610bfc57610bfc611b7d565b604051908082528060200260200182016040528015610c25578160200160208202803683370190505b509050610c5260408051608081018252600080825260208201819052918101829052606081019190915290565b60005b838614610ccc57610c6581611463565b91508160400151610cc45781516001600160a01b031615610c8557815194505b876001600160a01b0316856001600160a01b031603610cc45780838780600101985081518110610cb757610cb7611ce9565b6020026020010181815250505b600101610c55565b50909695505050505050565b610ce06112d0565b6108de6009838361174d565b6060600380546104df90611caf565b6060818310610d1d57604051631960ccad60e11b815260040160405180910390fd5b600080610d2960005490565b905080841115610d37578093505b6000610d4287610ab4565b905084861015610d615785850381811015610d5b578091505b50610d65565b5060005b60008167ffffffffffffffff811115610d8057610d80611b7d565b604051908082528060200260200182016040528015610da9578160200160208202803683370190505b50905081600003610dbf579350610e6e92505050565b6000610dca8861107c565b905060008160400151610ddb575080515b885b888114158015610ded5750848714155b15610e6257610dfb81611463565b92508260400151610e5a5782516001600160a01b031615610e1b57825191505b8a6001600160a01b0316826001600160a01b031603610e5a5780848880600101995081518110610e4d57610e4d611ce9565b6020026020010181815250505b600101610ddd565b50505092835250909150505b9392505050565b336001600160a01b03831603610e9e5760405163b06307db60e01b815260040160405180910390fd5b3360008181526007602090815260408083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b33610f1482610a05565b6001600160a01b031614610f655760405162461bcd60e51b8152602060048201526018602482015277596f7520646f6e2774206f776e207468617420434552542160401b604482015260640161083b565b6000818152600b602052604090205460ff16600114610fc65760405162461bcd60e51b815260206004820152601d60248201527f546f6b656e206e6f7420656c696769626c6520666f72206672656e7321000000604482015260640161083b565b6000818152600b602052604090819020805460ff19169055600a549051634878964160e01b81526001600160a01b03848116600483015290911690634878964190602401600060405180830381600087803b15801561102457600080fd5b505af11580156107dc573d6000803e3d6000fd5b611043848484610646565b6001600160a01b0383163b15610bc95761105f8484848461149f565b610bc9576040516368d2bf6b60e11b815260040160405180910390fd5b60408051608080820183526000808352602080840182905283850182905260608085018390528551938401865282845290830182905293820181905292810183905290915060005483106110d05792915050565b6110d983611463565b90508060400151156110eb5792915050565b610e6e8361158a565b60606110ff826111e4565b61111c57604051630a14c4b560e41b815260040160405180910390fd5b6009805461112990611caf565b905060000361114757604051806020016040528060008152506104ca565b60096040516020016111599190611d4b565b60405160208183030381529060405292915050565b6111766112d0565b6001600160a01b0381166111db5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b606482015260840161083b565b610a2381611411565b60008054821080156104ca575050600090815260046020526040902054600160e01b161590565b6000816000548110156112595760008181526004602052604081205490600160e01b82169003611257575b80600003610e6e575060001901600081815260046020526040902054611236565b505b604051636f96cda160e11b815260040160405180910390fd5b6001600160a01b0384166112c057815b61128c8284611de6565b8110156112be576000818152600b60205260409020805460ff19166001179055806112b681611d15565b915050611282565b505b610bc9565b610a238160006115bf565b6008546001600160a01b03163314610b155760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161083b565b600080549082900361134f5760405163b562e8dd60e01b815260040160405180910390fd5b61135c6000848385611272565b6001600160a01b03831660008181526005602090815260408083208054680100000000000000018802019055848352600490915281206001851460e11b4260a01b17831790558284019083908390600080516020611e598339815191528180a4600183015b8181146113e75780836000600080516020611e59833981519152600080a46001016113c1565b508160000361140857604051622e076360e81b815260040160405180910390fd5b60005550505050565b600880546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b6040805160808101825260008082526020820181905291810182905260608101919091526000828152600460205260409020546104ca90611705565b604051630a85bd0160e11b81526000906001600160a01b0385169063150b7a02906114d4903390899088908890600401611dfe565b6020604051808303816000875af192505050801561150f575060408051601f3d908101601f1916820190925261150c91810190611e3b565b60015b61156d573d80801561153d576040519150601f19603f3d011682016040523d82523d6000602084013e611542565b606091505b508051600003611565576040516368d2bf6b60e11b815260040160405180910390fd5b805181602001fd5b6001600160e01b031916630a85bd0160e11b149050949350505050565b6040805160808101825260008082526020820181905291810182905260608101919091526104ca6115ba8361120b565b611705565b60006115ca8361120b565b9050806000806115e886600090815260066020526040902080549091565b915091508415611628576115fd81843361069b565b6116285761160b833361043d565b61162857604051632ce44b5f60e11b815260040160405180910390fd5b611636836000886001611272565b801561164157600082555b6001600160a01b038316600081815260056020526040902080546fffffffffffffffffffffffffffffffff0190554260a01b17600360e01b17600087815260046020526040812091909155600160e11b851690036116cf576001860160008181526004602052604081205490036116cd5760005481146116cd5760008181526004602052604090208590555b505b60405186906000906001600160a01b03861690600080516020611e59833981519152908390a45050600180548101905550505050565b604080516080810182526001600160a01b038316815260a083901c67ffffffffffffffff166020820152600160e01b831615159181019190915260e89190911c606082015290565b82805461175990611caf565b90600052602060002090601f01602090048101928261177b57600085556117c1565b82601f106117945782800160ff198235161785556117c1565b828001600101855582156117c1579182015b828111156117c15782358255916020019190600101906117a6565b506117cd9291506117d1565b5090565b5b808211156117cd57600081556001016117d2565b6001600160e01b031981168114610a2357600080fd5b60006020828403121561180e57600080fd5b8135610e6e816117e6565b6000815180845260005b8181101561183f57602081850181015186830182015201611823565b81811115611851576000602083870101525b50601f01601f19169290920160200192915050565b602081526000610e6e6020830184611819565b60006020828403121561188b57600080fd5b5035919050565b6001600160a01b0381168114610a2357600080fd5b600080604083850312156118ba57600080fd5b82356118c581611892565b946020939093013593505050565b6000806000606084860312156118e857600080fd5b83356118f381611892565b9250602084013561190381611892565b929592945050506040919091013590565b60008083601f84011261192657600080fd5b50813567ffffffffffffffff81111561193e57600080fd5b6020830191508360208260051b850101111561195957600080fd5b9250929050565b6000806020838503121561197357600080fd5b823567ffffffffffffffff81111561198a57600080fd5b61199685828601611914565b90969095509350505050565b80516001600160a01b0316825260208082015167ffffffffffffffff169083015260408082015115159083015260609081015162ffffff16910152565b6020808252825182820181905260009190848201906040850190845b81811015610ccc57611a0e8385516119a2565b92840192608092909201916001016119fb565b600060208284031215611a3357600080fd5b8135610e6e81611892565b60008060408385031215611a5157600080fd5b50508035926020909101359150565b6020808252825182820181905260009190848201906040850190845b81811015610ccc57835183529284019291840191600101611a7c565b60008060208385031215611aab57600080fd5b823567ffffffffffffffff80821115611ac357600080fd5b818501915085601f830112611ad757600080fd5b813581811115611ae657600080fd5b866020828501011115611af857600080fd5b60209290920196919550909350505050565b600080600060608486031215611b1f57600080fd5b8335611b2a81611892565b95602085013595506040909401359392505050565b60008060408385031215611b5257600080fd5b8235611b5d81611892565b915060208301358015158114611b7257600080fd5b809150509250929050565b634e487b7160e01b600052604160045260246000fd5b60008060008060808587031215611ba957600080fd5b8435611bb481611892565b93506020850135611bc481611892565b925060408501359150606085013567ffffffffffffffff80821115611be857600080fd5b818701915087601f830112611bfc57600080fd5b813581811115611c0e57611c0e611b7d565b604051601f8201601f19908116603f01168101908382118183101715611c3657611c36611b7d565b816040528281528a6020848701011115611c4f57600080fd5b82602086016020830137600060208483010152809550505050505092959194509250565b608081016104ca82846119a2565b60008060408385031215611c9457600080fd5b8235611c9f81611892565b91506020830135611b7281611892565b600181811c90821680611cc357607f821691505b602082108103611ce357634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b600060018201611d2757611d27611cff565b5060010190565b600060208284031215611d4057600080fd5b8151610e6e81611892565b600080835481600182811c915080831680611d6757607f831692505b60208084108203611d8657634e487b7160e01b86526022600452602486fd5b818015611d9a5760018114611dab57611dd8565b60ff19861689528489019650611dd8565b60008a81526020902060005b86811015611dd05781548b820152908501908301611db7565b505084890196505b509498975050505050505050565b60008219821115611df957611df9611cff565b500190565b6001600160a01b0385811682528416602082015260408101839052608060608201819052600090611e3190830184611819565b9695505050505050565b600060208284031215611e4d57600080fd5b8151610e6e816117e656feddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efa26469706673582212204902ebc79a560c6b46c38ac23de2f5f1be7ce3e568c52ed78273973f4cb63c7564736f6c634300080d0033697066733a2f2f516d5750517a4c436d465a7165564c4c4663537848376552543678665a5831644531524742506b544c776e7248454365727469666963617465206f6620536f756c626f756e6420456c69676962696c697479