Source Code
Cross-Chain Transactions
Loading...
Loading
Contract Source Code (Solidity Standard Json-Input format)
Contract Security Audit
No Contract Security Audit SubmittedSubmit Audit Here
Contract ABI
API[{"inputs":[],"name":"InvalidInitialization","type":"error"},{"inputs":[],"name":"NotInitializing","type":"error"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bytes32","name":"gameId","type":"bytes32"}],"name":"GameCancelled","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint64","name":"version","type":"uint64"}],"name":"Initialized","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bytes32","name":"gameId","type":"bytes32"},{"indexed":false,"internalType":"uint16","name":"typeId","type":"uint16"},{"indexed":false,"internalType":"uint24","name":"playerId","type":"uint24"},{"indexed":false,"internalType":"int24","name":"line","type":"int24"}],"name":"MarketExplicitlyCancelled","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"oldOwner","type":"address"},{"indexed":false,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnerChanged","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnerNominated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bool","name":"isPaused","type":"bool"}],"name":"PauseChanged","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint16","name":"marketTypeId","type":"uint16"},{"indexed":false,"internalType":"uint256","name":"resultType","type":"uint256"}],"name":"ResultTypePerMarketTypeSet","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bytes32","name":"gameId","type":"bytes32"},{"indexed":false,"internalType":"uint16","name":"typeId","type":"uint16"},{"indexed":false,"internalType":"uint24","name":"playerId","type":"uint24"},{"indexed":false,"internalType":"int24[]","name":"result","type":"int24[]"}],"name":"ResultsPerMarketSet","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"resolver","type":"address"}],"name":"SetChainlinkResolver","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"numOfTicketsToExercise","type":"uint256"}],"name":"SetNumOfTicketsToExerciseOnGameResolution","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"manager","type":"address"}],"name":"SetSportsManager","type":"event"},{"inputs":[],"name":"CANCEL_ID","outputs":[{"internalType":"int24","name":"","type":"int24"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"acceptOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"","type":"bytes32"},{"internalType":"uint256","name":"","type":"uint256"},{"internalType":"uint256","name":"","type":"uint256"}],"name":"areResultsPerMarketSet","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"_gameId","type":"bytes32"}],"name":"cancelGame","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32[]","name":"_gameIds","type":"bytes32[]"}],"name":"cancelGames","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"_gameId","type":"bytes32"},{"internalType":"uint16","name":"_typeId","type":"uint16"},{"internalType":"uint24","name":"_playerId","type":"uint24"},{"internalType":"int24","name":"_line","type":"int24"}],"name":"cancelMarket","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32[]","name":"_gameIds","type":"bytes32[]"},{"internalType":"uint16[]","name":"_typeIds","type":"uint16[]"},{"internalType":"uint24[]","name":"_playerIds","type":"uint24[]"},{"internalType":"int24[]","name":"_lines","type":"int24[]"}],"name":"cancelMarkets","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"chainlinkResolver","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"_gameId","type":"bytes32"},{"internalType":"uint16","name":"_typeId","type":"uint16"},{"internalType":"uint24","name":"_playerId","type":"uint24"},{"internalType":"int24","name":"_line","type":"int24"},{"internalType":"uint256","name":"_position","type":"uint256"},{"components":[{"internalType":"uint16","name":"typeId","type":"uint16"},{"internalType":"uint8","name":"position","type":"uint8"},{"internalType":"int24","name":"line","type":"int24"}],"internalType":"struct ISportsAMMV2.CombinedPosition[]","name":"_combinedPositions","type":"tuple[]"}],"name":"getMarketPositionStatus","outputs":[{"internalType":"enum ISportsAMMV2ResultManager.MarketPositionStatus","name":"status","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"_gameId","type":"bytes32"},{"internalType":"uint16","name":"_typeId","type":"uint16"},{"internalType":"uint24","name":"_playerId","type":"uint24"}],"name":"getResultsPerMarket","outputs":[{"internalType":"int24[]","name":"results","type":"int24[]"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"initNonReentrant","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_owner","type":"address"},{"internalType":"contract ISportsAMMV2Manager","name":"_manager","type":"address"}],"name":"initialize","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"_gameId","type":"bytes32"},{"internalType":"uint16","name":"_typeId","type":"uint16"},{"internalType":"uint24","name":"_playerId","type":"uint24"},{"internalType":"int24","name":"_line","type":"int24"},{"internalType":"uint256","name":"_position","type":"uint256"},{"components":[{"internalType":"uint16","name":"typeId","type":"uint16"},{"internalType":"uint8","name":"position","type":"uint8"},{"internalType":"int24","name":"line","type":"int24"}],"internalType":"struct ISportsAMMV2.CombinedPosition[]","name":"_combinedPositions","type":"tuple[]"}],"name":"isCancelledMarketPosition","outputs":[{"internalType":"bool","name":"isCancelled","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"name":"isGameCancelled","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"_gameId","type":"bytes32"},{"internalType":"uint16","name":"_typeId","type":"uint16"},{"internalType":"uint24","name":"_playerId","type":"uint24"},{"internalType":"int24","name":"_line","type":"int24"},{"components":[{"internalType":"uint16","name":"typeId","type":"uint16"},{"internalType":"uint8","name":"position","type":"uint8"},{"internalType":"int24","name":"line","type":"int24"}],"internalType":"struct ISportsAMMV2.CombinedPosition[]","name":"combinedPositions","type":"tuple[]"}],"name":"isMarketCancelled","outputs":[{"internalType":"bool","name":"isCancelled","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"","type":"bytes32"},{"internalType":"uint256","name":"","type":"uint256"},{"internalType":"uint256","name":"","type":"uint256"},{"internalType":"int256","name":"","type":"int256"}],"name":"isMarketExplicitlyCancelled","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"_gameId","type":"bytes32"},{"internalType":"uint16","name":"_typeId","type":"uint16"},{"internalType":"uint24","name":"_playerId","type":"uint24"},{"internalType":"int24","name":"_line","type":"int24"},{"components":[{"internalType":"uint16","name":"typeId","type":"uint16"},{"internalType":"uint8","name":"position","type":"uint8"},{"internalType":"int24","name":"line","type":"int24"}],"internalType":"struct ISportsAMMV2.CombinedPosition[]","name":"combinedPositions","type":"tuple[]"}],"name":"isMarketResolved","outputs":[{"internalType":"bool","name":"isResolved","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"_gameId","type":"bytes32"},{"internalType":"uint16","name":"_typeId","type":"uint16"},{"internalType":"uint24","name":"_playerId","type":"uint24"},{"internalType":"int24","name":"_line","type":"int24"},{"internalType":"uint256","name":"_position","type":"uint256"},{"components":[{"internalType":"uint16","name":"typeId","type":"uint16"},{"internalType":"uint8","name":"position","type":"uint8"},{"internalType":"int24","name":"line","type":"int24"}],"internalType":"struct ISportsAMMV2.CombinedPosition[]","name":"_combinedPositions","type":"tuple[]"}],"name":"isMarketResolvedAndPositionWinning","outputs":[{"internalType":"bool","name":"isResolved","type":"bool"},{"internalType":"bool","name":"isWinning","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"_gameId","type":"bytes32"},{"internalType":"uint16","name":"_typeId","type":"uint16"},{"internalType":"uint24","name":"_playerId","type":"uint24"},{"internalType":"int24","name":"_line","type":"int24"},{"internalType":"uint256","name":"_position","type":"uint256"},{"components":[{"internalType":"uint16","name":"typeId","type":"uint16"},{"internalType":"uint8","name":"position","type":"uint8"},{"internalType":"int24","name":"line","type":"int24"}],"internalType":"struct ISportsAMMV2.CombinedPosition[]","name":"_combinedPositions","type":"tuple[]"}],"name":"isWinningMarketPosition","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"lastPauseTime","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"manager","outputs":[{"internalType":"contract ISportsAMMV2Manager","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_owner","type":"address"}],"name":"nominateNewOwner","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"nominatedOwner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"numOfTicketsToExerciseOnGameResolution","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"paused","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"resultTypePerMarketType","outputs":[{"internalType":"enum SportsAMMV2ResultManager.ResultType","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"","type":"bytes32"},{"internalType":"uint256","name":"","type":"uint256"},{"internalType":"uint256","name":"","type":"uint256"},{"internalType":"uint256","name":"","type":"uint256"}],"name":"resultsPerMarket","outputs":[{"internalType":"int24","name":"","type":"int24"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_chainlinkResolver","type":"address"}],"name":"setChainlinkResolver","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_numOfTicketsToExercise","type":"uint256"}],"name":"setNumOfTicketsToExerciseOnGameResolution","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_owner","type":"address"}],"name":"setOwner","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bool","name":"_paused","type":"bool"}],"name":"setPaused","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint16[]","name":"_marketTypeIds","type":"uint16[]"},{"internalType":"uint256[]","name":"_resultTypes","type":"uint256[]"}],"name":"setResultTypesPerMarketTypes","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32[]","name":"_gameIds","type":"bytes32[]"},{"internalType":"uint16[]","name":"_typeIds","type":"uint16[]"},{"internalType":"uint24[]","name":"_playerIds","type":"uint24[]"},{"internalType":"int24[][]","name":"_results","type":"int24[][]"}],"name":"setResultsPerMarkets","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_manager","type":"address"}],"name":"setSportsManager","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"proxyAddress","type":"address"}],"name":"transferOwnershipAtInit","outputs":[],"stateMutability":"nonpayable","type":"function"}]Contract Creation Code
608060405234801561001057600080fd5b50612df4806100206000396000f3fe608060405234801561001057600080fd5b50600436106101db5760003560e01c806379ba509711610105578063b9c565801161009d578063b9c5658014610475578063bad260f514610488578063c3b83f5f1461049b578063d1e567ef146104ae578063df47035d146104c1578063ebc79772146104d4578063ec7c314c146104dc578063fd72d4c6146104ff578063fd9552e71461053357600080fd5b806379ba5097146103a75780637f8a3f8c146103af57806380be6355146103c25780638223154b146103d55780638da5cb5b146103df578063914008bc146103f257806391b4ded91461042257806399a50a081461042b578063aa0cc0961461045557600080fd5b80633f7121b0116101785780633f7121b0146102b9578063481c6a75146102cc578063485cc955146102f1578063514b75631461030457806353a47bb7146103245780635c975abb1461033757806361283ea11461034457806371752fa51461038157806376d050811461039457600080fd5b80625143a5146101e05780630ae677181461020b57806313af4035146102225780631627540c1461023757806316c38b3c1461024a57806318d83b881461025d57806319aafc59146102705780631e72f8e414610283578063397f782314610296575b600080fd5b6101f36101ee36600461225f565b610546565b60405160029190910b81526020015b60405180910390f35b610214600c5481565b604051908152602001610202565b6102356102303660046122a6565b6105a6565b005b6102356102453660046122a6565b6106c2565b6102356102583660046122d8565b610715565b61023561026b366004612553565b610787565b61023561027e3660046125ff565b610933565b610235610291366004612718565b610db6565b6102a96102a43660046127e3565b610df3565b6040519015158152602001610202565b6102356102c7366004612718565b610e0c565b6005546102e49061010090046001600160a01b031681565b604051610202919061285b565b6102356102ff36600461286f565b610edb565b6103176103123660046128a8565b611012565b6040516102029190612922565b6001546102e4906001600160a01b031681565b6003546102a99060ff1681565b6102a961035236600461225f565b600960209081526000948552604080862082529385528385208152918452828420909152825290205460ff1681565b6102a961038f366004612935565b6110b2565b6102a96103a2366004612935565b6110e7565b610235611102565b600b546102e4906001600160a01b031681565b6102356103d03660046122a6565b6111da565b6101f361270e1981565b6000546102e4906001600160a01b031681565b610415610400366004612718565b600a6020526000908152604090205460ff1681565b60405161020291906129cb565b61021460025481565b61043e610439366004612935565b611258565b604080519215158352901515602083015201610202565b610468610463366004612935565b611278565b60405161020291906129f5565b610235610483366004612a02565b611288565b6102356104963660046122a6565b61135d565b6102356104a93660046122a6565b6113d6565b6102a96104bc3660046127e3565b6114a4565b6102356104cf366004612a4f565b61157f565b6102356116ef565b6102a96104ea366004612718565b60086020526000908152604090205460ff1681565b6102a961050d366004612b09565b600760209081526000938452604080852082529284528284209052825290205460ff1681565b610235610541366004612b35565b61174d565b6006602052836000526040600020602052826000526040600020602052816000526040600020818154811061057a57600080fd5b90600052602060002090600a91828204019190066003029350935050509054906101000a900460020b81565b6001600160a01b0381166105fd5760405162461bcd60e51b815260206004820152601960248201527804f776e657220616464726573732063616e6e6f74206265203603c1b60448201526064015b60405180910390fd5b600154600160a01b900460ff16156106695760405162461bcd60e51b815260206004820152602960248201527f416c726561647920696e697469616c697a65642c20757365206e6f6d696e617460448201526832a732bba7bbb732b960b91b60648201526084016105f4565b6001805460ff60a01b1916600160a01b179055600080546001600160a01b0383166001600160a01b0319909116178155604051600080516020612d9f833981519152916106b7918490612b71565b60405180910390a150565b6106ca611855565b600180546001600160a01b0319166001600160a01b0383161790556040517f906a1c6bd7e3091ea86693dd029a831c19049ce77f1dce2ce0bab1cacbabce22906106b790839061285b565b61071d611855565b60035460ff16151581151514610784576003805460ff191682151590811790915560ff161561074b57426002555b60035460405160ff909116151581527f8fb6c181ee25a520cf3dd6565006ef91229fcfe5a989566c2a3b8c115570cec5906020016106b7565b50565b60005433906001600160a01b03168114806107af5750600b546001600160a01b038281169116145b8061082d575060055460405163e760c39560e01b81526101009091046001600160a01b03169063e760c395906107ec908490600290600401612b8b565b602060405180830381865afa158015610809573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061082d9190612bb1565b6108495760405162461bcd60e51b81526004016105f490612bce565b8351855114801561085b575082518451145b8015610868575081518351145b6108845760405162461bcd60e51b81526004016105f490612bf6565b60005b855181101561092b5760008682815181106108a4576108a4612c20565b6020026020010151905060008683815181106108c2576108c2612c20565b6020026020010151905060008684815181106108e0576108e0612c20565b6020026020010151905060008685815181106108fe576108fe612c20565b60200260200101519050610914848484846118c9565b50505050808061092390612c4c565b915050610887565b505050505050565b60005433906001600160a01b031681148061095b5750600b546001600160a01b038281169116145b806109d9575060055460405163e760c39560e01b81526101009091046001600160a01b03169063e760c39590610998908490600290600401612b8b565b602060405180830381865afa1580156109b5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109d99190612bb1565b6109f55760405162461bcd60e51b81526004016105f490612bce565b83518551148015610a07575082518451145b8015610a14575081518351145b610a305760405162461bcd60e51b81526004016105f490612bf6565b6000600560019054906101000a90046001600160a01b03166001600160a01b031663c99252886040518163ffffffff1660e01b8152600401602060405180830381865afa158015610a85573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610aa99190612c65565b600c5490915060005b8751811015610dac576000888281518110610acf57610acf612c20565b6020908102919091018101516000818152600890925260409091205490915060ff1615610afc5750610d9a565b6000888381518110610b1057610b10612c20565b602002602001015190506000888481518110610b2e57610b2e612c20565b602002602001015190506000888581518110610b4c57610b4c612c20565b6020026020010151905061270e1960020b81600081518110610b7057610b70612c20565b602002602001015160020b03610b9257610b8d84848460006118c9565b610d95565b61ffff83166000908152600a602052604081205460ff1690816004811115610bbc57610bbc6129b5565b03610bff5760405162461bcd60e51b815260206004820152601360248201527214995cdd5b1d081d1e5c19481b9bdd081cd95d606a1b60448201526064016105f4565b600085815260076020908152604080832061ffff88168452825280832062ffffff8716845290915290205460ff16610d9357600085815260066020908152604080832061ffff88168452825280832062ffffff8716845282529091208351610c699285019061219b565b50600085815260076020908152604080832061ffff88168452825280832062ffffff871684529091529020805460ff191660011790558615610d5557600554600c5460405163048dfadf60e51b815260006004820181905260248201929092526044810188905261ffff8716606482015262ffffff86166084820152909161010090046001600160a01b0316906391bf5be09060a401600060405180830381865afa158015610d1c573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610d449190810190612c82565b9050610d5181898b6119b0565b9750505b7fdcd786a10e38c0f82a8b25e7e6b9e0276df2edfb3fe19107add54b0c7593554b85858585604051610d8a9493929190612d10565b60405180910390a15b505b505050505b80610da481612c4c565b915050610ab2565b5050505050505050565b610dbe611855565b600c8190556040518181527f49036f75cf067392bf360ab91f66395e6731702011691226d911256085472add906020016106b7565b6000610e028686868686611b3e565b9695505050505050565b60005433906001600160a01b0316811480610e345750600b546001600160a01b038281169116145b80610eb2575060055460405163e760c39560e01b81526101009091046001600160a01b03169063e760c39590610e71908490600290600401612b8b565b602060405180830381865afa158015610e8e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610eb29190612bb1565b610ece5760405162461bcd60e51b81526004016105f490612bce565b610ed782611c05565b5050565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a008054600160401b810460ff1615906001600160401b0316600081158015610f205750825b90506000826001600160401b03166001148015610f3c5750303b155b905081158015610f4a575080155b15610f685760405163f92ee8a960e01b815260040160405180910390fd5b845467ffffffffffffffff191660011785558315610f9257845460ff60401b1916600160401b1785555b610f9b876105a6565b610fa36116ef565b60058054610100600160a81b0319166101006001600160a01b03891602179055831561100957845460ff60401b19168555604051600181527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a15b50505050505050565b600083815260066020908152604080832061ffff86168452825280832062ffffff851684528252918290208054835181840281018401909452808452606093928301828280156110a457602002820191906000526020600020906000905b825461010083900a900460020b81526020600583018190049384019360010360039093019290920291018084116110705790505b505050505090509392505050565b6000806110c3888888888888611ca8565b905060015b8160038111156110da576110da6129b5565b1498975050505050505050565b60006110f7878787878787611d00565b979650505050505050565b6001546001600160a01b0316331461117a5760405162461bcd60e51b815260206004820152603560248201527f596f75206d757374206265206e6f6d696e61746564206265666f726520796f7560448201527402063616e20616363657074206f776e65727368697605c1b60648201526084016105f4565b600054600154604051600080516020612d9f833981519152926111ab926001600160a01b0391821692911690612b71565b60405180910390a160018054600080546001600160a01b03199081166001600160a01b03841617909155169055565b6111e2611855565b6001600160a01b0381166112085760405162461bcd60e51b81526004016105f490612d3e565b60058054610100600160a81b0319166101006001600160a01b038416021790556040517f3f95458abea6f2ed78f07dd5ee75af62322c77d86a51a87aabc86aa92d34a6b1906106b790839061285b565b600080611269888888888888611d35565b90999098509650505050505050565b60006110f7878787878787611ca8565b60005433906001600160a01b03168114806112b05750600b546001600160a01b038281169116145b8061132e575060055460405163e760c39560e01b81526101009091046001600160a01b03169063e760c395906112ed908490600290600401612b8b565b602060405180830381865afa15801561130a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061132e9190612bb1565b61134a5760405162461bcd60e51b81526004016105f490612bce565b611356858585856118c9565b5050505050565b611365611855565b6001600160a01b03811661138b5760405162461bcd60e51b81526004016105f490612d3e565b600b80546001600160a01b0319166001600160a01b0383161790556040517f306e3fdb40fb48602fc9bdf15fa992b86cf0476f1a141034292aafa47b2a9d60906106b790839061285b565b6113de611855565b6001600160a01b0381166114045760405162461bcd60e51b81526004016105f490612d3e565b600154600160a81b900460ff16156114545760405162461bcd60e51b8152602060048201526013602482015272105b1c9958591e481d1c985b9cd9995c9c9959606a1b60448201526064016105f4565b600080546001600160a01b0383166001600160a01b031990911681179091556001805460ff60a81b1916600160a81b179055604051600080516020612d9f833981519152916106b7918490612b71565b60008581526008602052604081205460ff16156114c357506001611576565b61ffff85166000908152600a602052604090205460ff1660038160048111156114ee576114ee6129b5565b03611565576001915060005b835181101561155f57600084828151811061151757611517612c20565b6020026020010151905060006115388a836000015160008560400151611d98565b90508061154a5760009450505061155f565b5050808061155790612c4c565b9150506114fa565b50611574565b61157187878787611d98565b91505b505b95945050505050565b611587611855565b80518251146115a85760405162461bcd60e51b81526004016105f490612bf6565b60005b82518110156116ea5760008382815181106115c8576115c8612c20565b6020026020010151905060008383815181106115e6576115e6612c20565b6020026020010151905060006004811115611603576116036129b5565b81118015611612575060048111155b6116545760405162461bcd60e51b8152602060048201526013602482015272496e76616c696420726573756c74207479706560681b60448201526064016105f4565b806004811115611666576116666129b5565b61ffff83166000908152600a60205260409020805460ff19166001836004811115611693576116936129b5565b02179055506040805161ffff84168152602081018390527fc478d6b1f79f5e21a854090b896e0158e7ba15ce7306f4976088312888df3abf910160405180910390a1505080806116e290612c4c565b9150506115ab565b505050565b60055460ff16156117385760405162461bcd60e51b8152602060048201526013602482015272105b1c9958591e481a5b9a5d1a585b1a5e9959606a1b60448201526064016105f4565b6005805460ff19166001908117909155600455565b60005433906001600160a01b03168114806117755750600b546001600160a01b038281169116145b806117f3575060055460405163e760c39560e01b81526101009091046001600160a01b03169063e760c395906117b2908490600290600401612b8b565b602060405180830381865afa1580156117cf573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117f39190612bb1565b61180f5760405162461bcd60e51b81526004016105f490612bce565b60005b82518110156116ea57600083828151811061182f5761182f612c20565b6020026020010151905061184281611c05565b508061184d81612c4c565b915050611812565b6000546001600160a01b031633146118c75760405162461bcd60e51b815260206004820152602f60248201527f4f6e6c792074686520636f6e7472616374206f776e6572206d6179207065726660448201526e37b936903a3434b99030b1ba34b7b760891b60648201526084016105f4565b565b6118d584848484611d98565b1561191d5760405162461bcd60e51b815260206004820152601860248201527713585c9ad95d08185b1c9958591e4818d85b98d95b1b195960421b60448201526064016105f4565b600084815260096020908152604080832061ffff871680855290835281842062ffffff8716808652908452828520600287900b80875290855294839020805460ff191660011790558251898152938401919091529082015260608101919091527f6ec5a8dc9a5e3412ca54efb27c0872cecd2e615705463dcc2ca045e0190ede649060800160405180910390a150505050565b8160005b8451811015611b36578115611b365760008582815181106119d7576119d7612c20565b60200260200101519050806001600160a01b031663e74d3c476040518163ffffffff1660e01b8152600401602060405180830381865afa158015611a1f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611a439190612bb1565b8015611aae5750806001600160a01b0316633356a35a6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611a88573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611aac9190612bb1565b155b15611b2357604051630f8a940b60e41b81526001600160a01b0385169063f8a940b090611ae2908490600090600401612d67565b600060405180830381600087803b158015611afc57600080fd5b505af1158015611b10573d6000803e3d6000fd5b505050508280611b1f90612d87565b9350505b5080611b2e81612c4c565b9150506119b4565b509392505050565b60008581526008602052604081205460ff1615611b5d57506001611576565b61ffff85166000908152600a602052604090205460ff166003816004811115611b8857611b886129b5565b03611bf9576001915060005b835181101561155f576000848281518110611bb157611bb1612c20565b602002602001015190506000611bd28a836000015160008560400151611e30565b905080611be45760009450505061155f565b50508080611bf190612c4c565b915050611b94565b61157187878787611e30565b60008181526008602052604090205460ff1615611c5d5760405162461bcd60e51b815260206004820152601660248201527511d85b5948185b1c9958591e4818d85b98d95b1b195960521b60448201526064016105f4565b60008181526008602052604090819020805460ff19166001179055517f730d9f4e127b4c1c5d999194f79025fe149736fbb95b0755b18ed20ddd01b4e0906106b79083815260200190565b61ffff85166000908152600a602052604081205460ff166003816004811115611cd357611cd36129b5565b14611cea57611ce58888888888611e70565b611cf4565b611cf488846120b0565b98975050505050505050565b600080611d11888888888888611ca8565b90506002816003811115611d2757611d276129b5565b1480611cf4575060016110c8565b600080611d458888888887611b3e565b91506000611d57898989898989611ca8565b90506002816003811115611d6d57611d6d6129b5565b1480611d8a57506001816003811115611d8857611d886129b5565b145b915050965096945050505050565b60008481526008602052604081205460ff1680611deb5750600085815260096020908152604080832061ffff88168452825280832062ffffff871684528252808320600286900b845290915290205460ff165b806115765750600085815260096020908152604080832061ffff88168452825280832062ffffff87168452825280832083805290915290205460ff1695945050505050565b600084815260076020908152604080832061ffff87168452825280832062ffffff8616845290915281205460ff1680611576575061157685858585611d98565b6000611e7e86868686611d98565b15611e8b57506001611576565b600086815260076020908152604080832061ffff89168452825280832062ffffff8816845290915290205460ff16156120a457600086815260066020908152604080832061ffff89168452825280832062ffffff88168452825280832080548251818502810185019093528083529192909190830182828015611f5057602002820191906000526020600020906000905b825461010083900a900460020b8152602060058301819004938401936001036003909301929092029101808411611f1c5790505b50505061ffff89166000908152600a602052604081205493945060ff909316929150505b8251811015612098576000838281518110611f9157611f91612c20565b602002602001015160020b905060026004811115611fb157611fb16129b5565b836004811115611fc357611fc36129b5565b1480611fe057506004836004811115611fde57611fde6129b5565b145b15612071578660020b8103611ffc576001945050505050611576565b60006004846004811115612012576120126129b5565b1461202f578760020b8213612028576001612043565b6000612043565b8760020b8212612040576001612043565b60005b905086816001811115612058576120586129b5565b0361206b57600295505050505050611576565b50612085565b858103612085576002945050505050611576565b508061209081612c4c565b915050611f74565b50600392505050611576565b50600095945050505050565b60008080805b84518110156121745760008582815181106120d3576120d3612c20565b6020026020010151905060006120fc88836000015160008560400151866020015160ff16611e70565b90506003816003811115612112576121126129b5565b0361212557600395505050505050612195565b8461214257600181600381111561213e5761213e6129b5565b1494505b8361215f57600081600381111561215b5761215b6129b5565b1493505b5050808061216c90612c4c565b9150506120b6565b508161218d5780612186576002612190565b6000612190565b60015b925050505b92915050565b82805482825590600052602060002090600901600a9004810192821561223a5791602002820160005b8382111561220957835183826101000a81548162ffffff021916908360020b62ffffff16021790555092602001926003016020816002010492830192600103026121c4565b80156122385782816101000a81549062ffffff0219169055600301602081600201049283019260010302612209565b505b5061224692915061224a565b5090565b5b80821115612246576000815560010161224b565b6000806000806080858703121561227557600080fd5b5050823594602084013594506040840135936060013592509050565b6001600160a01b038116811461078457600080fd5b6000602082840312156122b857600080fd5b81356122c381612291565b9392505050565b801515811461078457600080fd5b6000602082840312156122ea57600080fd5b81356122c3816122ca565b634e487b7160e01b600052604160045260246000fd5b604051606081016001600160401b038111828210171561232d5761232d6122f5565b60405290565b604051601f8201601f191681016001600160401b038111828210171561235b5761235b6122f5565b604052919050565b60006001600160401b0382111561237c5761237c6122f5565b5060051b60200190565b600082601f83011261239757600080fd5b813560206123ac6123a783612363565b612333565b82815260059290921b840181019181810190868411156123cb57600080fd5b8286015b848110156123e657803583529183019183016123cf565b509695505050505050565b803561ffff8116811461240357600080fd5b919050565b600082601f83011261241957600080fd5b813560206124296123a783612363565b82815260059290921b8401810191818101908684111561244857600080fd5b8286015b848110156123e65761245d816123f1565b835291830191830161244c565b803562ffffff8116811461240357600080fd5b600082601f83011261248e57600080fd5b8135602061249e6123a783612363565b82815260059290921b840181019181810190868411156124bd57600080fd5b8286015b848110156123e6576124d28161246a565b83529183019183016124c1565b8035600281900b811461240357600080fd5b600082601f83011261250257600080fd5b813560206125126123a783612363565b82815260059290921b8401810191818101908684111561253157600080fd5b8286015b848110156123e657612546816124df565b8352918301918301612535565b6000806000806080858703121561256957600080fd5b84356001600160401b038082111561258057600080fd5b61258c88838901612386565b955060208701359150808211156125a257600080fd5b6125ae88838901612408565b945060408701359150808211156125c457600080fd5b6125d08883890161247d565b935060608701359150808211156125e657600080fd5b506125f3878288016124f1565b91505092959194509250565b6000806000806080858703121561261557600080fd5b84356001600160401b038082111561262c57600080fd5b61263888838901612386565b955060209150818701358181111561264f57600080fd5b61265b89828a01612408565b95505060408701358181111561267057600080fd5b61267c89828a0161247d565b94505060608701358181111561269157600080fd5b8701601f810189136126a257600080fd5b80356126b06123a782612363565b81815260059190911b8201840190848101908b8311156126cf57600080fd5b8584015b83811015612707578035868111156126eb5760008081fd5b6126f98e89838901016124f1565b8452509186019186016126d3565b50989b979a50959850505050505050565b60006020828403121561272a57600080fd5b5035919050565b600082601f83011261274257600080fd5b813560206127526123a783612363565b8281526060928302850182019282820191908785111561277157600080fd5b8387015b858110156127d65781818a03121561278d5760008081fd5b61279561230b565b61279e826123f1565b81528582013560ff811681146127b45760008081fd5b8187015260406127c58382016124df565b908201528452928401928101612775565b5090979650505050505050565b600080600080600060a086880312156127fb57600080fd5b8535945061280b602087016123f1565b93506128196040870161246a565b9250612827606087016124df565b915060808601356001600160401b0381111561284257600080fd5b61284e88828901612731565b9150509295509295909350565b6001600160a01b0391909116815260200190565b6000806040838503121561288257600080fd5b823561288d81612291565b9150602083013561289d81612291565b809150509250929050565b6000806000606084860312156128bd57600080fd5b833592506128cd602085016123f1565b91506128db6040850161246a565b90509250925092565b600081518084526020808501945080840160005b8381101561291757815160020b875295820195908201906001016128f8565b509495945050505050565b6020815260006122c360208301846128e4565b60008060008060008060c0878903121561294e57600080fd5b8635955061295e602088016123f1565b945061296c6040880161246a565b935061297a606088016124df565b92506080870135915060a08701356001600160401b0381111561299c57600080fd5b6129a889828a01612731565b9150509295509295509295565b634e487b7160e01b600052602160045260246000fd5b60208101600583106129df576129df6129b5565b91905290565b60048110610784576107846129b5565b602081016129df836129e5565b60008060008060808587031215612a1857600080fd5b84359350612a28602086016123f1565b9250612a366040860161246a565b9150612a44606086016124df565b905092959194509250565b60008060408385031215612a6257600080fd5b82356001600160401b0380821115612a7957600080fd5b612a8586838701612408565b9350602091508185013581811115612a9c57600080fd5b85019050601f81018613612aaf57600080fd5b8035612abd6123a782612363565b81815260059190911b82018301908381019088831115612adc57600080fd5b928401925b82841015612afa57833582529284019290840190612ae1565b80955050505050509250929050565b600080600060608486031215612b1e57600080fd5b505081359360208301359350604090920135919050565b600060208284031215612b4757600080fd5b81356001600160401b03811115612b5d57600080fd5b612b6984828501612386565b949350505050565b6001600160a01b0392831681529116602082015260400190565b6001600160a01b038316815260408101612ba4836129e5565b8260208301529392505050565b600060208284031215612bc357600080fd5b81516122c3816122ca565b6020808252600e908201526d24b73b30b634b21039b2b73232b960911b604082015260600190565b60208082526010908201526f496e636f727265637420706172616d7360801b604082015260600190565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b600060018201612c5e57612c5e612c36565b5060010190565b600060208284031215612c7757600080fd5b81516122c381612291565b60006020808385031215612c9557600080fd5b82516001600160401b03811115612cab57600080fd5b8301601f81018513612cbc57600080fd5b8051612cca6123a782612363565b81815260059190911b82018301908381019087831115612ce957600080fd5b928401925b828410156110f7578351612d0181612291565b82529284019290840190612cee565b84815261ffff8416602082015262ffffff83166040820152608060608201526000610e0260808301846128e4565b6020808252600f908201526e496e76616c6964206164647265737360881b604082015260600190565b6001600160a01b03831681526040810160038310612ba457612ba46129b5565b600081612d9657612d96612c36565b50600019019056feb532073b38c83145e3e5135377a08bf9aab55bc0fd7c1179cd4fb995d2a5159ca2646970667358221220bb1aa39d4a923551b8b1b915f1b07970bd996bd903fec095b2964a10db81859264736f6c63430008140033
Deployed Bytecode
0x608060405234801561001057600080fd5b50600436106101db5760003560e01c806379ba509711610105578063b9c565801161009d578063b9c5658014610475578063bad260f514610488578063c3b83f5f1461049b578063d1e567ef146104ae578063df47035d146104c1578063ebc79772146104d4578063ec7c314c146104dc578063fd72d4c6146104ff578063fd9552e71461053357600080fd5b806379ba5097146103a75780637f8a3f8c146103af57806380be6355146103c25780638223154b146103d55780638da5cb5b146103df578063914008bc146103f257806391b4ded91461042257806399a50a081461042b578063aa0cc0961461045557600080fd5b80633f7121b0116101785780633f7121b0146102b9578063481c6a75146102cc578063485cc955146102f1578063514b75631461030457806353a47bb7146103245780635c975abb1461033757806361283ea11461034457806371752fa51461038157806376d050811461039457600080fd5b80625143a5146101e05780630ae677181461020b57806313af4035146102225780631627540c1461023757806316c38b3c1461024a57806318d83b881461025d57806319aafc59146102705780631e72f8e414610283578063397f782314610296575b600080fd5b6101f36101ee36600461225f565b610546565b60405160029190910b81526020015b60405180910390f35b610214600c5481565b604051908152602001610202565b6102356102303660046122a6565b6105a6565b005b6102356102453660046122a6565b6106c2565b6102356102583660046122d8565b610715565b61023561026b366004612553565b610787565b61023561027e3660046125ff565b610933565b610235610291366004612718565b610db6565b6102a96102a43660046127e3565b610df3565b6040519015158152602001610202565b6102356102c7366004612718565b610e0c565b6005546102e49061010090046001600160a01b031681565b604051610202919061285b565b6102356102ff36600461286f565b610edb565b6103176103123660046128a8565b611012565b6040516102029190612922565b6001546102e4906001600160a01b031681565b6003546102a99060ff1681565b6102a961035236600461225f565b600960209081526000948552604080862082529385528385208152918452828420909152825290205460ff1681565b6102a961038f366004612935565b6110b2565b6102a96103a2366004612935565b6110e7565b610235611102565b600b546102e4906001600160a01b031681565b6102356103d03660046122a6565b6111da565b6101f361270e1981565b6000546102e4906001600160a01b031681565b610415610400366004612718565b600a6020526000908152604090205460ff1681565b60405161020291906129cb565b61021460025481565b61043e610439366004612935565b611258565b604080519215158352901515602083015201610202565b610468610463366004612935565b611278565b60405161020291906129f5565b610235610483366004612a02565b611288565b6102356104963660046122a6565b61135d565b6102356104a93660046122a6565b6113d6565b6102a96104bc3660046127e3565b6114a4565b6102356104cf366004612a4f565b61157f565b6102356116ef565b6102a96104ea366004612718565b60086020526000908152604090205460ff1681565b6102a961050d366004612b09565b600760209081526000938452604080852082529284528284209052825290205460ff1681565b610235610541366004612b35565b61174d565b6006602052836000526040600020602052826000526040600020602052816000526040600020818154811061057a57600080fd5b90600052602060002090600a91828204019190066003029350935050509054906101000a900460020b81565b6001600160a01b0381166105fd5760405162461bcd60e51b815260206004820152601960248201527804f776e657220616464726573732063616e6e6f74206265203603c1b60448201526064015b60405180910390fd5b600154600160a01b900460ff16156106695760405162461bcd60e51b815260206004820152602960248201527f416c726561647920696e697469616c697a65642c20757365206e6f6d696e617460448201526832a732bba7bbb732b960b91b60648201526084016105f4565b6001805460ff60a01b1916600160a01b179055600080546001600160a01b0383166001600160a01b0319909116178155604051600080516020612d9f833981519152916106b7918490612b71565b60405180910390a150565b6106ca611855565b600180546001600160a01b0319166001600160a01b0383161790556040517f906a1c6bd7e3091ea86693dd029a831c19049ce77f1dce2ce0bab1cacbabce22906106b790839061285b565b61071d611855565b60035460ff16151581151514610784576003805460ff191682151590811790915560ff161561074b57426002555b60035460405160ff909116151581527f8fb6c181ee25a520cf3dd6565006ef91229fcfe5a989566c2a3b8c115570cec5906020016106b7565b50565b60005433906001600160a01b03168114806107af5750600b546001600160a01b038281169116145b8061082d575060055460405163e760c39560e01b81526101009091046001600160a01b03169063e760c395906107ec908490600290600401612b8b565b602060405180830381865afa158015610809573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061082d9190612bb1565b6108495760405162461bcd60e51b81526004016105f490612bce565b8351855114801561085b575082518451145b8015610868575081518351145b6108845760405162461bcd60e51b81526004016105f490612bf6565b60005b855181101561092b5760008682815181106108a4576108a4612c20565b6020026020010151905060008683815181106108c2576108c2612c20565b6020026020010151905060008684815181106108e0576108e0612c20565b6020026020010151905060008685815181106108fe576108fe612c20565b60200260200101519050610914848484846118c9565b50505050808061092390612c4c565b915050610887565b505050505050565b60005433906001600160a01b031681148061095b5750600b546001600160a01b038281169116145b806109d9575060055460405163e760c39560e01b81526101009091046001600160a01b03169063e760c39590610998908490600290600401612b8b565b602060405180830381865afa1580156109b5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109d99190612bb1565b6109f55760405162461bcd60e51b81526004016105f490612bce565b83518551148015610a07575082518451145b8015610a14575081518351145b610a305760405162461bcd60e51b81526004016105f490612bf6565b6000600560019054906101000a90046001600160a01b03166001600160a01b031663c99252886040518163ffffffff1660e01b8152600401602060405180830381865afa158015610a85573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610aa99190612c65565b600c5490915060005b8751811015610dac576000888281518110610acf57610acf612c20565b6020908102919091018101516000818152600890925260409091205490915060ff1615610afc5750610d9a565b6000888381518110610b1057610b10612c20565b602002602001015190506000888481518110610b2e57610b2e612c20565b602002602001015190506000888581518110610b4c57610b4c612c20565b6020026020010151905061270e1960020b81600081518110610b7057610b70612c20565b602002602001015160020b03610b9257610b8d84848460006118c9565b610d95565b61ffff83166000908152600a602052604081205460ff1690816004811115610bbc57610bbc6129b5565b03610bff5760405162461bcd60e51b815260206004820152601360248201527214995cdd5b1d081d1e5c19481b9bdd081cd95d606a1b60448201526064016105f4565b600085815260076020908152604080832061ffff88168452825280832062ffffff8716845290915290205460ff16610d9357600085815260066020908152604080832061ffff88168452825280832062ffffff8716845282529091208351610c699285019061219b565b50600085815260076020908152604080832061ffff88168452825280832062ffffff871684529091529020805460ff191660011790558615610d5557600554600c5460405163048dfadf60e51b815260006004820181905260248201929092526044810188905261ffff8716606482015262ffffff86166084820152909161010090046001600160a01b0316906391bf5be09060a401600060405180830381865afa158015610d1c573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610d449190810190612c82565b9050610d5181898b6119b0565b9750505b7fdcd786a10e38c0f82a8b25e7e6b9e0276df2edfb3fe19107add54b0c7593554b85858585604051610d8a9493929190612d10565b60405180910390a15b505b505050505b80610da481612c4c565b915050610ab2565b5050505050505050565b610dbe611855565b600c8190556040518181527f49036f75cf067392bf360ab91f66395e6731702011691226d911256085472add906020016106b7565b6000610e028686868686611b3e565b9695505050505050565b60005433906001600160a01b0316811480610e345750600b546001600160a01b038281169116145b80610eb2575060055460405163e760c39560e01b81526101009091046001600160a01b03169063e760c39590610e71908490600290600401612b8b565b602060405180830381865afa158015610e8e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610eb29190612bb1565b610ece5760405162461bcd60e51b81526004016105f490612bce565b610ed782611c05565b5050565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a008054600160401b810460ff1615906001600160401b0316600081158015610f205750825b90506000826001600160401b03166001148015610f3c5750303b155b905081158015610f4a575080155b15610f685760405163f92ee8a960e01b815260040160405180910390fd5b845467ffffffffffffffff191660011785558315610f9257845460ff60401b1916600160401b1785555b610f9b876105a6565b610fa36116ef565b60058054610100600160a81b0319166101006001600160a01b03891602179055831561100957845460ff60401b19168555604051600181527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a15b50505050505050565b600083815260066020908152604080832061ffff86168452825280832062ffffff851684528252918290208054835181840281018401909452808452606093928301828280156110a457602002820191906000526020600020906000905b825461010083900a900460020b81526020600583018190049384019360010360039093019290920291018084116110705790505b505050505090509392505050565b6000806110c3888888888888611ca8565b905060015b8160038111156110da576110da6129b5565b1498975050505050505050565b60006110f7878787878787611d00565b979650505050505050565b6001546001600160a01b0316331461117a5760405162461bcd60e51b815260206004820152603560248201527f596f75206d757374206265206e6f6d696e61746564206265666f726520796f7560448201527402063616e20616363657074206f776e65727368697605c1b60648201526084016105f4565b600054600154604051600080516020612d9f833981519152926111ab926001600160a01b0391821692911690612b71565b60405180910390a160018054600080546001600160a01b03199081166001600160a01b03841617909155169055565b6111e2611855565b6001600160a01b0381166112085760405162461bcd60e51b81526004016105f490612d3e565b60058054610100600160a81b0319166101006001600160a01b038416021790556040517f3f95458abea6f2ed78f07dd5ee75af62322c77d86a51a87aabc86aa92d34a6b1906106b790839061285b565b600080611269888888888888611d35565b90999098509650505050505050565b60006110f7878787878787611ca8565b60005433906001600160a01b03168114806112b05750600b546001600160a01b038281169116145b8061132e575060055460405163e760c39560e01b81526101009091046001600160a01b03169063e760c395906112ed908490600290600401612b8b565b602060405180830381865afa15801561130a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061132e9190612bb1565b61134a5760405162461bcd60e51b81526004016105f490612bce565b611356858585856118c9565b5050505050565b611365611855565b6001600160a01b03811661138b5760405162461bcd60e51b81526004016105f490612d3e565b600b80546001600160a01b0319166001600160a01b0383161790556040517f306e3fdb40fb48602fc9bdf15fa992b86cf0476f1a141034292aafa47b2a9d60906106b790839061285b565b6113de611855565b6001600160a01b0381166114045760405162461bcd60e51b81526004016105f490612d3e565b600154600160a81b900460ff16156114545760405162461bcd60e51b8152602060048201526013602482015272105b1c9958591e481d1c985b9cd9995c9c9959606a1b60448201526064016105f4565b600080546001600160a01b0383166001600160a01b031990911681179091556001805460ff60a81b1916600160a81b179055604051600080516020612d9f833981519152916106b7918490612b71565b60008581526008602052604081205460ff16156114c357506001611576565b61ffff85166000908152600a602052604090205460ff1660038160048111156114ee576114ee6129b5565b03611565576001915060005b835181101561155f57600084828151811061151757611517612c20565b6020026020010151905060006115388a836000015160008560400151611d98565b90508061154a5760009450505061155f565b5050808061155790612c4c565b9150506114fa565b50611574565b61157187878787611d98565b91505b505b95945050505050565b611587611855565b80518251146115a85760405162461bcd60e51b81526004016105f490612bf6565b60005b82518110156116ea5760008382815181106115c8576115c8612c20565b6020026020010151905060008383815181106115e6576115e6612c20565b6020026020010151905060006004811115611603576116036129b5565b81118015611612575060048111155b6116545760405162461bcd60e51b8152602060048201526013602482015272496e76616c696420726573756c74207479706560681b60448201526064016105f4565b806004811115611666576116666129b5565b61ffff83166000908152600a60205260409020805460ff19166001836004811115611693576116936129b5565b02179055506040805161ffff84168152602081018390527fc478d6b1f79f5e21a854090b896e0158e7ba15ce7306f4976088312888df3abf910160405180910390a1505080806116e290612c4c565b9150506115ab565b505050565b60055460ff16156117385760405162461bcd60e51b8152602060048201526013602482015272105b1c9958591e481a5b9a5d1a585b1a5e9959606a1b60448201526064016105f4565b6005805460ff19166001908117909155600455565b60005433906001600160a01b03168114806117755750600b546001600160a01b038281169116145b806117f3575060055460405163e760c39560e01b81526101009091046001600160a01b03169063e760c395906117b2908490600290600401612b8b565b602060405180830381865afa1580156117cf573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117f39190612bb1565b61180f5760405162461bcd60e51b81526004016105f490612bce565b60005b82518110156116ea57600083828151811061182f5761182f612c20565b6020026020010151905061184281611c05565b508061184d81612c4c565b915050611812565b6000546001600160a01b031633146118c75760405162461bcd60e51b815260206004820152602f60248201527f4f6e6c792074686520636f6e7472616374206f776e6572206d6179207065726660448201526e37b936903a3434b99030b1ba34b7b760891b60648201526084016105f4565b565b6118d584848484611d98565b1561191d5760405162461bcd60e51b815260206004820152601860248201527713585c9ad95d08185b1c9958591e4818d85b98d95b1b195960421b60448201526064016105f4565b600084815260096020908152604080832061ffff871680855290835281842062ffffff8716808652908452828520600287900b80875290855294839020805460ff191660011790558251898152938401919091529082015260608101919091527f6ec5a8dc9a5e3412ca54efb27c0872cecd2e615705463dcc2ca045e0190ede649060800160405180910390a150505050565b8160005b8451811015611b36578115611b365760008582815181106119d7576119d7612c20565b60200260200101519050806001600160a01b031663e74d3c476040518163ffffffff1660e01b8152600401602060405180830381865afa158015611a1f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611a439190612bb1565b8015611aae5750806001600160a01b0316633356a35a6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611a88573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611aac9190612bb1565b155b15611b2357604051630f8a940b60e41b81526001600160a01b0385169063f8a940b090611ae2908490600090600401612d67565b600060405180830381600087803b158015611afc57600080fd5b505af1158015611b10573d6000803e3d6000fd5b505050508280611b1f90612d87565b9350505b5080611b2e81612c4c565b9150506119b4565b509392505050565b60008581526008602052604081205460ff1615611b5d57506001611576565b61ffff85166000908152600a602052604090205460ff166003816004811115611b8857611b886129b5565b03611bf9576001915060005b835181101561155f576000848281518110611bb157611bb1612c20565b602002602001015190506000611bd28a836000015160008560400151611e30565b905080611be45760009450505061155f565b50508080611bf190612c4c565b915050611b94565b61157187878787611e30565b60008181526008602052604090205460ff1615611c5d5760405162461bcd60e51b815260206004820152601660248201527511d85b5948185b1c9958591e4818d85b98d95b1b195960521b60448201526064016105f4565b60008181526008602052604090819020805460ff19166001179055517f730d9f4e127b4c1c5d999194f79025fe149736fbb95b0755b18ed20ddd01b4e0906106b79083815260200190565b61ffff85166000908152600a602052604081205460ff166003816004811115611cd357611cd36129b5565b14611cea57611ce58888888888611e70565b611cf4565b611cf488846120b0565b98975050505050505050565b600080611d11888888888888611ca8565b90506002816003811115611d2757611d276129b5565b1480611cf4575060016110c8565b600080611d458888888887611b3e565b91506000611d57898989898989611ca8565b90506002816003811115611d6d57611d6d6129b5565b1480611d8a57506001816003811115611d8857611d886129b5565b145b915050965096945050505050565b60008481526008602052604081205460ff1680611deb5750600085815260096020908152604080832061ffff88168452825280832062ffffff871684528252808320600286900b845290915290205460ff165b806115765750600085815260096020908152604080832061ffff88168452825280832062ffffff87168452825280832083805290915290205460ff1695945050505050565b600084815260076020908152604080832061ffff87168452825280832062ffffff8616845290915281205460ff1680611576575061157685858585611d98565b6000611e7e86868686611d98565b15611e8b57506001611576565b600086815260076020908152604080832061ffff89168452825280832062ffffff8816845290915290205460ff16156120a457600086815260066020908152604080832061ffff89168452825280832062ffffff88168452825280832080548251818502810185019093528083529192909190830182828015611f5057602002820191906000526020600020906000905b825461010083900a900460020b8152602060058301819004938401936001036003909301929092029101808411611f1c5790505b50505061ffff89166000908152600a602052604081205493945060ff909316929150505b8251811015612098576000838281518110611f9157611f91612c20565b602002602001015160020b905060026004811115611fb157611fb16129b5565b836004811115611fc357611fc36129b5565b1480611fe057506004836004811115611fde57611fde6129b5565b145b15612071578660020b8103611ffc576001945050505050611576565b60006004846004811115612012576120126129b5565b1461202f578760020b8213612028576001612043565b6000612043565b8760020b8212612040576001612043565b60005b905086816001811115612058576120586129b5565b0361206b57600295505050505050611576565b50612085565b858103612085576002945050505050611576565b508061209081612c4c565b915050611f74565b50600392505050611576565b50600095945050505050565b60008080805b84518110156121745760008582815181106120d3576120d3612c20565b6020026020010151905060006120fc88836000015160008560400151866020015160ff16611e70565b90506003816003811115612112576121126129b5565b0361212557600395505050505050612195565b8461214257600181600381111561213e5761213e6129b5565b1494505b8361215f57600081600381111561215b5761215b6129b5565b1493505b5050808061216c90612c4c565b9150506120b6565b508161218d5780612186576002612190565b6000612190565b60015b925050505b92915050565b82805482825590600052602060002090600901600a9004810192821561223a5791602002820160005b8382111561220957835183826101000a81548162ffffff021916908360020b62ffffff16021790555092602001926003016020816002010492830192600103026121c4565b80156122385782816101000a81549062ffffff0219169055600301602081600201049283019260010302612209565b505b5061224692915061224a565b5090565b5b80821115612246576000815560010161224b565b6000806000806080858703121561227557600080fd5b5050823594602084013594506040840135936060013592509050565b6001600160a01b038116811461078457600080fd5b6000602082840312156122b857600080fd5b81356122c381612291565b9392505050565b801515811461078457600080fd5b6000602082840312156122ea57600080fd5b81356122c3816122ca565b634e487b7160e01b600052604160045260246000fd5b604051606081016001600160401b038111828210171561232d5761232d6122f5565b60405290565b604051601f8201601f191681016001600160401b038111828210171561235b5761235b6122f5565b604052919050565b60006001600160401b0382111561237c5761237c6122f5565b5060051b60200190565b600082601f83011261239757600080fd5b813560206123ac6123a783612363565b612333565b82815260059290921b840181019181810190868411156123cb57600080fd5b8286015b848110156123e657803583529183019183016123cf565b509695505050505050565b803561ffff8116811461240357600080fd5b919050565b600082601f83011261241957600080fd5b813560206124296123a783612363565b82815260059290921b8401810191818101908684111561244857600080fd5b8286015b848110156123e65761245d816123f1565b835291830191830161244c565b803562ffffff8116811461240357600080fd5b600082601f83011261248e57600080fd5b8135602061249e6123a783612363565b82815260059290921b840181019181810190868411156124bd57600080fd5b8286015b848110156123e6576124d28161246a565b83529183019183016124c1565b8035600281900b811461240357600080fd5b600082601f83011261250257600080fd5b813560206125126123a783612363565b82815260059290921b8401810191818101908684111561253157600080fd5b8286015b848110156123e657612546816124df565b8352918301918301612535565b6000806000806080858703121561256957600080fd5b84356001600160401b038082111561258057600080fd5b61258c88838901612386565b955060208701359150808211156125a257600080fd5b6125ae88838901612408565b945060408701359150808211156125c457600080fd5b6125d08883890161247d565b935060608701359150808211156125e657600080fd5b506125f3878288016124f1565b91505092959194509250565b6000806000806080858703121561261557600080fd5b84356001600160401b038082111561262c57600080fd5b61263888838901612386565b955060209150818701358181111561264f57600080fd5b61265b89828a01612408565b95505060408701358181111561267057600080fd5b61267c89828a0161247d565b94505060608701358181111561269157600080fd5b8701601f810189136126a257600080fd5b80356126b06123a782612363565b81815260059190911b8201840190848101908b8311156126cf57600080fd5b8584015b83811015612707578035868111156126eb5760008081fd5b6126f98e89838901016124f1565b8452509186019186016126d3565b50989b979a50959850505050505050565b60006020828403121561272a57600080fd5b5035919050565b600082601f83011261274257600080fd5b813560206127526123a783612363565b8281526060928302850182019282820191908785111561277157600080fd5b8387015b858110156127d65781818a03121561278d5760008081fd5b61279561230b565b61279e826123f1565b81528582013560ff811681146127b45760008081fd5b8187015260406127c58382016124df565b908201528452928401928101612775565b5090979650505050505050565b600080600080600060a086880312156127fb57600080fd5b8535945061280b602087016123f1565b93506128196040870161246a565b9250612827606087016124df565b915060808601356001600160401b0381111561284257600080fd5b61284e88828901612731565b9150509295509295909350565b6001600160a01b0391909116815260200190565b6000806040838503121561288257600080fd5b823561288d81612291565b9150602083013561289d81612291565b809150509250929050565b6000806000606084860312156128bd57600080fd5b833592506128cd602085016123f1565b91506128db6040850161246a565b90509250925092565b600081518084526020808501945080840160005b8381101561291757815160020b875295820195908201906001016128f8565b509495945050505050565b6020815260006122c360208301846128e4565b60008060008060008060c0878903121561294e57600080fd5b8635955061295e602088016123f1565b945061296c6040880161246a565b935061297a606088016124df565b92506080870135915060a08701356001600160401b0381111561299c57600080fd5b6129a889828a01612731565b9150509295509295509295565b634e487b7160e01b600052602160045260246000fd5b60208101600583106129df576129df6129b5565b91905290565b60048110610784576107846129b5565b602081016129df836129e5565b60008060008060808587031215612a1857600080fd5b84359350612a28602086016123f1565b9250612a366040860161246a565b9150612a44606086016124df565b905092959194509250565b60008060408385031215612a6257600080fd5b82356001600160401b0380821115612a7957600080fd5b612a8586838701612408565b9350602091508185013581811115612a9c57600080fd5b85019050601f81018613612aaf57600080fd5b8035612abd6123a782612363565b81815260059190911b82018301908381019088831115612adc57600080fd5b928401925b82841015612afa57833582529284019290840190612ae1565b80955050505050509250929050565b600080600060608486031215612b1e57600080fd5b505081359360208301359350604090920135919050565b600060208284031215612b4757600080fd5b81356001600160401b03811115612b5d57600080fd5b612b6984828501612386565b949350505050565b6001600160a01b0392831681529116602082015260400190565b6001600160a01b038316815260408101612ba4836129e5565b8260208301529392505050565b600060208284031215612bc357600080fd5b81516122c3816122ca565b6020808252600e908201526d24b73b30b634b21039b2b73232b960911b604082015260600190565b60208082526010908201526f496e636f727265637420706172616d7360801b604082015260600190565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b600060018201612c5e57612c5e612c36565b5060010190565b600060208284031215612c7757600080fd5b81516122c381612291565b60006020808385031215612c9557600080fd5b82516001600160401b03811115612cab57600080fd5b8301601f81018513612cbc57600080fd5b8051612cca6123a782612363565b81815260059190911b82018301908381019087831115612ce957600080fd5b928401925b828410156110f7578351612d0181612291565b82529284019290840190612cee565b84815261ffff8416602082015262ffffff83166040820152608060608201526000610e0260808301846128e4565b6020808252600f908201526e496e76616c6964206164647265737360881b604082015260600190565b6001600160a01b03831681526040810160038310612ba457612ba46129b5565b600081612d9657612d96612c36565b50600019019056feb532073b38c83145e3e5135377a08bf9aab55bc0fd7c1179cd4fb995d2a5159ca2646970667358221220bb1aa39d4a923551b8b1b915f1b07970bd996bd903fec095b2964a10db81859264736f6c63430008140033
🤖 Code Reader
Generate instant answers for your smart contract questions using Al Models. Read more.
Loading...
Loading
Loading...
Loading
Loading...
Loading
Net Worth in USD
$0.00
Net Worth in ETH
0
Multichain Portfolio | 30 Chains
| Chain | Token | Portfolio % | Price | Amount | Value |
|---|
Loading...
Loading
Loading...
Loading
Loading...
Loading
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.

