Overview
ETH Balance
ETH Value
$0.00View more zero value Internal Transactions in Advanced View mode
Cross-Chain Transactions
Contract Source Code (Solidity Standard Json-Input format)
Contract Security Audit
Contract ABI
API[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[],"name":"AccessControlBadConfirmation","type":"error"},{"inputs":[{"internalType":"address","name":"account","type":"address"},{"internalType":"bytes32","name":"neededRole","type":"bytes32"}],"name":"AccessControlUnauthorizedAccount","type":"error"},{"inputs":[{"internalType":"address","name":"target","type":"address"}],"name":"AddressEmptyCode","type":"error"},{"inputs":[{"internalType":"address","name":"implementation","type":"address"}],"name":"ERC1967InvalidImplementation","type":"error"},{"inputs":[],"name":"ERC1967NonPayable","type":"error"},{"inputs":[],"name":"FailedInnerCall","type":"error"},{"inputs":[],"name":"InvalidInitialization","type":"error"},{"inputs":[],"name":"NotInitializing","type":"error"},{"inputs":[{"internalType":"uint8","name":"bits","type":"uint8"},{"internalType":"uint256","name":"value","type":"uint256"}],"name":"SafeCastOverflowedUintDowncast","type":"error"},{"inputs":[],"name":"UUPSUnauthorizedCallContext","type":"error"},{"inputs":[{"internalType":"bytes32","name":"slot","type":"bytes32"}],"name":"UUPSUnsupportedProxiableUUID","type":"error"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint64","name":"version","type":"uint64"}],"name":"Initialized","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"version","type":"uint256"},{"indexed":false,"internalType":"address","name":"defaultAdmin","type":"address"},{"indexed":false,"internalType":"address","name":"upgrader","type":"address"},{"indexed":false,"internalType":"address","name":"operator","type":"address"},{"indexed":false,"internalType":"address","name":"neuContract","type":"address"},{"indexed":false,"internalType":"address","name":"logoContract","type":"address"}],"name":"InitializedMetadata","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"logoContract","type":"address"}],"name":"LogoUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"string","name":"uri","type":"string"}],"name":"MetadataURIUpdated","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":"uint16","name":"seriesIndex","type":"uint16"},{"indexed":true,"internalType":"bytes8","name":"name","type":"bytes8"},{"indexed":false,"internalType":"uint64","name":"priceInGwei","type":"uint64"},{"indexed":false,"internalType":"uint32","name":"firstToken","type":"uint32"},{"indexed":false,"internalType":"uint32","name":"maxTokens","type":"uint32"},{"indexed":false,"internalType":"uint16","name":"fgColorRGB565","type":"uint16"},{"indexed":false,"internalType":"uint16","name":"bgColorRGB565","type":"uint16"},{"indexed":false,"internalType":"uint16","name":"accentColorRGB565","type":"uint16"},{"indexed":false,"internalType":"bool","name":"makeAvailable","type":"bool"}],"name":"SeriesAdded","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint16","name":"seriesIndex","type":"uint16"},{"indexed":false,"internalType":"bool","name":"available","type":"bool"}],"name":"SeriesAvailabilityUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint16","name":"seriesIndex","type":"uint16"},{"indexed":false,"internalType":"uint64","name":"priceInGwei","type":"uint64"}],"name":"SeriesPriceUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"TokenMetadataDeleted","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint256","name":"tokenId","type":"uint256"},{"components":[{"internalType":"uint64","name":"originalPriceInGwei","type":"uint64"},{"internalType":"uint64","name":"sponsorPoints","type":"uint64"},{"internalType":"uint40","name":"mintedAt","type":"uint40"}],"indexed":false,"internalType":"struct TokenMetadata","name":"metadata","type":"tuple"}],"name":"TokenMetadataUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"bytes32","name":"traitName","type":"bytes32"},{"indexed":false,"internalType":"uint256","name":"tokenId","type":"uint256"},{"indexed":false,"internalType":"bytes32","name":"traitValue","type":"bytes32"}],"name":"TraitUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"implementation","type":"address"}],"name":"Upgraded","type":"event"},{"inputs":[],"name":"DEFAULT_ADMIN_ROLE","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"NEU_ROLE","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"OPERATOR_ROLE","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"STORAGE_ROLE","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"UPGRADER_ROLE","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"UPGRADE_INTERFACE_VERSION","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes8","name":"name","type":"bytes8"},{"internalType":"uint64","name":"priceInGwei","type":"uint64"},{"internalType":"uint32","name":"firstToken","type":"uint32"},{"internalType":"uint32","name":"maxTokens","type":"uint32"},{"internalType":"uint16","name":"fgColorRGB565","type":"uint16"},{"internalType":"uint16","name":"bgColorRGB565","type":"uint16"},{"internalType":"uint16","name":"accentColorRGB565","type":"uint16"},{"internalType":"bool","name":"makeAvailable","type":"bool"}],"name":"addSeries","outputs":[{"internalType":"uint16","name":"","type":"uint16"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint16","name":"seriesIndex","type":"uint16"},{"internalType":"uint256","name":"originalPrice","type":"uint256"}],"name":"createTokenMetadata","outputs":[{"internalType":"uint256","name":"tokenId","type":"uint256"},{"internalType":"bool","name":"governance","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"deleteTokenMetadata","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"getAvailableSeries","outputs":[{"internalType":"uint16[]","name":"","type":"uint16[]"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"getRefundAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"}],"name":"getRoleAdmin","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint16","name":"seriesIndex","type":"uint16"}],"name":"getSeries","outputs":[{"internalType":"bytes8","name":"name","type":"bytes8"},{"internalType":"uint256","name":"priceInGwei","type":"uint256"},{"internalType":"uint256","name":"firstToken","type":"uint256"},{"internalType":"uint256","name":"maxTokens","type":"uint256"},{"internalType":"uint256","name":"mintedTokens","type":"uint256"},{"internalType":"uint256","name":"burntTokens","type":"uint256"},{"internalType":"bool","name":"isAvailable","type":"bool"},{"internalType":"string","name":"logoSvg","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint16","name":"seriesIndex","type":"uint16"}],"name":"getSeriesMintingPrice","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getTraitMetadataURI","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"tokenId","type":"uint256"},{"internalType":"bytes32","name":"traitKey","type":"bytes32"}],"name":"getTraitValue","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"tokenId","type":"uint256"},{"internalType":"bytes32[]","name":"traitKeys","type":"bytes32[]"}],"name":"getTraitValues","outputs":[{"internalType":"bytes32[]","name":"traitValues","type":"bytes32[]"}],"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":"uint256","name":"tokenId","type":"uint256"},{"internalType":"uint256","name":"sponsorPointsIncrease","type":"uint256"}],"name":"increaseSponsorPoints","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"defaultAdmin","type":"address"},{"internalType":"address","name":"upgrader","type":"address"},{"internalType":"address","name":"operator","type":"address"},{"internalType":"address","name":"neuContract","type":"address"},{"internalType":"address","name":"logoContract","type":"address"}],"name":"initialize","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"isGovernanceToken","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint16","name":"seriesIndex","type":"uint16"}],"name":"isSeriesAvailable","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"isUserMinted","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"proxiableUUID","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"},{"internalType":"address","name":"callerConfirmation","type":"address"}],"name":"renounceRole","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"},{"internalType":"address","name":"account","type":"address"}],"name":"revokeRole","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"logoContract","type":"address"}],"name":"setLogoContract","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint16","name":"seriesIndex","type":"uint16"},{"internalType":"uint64","name":"price","type":"uint64"}],"name":"setPriceInGwei","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint16","name":"seriesIndex","type":"uint16"},{"internalType":"bool","name":"available","type":"bool"}],"name":"setSeriesAvailability","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"string","name":"uri","type":"string"}],"name":"setTraitMetadataURI","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"sumAllRefundableTokensValue","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":[{"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"tokenURI","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"newImplementation","type":"address"},{"internalType":"bytes","name":"data","type":"bytes"}],"name":"upgradeToAndCall","outputs":[],"stateMutability":"payable","type":"function"}]Contract Creation Code
60a06040523060805234801561001457600080fd5b5061001d610022565b6100d4565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00805468010000000000000000900460ff16156100725760405163f92ee8a960e01b815260040160405180910390fd5b80546001600160401b03908116146100d15780546001600160401b0319166001600160401b0390811782556040519081527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a15b50565b6080516150cb6100fd600039600081816131060152818161312f015261336d01526150cb6000f3fe6080604052600436106102345760003560e01c80637427160511610138578063c87b56dd116100b0578063db5c339b1161007f578063f5b541a611610064578063f5b541a614610742578063f72c0d8b14610776578063f80ecba3146107aa57600080fd5b8063db5c339b1461070d578063de475bf91461072d57600080fd5b8063c87b56dd14610679578063d474ea5814610699578063d547741f146106b9578063d58a3448146106d957600080fd5b8063ac77320411610107578063add77524116100ec578063add775241461060f578063b9e576b11461062f578063ba7e15bd1461064457600080fd5b8063ac77320414610599578063ad3cb1cc146105b957600080fd5b806374271605146104d257806391d14854146104f2578063a217fddf14610564578063a28eec871461057957600080fd5b806336568abe116101cb5780634f1ef2861161019a578063559c2a981161017f578063559c2a981461045e578063566eea1b1461047e57806356dcac881461049e57600080fd5b80634f1ef2861461043657806352d1902d1461044957600080fd5b806336568abe1461038d57806339ce4540146103ad5780633ccec20c146103e15780633e96e7311461041457600080fd5b80632094a036116102075780632094a036146102de578063248a9ca3146102fe5780632da7b0e61461034d5780632f2ff15d1461036d57600080fd5b806301ffc9a71461023957806304cd52941461026e578063064fa71d1461029c5780631459457a146102bc575b600080fd5b34801561024557600080fd5b506102596102543660046141cd565b6107d7565b60405190151581526020015b60405180910390f35b34801561027a57600080fd5b5061028e61028936600461420f565b610870565b604051908152602001610265565b3480156102a857600080fd5b506102596102b736600461420f565b6109e1565b3480156102c857600080fd5b506102dc6102d7366004614251565b6109ff565b005b3480156102ea57600080fd5b506102dc6102f93660046142b6565b610cb7565b34801561030a57600080fd5b5061028e61031936600461420f565b60009081527f02dd7bc7dec4dceedda775e58dd541e08a116c6c53815c0bd028192f7b626800602052604090206001015490565b34801561035957600080fd5b506102dc610368366004614354565b610d25565b34801561037957600080fd5b506102dc610388366004614387565b610e64565b34801561039957600080fd5b506102dc6103a8366004614387565b610eae565b3480156103b957600080fd5b506103cd6103c83660046143aa565b610f07565b604051610265989796959493929190614433565b3480156103ed57600080fd5b506104016103fc3660046144c8565b6111dd565b60405161ffff9091168152602001610265565b34801561042057600080fd5b5061042961178d565b6040516102659190614586565b6102dc610444366004614691565b61180d565b34801561045557600080fd5b5061028e61182c565b34801561046a57600080fd5b5061028e6104793660046143aa565b61185b565b34801561048a57600080fd5b5061028e610499366004614722565b611918565b3480156104aa57600080fd5b5061028e7f2f27e3d0c9d5144be28e016e79de2f52d828d0070de5d6dfa31e6c5c94e8880081565b3480156104de57600080fd5b506102dc6104ed366004614744565b611afe565b3480156104fe57600080fd5b5061025961050d366004614387565b60009182527f02dd7bc7dec4dceedda775e58dd541e08a116c6c53815c0bd028192f7b6268006020908152604080842073ffffffffffffffffffffffffffffffffffffffff93909316845291905290205460ff1690565b34801561057057600080fd5b5061028e600081565b34801561058557600080fd5b5061028e610594366004614722565b611e5c565b3480156105a557600080fd5b506102dc6105b436600461476e565b611e68565b3480156105c557600080fd5b506106026040518060400160405280600581526020017f352e302e3000000000000000000000000000000000000000000000000000000081525081565b6040516102659190614789565b34801561061b57600080fd5b5061025961062a3660046143aa565b611f0c565b34801561063b57600080fd5b5061028e611f17565b34801561065057600080fd5b5061066461065f36600461479c565b6120f9565b60408051928352901515602083015201610265565b34801561068557600080fd5b5061060261069436600461420f565b612477565b3480156106a557600080fd5b506102596106b436600461420f565b6124b0565b3480156106c557600080fd5b506102dc6106d4366004614387565b612502565b3480156106e557600080fd5b5061028e7f95d4bc2dffead2f8c85023cc6927eae1b262c537650df2a0f5d7bfc294d2831281565b34801561071957600080fd5b506102dc61072836600461420f565b612546565b34801561073957600080fd5b506106026126e8565b34801561074e57600080fd5b5061028e7f97667070c54ef182b0f5858b034beac1b6f3089aa2d3188bb1e8929f4fa9b92981565b34801561078257600080fd5b5061028e7f189ab7a9244df0848122154315af71fe140f3db0fe014031783b0946b8c9d2e381565b3480156107b657600080fd5b506107ca6107c53660046147c6565b612771565b6040516102659190614847565b60007fffffffff0000000000000000000000000000000000000000000000000000000082167f7965db0b00000000000000000000000000000000000000000000000000000000148061086a57507f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316145b92915050565b60008181526001602090815260408083208151606081018352905467ffffffffffffffff80821680845268010000000000000000830490911694830194909452700100000000000000000000000000000000900464ffffffffff16918101919091529061093e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601760248201527f546f6b656e206973206e6f7420726566756e6461626c6500000000000000000060448201526064015b60405180910390fd5b62093a80816040015164ffffffffff164261095991906148ae565b106109c0576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601860248201527f526566756e642077696e646f77206861732070617373656400000000000000006044820152606401610935565b80516109d090633b9aca006148c1565b67ffffffffffffffff169392505050565b6000806109ed8361281a565b90506109f8816129af565b9392505050565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00805468010000000000000000810460ff16159067ffffffffffffffff16600081158015610a4a5750825b905060008267ffffffffffffffff166001148015610a675750303b155b905081158015610a75575080155b15610aac576040517ff92ee8a900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b84547fffffffffffffffffffffffffffffffffffffffffffffffff00000000000000001660011785558315610b0d5784547fffffffffffffffffffffffffffffffffffffffffffffff00ffffffffffffffff16680100000000000000001785555b610b15612a98565b610b1d612a98565b610b2860008b612aa2565b50610b537f189ab7a9244df0848122154315af71fe140f3db0fe014031783b0946b8c9d2e38a612aa2565b50610b7e7f97667070c54ef182b0f5858b034beac1b6f3089aa2d3188bb1e8929f4fa9b92989612aa2565b50610ba97f95d4bc2dffead2f8c85023cc6927eae1b262c537650df2a0f5d7bfc294d2831288612aa2565b50600480547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff88811691821790925560408051600281528d841660208201528c8416918101919091528a83166060820152918916608083015260a08201527f41371d953e27e22ad5469eff518e3838586b98b2ee0e49b10a255a6718e122a19060c00160405180910390a18315610cab5784547fffffffffffffffffffffffffffffffffffffffffffffff00ffffffffffffffff168555604051600181527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a15b50505050505050505050565b7f95d4bc2dffead2f8c85023cc6927eae1b262c537650df2a0f5d7bfc294d28312610ce181612bc3565b610d2083838080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250612bd092505050565b505050565b7f97667070c54ef182b0f5858b034beac1b6f3089aa2d3188bb1e8929f4fa9b929610d4f81612bc3565b60025461ffff841610610dbe576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601460248201527f496e76616c69642073657269657320696e6465780000000000000000000000006044820152606401610935565b8160028461ffff1681548110610dd657610dd66148e4565b60009182526020918290206002919091020180547fffffffffffffffffffffffffffffffff0000000000000000ffffffffffffffff166801000000000000000067ffffffffffffffff94851602179055604051918416825261ffff8516917f44d72fb87d2f691857df49a86aaabd2566273ba60f3d6061c28fa8975df99eeb910160405180910390a2505050565b60008281527f02dd7bc7dec4dceedda775e58dd541e08a116c6c53815c0bd028192f7b6268006020526040902060010154610e9e81612bc3565b610ea88383612aa2565b50505050565b73ffffffffffffffffffffffffffffffffffffffff81163314610efd576040517f6697b23200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b610d208282612c17565b600080600080600080600060606002805490508961ffff1610610f86576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601460248201527f496e76616c69642073657269657320696e6465780000000000000000000000006044820152606401610935565b600060028a61ffff1681548110610f9f57610f9f6148e4565b60009182526020918290206040805161012081018252600293909302909101805460c081811b7fffffffffffffffff0000000000000000000000000000000000000000000000001680865268010000000000000000830467ffffffffffffffff16968601879052700100000000000000000000000000000000830463ffffffff908116958701869052740100000000000000000000000000000000000000008404811660608801819052780100000000000000000000000000000000000000000000000085048216608089018190527c010000000000000000000000000000000000000000000000000000000090950490911660a0880181905260019095015461ffff80821694890194909452620100008104841660e089015264010000000090049092166101008701529e50949c50919a50929850965090945090506110e58a612cf5565b60045490935073ffffffffffffffffffffffffffffffffffffffff16632a7ae6f161110f83612d56565b835161113c907fffffffffffffffff00000000000000000000000000000000000000000000000016612f76565b8460c001518560e001518661010001516040518663ffffffff1660e01b815260040161116c959493929190614913565b600060405180830381865afa158015611189573d6000803e3d6000fd5b505050506040513d6000823e601f3d9081017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01682016040526111cf919081019061495e565b915050919395975091939597565b60007f97667070c54ef182b0f5858b034beac1b6f3089aa2d3188bb1e8929f4fa9b92961120981612bc3565b6002546000600161121a8a8c6149cc565b61122491906149e8565b60025463ffffffff91909116915060005b818161ffff161015611468578d77ffffffffffffffffffffffffffffffffffffffffffffffff191660028261ffff1681548110611274576112746148e4565b600091825260209091206002909102015460c01b7fffffffffffffffff0000000000000000000000000000000000000000000000001603611311576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601a60248201527f536572696573206e616d6520616c7265616479206578697374730000000000006044820152606401610935565b60028161ffff1681548110611328576113286148e4565b6000918252602090912060029091020154700100000000000000000000000000000000900463ffffffff168310806113f0575060028161ffff1681548110611372576113726148e4565b906000526020600020906002020160000160149054906101000a900463ffffffff1660028261ffff16815481106113ab576113ab6148e4565b60009182526020909120600290910201546113e09190700100000000000000000000000000000000900463ffffffff166149cc565b63ffffffff168c63ffffffff1610155b611456576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601d60248201527f536572696573206f7665726c6170732077697468206578697374696e670000006044820152606401610935565b8061146081614a04565b915050611235565b5060026040518061012001604052808f77ffffffffffffffffffffffffffffffffffffffffffffffff191681526020018e67ffffffffffffffff1681526020018d63ffffffff1681526020018c63ffffffff168152602001600063ffffffff168152602001600063ffffffff1681526020018b61ffff1681526020018a61ffff1681526020018961ffff16815250908060018154018082558091505060019003906000526020600020906002020160009091909190915060008201518160000160006101000a81548167ffffffffffffffff021916908360c01c021790555060208201518160000160086101000a81548167ffffffffffffffff021916908367ffffffffffffffff16021790555060408201518160000160106101000a81548163ffffffff021916908363ffffffff16021790555060608201518160000160146101000a81548163ffffffff021916908363ffffffff16021790555060808201518160000160186101000a81548163ffffffff021916908363ffffffff16021790555060a082015181600001601c6101000a81548163ffffffff021916908363ffffffff16021790555060c08201518160010160006101000a81548161ffff021916908361ffff16021790555060e08201518160010160026101000a81548161ffff021916908361ffff1602179055506101008201518160010160046101000a81548161ffff021916908361ffff160217905550505085156116dd57600380546001810182556000919091527fc2575a0e9e593c00f959f8c92f12db2869c3395a3b0502d05e2516446f71f85b60108204018054600f9092166002026101000a61ffff81810219909316928616029190911790555b6040805167ffffffffffffffff8e16815263ffffffff808e1660208301528c169181019190915261ffff8a81166060830152898116608083015288811660a083015287151560c08301527fffffffffffffffff0000000000000000000000000000000000000000000000008f1691908516907fc46ca991884acd97b67ccae44e8d3f0ada8f306802983edb66ccb71c519ea0d19060e00160405180910390a350909b9a5050505050505050505050565b6060600380548060200260200160405190810160405280929190818152602001828054801561180357602002820191906000526020600020906000905b82829054906101000a900461ffff1661ffff16815260200190600201906020826001010492830192600103820291508084116117ca5790505b5050505050905090565b6118156130ee565b61181e826131f2565b611828828261321c565b5050565b6000611836613355565b507f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc90565b600061186682612cf5565b6118cc576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601c60248201527f5075626c6963206d696e74696e67206e6f7420617661696c61626c65000000006044820152606401610935565b60028261ffff16815481106118e3576118e36148e4565b600091825260209091206002909102015461086a9068010000000000000000900467ffffffffffffffff16633b9aca00614a25565b60007f95d4bc2dffead2f8c85023cc6927eae1b262c537650df2a0f5d7bfc294d2831261194481612bc3565b60008481526001602090815260408083208151606081018352905467ffffffffffffffff808216835268010000000000000000820416938201849052700100000000000000000000000000000000900464ffffffffff169181019190915291906119af908690614a3c565b90506040518060600160405280836000015167ffffffffffffffff1681526020016119d9836133c4565b67ffffffffffffffff908116825260408086015164ffffffffff90811660209485015260008b815260018552829020855181549587015196840151909216700100000000000000000000000000000000027fffffffffffffffffffffff0000000000ffffffffffffffffffffffffffffffff96851668010000000000000000027fffffffffffffffffffffffffffffffff0000000000000000000000000000000090961692909416919091179390931793909316179055517f706f696e74730000000000000000000000000000000000000000000000000000907f8386f3b08e49490d0c5a9d2c401c091f13b01a17d75ce4a2f0f8f923b410ff7d90611aeb9089908590918252602082015260400190565b60405180910390a29250505b5092915050565b7f97667070c54ef182b0f5858b034beac1b6f3089aa2d3188bb1e8929f4fa9b929611b2881612bc3565b60025461ffff841610611b97576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601460248201527f496e76616c69642073657269657320696e6465780000000000000000000000006044820152606401610935565b8115611d4d57600060028461ffff1681548110611bb657611bb66148e4565b60009182526020918290206040805161012081018252600293909302909101805460c081811b7fffffffffffffffff00000000000000000000000000000000000000000000000016855268010000000000000000820467ffffffffffffffff1695850195909552700100000000000000000000000000000000810463ffffffff90811693850193909352740100000000000000000000000000000000000000008104831660608501819052780100000000000000000000000000000000000000000000000082048416608086018190527c010000000000000000000000000000000000000000000000000000000090920490931660a085015260019091015461ffff80821695850195909552620100008104851660e085015264010000000090049093166101008301529092509003611d4b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601c60248201527f53657269657320686173206265656e2066756c6c79206d696e746564000000006044820152606401610935565b505b6000611d5884612cf5565b9050828015611d65575080155b15611dfd5760038054600181018255600091909152601081047fc2575a0e9e593c00f959f8c92f12db2869c3395a3b0502d05e2516446f71f85b01805461ffff8781166002600f909516949094026101000a84810291021990911617905560405184151581527fcc6e9bff2fb3049ce51e0ddb5b02a211a688dd2cd3b52c22ccec6e2f61477b169060200160405180910390a2610ea8565b82158015611e085750805b15610ea857611e1684613418565b8361ffff167fcc6e9bff2fb3049ce51e0ddb5b02a211a688dd2cd3b52c22ccec6e2f61477b1684604051611e4e911515815260200190565b60405180910390a250505050565b60006109f88383613551565b7f97667070c54ef182b0f5858b034beac1b6f3089aa2d3188bb1e8929f4fa9b929611e9281612bc3565b600480547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff84169081179091556040519081527f3d2ad470ac155133833dfcd09d1dac3c97488b53dcf79ead413dff86b6419ee89060200160405180910390a15050565b600061086a82612cf5565b6002546000908190815b818161ffff1610156120e3576000600160028361ffff1681548110611f4857611f486148e4565b906000526020600020906002020160000160189054906101000a900463ffffffff1660028461ffff1681548110611f8157611f816148e4565b6000918252602090912060029091020154611fb69190700100000000000000000000000000000000900463ffffffff166149cc565b611fc091906149e8565b63ffffffff1690505b60028261ffff1681548110611fe057611fe06148e4565b6000918252602090912060029091020154700100000000000000000000000000000000900463ffffffff1681106120d05760008181526001602081815260408084208151606081018352905467ffffffffffffffff80821683526801000000000000000082041682850152700100000000000000000000000000000000900464ffffffffff169181018290529385905291905261207d57506120be565b62093a80816040015164ffffffffff164261209891906148ae565b11156120a457506120d0565b80516120ba9067ffffffffffffffff1686614a3c565b9450505b806120c881614a4f565b915050611fc9565b50806120db81614a04565b915050611f21565b506120f282633b9aca00614a25565b9250505090565b6000807f95d4bc2dffead2f8c85023cc6927eae1b262c537650df2a0f5d7bfc294d2831261212681612bc3565b60025461ffff861610612195576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601460248201527f496e76616c69642073657269657320696e6465780000000000000000000000006044820152606401610935565b60028561ffff16815481106121ac576121ac6148e4565b906000526020600020906002020160000160149054906101000a900463ffffffff1663ffffffff1660028661ffff16815481106121eb576121eb6148e4565b60009182526020909120600290910201547801000000000000000000000000000000000000000000000000900463ffffffff1610612285576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601c60248201527f53657269657320686173206265656e2066756c6c79206d696e746564000000006044820152606401610935565b60028561ffff168154811061229c5761229c6148e4565b906000526020600020906002020160000160189054906101000a900463ffffffff1660028661ffff16815481106122d5576122d56148e4565b600091825260209091206002909102015461230a9190700100000000000000000000000000000000900463ffffffff166149cc565b63ffffffff169250612357836040518060600160405280633b9aca00886123319190614a84565b67ffffffffffffffff1681526000602082015264ffffffffff421660409091015261364d565b60028561ffff168154811061236e5761236e6148e4565b6000918252602090912060029091020180547801000000000000000000000000000000000000000000000000900463ffffffff169060186123ae83614abf565b91906101000a81548163ffffffff021916908363ffffffff1602179055505060028561ffff16815481106123e4576123e46148e4565b906000526020600020906002020160000160149054906101000a900463ffffffff1663ffffffff1660028661ffff1681548110612423576124236148e4565b60009182526020909120600290910201547801000000000000000000000000000000000000000000000000900463ffffffff16036124645761246485613418565b61246d856129af565b9150509250929050565b606061248a61248583613744565b613b08565b60405160200161249a9190614af7565b6040516020818303038152906040529050919050565b600081815260016020526040812054700100000000000000000000000000000000900464ffffffffff161515801561086a57505060009081526001602052604090205467ffffffffffffffff16151590565b60008281527f02dd7bc7dec4dceedda775e58dd541e08a116c6c53815c0bd028192f7b626800602052604090206001015461253c81612bc3565b610ea88383612c17565b7f95d4bc2dffead2f8c85023cc6927eae1b262c537650df2a0f5d7bfc294d2831261257081612bc3565b600082815260016020526040902054700100000000000000000000000000000000900464ffffffffff16612600576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601d60248201527f546f6b656e206d6574616461746120646f6573206e6f742065786973740000006044820152606401610935565b600061260b8361281a565b905060028161ffff1681548110612624576126246148e4565b6000918252602090912060029091020180547c0100000000000000000000000000000000000000000000000000000000900463ffffffff1690601c61266883614abf565b825463ffffffff9182166101009390930a92830291909202199091161790555060008381526001602052604080822080547fffffffffffffffffffffff0000000000000000000000000000000000000000001690555184917f160739d2267e4e888a988580a6f68efdec75c3dd9baf815db4616e8a406bddaa91a2505050565b6060600080546126f790614b3c565b80601f016020809104026020016040519081016040528092919081815260200182805461272390614b3c565b80156118035780601f1061274557610100808354040283529160200191611803565b820191906000526020600020905b81548152906001019060200180831161275357509395945050505050565b6060818067ffffffffffffffff81111561278d5761278d6145cd565b6040519080825280602002602001820160405280156127b6578160200160208202803683370190505b50915060005b818110156128115760008585838181106127d8576127d86148e4565b9050602002013590506127eb8782613551565b8483815181106127fd576127fd6148e4565b6020908102919091010152506001016127bc565b50509392505050565b600254600090815b818161ffff1610156129265760028161ffff1681548110612845576128456148e4565b6000918252602090912060029091020154700100000000000000000000000000000000900463ffffffff168410801590612908575060028161ffff1681548110612891576128916148e4565b906000526020600020906002020160000160149054906101000a900463ffffffff1660028261ffff16815481106128ca576128ca6148e4565b60009182526020909120600290910201546128ff9190700100000000000000000000000000000000900463ffffffff166149cc565b63ffffffff1684105b15612914579392505050565b8061291e81614a04565b915050612822565b506040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602360248201527f546f6b656e20646f6573206e6f742062656c6f6e6720746f20616e792073657260448201527f69657300000000000000000000000000000000000000000000000000000000006064820152608401610935565b60007f5741474d49000000000000000000000000000000000000000000000000000000815b6005811015612a8e578181602081106129ef576129ef6148e4565b1a60f81b7effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff191660028561ffff1681548110612a2c57612a2c6148e4565b600091825260209091206002909102015460c01b8260088110612a5157612a516148e4565b1a60f81b7effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614612a86575060019392505050565b6001016129d4565b5060009392505050565b612aa0613c68565b565b60008281527f02dd7bc7dec4dceedda775e58dd541e08a116c6c53815c0bd028192f7b6268006020818152604080842073ffffffffffffffffffffffffffffffffffffffff8616855290915282205460ff16612bb95760008481526020828152604080832073ffffffffffffffffffffffffffffffffffffffff87168452909152902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00166001179055612b553390565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16857f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a4600191505061086a565b600091505061086a565b612bcd8133613ccf565b50565b6000612bdc8282614bdd565b507fefafb90526da1636e1335eac0151301742fb755d986954c613b90e891778ba3981604051612c0c9190614789565b60405180910390a150565b60008281527f02dd7bc7dec4dceedda775e58dd541e08a116c6c53815c0bd028192f7b6268006020818152604080842073ffffffffffffffffffffffffffffffffffffffff8616855290915282205460ff1615612bb95760008481526020828152604080832073ffffffffffffffffffffffffffffffffffffffff8716808552925280832080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016905551339287917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a4600191505061086a565b600354600090815b81811015612a8e578361ffff1660038281548110612d1d57612d1d6148e4565b60009182526020909120601082040154600f9091166002026101000a900461ffff1603612d4e575060019392505050565b600101612cfd565b60606000600183606001518460400151612d7091906149cc565b612d7a91906149e8565b63ffffffff1690506000612d8d82613d76565b90506000612da4856040015163ffffffff16613d76565b9050600082518251141590506000835167ffffffffffffffff811115612dcc57612dcc6145cd565b6040519080825280601f01601f191660200182016040528015612df6576020820181803683370190505b50905060005b8151811015612f6b5782158015612e135750808451115b8015612e945750838181518110612e2c57612e2c6148e4565b602001015160f81c60f81b7effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916858281518110612e6b57612e6b6148e4565b01602001517fff0000000000000000000000000000000000000000000000000000000000000016145b15612efc57848181518110612eab57612eab6148e4565b602001015160f81c60f81b828281518110612ec857612ec86148e4565b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350612f63565b600192507f7800000000000000000000000000000000000000000000000000000000000000828281518110612f3357612f336148e4565b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a9053505b600101612dfc565b509695505050505050565b606060005b60088160ff16108015612fc75750828160ff1660088110612f9e57612f9e6148e4565b1a60f81b7fff000000000000000000000000000000000000000000000000000000000000001615155b15612fde5780612fd681614cf6565b915050612f7b565b60008160ff1667ffffffffffffffff811115612ffc57612ffc6145cd565b6040519080825280601f01601f191660200182016040528015613026576020820181803683370190505b509050600091505b60088260ff1610801561307a5750838260ff1660088110613051576130516148e4565b1a60f81b7fff000000000000000000000000000000000000000000000000000000000000001615155b156109f857838260ff1660088110613094576130946148e4565b1a60f81b818360ff16815181106130ad576130ad6148e4565b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350816130e681614cf6565b92505061302e565b3073ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001614806131bb57507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff166131a27f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5473ffffffffffffffffffffffffffffffffffffffff1690565b73ffffffffffffffffffffffffffffffffffffffff1614155b15612aa0576040517fe07c8dba00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b7f189ab7a9244df0848122154315af71fe140f3db0fe014031783b0946b8c9d2e361182881612bc3565b8173ffffffffffffffffffffffffffffffffffffffff166352d1902d6040518163ffffffff1660e01b8152600401602060405180830381865afa9250505080156132a1575060408051601f3d9081017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016820190925261329e91810190614d0c565b60015b6132ef576040517f4c9c8ce300000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff83166004820152602401610935565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc811461334b576040517faa1d49a400000000000000000000000000000000000000000000000000000000815260048101829052602401610935565b610d208383613e34565b3073ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001614612aa0576040517fe07c8dba00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600067ffffffffffffffff82111561341457604080517f6dfcc650000000000000000000000000000000000000000000000000000000008152600481019190915260248101839052604401610935565b5090565b60005b600354811015611828578161ffff166003828154811061343d5761343d6148e4565b60009182526020909120601082040154600f9091166002026101000a900461ffff16036135495760038054613474906001906148ae565b81548110613484576134846148e4565b90600052602060002090601091828204019190066002029054906101000a900461ffff16600382815481106134bb576134bb6148e4565b90600052602060002090601091828204019190066002026101000a81548161ffff021916908361ffff16021790555060038054806134fb576134fb614d25565b60008281526020902060107fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff90920191820401805461ffff6002600f8516026101000a021916905590555050565b60010161341b565b60008281526001602090815260408083208151606081018352905467ffffffffffffffff8082168352680100000000000000008204169382019390935270010000000000000000000000000000000090920464ffffffffff16908201527f706f696e747300000000000000000000000000000000000000000000000000008390036135eb576020015167ffffffffffffffff16905061086a565b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601360248201527f5472616974206b6579206e6f7420666f756e64000000000000000000000000006044820152606401610935565b600082815260016020908152604091829020835181548584018051878701805167ffffffffffffffff9586167fffffffffffffffffffffffffffffffff0000000000000000000000000000000090951685176801000000000000000093871693909302929092177fffffffffffffffffffffff0000000000ffffffffffffffffffffffffffffffff1670010000000000000000000000000000000064ffffffffff938416021790955586519283529051909216938101939093529051169181019190915282907f6e219db270f25f5c23d7947ba7ef24460f8fcee7b6ab1742167c6f38ac49e3b19060600160405180910390a25050565b6000818152600160209081526040808320815160608082018452915467ffffffffffffffff8082168352680100000000000000008204169482019490945270010000000000000000000000000000000090930464ffffffffff1691830191909152916137af8461281a565b9050600060028261ffff16815481106137ca576137ca6148e4565b600091825260208083206040805161012081018252600294909402909101805460c081811b7fffffffffffffffff00000000000000000000000000000000000000000000000016865268010000000000000000820467ffffffffffffffff1694860194909452700100000000000000000000000000000000810463ffffffff908116938601939093527401000000000000000000000000000000000000000081048316606086015278010000000000000000000000000000000000000000000000008104831660808601527c0100000000000000000000000000000000000000000000000000000000900490911660a08401526001015461ffff80821692840192909252620100008104821660e084015264010000000090041661010082015291506138f5836129af565b613934576040518060400160405280600281526020017f4e6f00000000000000000000000000000000000000000000000000000000000081525061396b565b6040518060400160405280600381526020017f59657300000000000000000000000000000000000000000000000000000000008152505b90506000613997836000015177ffffffffffffffffffffffffffffffffffffffffffffffff1916612f76565b905060006139a488613d76565b826040516020016139b6929190614d54565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0818403018152919052600454909150600090613aa99073ffffffffffffffffffffffffffffffffffffffff16632a7ae6f1613a158c613d76565b868960c001518a60e001518b61010001516040518663ffffffff1660e01b8152600401613a46959493929190614913565b600060405180830381865afa158015613a63573d6000803e3d6000fd5b505050506040513d6000823e601f3d9081017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0168201604052612485919081019061495e565b905081818486613ac2896060015163ffffffff16613d76565b613ad68c6040015164ffffffffff16613d76565b604051602001613aeb96959493929190614dac565b604051602081830303815290604052975050505050505050919050565b60608151600003613b2757505060408051602081019091526000815290565b60006040518060600160405280604081526020016150566040913990506000600384516002613b569190614a3c565b613b609190614a84565b613b6b906004614a25565b67ffffffffffffffff811115613b8357613b836145cd565b6040519080825280601f01601f191660200182016040528015613bad576020820181803683370190505b50905060018201602082018586518701602081018051600082525b82841015613c23576003840193508351603f8160121c168701518653600186019550603f81600c1c168701518653600186019550603f8160061c168701518653600186019550603f8116870151865350600185019450613bc8565b9052505085516003900660018114613c425760028114613c5557613c5d565b603d6001830353603d6002830353613c5d565b603d60018303535b509195945050505050565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a005468010000000000000000900460ff16612aa0576040517fd7e6bcf800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60008281527f02dd7bc7dec4dceedda775e58dd541e08a116c6c53815c0bd028192f7b6268006020908152604080832073ffffffffffffffffffffffffffffffffffffffff8516845290915290205460ff16611828576040517fe2517d3f00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8216600482015260248101839052604401610935565b60606000613d8383613e97565b600101905060008167ffffffffffffffff811115613da357613da36145cd565b6040519080825280601f01601f191660200182016040528015613dcd576020820181803683370190505b5090508181016020015b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff017f3031323334353637383961626364656600000000000000000000000000000000600a86061a8153600a8504945084613dd757509392505050565b613e3d82613f79565b60405173ffffffffffffffffffffffffffffffffffffffff8316907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a2805115613e8f57610d208282614048565b6118286140cb565b6000807a184f03e93ff9f4daa797ed6e38ed64bf6a1f0100000000000000008310613ee0577a184f03e93ff9f4daa797ed6e38ed64bf6a1f010000000000000000830492506040015b6d04ee2d6d415b85acef81000000008310613f0c576d04ee2d6d415b85acef8100000000830492506020015b662386f26fc100008310613f2a57662386f26fc10000830492506010015b6305f5e1008310613f42576305f5e100830492506008015b6127108310613f5657612710830492506004015b60648310613f68576064830492506002015b600a831061086a5760010192915050565b8073ffffffffffffffffffffffffffffffffffffffff163b600003613fe2576040517f4c9c8ce300000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff82166004820152602401610935565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc80547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff92909216919091179055565b60606000808473ffffffffffffffffffffffffffffffffffffffff16846040516140729190615039565b600060405180830381855af49150503d80600081146140ad576040519150601f19603f3d011682016040523d82523d6000602084013e6140b2565b606091505b50915091506140c2858383614103565b95945050505050565b3415612aa0576040517fb398979f00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b606082614118576141138261418b565b6109f8565b815115801561413c575073ffffffffffffffffffffffffffffffffffffffff84163b155b15611af7576040517f9996b31500000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff85166004820152602401610935565b80511561419b5780518082602001fd5b6040517f1425ea4200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6000602082840312156141df57600080fd5b81357fffffffff00000000000000000000000000000000000000000000000000000000811681146109f857600080fd5b60006020828403121561422157600080fd5b5035919050565b803573ffffffffffffffffffffffffffffffffffffffff8116811461424c57600080fd5b919050565b600080600080600060a0868803121561426957600080fd5b61427286614228565b945061428060208701614228565b935061428e60408701614228565b925061429c60608701614228565b91506142aa60808701614228565b90509295509295909350565b600080602083850312156142c957600080fd5b823567ffffffffffffffff8111156142e057600080fd5b8301601f810185136142f157600080fd5b803567ffffffffffffffff81111561430857600080fd5b85602082840101111561431a57600080fd5b6020919091019590945092505050565b803561ffff8116811461424c57600080fd5b803567ffffffffffffffff8116811461424c57600080fd5b6000806040838503121561436757600080fd5b6143708361432a565b915061437e6020840161433c565b90509250929050565b6000806040838503121561439a57600080fd5b8235915061437e60208401614228565b6000602082840312156143bc57600080fd5b6109f88261432a565b60005b838110156143e05781810151838201526020016143c8565b50506000910152565b600081518084526144018160208601602086016143c5565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b7fffffffffffffffff000000000000000000000000000000000000000000000000891681528760208201528660408201528560608201528460808201528360a082015282151560c082015261010060e082015260006144966101008301846143e9565b9a9950505050505050505050565b803563ffffffff8116811461424c57600080fd5b8035801515811461424c57600080fd5b600080600080600080600080610100898b0312156144e557600080fd5b88357fffffffffffffffff0000000000000000000000000000000000000000000000008116811461451557600080fd5b975061452360208a0161433c565b965061453160408a016144a4565b955061453f60608a016144a4565b945061454d60808a0161432a565b935061455b60a08a0161432a565b925061456960c08a0161432a565b915061457760e08a016144b8565b90509295985092959890939650565b602080825282518282018190526000918401906040840190835b818110156145c257835161ffff168352602093840193909201916001016145a0565b509095945050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff81118282101715614643576146436145cd565b604052919050565b600067ffffffffffffffff821115614665576146656145cd565b50601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01660200190565b600080604083850312156146a457600080fd5b6146ad83614228565b9150602083013567ffffffffffffffff8111156146c957600080fd5b8301601f810185136146da57600080fd5b80356146ed6146e88261464b565b6145fc565b81815286602083850101111561470257600080fd5b816020840160208301376000602083830101528093505050509250929050565b6000806040838503121561473557600080fd5b50508035926020909101359150565b6000806040838503121561475757600080fd5b6147608361432a565b915061437e602084016144b8565b60006020828403121561478057600080fd5b6109f882614228565b6020815260006109f860208301846143e9565b600080604083850312156147af57600080fd5b6147b88361432a565b946020939093013593505050565b6000806000604084860312156147db57600080fd5b83359250602084013567ffffffffffffffff8111156147f957600080fd5b8401601f8101861361480a57600080fd5b803567ffffffffffffffff81111561482157600080fd5b8660208260051b840101111561483657600080fd5b939660209190910195509293505050565b602080825282518282018190526000918401906040840190835b818110156145c2578351835260209384019390920191600101614861565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b8181038181111561086a5761086a61487f565b67ffffffffffffffff8181168382160290811690818114611af757611af761487f565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60a08152600061492660a08301886143e9565b828103602084015261493881886143e9565b61ffff968716604085015294861660608401525050921660809092019190915292915050565b60006020828403121561497057600080fd5b815167ffffffffffffffff81111561498757600080fd5b8201601f8101841361499857600080fd5b80516149a66146e88261464b565b8181528560208385010111156149bb57600080fd5b6140c28260208301602086016143c5565b63ffffffff818116838216019081111561086a5761086a61487f565b63ffffffff828116828216039081111561086a5761086a61487f565b600061ffff821661ffff8103614a1c57614a1c61487f565b60010192915050565b808202811582820484141761086a5761086a61487f565b8082018082111561086a5761086a61487f565b600081614a5e57614a5e61487f565b507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0190565b600082614aba577f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b500490565b600063ffffffff821663ffffffff8103614a1c57614a1c61487f565b60008151614aed8185602086016143c5565b9290920192915050565b7f646174613a6170706c69636174696f6e2f6a736f6e3b6261736536342c000000815260008251614b2f81601d8501602087016143c5565b91909101601d0192915050565b600181811c90821680614b5057607f821691505b602082108103614b89577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b50919050565b601f821115610d2057806000526020600020601f840160051c81016020851015614bb65750805b601f840160051c820191505b81811015614bd65760008155600101614bc2565b5050505050565b815167ffffffffffffffff811115614bf757614bf76145cd565b614c0b81614c058454614b3c565b84614b8f565b6020601f821160018114614c5d5760008315614c275750848201515b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600385901b1c1916600184901b178455614bd6565b6000848152602081207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08516915b82811015614cab5787850151825560209485019460019092019101614c8b565b5084821015614ce757868401517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600387901b60f8161c191681555b50505050600190811b01905550565b600060ff821660ff8103614a1c57614a1c61487f565b600060208284031215614d1e57600080fd5b5051919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603160045260246000fd5b60008351614d668184602088016143c5565b7f20000000000000000000000000000000000000000000000000000000000000009083019081528351614da08160018401602088016143c5565b01600101949350505050565b7f7b226465736372697074696f6e223a20224e65756c6f636b2050617373776f7281527f64204d616e61676572206d656d62657273686970204e4654202d206e65756c6f60208201527f636b2e617070222c20226e616d65223a20224e45552023000000000000000000604082015260008751614e30816057850160208c016143c5565b7f222c2022696d616765223a2022646174613a696d6167652f7376672b786d6c3b6057918401918201527f6261736536342c0000000000000000000000000000000000000000000000000060778201528751614e9381607e840160208c016143c5565b6057818301019150507f222c202261747472696275746573223a205b7b2274726169745f74797065223a60278201527f2022536572696573222c202276616c7565223a202200000000000000000000006047820152615006615000614fb1614fab614f5c614f56614f07605c88018e614adb565b7f227d2c7b2274726169745f74797065223a2022476f7665726e616e636520416381527f63657373222c202276616c7565223a2022000000000000000000000000000000602082015260310190565b8b614adb565b7f227d2c7b2274726169745f74797065223a2022536572696573204d617820537581527f70706c79222c202276616c7565223a2000000000000000000000000000000000602082015260300190565b88614adb565b7f7d2c7b2274726169745f74797065223a20224d696e742044617465222c20226481527f6973706c61795f74797065223a202264617465222c202276616c7565223a20006020820152603f0190565b85614adb565b7f7d5d7d000000000000000000000000000000000000000000000000000000000081526003019998505050505050505050565b6000825161504b8184602087016143c5565b919091019291505056fe4142434445464748494a4b4c4d4e4f505152535455565758595a6162636465666768696a6b6c6d6e6f707172737475767778797a303132333435363738392b2fa2646970667358221220e47c9318c6b06f7eaa93b0a6ccfcb874693525dcf44afec2f91dfb0ef2559f0a64736f6c634300081c0033
Deployed Bytecode
0x6080604052600436106102345760003560e01c80637427160511610138578063c87b56dd116100b0578063db5c339b1161007f578063f5b541a611610064578063f5b541a614610742578063f72c0d8b14610776578063f80ecba3146107aa57600080fd5b8063db5c339b1461070d578063de475bf91461072d57600080fd5b8063c87b56dd14610679578063d474ea5814610699578063d547741f146106b9578063d58a3448146106d957600080fd5b8063ac77320411610107578063add77524116100ec578063add775241461060f578063b9e576b11461062f578063ba7e15bd1461064457600080fd5b8063ac77320414610599578063ad3cb1cc146105b957600080fd5b806374271605146104d257806391d14854146104f2578063a217fddf14610564578063a28eec871461057957600080fd5b806336568abe116101cb5780634f1ef2861161019a578063559c2a981161017f578063559c2a981461045e578063566eea1b1461047e57806356dcac881461049e57600080fd5b80634f1ef2861461043657806352d1902d1461044957600080fd5b806336568abe1461038d57806339ce4540146103ad5780633ccec20c146103e15780633e96e7311461041457600080fd5b80632094a036116102075780632094a036146102de578063248a9ca3146102fe5780632da7b0e61461034d5780632f2ff15d1461036d57600080fd5b806301ffc9a71461023957806304cd52941461026e578063064fa71d1461029c5780631459457a146102bc575b600080fd5b34801561024557600080fd5b506102596102543660046141cd565b6107d7565b60405190151581526020015b60405180910390f35b34801561027a57600080fd5b5061028e61028936600461420f565b610870565b604051908152602001610265565b3480156102a857600080fd5b506102596102b736600461420f565b6109e1565b3480156102c857600080fd5b506102dc6102d7366004614251565b6109ff565b005b3480156102ea57600080fd5b506102dc6102f93660046142b6565b610cb7565b34801561030a57600080fd5b5061028e61031936600461420f565b60009081527f02dd7bc7dec4dceedda775e58dd541e08a116c6c53815c0bd028192f7b626800602052604090206001015490565b34801561035957600080fd5b506102dc610368366004614354565b610d25565b34801561037957600080fd5b506102dc610388366004614387565b610e64565b34801561039957600080fd5b506102dc6103a8366004614387565b610eae565b3480156103b957600080fd5b506103cd6103c83660046143aa565b610f07565b604051610265989796959493929190614433565b3480156103ed57600080fd5b506104016103fc3660046144c8565b6111dd565b60405161ffff9091168152602001610265565b34801561042057600080fd5b5061042961178d565b6040516102659190614586565b6102dc610444366004614691565b61180d565b34801561045557600080fd5b5061028e61182c565b34801561046a57600080fd5b5061028e6104793660046143aa565b61185b565b34801561048a57600080fd5b5061028e610499366004614722565b611918565b3480156104aa57600080fd5b5061028e7f2f27e3d0c9d5144be28e016e79de2f52d828d0070de5d6dfa31e6c5c94e8880081565b3480156104de57600080fd5b506102dc6104ed366004614744565b611afe565b3480156104fe57600080fd5b5061025961050d366004614387565b60009182527f02dd7bc7dec4dceedda775e58dd541e08a116c6c53815c0bd028192f7b6268006020908152604080842073ffffffffffffffffffffffffffffffffffffffff93909316845291905290205460ff1690565b34801561057057600080fd5b5061028e600081565b34801561058557600080fd5b5061028e610594366004614722565b611e5c565b3480156105a557600080fd5b506102dc6105b436600461476e565b611e68565b3480156105c557600080fd5b506106026040518060400160405280600581526020017f352e302e3000000000000000000000000000000000000000000000000000000081525081565b6040516102659190614789565b34801561061b57600080fd5b5061025961062a3660046143aa565b611f0c565b34801561063b57600080fd5b5061028e611f17565b34801561065057600080fd5b5061066461065f36600461479c565b6120f9565b60408051928352901515602083015201610265565b34801561068557600080fd5b5061060261069436600461420f565b612477565b3480156106a557600080fd5b506102596106b436600461420f565b6124b0565b3480156106c557600080fd5b506102dc6106d4366004614387565b612502565b3480156106e557600080fd5b5061028e7f95d4bc2dffead2f8c85023cc6927eae1b262c537650df2a0f5d7bfc294d2831281565b34801561071957600080fd5b506102dc61072836600461420f565b612546565b34801561073957600080fd5b506106026126e8565b34801561074e57600080fd5b5061028e7f97667070c54ef182b0f5858b034beac1b6f3089aa2d3188bb1e8929f4fa9b92981565b34801561078257600080fd5b5061028e7f189ab7a9244df0848122154315af71fe140f3db0fe014031783b0946b8c9d2e381565b3480156107b657600080fd5b506107ca6107c53660046147c6565b612771565b6040516102659190614847565b60007fffffffff0000000000000000000000000000000000000000000000000000000082167f7965db0b00000000000000000000000000000000000000000000000000000000148061086a57507f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316145b92915050565b60008181526001602090815260408083208151606081018352905467ffffffffffffffff80821680845268010000000000000000830490911694830194909452700100000000000000000000000000000000900464ffffffffff16918101919091529061093e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601760248201527f546f6b656e206973206e6f7420726566756e6461626c6500000000000000000060448201526064015b60405180910390fd5b62093a80816040015164ffffffffff164261095991906148ae565b106109c0576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601860248201527f526566756e642077696e646f77206861732070617373656400000000000000006044820152606401610935565b80516109d090633b9aca006148c1565b67ffffffffffffffff169392505050565b6000806109ed8361281a565b90506109f8816129af565b9392505050565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00805468010000000000000000810460ff16159067ffffffffffffffff16600081158015610a4a5750825b905060008267ffffffffffffffff166001148015610a675750303b155b905081158015610a75575080155b15610aac576040517ff92ee8a900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b84547fffffffffffffffffffffffffffffffffffffffffffffffff00000000000000001660011785558315610b0d5784547fffffffffffffffffffffffffffffffffffffffffffffff00ffffffffffffffff16680100000000000000001785555b610b15612a98565b610b1d612a98565b610b2860008b612aa2565b50610b537f189ab7a9244df0848122154315af71fe140f3db0fe014031783b0946b8c9d2e38a612aa2565b50610b7e7f97667070c54ef182b0f5858b034beac1b6f3089aa2d3188bb1e8929f4fa9b92989612aa2565b50610ba97f95d4bc2dffead2f8c85023cc6927eae1b262c537650df2a0f5d7bfc294d2831288612aa2565b50600480547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff88811691821790925560408051600281528d841660208201528c8416918101919091528a83166060820152918916608083015260a08201527f41371d953e27e22ad5469eff518e3838586b98b2ee0e49b10a255a6718e122a19060c00160405180910390a18315610cab5784547fffffffffffffffffffffffffffffffffffffffffffffff00ffffffffffffffff168555604051600181527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a15b50505050505050505050565b7f95d4bc2dffead2f8c85023cc6927eae1b262c537650df2a0f5d7bfc294d28312610ce181612bc3565b610d2083838080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250612bd092505050565b505050565b7f97667070c54ef182b0f5858b034beac1b6f3089aa2d3188bb1e8929f4fa9b929610d4f81612bc3565b60025461ffff841610610dbe576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601460248201527f496e76616c69642073657269657320696e6465780000000000000000000000006044820152606401610935565b8160028461ffff1681548110610dd657610dd66148e4565b60009182526020918290206002919091020180547fffffffffffffffffffffffffffffffff0000000000000000ffffffffffffffff166801000000000000000067ffffffffffffffff94851602179055604051918416825261ffff8516917f44d72fb87d2f691857df49a86aaabd2566273ba60f3d6061c28fa8975df99eeb910160405180910390a2505050565b60008281527f02dd7bc7dec4dceedda775e58dd541e08a116c6c53815c0bd028192f7b6268006020526040902060010154610e9e81612bc3565b610ea88383612aa2565b50505050565b73ffffffffffffffffffffffffffffffffffffffff81163314610efd576040517f6697b23200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b610d208282612c17565b600080600080600080600060606002805490508961ffff1610610f86576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601460248201527f496e76616c69642073657269657320696e6465780000000000000000000000006044820152606401610935565b600060028a61ffff1681548110610f9f57610f9f6148e4565b60009182526020918290206040805161012081018252600293909302909101805460c081811b7fffffffffffffffff0000000000000000000000000000000000000000000000001680865268010000000000000000830467ffffffffffffffff16968601879052700100000000000000000000000000000000830463ffffffff908116958701869052740100000000000000000000000000000000000000008404811660608801819052780100000000000000000000000000000000000000000000000085048216608089018190527c010000000000000000000000000000000000000000000000000000000090950490911660a0880181905260019095015461ffff80821694890194909452620100008104841660e089015264010000000090049092166101008701529e50949c50919a50929850965090945090506110e58a612cf5565b60045490935073ffffffffffffffffffffffffffffffffffffffff16632a7ae6f161110f83612d56565b835161113c907fffffffffffffffff00000000000000000000000000000000000000000000000016612f76565b8460c001518560e001518661010001516040518663ffffffff1660e01b815260040161116c959493929190614913565b600060405180830381865afa158015611189573d6000803e3d6000fd5b505050506040513d6000823e601f3d9081017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01682016040526111cf919081019061495e565b915050919395975091939597565b60007f97667070c54ef182b0f5858b034beac1b6f3089aa2d3188bb1e8929f4fa9b92961120981612bc3565b6002546000600161121a8a8c6149cc565b61122491906149e8565b60025463ffffffff91909116915060005b818161ffff161015611468578d77ffffffffffffffffffffffffffffffffffffffffffffffff191660028261ffff1681548110611274576112746148e4565b600091825260209091206002909102015460c01b7fffffffffffffffff0000000000000000000000000000000000000000000000001603611311576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601a60248201527f536572696573206e616d6520616c7265616479206578697374730000000000006044820152606401610935565b60028161ffff1681548110611328576113286148e4565b6000918252602090912060029091020154700100000000000000000000000000000000900463ffffffff168310806113f0575060028161ffff1681548110611372576113726148e4565b906000526020600020906002020160000160149054906101000a900463ffffffff1660028261ffff16815481106113ab576113ab6148e4565b60009182526020909120600290910201546113e09190700100000000000000000000000000000000900463ffffffff166149cc565b63ffffffff168c63ffffffff1610155b611456576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601d60248201527f536572696573206f7665726c6170732077697468206578697374696e670000006044820152606401610935565b8061146081614a04565b915050611235565b5060026040518061012001604052808f77ffffffffffffffffffffffffffffffffffffffffffffffff191681526020018e67ffffffffffffffff1681526020018d63ffffffff1681526020018c63ffffffff168152602001600063ffffffff168152602001600063ffffffff1681526020018b61ffff1681526020018a61ffff1681526020018961ffff16815250908060018154018082558091505060019003906000526020600020906002020160009091909190915060008201518160000160006101000a81548167ffffffffffffffff021916908360c01c021790555060208201518160000160086101000a81548167ffffffffffffffff021916908367ffffffffffffffff16021790555060408201518160000160106101000a81548163ffffffff021916908363ffffffff16021790555060608201518160000160146101000a81548163ffffffff021916908363ffffffff16021790555060808201518160000160186101000a81548163ffffffff021916908363ffffffff16021790555060a082015181600001601c6101000a81548163ffffffff021916908363ffffffff16021790555060c08201518160010160006101000a81548161ffff021916908361ffff16021790555060e08201518160010160026101000a81548161ffff021916908361ffff1602179055506101008201518160010160046101000a81548161ffff021916908361ffff160217905550505085156116dd57600380546001810182556000919091527fc2575a0e9e593c00f959f8c92f12db2869c3395a3b0502d05e2516446f71f85b60108204018054600f9092166002026101000a61ffff81810219909316928616029190911790555b6040805167ffffffffffffffff8e16815263ffffffff808e1660208301528c169181019190915261ffff8a81166060830152898116608083015288811660a083015287151560c08301527fffffffffffffffff0000000000000000000000000000000000000000000000008f1691908516907fc46ca991884acd97b67ccae44e8d3f0ada8f306802983edb66ccb71c519ea0d19060e00160405180910390a350909b9a5050505050505050505050565b6060600380548060200260200160405190810160405280929190818152602001828054801561180357602002820191906000526020600020906000905b82829054906101000a900461ffff1661ffff16815260200190600201906020826001010492830192600103820291508084116117ca5790505b5050505050905090565b6118156130ee565b61181e826131f2565b611828828261321c565b5050565b6000611836613355565b507f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc90565b600061186682612cf5565b6118cc576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601c60248201527f5075626c6963206d696e74696e67206e6f7420617661696c61626c65000000006044820152606401610935565b60028261ffff16815481106118e3576118e36148e4565b600091825260209091206002909102015461086a9068010000000000000000900467ffffffffffffffff16633b9aca00614a25565b60007f95d4bc2dffead2f8c85023cc6927eae1b262c537650df2a0f5d7bfc294d2831261194481612bc3565b60008481526001602090815260408083208151606081018352905467ffffffffffffffff808216835268010000000000000000820416938201849052700100000000000000000000000000000000900464ffffffffff169181019190915291906119af908690614a3c565b90506040518060600160405280836000015167ffffffffffffffff1681526020016119d9836133c4565b67ffffffffffffffff908116825260408086015164ffffffffff90811660209485015260008b815260018552829020855181549587015196840151909216700100000000000000000000000000000000027fffffffffffffffffffffff0000000000ffffffffffffffffffffffffffffffff96851668010000000000000000027fffffffffffffffffffffffffffffffff0000000000000000000000000000000090961692909416919091179390931793909316179055517f706f696e74730000000000000000000000000000000000000000000000000000907f8386f3b08e49490d0c5a9d2c401c091f13b01a17d75ce4a2f0f8f923b410ff7d90611aeb9089908590918252602082015260400190565b60405180910390a29250505b5092915050565b7f97667070c54ef182b0f5858b034beac1b6f3089aa2d3188bb1e8929f4fa9b929611b2881612bc3565b60025461ffff841610611b97576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601460248201527f496e76616c69642073657269657320696e6465780000000000000000000000006044820152606401610935565b8115611d4d57600060028461ffff1681548110611bb657611bb66148e4565b60009182526020918290206040805161012081018252600293909302909101805460c081811b7fffffffffffffffff00000000000000000000000000000000000000000000000016855268010000000000000000820467ffffffffffffffff1695850195909552700100000000000000000000000000000000810463ffffffff90811693850193909352740100000000000000000000000000000000000000008104831660608501819052780100000000000000000000000000000000000000000000000082048416608086018190527c010000000000000000000000000000000000000000000000000000000090920490931660a085015260019091015461ffff80821695850195909552620100008104851660e085015264010000000090049093166101008301529092509003611d4b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601c60248201527f53657269657320686173206265656e2066756c6c79206d696e746564000000006044820152606401610935565b505b6000611d5884612cf5565b9050828015611d65575080155b15611dfd5760038054600181018255600091909152601081047fc2575a0e9e593c00f959f8c92f12db2869c3395a3b0502d05e2516446f71f85b01805461ffff8781166002600f909516949094026101000a84810291021990911617905560405184151581527fcc6e9bff2fb3049ce51e0ddb5b02a211a688dd2cd3b52c22ccec6e2f61477b169060200160405180910390a2610ea8565b82158015611e085750805b15610ea857611e1684613418565b8361ffff167fcc6e9bff2fb3049ce51e0ddb5b02a211a688dd2cd3b52c22ccec6e2f61477b1684604051611e4e911515815260200190565b60405180910390a250505050565b60006109f88383613551565b7f97667070c54ef182b0f5858b034beac1b6f3089aa2d3188bb1e8929f4fa9b929611e9281612bc3565b600480547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff84169081179091556040519081527f3d2ad470ac155133833dfcd09d1dac3c97488b53dcf79ead413dff86b6419ee89060200160405180910390a15050565b600061086a82612cf5565b6002546000908190815b818161ffff1610156120e3576000600160028361ffff1681548110611f4857611f486148e4565b906000526020600020906002020160000160189054906101000a900463ffffffff1660028461ffff1681548110611f8157611f816148e4565b6000918252602090912060029091020154611fb69190700100000000000000000000000000000000900463ffffffff166149cc565b611fc091906149e8565b63ffffffff1690505b60028261ffff1681548110611fe057611fe06148e4565b6000918252602090912060029091020154700100000000000000000000000000000000900463ffffffff1681106120d05760008181526001602081815260408084208151606081018352905467ffffffffffffffff80821683526801000000000000000082041682850152700100000000000000000000000000000000900464ffffffffff169181018290529385905291905261207d57506120be565b62093a80816040015164ffffffffff164261209891906148ae565b11156120a457506120d0565b80516120ba9067ffffffffffffffff1686614a3c565b9450505b806120c881614a4f565b915050611fc9565b50806120db81614a04565b915050611f21565b506120f282633b9aca00614a25565b9250505090565b6000807f95d4bc2dffead2f8c85023cc6927eae1b262c537650df2a0f5d7bfc294d2831261212681612bc3565b60025461ffff861610612195576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601460248201527f496e76616c69642073657269657320696e6465780000000000000000000000006044820152606401610935565b60028561ffff16815481106121ac576121ac6148e4565b906000526020600020906002020160000160149054906101000a900463ffffffff1663ffffffff1660028661ffff16815481106121eb576121eb6148e4565b60009182526020909120600290910201547801000000000000000000000000000000000000000000000000900463ffffffff1610612285576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601c60248201527f53657269657320686173206265656e2066756c6c79206d696e746564000000006044820152606401610935565b60028561ffff168154811061229c5761229c6148e4565b906000526020600020906002020160000160189054906101000a900463ffffffff1660028661ffff16815481106122d5576122d56148e4565b600091825260209091206002909102015461230a9190700100000000000000000000000000000000900463ffffffff166149cc565b63ffffffff169250612357836040518060600160405280633b9aca00886123319190614a84565b67ffffffffffffffff1681526000602082015264ffffffffff421660409091015261364d565b60028561ffff168154811061236e5761236e6148e4565b6000918252602090912060029091020180547801000000000000000000000000000000000000000000000000900463ffffffff169060186123ae83614abf565b91906101000a81548163ffffffff021916908363ffffffff1602179055505060028561ffff16815481106123e4576123e46148e4565b906000526020600020906002020160000160149054906101000a900463ffffffff1663ffffffff1660028661ffff1681548110612423576124236148e4565b60009182526020909120600290910201547801000000000000000000000000000000000000000000000000900463ffffffff16036124645761246485613418565b61246d856129af565b9150509250929050565b606061248a61248583613744565b613b08565b60405160200161249a9190614af7565b6040516020818303038152906040529050919050565b600081815260016020526040812054700100000000000000000000000000000000900464ffffffffff161515801561086a57505060009081526001602052604090205467ffffffffffffffff16151590565b60008281527f02dd7bc7dec4dceedda775e58dd541e08a116c6c53815c0bd028192f7b626800602052604090206001015461253c81612bc3565b610ea88383612c17565b7f95d4bc2dffead2f8c85023cc6927eae1b262c537650df2a0f5d7bfc294d2831261257081612bc3565b600082815260016020526040902054700100000000000000000000000000000000900464ffffffffff16612600576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601d60248201527f546f6b656e206d6574616461746120646f6573206e6f742065786973740000006044820152606401610935565b600061260b8361281a565b905060028161ffff1681548110612624576126246148e4565b6000918252602090912060029091020180547c0100000000000000000000000000000000000000000000000000000000900463ffffffff1690601c61266883614abf565b825463ffffffff9182166101009390930a92830291909202199091161790555060008381526001602052604080822080547fffffffffffffffffffffff0000000000000000000000000000000000000000001690555184917f160739d2267e4e888a988580a6f68efdec75c3dd9baf815db4616e8a406bddaa91a2505050565b6060600080546126f790614b3c565b80601f016020809104026020016040519081016040528092919081815260200182805461272390614b3c565b80156118035780601f1061274557610100808354040283529160200191611803565b820191906000526020600020905b81548152906001019060200180831161275357509395945050505050565b6060818067ffffffffffffffff81111561278d5761278d6145cd565b6040519080825280602002602001820160405280156127b6578160200160208202803683370190505b50915060005b818110156128115760008585838181106127d8576127d86148e4565b9050602002013590506127eb8782613551565b8483815181106127fd576127fd6148e4565b6020908102919091010152506001016127bc565b50509392505050565b600254600090815b818161ffff1610156129265760028161ffff1681548110612845576128456148e4565b6000918252602090912060029091020154700100000000000000000000000000000000900463ffffffff168410801590612908575060028161ffff1681548110612891576128916148e4565b906000526020600020906002020160000160149054906101000a900463ffffffff1660028261ffff16815481106128ca576128ca6148e4565b60009182526020909120600290910201546128ff9190700100000000000000000000000000000000900463ffffffff166149cc565b63ffffffff1684105b15612914579392505050565b8061291e81614a04565b915050612822565b506040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602360248201527f546f6b656e20646f6573206e6f742062656c6f6e6720746f20616e792073657260448201527f69657300000000000000000000000000000000000000000000000000000000006064820152608401610935565b60007f5741474d49000000000000000000000000000000000000000000000000000000815b6005811015612a8e578181602081106129ef576129ef6148e4565b1a60f81b7effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff191660028561ffff1681548110612a2c57612a2c6148e4565b600091825260209091206002909102015460c01b8260088110612a5157612a516148e4565b1a60f81b7effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614612a86575060019392505050565b6001016129d4565b5060009392505050565b612aa0613c68565b565b60008281527f02dd7bc7dec4dceedda775e58dd541e08a116c6c53815c0bd028192f7b6268006020818152604080842073ffffffffffffffffffffffffffffffffffffffff8616855290915282205460ff16612bb95760008481526020828152604080832073ffffffffffffffffffffffffffffffffffffffff87168452909152902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00166001179055612b553390565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16857f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a4600191505061086a565b600091505061086a565b612bcd8133613ccf565b50565b6000612bdc8282614bdd565b507fefafb90526da1636e1335eac0151301742fb755d986954c613b90e891778ba3981604051612c0c9190614789565b60405180910390a150565b60008281527f02dd7bc7dec4dceedda775e58dd541e08a116c6c53815c0bd028192f7b6268006020818152604080842073ffffffffffffffffffffffffffffffffffffffff8616855290915282205460ff1615612bb95760008481526020828152604080832073ffffffffffffffffffffffffffffffffffffffff8716808552925280832080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016905551339287917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a4600191505061086a565b600354600090815b81811015612a8e578361ffff1660038281548110612d1d57612d1d6148e4565b60009182526020909120601082040154600f9091166002026101000a900461ffff1603612d4e575060019392505050565b600101612cfd565b60606000600183606001518460400151612d7091906149cc565b612d7a91906149e8565b63ffffffff1690506000612d8d82613d76565b90506000612da4856040015163ffffffff16613d76565b9050600082518251141590506000835167ffffffffffffffff811115612dcc57612dcc6145cd565b6040519080825280601f01601f191660200182016040528015612df6576020820181803683370190505b50905060005b8151811015612f6b5782158015612e135750808451115b8015612e945750838181518110612e2c57612e2c6148e4565b602001015160f81c60f81b7effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916858281518110612e6b57612e6b6148e4565b01602001517fff0000000000000000000000000000000000000000000000000000000000000016145b15612efc57848181518110612eab57612eab6148e4565b602001015160f81c60f81b828281518110612ec857612ec86148e4565b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350612f63565b600192507f7800000000000000000000000000000000000000000000000000000000000000828281518110612f3357612f336148e4565b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a9053505b600101612dfc565b509695505050505050565b606060005b60088160ff16108015612fc75750828160ff1660088110612f9e57612f9e6148e4565b1a60f81b7fff000000000000000000000000000000000000000000000000000000000000001615155b15612fde5780612fd681614cf6565b915050612f7b565b60008160ff1667ffffffffffffffff811115612ffc57612ffc6145cd565b6040519080825280601f01601f191660200182016040528015613026576020820181803683370190505b509050600091505b60088260ff1610801561307a5750838260ff1660088110613051576130516148e4565b1a60f81b7fff000000000000000000000000000000000000000000000000000000000000001615155b156109f857838260ff1660088110613094576130946148e4565b1a60f81b818360ff16815181106130ad576130ad6148e4565b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350816130e681614cf6565b92505061302e565b3073ffffffffffffffffffffffffffffffffffffffff7f0000000000000000000000007b247cb6e5fef6fc75fdf209a95843df81b7df911614806131bb57507f0000000000000000000000007b247cb6e5fef6fc75fdf209a95843df81b7df9173ffffffffffffffffffffffffffffffffffffffff166131a27f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5473ffffffffffffffffffffffffffffffffffffffff1690565b73ffffffffffffffffffffffffffffffffffffffff1614155b15612aa0576040517fe07c8dba00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b7f189ab7a9244df0848122154315af71fe140f3db0fe014031783b0946b8c9d2e361182881612bc3565b8173ffffffffffffffffffffffffffffffffffffffff166352d1902d6040518163ffffffff1660e01b8152600401602060405180830381865afa9250505080156132a1575060408051601f3d9081017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016820190925261329e91810190614d0c565b60015b6132ef576040517f4c9c8ce300000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff83166004820152602401610935565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc811461334b576040517faa1d49a400000000000000000000000000000000000000000000000000000000815260048101829052602401610935565b610d208383613e34565b3073ffffffffffffffffffffffffffffffffffffffff7f0000000000000000000000007b247cb6e5fef6fc75fdf209a95843df81b7df911614612aa0576040517fe07c8dba00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600067ffffffffffffffff82111561341457604080517f6dfcc650000000000000000000000000000000000000000000000000000000008152600481019190915260248101839052604401610935565b5090565b60005b600354811015611828578161ffff166003828154811061343d5761343d6148e4565b60009182526020909120601082040154600f9091166002026101000a900461ffff16036135495760038054613474906001906148ae565b81548110613484576134846148e4565b90600052602060002090601091828204019190066002029054906101000a900461ffff16600382815481106134bb576134bb6148e4565b90600052602060002090601091828204019190066002026101000a81548161ffff021916908361ffff16021790555060038054806134fb576134fb614d25565b60008281526020902060107fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff90920191820401805461ffff6002600f8516026101000a021916905590555050565b60010161341b565b60008281526001602090815260408083208151606081018352905467ffffffffffffffff8082168352680100000000000000008204169382019390935270010000000000000000000000000000000090920464ffffffffff16908201527f706f696e747300000000000000000000000000000000000000000000000000008390036135eb576020015167ffffffffffffffff16905061086a565b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601360248201527f5472616974206b6579206e6f7420666f756e64000000000000000000000000006044820152606401610935565b600082815260016020908152604091829020835181548584018051878701805167ffffffffffffffff9586167fffffffffffffffffffffffffffffffff0000000000000000000000000000000090951685176801000000000000000093871693909302929092177fffffffffffffffffffffff0000000000ffffffffffffffffffffffffffffffff1670010000000000000000000000000000000064ffffffffff938416021790955586519283529051909216938101939093529051169181019190915282907f6e219db270f25f5c23d7947ba7ef24460f8fcee7b6ab1742167c6f38ac49e3b19060600160405180910390a25050565b6000818152600160209081526040808320815160608082018452915467ffffffffffffffff8082168352680100000000000000008204169482019490945270010000000000000000000000000000000090930464ffffffffff1691830191909152916137af8461281a565b9050600060028261ffff16815481106137ca576137ca6148e4565b600091825260208083206040805161012081018252600294909402909101805460c081811b7fffffffffffffffff00000000000000000000000000000000000000000000000016865268010000000000000000820467ffffffffffffffff1694860194909452700100000000000000000000000000000000810463ffffffff908116938601939093527401000000000000000000000000000000000000000081048316606086015278010000000000000000000000000000000000000000000000008104831660808601527c0100000000000000000000000000000000000000000000000000000000900490911660a08401526001015461ffff80821692840192909252620100008104821660e084015264010000000090041661010082015291506138f5836129af565b613934576040518060400160405280600281526020017f4e6f00000000000000000000000000000000000000000000000000000000000081525061396b565b6040518060400160405280600381526020017f59657300000000000000000000000000000000000000000000000000000000008152505b90506000613997836000015177ffffffffffffffffffffffffffffffffffffffffffffffff1916612f76565b905060006139a488613d76565b826040516020016139b6929190614d54565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0818403018152919052600454909150600090613aa99073ffffffffffffffffffffffffffffffffffffffff16632a7ae6f1613a158c613d76565b868960c001518a60e001518b61010001516040518663ffffffff1660e01b8152600401613a46959493929190614913565b600060405180830381865afa158015613a63573d6000803e3d6000fd5b505050506040513d6000823e601f3d9081017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0168201604052612485919081019061495e565b905081818486613ac2896060015163ffffffff16613d76565b613ad68c6040015164ffffffffff16613d76565b604051602001613aeb96959493929190614dac565b604051602081830303815290604052975050505050505050919050565b60608151600003613b2757505060408051602081019091526000815290565b60006040518060600160405280604081526020016150566040913990506000600384516002613b569190614a3c565b613b609190614a84565b613b6b906004614a25565b67ffffffffffffffff811115613b8357613b836145cd565b6040519080825280601f01601f191660200182016040528015613bad576020820181803683370190505b50905060018201602082018586518701602081018051600082525b82841015613c23576003840193508351603f8160121c168701518653600186019550603f81600c1c168701518653600186019550603f8160061c168701518653600186019550603f8116870151865350600185019450613bc8565b9052505085516003900660018114613c425760028114613c5557613c5d565b603d6001830353603d6002830353613c5d565b603d60018303535b509195945050505050565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a005468010000000000000000900460ff16612aa0576040517fd7e6bcf800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60008281527f02dd7bc7dec4dceedda775e58dd541e08a116c6c53815c0bd028192f7b6268006020908152604080832073ffffffffffffffffffffffffffffffffffffffff8516845290915290205460ff16611828576040517fe2517d3f00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8216600482015260248101839052604401610935565b60606000613d8383613e97565b600101905060008167ffffffffffffffff811115613da357613da36145cd565b6040519080825280601f01601f191660200182016040528015613dcd576020820181803683370190505b5090508181016020015b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff017f3031323334353637383961626364656600000000000000000000000000000000600a86061a8153600a8504945084613dd757509392505050565b613e3d82613f79565b60405173ffffffffffffffffffffffffffffffffffffffff8316907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a2805115613e8f57610d208282614048565b6118286140cb565b6000807a184f03e93ff9f4daa797ed6e38ed64bf6a1f0100000000000000008310613ee0577a184f03e93ff9f4daa797ed6e38ed64bf6a1f010000000000000000830492506040015b6d04ee2d6d415b85acef81000000008310613f0c576d04ee2d6d415b85acef8100000000830492506020015b662386f26fc100008310613f2a57662386f26fc10000830492506010015b6305f5e1008310613f42576305f5e100830492506008015b6127108310613f5657612710830492506004015b60648310613f68576064830492506002015b600a831061086a5760010192915050565b8073ffffffffffffffffffffffffffffffffffffffff163b600003613fe2576040517f4c9c8ce300000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff82166004820152602401610935565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc80547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff92909216919091179055565b60606000808473ffffffffffffffffffffffffffffffffffffffff16846040516140729190615039565b600060405180830381855af49150503d80600081146140ad576040519150601f19603f3d011682016040523d82523d6000602084013e6140b2565b606091505b50915091506140c2858383614103565b95945050505050565b3415612aa0576040517fb398979f00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b606082614118576141138261418b565b6109f8565b815115801561413c575073ffffffffffffffffffffffffffffffffffffffff84163b155b15611af7576040517f9996b31500000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff85166004820152602401610935565b80511561419b5780518082602001fd5b6040517f1425ea4200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6000602082840312156141df57600080fd5b81357fffffffff00000000000000000000000000000000000000000000000000000000811681146109f857600080fd5b60006020828403121561422157600080fd5b5035919050565b803573ffffffffffffffffffffffffffffffffffffffff8116811461424c57600080fd5b919050565b600080600080600060a0868803121561426957600080fd5b61427286614228565b945061428060208701614228565b935061428e60408701614228565b925061429c60608701614228565b91506142aa60808701614228565b90509295509295909350565b600080602083850312156142c957600080fd5b823567ffffffffffffffff8111156142e057600080fd5b8301601f810185136142f157600080fd5b803567ffffffffffffffff81111561430857600080fd5b85602082840101111561431a57600080fd5b6020919091019590945092505050565b803561ffff8116811461424c57600080fd5b803567ffffffffffffffff8116811461424c57600080fd5b6000806040838503121561436757600080fd5b6143708361432a565b915061437e6020840161433c565b90509250929050565b6000806040838503121561439a57600080fd5b8235915061437e60208401614228565b6000602082840312156143bc57600080fd5b6109f88261432a565b60005b838110156143e05781810151838201526020016143c8565b50506000910152565b600081518084526144018160208601602086016143c5565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b7fffffffffffffffff000000000000000000000000000000000000000000000000891681528760208201528660408201528560608201528460808201528360a082015282151560c082015261010060e082015260006144966101008301846143e9565b9a9950505050505050505050565b803563ffffffff8116811461424c57600080fd5b8035801515811461424c57600080fd5b600080600080600080600080610100898b0312156144e557600080fd5b88357fffffffffffffffff0000000000000000000000000000000000000000000000008116811461451557600080fd5b975061452360208a0161433c565b965061453160408a016144a4565b955061453f60608a016144a4565b945061454d60808a0161432a565b935061455b60a08a0161432a565b925061456960c08a0161432a565b915061457760e08a016144b8565b90509295985092959890939650565b602080825282518282018190526000918401906040840190835b818110156145c257835161ffff168352602093840193909201916001016145a0565b509095945050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff81118282101715614643576146436145cd565b604052919050565b600067ffffffffffffffff821115614665576146656145cd565b50601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01660200190565b600080604083850312156146a457600080fd5b6146ad83614228565b9150602083013567ffffffffffffffff8111156146c957600080fd5b8301601f810185136146da57600080fd5b80356146ed6146e88261464b565b6145fc565b81815286602083850101111561470257600080fd5b816020840160208301376000602083830101528093505050509250929050565b6000806040838503121561473557600080fd5b50508035926020909101359150565b6000806040838503121561475757600080fd5b6147608361432a565b915061437e602084016144b8565b60006020828403121561478057600080fd5b6109f882614228565b6020815260006109f860208301846143e9565b600080604083850312156147af57600080fd5b6147b88361432a565b946020939093013593505050565b6000806000604084860312156147db57600080fd5b83359250602084013567ffffffffffffffff8111156147f957600080fd5b8401601f8101861361480a57600080fd5b803567ffffffffffffffff81111561482157600080fd5b8660208260051b840101111561483657600080fd5b939660209190910195509293505050565b602080825282518282018190526000918401906040840190835b818110156145c2578351835260209384019390920191600101614861565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b8181038181111561086a5761086a61487f565b67ffffffffffffffff8181168382160290811690818114611af757611af761487f565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60a08152600061492660a08301886143e9565b828103602084015261493881886143e9565b61ffff968716604085015294861660608401525050921660809092019190915292915050565b60006020828403121561497057600080fd5b815167ffffffffffffffff81111561498757600080fd5b8201601f8101841361499857600080fd5b80516149a66146e88261464b565b8181528560208385010111156149bb57600080fd5b6140c28260208301602086016143c5565b63ffffffff818116838216019081111561086a5761086a61487f565b63ffffffff828116828216039081111561086a5761086a61487f565b600061ffff821661ffff8103614a1c57614a1c61487f565b60010192915050565b808202811582820484141761086a5761086a61487f565b8082018082111561086a5761086a61487f565b600081614a5e57614a5e61487f565b507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0190565b600082614aba577f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b500490565b600063ffffffff821663ffffffff8103614a1c57614a1c61487f565b60008151614aed8185602086016143c5565b9290920192915050565b7f646174613a6170706c69636174696f6e2f6a736f6e3b6261736536342c000000815260008251614b2f81601d8501602087016143c5565b91909101601d0192915050565b600181811c90821680614b5057607f821691505b602082108103614b89577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b50919050565b601f821115610d2057806000526020600020601f840160051c81016020851015614bb65750805b601f840160051c820191505b81811015614bd65760008155600101614bc2565b5050505050565b815167ffffffffffffffff811115614bf757614bf76145cd565b614c0b81614c058454614b3c565b84614b8f565b6020601f821160018114614c5d5760008315614c275750848201515b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600385901b1c1916600184901b178455614bd6565b6000848152602081207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08516915b82811015614cab5787850151825560209485019460019092019101614c8b565b5084821015614ce757868401517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600387901b60f8161c191681555b50505050600190811b01905550565b600060ff821660ff8103614a1c57614a1c61487f565b600060208284031215614d1e57600080fd5b5051919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603160045260246000fd5b60008351614d668184602088016143c5565b7f20000000000000000000000000000000000000000000000000000000000000009083019081528351614da08160018401602088016143c5565b01600101949350505050565b7f7b226465736372697074696f6e223a20224e65756c6f636b2050617373776f7281527f64204d616e61676572206d656d62657273686970204e4654202d206e65756c6f60208201527f636b2e617070222c20226e616d65223a20224e45552023000000000000000000604082015260008751614e30816057850160208c016143c5565b7f222c2022696d616765223a2022646174613a696d6167652f7376672b786d6c3b6057918401918201527f6261736536342c0000000000000000000000000000000000000000000000000060778201528751614e9381607e840160208c016143c5565b6057818301019150507f222c202261747472696275746573223a205b7b2274726169745f74797065223a60278201527f2022536572696573222c202276616c7565223a202200000000000000000000006047820152615006615000614fb1614fab614f5c614f56614f07605c88018e614adb565b7f227d2c7b2274726169745f74797065223a2022476f7665726e616e636520416381527f63657373222c202276616c7565223a2022000000000000000000000000000000602082015260310190565b8b614adb565b7f227d2c7b2274726169745f74797065223a2022536572696573204d617820537581527f70706c79222c202276616c7565223a2000000000000000000000000000000000602082015260300190565b88614adb565b7f7d2c7b2274726169745f74797065223a20224d696e742044617465222c20226481527f6973706c61795f74797065223a202264617465222c202276616c7565223a20006020820152603f0190565b85614adb565b7f7d5d7d000000000000000000000000000000000000000000000000000000000081526003019998505050505050505050565b6000825161504b8184602087016143c5565b919091019291505056fe4142434445464748494a4b4c4d4e4f505152535455565758595a6162636465666768696a6b6c6d6e6f707172737475767778797a303132333435363738392b2fa2646970667358221220e47c9318c6b06f7eaa93b0a6ccfcb874693525dcf44afec2f91dfb0ef2559f0a64736f6c634300081c0033
Generate instant answers for your smart contract questions using Al Models. Read more.
Net Worth in USD
Net Worth in ETH
Multichain Portfolio | 33 Chains
| Chain | Token | Portfolio % | Price | Amount | Value |
|---|
A contract address hosts a smart contract, which is a set of code stored on the blockchain that runs when predetermined conditions are met. Learn more about addresses in our Knowledge Base.

