0 txs
286.5k calls
constructor
No constructor.
functions
calculateChallengeEmissionAndTier
purefunction calculateChallengeEmissionAndTier(uint256 totalSupply, uint256 maxSupply, uint256 challengeStart, uint256 challengeEnd) pure returns (uint256, uint256)
DEFAULT_ADMIN_ROLE
viewfunction DEFAULT_ADMIN_ROLE() view returns (bytes32)
getConfirmDataMultipleAssertions
viewfunction getConfirmDataMultipleAssertions(uint64[] _assertionIds, address rollupAddress) view returns (bytes32[] confirmData, bytes32 confirmHash)
getRoleAdmin
viewfunction getRoleAdmin(bytes32 role) view returns (bytes32)
getWinningKeyCount
purefunction getWinningKeyCount(uint256 _keyCount, uint256 _boostFactor, address _bulkAddress, uint256 _challengeId, bytes _confirmData, bytes _challengerSignedHash) pure returns (uint256 winningKeyCount)
hasRole
viewfunction hasRole(bytes32 role, address account) view returns (bool)
supportsInterface
viewfunction supportsInterface(bytes4 interfaceId) view returns (bool)
validateAndConvertAddress
purefunction validateAndConvertAddress(string _address) pure returns (address)
grantRole
nonpayablefunction grantRole(bytes32 role, address account)
initialize
nonpayablefunction initialize()
renounceRole
nonpayablefunction renounceRole(bytes32 role, address account)
revokeRole
nonpayablefunction revokeRole(bytes32 role, address account)
events
Initialized
event Initialized(uint8 version)
RoleAdminChanged
event RoleAdminChanged(bytes32 indexed role, bytes32 indexed previousAdminRole, bytes32 indexed newAdminRole)
RoleGranted
event RoleGranted(bytes32 indexed role, address indexed account, address indexed sender)
RoleRevoked
event RoleRevoked(bytes32 indexed role, address indexed account, address indexed sender)
errors
No errors.
creation bytecode
0x608060405234801561001057600080fd5b50611883806100206000396000f3fe608060405234801561001057600080fd5b50600436106100b45760003560e01c806391d148541161007157806391d148541461016d578063a217fddf14610180578063a6f6701a14610188578063c4494c10146101a9578063d547741f146101bc578063dab2d72f146101cf57600080fd5b806301ffc9a7146100b957806303db9ee1146100e1578063248a9ca31461010c5780632f2ff15d1461013d57806336568abe146101525780638129fc1c14610165575b600080fd5b6100cc6100c736600461100d565b6101f7565b60405190151581526020015b60405180910390f35b6100f46100ef366004611100565b61022e565b6040516001600160a01b0390911681526020016100d8565b61012f61011a366004611151565b60009081526065602052604090206001015490565b6040519081526020016100d8565b61015061014b366004611186565b610395565b005b610150610160366004611186565b6103bf565b610150610442565b6100cc61017b366004611186565b61055e565b61012f600081565b61019b6101963660046111c8565b610589565b6040516100d892919061128c565b61012f6101b73660046112f4565b6106ef565b6101506101ca366004611186565b610ab7565b6101e26101dd366004611384565b610adc565b604080519283526020830191909152016100d8565b60006001600160e01b03198216637965db0b60e01b148061022857506301ffc9a760e01b6001600160e01b03198316145b92915050565b80516000908290602a146102455750600092915050565b80600081518110610258576102586113b6565b6020910101516001600160f81b031916600360fc1b1415806102a0575080600181518110610288576102886113b6565b6020910101516001600160f81b031916600f60fb1b14155b156102ae5750600092915050565b600060025b602a81101561038d5760008382815181106102d0576102d06113b6565b016020015160f81c9050603081108015906102ef575060398160ff1611155b1561031e576102ff6030826113e2565b60ff1661030d846010611405565b6103179190611434565b925061037a565b60618160ff1610158015610336575060668160ff1611155b15610346576102ff6057826113e2565b60418160ff161015801561035e575060468160ff1611155b1561036e576102ff6037826113e2565b50600095945050505050565b50806103858161145f565b9150506102b3565b509392505050565b6000828152606560205260409020600101546103b081610c07565b6103ba8383610c11565b505050565b6001600160a01b03811633146104345760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b60648201526084015b60405180910390fd5b61043e8282610c97565b5050565b600054610100900460ff16158080156104625750600054600160ff909116105b8061047c5750303b15801561047c575060005460ff166001145b6104df5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b606482015260840161042b565b6000805460ff191660011790558015610502576000805461ff0019166101001790555b61050a610cfe565b610515600033610c11565b801561055b576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50565b60009182526065602090815260408084206001600160a01b0393909316845291905290205460ff1690565b60606000835167ffffffffffffffff8111156105a7576105a7611037565b6040519080825280602002602001820160405280156105d0578160200160208202803683370190505b50915060005b84518110156106be576000846001600160a01b03166392c8134c878481518110610602576106026113b6565b60200260200101516040518263ffffffff1660e01b8152600401610636919067ffffffffffffffff91909116815260200190565b6101806040518083038186803b15801561064f57600080fd5b505afa158015610663573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106879190611485565b905080604001518483815181106106a0576106a06113b6565b602090810291909101015250806106b68161145f565b9150506105d6565b50816040516020016106d09190611557565b6040516020818303038152906040528051906020012090509250929050565b60008087116107515760405162461bcd60e51b815260206004820152602860248201527f4572726f723a204b657920436f756e74204d7573742042652047726561746572604482015267102a3430b710181760c11b606482015260840161042b565b600086116107b85760405162461bcd60e51b815260206004820152602e60248201527f4572726f723a20426f6f737420666163746f72206d757374206265206772656160448201526d3a32b9103a3430b7103d32b9379760911b606482015260840161042b565b60405186906000906107d49088908890889088906020016115bd565b60408051601f1981840301815291905280516020909101209050806000620f42406107ff858d611612565b6108099190611647565b9050806108ab57620f42406000816108218188611612565b61082b9190611647565b90506000610839828f611612565b905060008386604051602001610863918152681d1a1c995cda1bdb1960ba1b602082015260290190565b6040516020818303038152906040528051906020012060001c610886919061165b565b9050818110610896576000610899565b60015b60ff1698505050505050505050610aad565b6000811180156108bb5750600481105b156109945760006103e8836040516020016108ea918152681d1a1c995cda1bdb1960ba1b602082015260290190565b6040516020818303038152906040528051906020012060001c61090d919061165b565b905061012c81101561099257600060028460405160200161093f918152653330b1ba37b960d11b602082015260260190565b6040516020818303038152906040528051906020012060001c610962919061165b565b9050801561097a5761097560018461166f565b610985565b610985836001611686565b9650505050505050610aad565b505b6000601e905060006103e8846040516020016109c291815266666163746f723160c81b602082015260270190565b6040516020818303038152906040528051906020012060001c6109e5919061165b565b90506000600285604051602001610a0e918152663330b1ba37b91960c91b602082015260270190565b6040516020818303038152906040528051906020012060001c610a31919061165b565b905060006103e8610a428585611612565b610a4c9190611647565b905060006064610a5c8388611612565b610a669190611647565b9050610a7360028461165b565b610a8857610a818187611686565b9950610aa3565b808611610a96576000610aa0565b610aa0818761166f565b99505b5050505050505050505b9695505050505050565b600082815260656020526040902060010154610ad281610c07565b6103ba8383610c97565b600080858511610b125760405162461bcd60e51b81526020600482015260016024820152603560f81b604482015260640161042b565b83831015610b465760405162461bcd60e51b81526020600482015260016024820152603760f81b604482015260640161042b565b6000610b64610b55888861166f565b610b5f9088611647565b610d6b565b90506017811115610b9b5760405162461bcd60e51b81526020600482015260016024820152601b60f91b604482015260640161042b565b6000610ba8826001611686565b610bb3906002611782565b610bbd9088611647565b90506000610bcd61447083611647565b90506000610bdb888861166f565b90506000610e10610bec8385611612565b610bf69190611647565b9b939a509298505050505050505050565b61055b8133610dff565b610c1b828261055e565b61043e5760008281526065602090815260408083206001600160a01b03851684529091529020805460ff19166001179055610c533390565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b610ca1828261055e565b1561043e5760008281526065602090815260408083206001600160a01b0385168085529252808320805460ff1916905551339285917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a45050565b600054610100900460ff16610d695760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b606482015260840161042b565b565b600080608083901c15610d8057608092831c92015b604083901c15610d9257604092831c92015b602083901c15610da457602092831c92015b601083901c15610db657601092831c92015b600883901c15610dc857600892831c92015b600483901c15610dda57600492831c92015b600283901c15610dec57600292831c92015b600183901c156102285760010192915050565b610e09828261055e565b61043e57610e1681610e58565b610e21836020610e6a565b604051602001610e3292919061178e565b60408051601f198184030181529082905262461bcd60e51b825261042b91600401611803565b60606102286001600160a01b03831660145b60606000610e79836002611612565b610e84906002611686565b67ffffffffffffffff811115610e9c57610e9c611037565b6040519080825280601f01601f191660200182016040528015610ec6576020820181803683370190505b509050600360fc1b81600081518110610ee157610ee16113b6565b60200101906001600160f81b031916908160001a905350600f60fb1b81600181518110610f1057610f106113b6565b60200101906001600160f81b031916908160001a9053506000610f34846002611612565b610f3f906001611686565b90505b6001811115610fb7576f181899199a1a9b1b9c1cb0b131b232b360811b85600f1660108110610f7357610f736113b6565b1a60f81b828281518110610f8957610f896113b6565b60200101906001600160f81b031916908160001a90535060049490941c93610fb081611836565b9050610f42565b5083156110065760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e74604482015260640161042b565b9392505050565b60006020828403121561101f57600080fd5b81356001600160e01b03198116811461100657600080fd5b634e487b7160e01b600052604160045260246000fd5b604051610180810167ffffffffffffffff8111828210171561107157611071611037565b60405290565b604051601f8201601f1916810167ffffffffffffffff811182821017156110a0576110a0611037565b604052919050565b600067ffffffffffffffff8311156110c2576110c2611037565b6110d5601f8401601f1916602001611077565b90508281528383830111156110e957600080fd5b828260208301376000602084830101529392505050565b60006020828403121561111257600080fd5b813567ffffffffffffffff81111561112957600080fd5b8201601f8101841361113a57600080fd5b611149848235602084016110a8565b949350505050565b60006020828403121561116357600080fd5b5035919050565b80356001600160a01b038116811461118157600080fd5b919050565b6000806040838503121561119957600080fd5b823591506111a96020840161116a565b90509250929050565b67ffffffffffffffff8116811461055b57600080fd5b600080604083850312156111db57600080fd5b823567ffffffffffffffff808211156111f357600080fd5b818501915085601f83011261120757600080fd5b813560208282111561121b5761121b611037565b8160051b925061122c818401611077565b828152928401810192818101908985111561124657600080fd5b948201945b848610156112705785359350611260846111b2565b838252948201949082019061124b565b965061127f905087820161116a565b9450505050509250929050565b604080825283519082018190526000906020906060840190828701845b828110156112c5578151845292840192908401906001016112a9565b50505092019290925292915050565b600082601f8301126112e557600080fd5b611006838335602085016110a8565b60008060008060008060c0878903121561130d57600080fd5b86359550602087013594506113246040880161116a565b935060608701359250608087013567ffffffffffffffff8082111561134857600080fd5b6113548a838b016112d4565b935060a089013591508082111561136a57600080fd5b5061137789828a016112d4565b9150509295509295509295565b6000806000806080858703121561139a57600080fd5b5050823594602084013594506040840135936060013592509050565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b600060ff821660ff8416808210156113fc576113fc6113cc565b90039392505050565b60006001600160a01b038281168482168115158284048211161561142b5761142b6113cc565b02949350505050565b60006001600160a01b03828116848216808303821115611456576114566113cc565b01949350505050565b6000600019821415611473576114736113cc565b5060010190565b8051611181816111b2565b6000610180828403121561149857600080fd5b6114a061104d565b8251815260208301516020820152604083015160408201526114c46060840161147a565b60608201526114d56080840161147a565b60808201526114e660a0840161147a565b60a08201526114f760c0840161147a565b60c082015261150860e0840161147a565b60e082015261010061151b81850161147a565b9082015261012061152d84820161147a565b9082015261014061153f84820161147a565b90820152610160928301519281019290925250919050565b815160009082906020808601845b8381101561158157815185529382019390820190600101611565565b50929695505050505050565b60005b838110156115a8578181015183820152602001611590565b838111156115b7576000848401525b50505050565b6bffffffffffffffffffffffff198560601b168152836014820152600083516115ed81603485016020880161158d565b83519083019061160481603484016020880161158d565b016034019695505050505050565b600081600019048311821515161561162c5761162c6113cc565b500290565b634e487b7160e01b600052601260045260246000fd5b60008261165657611656611631565b500490565b60008261166a5761166a611631565b500690565b600082821015611681576116816113cc565b500390565b60008219821115611699576116996113cc565b500190565b600181815b808511156116d95781600019048211156116bf576116bf6113cc565b808516156116cc57918102915b93841c93908002906116a3565b509250929050565b6000826116f057506001610228565b816116fd57506000610228565b8160018114611713576002811461171d57611739565b6001915050610228565b60ff84111561172e5761172e6113cc565b50506001821b610228565b5060208310610133831016604e8410600b841016171561175c575081810a610228565b611766838361169e565b806000190482111561177a5761177a6113cc565b029392505050565b600061100683836116e1565b7f416363657373436f6e74726f6c3a206163636f756e74200000000000000000008152600083516117c681601785016020880161158d565b7001034b99036b4b9b9b4b733903937b6329607d1b60179184019182015283516117f781602884016020880161158d565b01602801949350505050565b602081526000825180602084015261182281604085016020870161158d565b601f01601f19169190910160400192915050565b600081611845576118456113cc565b50600019019056fea2646970667358221220fb07785bc7238c3748eb536a5c65f22de51a1db92a940af6270df7f58dcd436764736f6c63430008090033