0 txs
2 calls
constructor
No constructor.
functions
betTokens
viewfunction betTokens(address) view returns (address)
checkOwner
viewfunction checkOwner(address account) view
isOracle
viewfunction isOracle(address) view returns (bool)
owner
viewfunction owner() view returns (address)
paused
viewfunction paused() view returns (bool)
payoutToken
viewfunction payoutToken() view returns (address)
cashOutBets
nonpayablefunction cashOutBets(address betOwner, tuple order, uint64[] odds, bytes betOwnerSignature, bytes oracleSignature)
initialize
nonpayablefunction initialize(address payoutToken_)
pause
nonpayablefunction pause()
transferOwnership
nonpayablefunction transferOwnership(address newOwner)
unpause
nonpayablefunction unpause()
updateBettingContract
nonpayablefunction updateBettingContract(address bettingContract, address betToken)
updateOracle
nonpayablefunction updateOracle(address account, bool isOracle_)
withdrawToken
nonpayablefunction withdrawToken(address token, address to, uint256 value)
events
BetCashedOut
event BetCashedOut(address indexed bettingContract, address indexed betOwner, uint256 betId, uint64 odds, uint256 payout)
BettingContractUpdated
event BettingContractUpdated(address bettingContract, address betToken)
Initialized
event Initialized(uint8 version)
OracleUpdated
event OracleUpdated(address account, bool isOracle)
OwnershipTransferred
event OwnershipTransferred(address indexed previousOwner, address indexed newOwner)
Paused
event Paused(address account)
Unpaused
event Unpaused(address account)
errors
BetAlreadyPaid
error BetAlreadyPaid()
BetAlreadyResolved
error BetAlreadyResolved()
BetNotOwned
error BetNotOwned()
BetOwnerSignatureExpired
error BetOwnerSignatureExpired()
BettingContractNotAllowed
error BettingContractNotAllowed()
InsufficientBalance
error InsufficientBalance()
InvalidBetOwnerSignature
error InvalidBetOwnerSignature()
InvalidChainId
error InvalidChainId()
InvalidOdds
error InvalidOdds()
InvalidOddsCount
error InvalidOddsCount()
InvalidOracleSignature
error InvalidOracleSignature()
NothingChanged
error NothingChanged()
creation bytecode
0x608060405234801561001057600080fd5b50612456806100206000396000f3fe608060405234801561001057600080fd5b50600436106100ba5760003560e01c806301e33667146100bf57806332bb016a146100d45780633f4ba83a146101135780634efa82b61461011b5780635c975abb1461012e5780638456cb591461014557806387b95e1a1461014d5780638da5cb5b14610160578063a97e5c9314610168578063c4d66de81461018b578063d5417c821461019e578063dd693107146101b1578063e0e3671c146101c4578063f2fde38b146101d7575b600080fd5b6100d26100cd36600461194e565b6101ea565b005b6100fd6100e236600461198f565b60cb602052600090815260409020546001600160a01b031681565b60405161010a91906119ac565b60405180910390f35b6100d2610203565b60cd546100fd906001600160a01b031681565b60655460ff165b604051901515815260200161010a565b6100d2610216565b6100d261015b366004611a45565b610227565b6100fd610522565b61013561017636600461198f565b60cc6020526000908152604090205460ff1681565b6100d261019936600461198f565b610531565b6100d26101ac366004611b2b565b6106b3565b6100d26101bf366004611b64565b610759565b6100d26101d236600461198f565b610803565b6100d26101e536600461198f565b610878565b6101f333610803565b6101fe8383836108ef565b505050565b61020c33610803565b610214610a20565b565b61021f33610803565b610214610a6c565b61022f610aa9565b4687602001351461025357604051633d23e4d160e11b815260040160405180910390fd5b426102646080890160608a01611bb7565b6001600160401b03161161028b5760405163e931335960e01b815260040160405180910390fd5b600061029a6040890189611bd4565b9150508515806102aa5750858114155b156102c857604051633d5c218160e11b815260040160405180910390fd5b600061034184848080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152505060405161033b925061032091508d908d908d908d908d90602001611d3b565b60405160208183030381529060405280519060200120610aef565b90610b42565b6001600160a01b038116600090815260cc602052604090205490915060ff1661037d57604051632f58c7cd60e01b815260040160405180910390fd5b600061039061038b8b610b68565b610cf4565b90506103d38b8289898080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250610d4292505050565b6103f05760405163243332c360e21b815260040160405180910390fd5b6000805b8481101561046b5761044f8d61040d60408f018f611bd4565b8481811061041d5761041d611e18565b9050606002018d8d8581811061043557610435611e18565b905060200201602081019061044a9190611bb7565b610e86565b6104599083611e44565b915061046481611e57565b90506103f4565b5060cd546040516370a0823160e01b81526001600160a01b03909116906370a082319061049c9030906004016119ac565b602060405180830381865afa1580156104b9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104dd9190611e70565b8111156104fd57604051631e9acf1760e31b815260040160405180910390fd5b60cd54610514906001600160a01b03168d836108ef565b505050505050505050505050565b6033546001600160a01b031690565b600054610100900460ff16158080156105515750600054600160ff909116105b8061056b5750303b15801561056b575060005460ff166001145b6105d35760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084015b60405180910390fd5b6000805460ff1916600117905580156105f6576000805461ff0019166101001790555b6105fe6112f5565b61060661132c565b61064d6040518060400160405280600881526020016710d85cda0813dd5d60c21b815250604051806040016040528060058152602001640312e302e360dc1b81525061135b565b60cd80546001600160a01b0319166001600160a01b03841617905580156106af576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498906020015b60405180910390a15b5050565b6106bc33610803565b6001600160a01b038216600090815260cc602052604090205481151560ff9091161515036106fd576040516306923abf60e01b815260040160405180910390fd5b6001600160a01b038216600081815260cc6020908152604091829020805460ff19168515159081179091558251938452908301527f94c9cbe1d9aa7af08484f82ab0179d6db973a391236668c34192d954ff32c06c91016106a6565b61076233610803565b6001600160a01b03828116600090815260cb602052604090205481831691160361079f576040516306923abf60e01b815260040160405180910390fd5b6001600160a01b03828116600081815260cb602090815260409182902080546001600160a01b031916948616948517905581519283528201929092527f9bdbde41b18296fa34fc5f7aad24ff3d08faf6bbd8341be0242991d1ead4222291016106a6565b806001600160a01b0316610815610522565b6001600160a01b0316146108755760405162461bcd60e51b815260206004820152602160248201527f4f776e61626c653a206163636f756e74206973206e6f7420746865206f776e656044820152603960f91b60648201526084016105ca565b50565b61088133610803565b6001600160a01b0381166108e65760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016105ca565b6108758161138c565b604080516001600160a01b038481166024830152604480830185905283518084039091018152606490920183526020820180516001600160e01b031663a9059cbb60e01b179052915160009283929087169161094b9190611ead565b6000604051808303816000865af19150503d8060008114610988576040519150601f19603f3d011682016040523d82523d6000602084013e61098d565b606091505b50915091508180156109b75750805115806109b75750808060200190518101906109b79190611ed4565b610a195760405162461bcd60e51b815260206004820152602d60248201527f5472616e7366657248656c7065723a3a736166655472616e736665723a20747260448201526c185b9cd9995c8819985a5b1959609a1b60648201526084016105ca565b5050505050565b610a286113de565b6065805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa335b604051610a6291906119ac565b60405180910390a1565b610a74610aa9565b6065805460ff191660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258610a553390565b60655460ff16156102145760405162461bcd60e51b815260206004820152601060248201526f14185d5cd8589b194e881c185d5cd95960821b60448201526064016105ca565b6040517b0ca2ba3432b932bab69029b4b3b732b21026b2b9b9b0b3b29d05199960211b6020820152603c8101829052600090605c015b604051602081830303815290604052805190602001209050919050565b6000806000610b518585611427565b91509150610b5e8161146c565b5090505b92915050565b600080610b786040840184611bd4565b905090506000816001600160401b03811115610b9657610b96611ef1565b604051908082528060200260200182016040528015610bbf578160200160208202803683370190505b50905060005b82811015610c2557610bf8610bdd6040870187611bd4565b83818110610bed57610bed611e18565b90506060020161161d565b828281518110610c0a57610c0a611e18565b6020908102919091010152610c1e81611e57565b9050610bc5565b507f972df662764eecc628a4752ca35a448685905e3748d320baf7d1da369ba67d4a610c518580611f07565b604051610c5f929190611f4d565b6040518091039020856020013583604051602001610c7d9190611f5d565b60408051601f198184030181529190528051602090910120610ca56080890160608a01611bb7565b604080516020810196909652850193909352606084019190915260808301526001600160401b031660a082015260c0016040516020818303038152906040528051906020012092505050919050565b6000610b62610d01611698565b8360405161190160f01b6020820152602281018390526042810182905260009060620160405160208183030381529060405280519060200120905092915050565b6000806000610d518585611718565b90925090506000816004811115610d6a57610d6a611f93565b148015610d885750856001600160a01b0316826001600160a01b0316145b15610d9857600192505050610e7f565b600080876001600160a01b0316631626ba7e60e01b8888604051602401610dc0929190611fa9565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b0319909416939093179092529051610dfe9190611ead565b600060405180830381855afa9150503d8060008114610e39576040519150601f19603f3d011682016040523d82523d6000602084013e610e3e565b606091505b5091509150818015610e51575080516020145b8015610e7857508051630b135d3f60e11b90610e769083016020908101908401611e70565b145b9450505050505b9392505050565b6000610e986060840160408501611bb7565b6001600160401b0316826001600160401b03161015610eca5760405163fdfffca760e01b815260040160405180910390fd5b600060cb81610edf604087016020880161198f565b6001600160a01b03908116825260208201929092526040016000205416905080610f1c57604051636b37223360e01b815260040160405180910390fd5b6040516331a9108f60e11b8152843560048201526001600160a01b03821690636352211e90602401602060405180830381865afa158015610f61573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f859190611fe3565b6001600160a01b0316856001600160a01b031614610fb6576040516337e1bb3560e21b815260040160405180910390fd5b610fc6604085016020860161198f565b604051632589867d60e01b8152853560048201526001600160a01b039190911690632589867d90602401602060405180830381865afa925050508015611029575060408051601f3d908101601f1916820190925261102691810190612017565b60015b61109c573d808015611057576040519150601f19603f3d011682016040523d82523d6000602084013e61105c565b606091505b50630d70a0e360e41b61106e82612032565b6001600160e01b031916036110965760405163756eeec960e01b815260040160405180910390fd5b506110b5565b506040516202f39160e21b815260040160405180910390fd5b60006001600160a01b0382166110d1604087016020880161198f565b6001600160a01b03160361116d5760006110f1604087016020880161198f565b60405163061e494f60e01b8152873560048201526001600160a01b03919091169063061e494f90602401600060405180830381865afa158015611138573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526111609190810190612223565b6020015191506111f29050565b600061117f604087016020880161198f565b604051631157807d60e11b8152873560048201526001600160a01b0391909116906322af00fa9060240160c060405180830381865afa1580156111c6573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111ea91906122f7565b602001519150505b61120e6001600160801b0382166001600160401b038616611742565b6040516323b872dd60e01b81526001600160a01b03888116600483015230602483015287356044830152919450908316906323b872dd90606401600060405180830381600087803b15801561126257600080fd5b505af1158015611276573d6000803e3d6000fd5b5050506001600160a01b0387169050611295604087016020880161198f565b60408051883581526001600160401b03881660208201529081018690526001600160a01b0391909116907f0b821dc7c594696cfbe1bc08aeab8b3598cfc96eb21f7f4485be88ff5c5056629060600160405180910390a350509392505050565b600054610100900460ff1661131c5760405162461bcd60e51b81526004016105ca90612394565b61132461175e565b610214611785565b600054610100900460ff166113535760405162461bcd60e51b81526004016105ca90612394565b6102146117b5565b600054610100900460ff166113825760405162461bcd60e51b81526004016105ca90612394565b6106af82826117e8565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b60655460ff166102145760405162461bcd60e51b815260206004820152601460248201527314185d5cd8589b194e881b9bdd081c185d5cd95960621b60448201526064016105ca565b600080825160410361145d5760208301516040840151606085015160001a61145187828585611829565b94509450505050611465565b506000905060025b9250929050565b600081600481111561148057611480611f93565b036114885750565b600181600481111561149c5761149c611f93565b036114e45760405162461bcd60e51b815260206004820152601860248201527745434453413a20696e76616c6964207369676e617475726560401b60448201526064016105ca565b60028160048111156114f8576114f8611f93565b036115455760405162461bcd60e51b815260206004820152601f60248201527f45434453413a20696e76616c6964207369676e6174757265206c656e6774680060448201526064016105ca565b600381600481111561155957611559611f93565b036115b15760405162461bcd60e51b815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202773272076616c604482015261756560f01b60648201526084016105ca565b60048160048111156115c5576115c5611f93565b036108755760405162461bcd60e51b815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202776272076616c604482015261756560f01b60648201526084016105ca565b60007f19a5ea577e002e68ef051f780d59b232fe1d8145d764fc2c64679ea036975bd68235611652604085016020860161198f565b6116626060860160408701611bb7565b6040805160208101959095528401929092526001600160a01b031660608301526001600160401b0316608082015260a001610b25565b60006117137f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f6116c760975490565b6098546040805160208101859052908101839052606081018290524660808201523060a082015260009060c0016040516020818303038152906040528051906020012090509392505050565b905090565b600080825160410361145d5760208301516040840151606085015160001a6114518782858561190c565b600064e8d4a5100061175483856123df565b610e7f91906123fe565b600054610100900460ff166102145760405162461bcd60e51b81526004016105ca90612394565b600054610100900460ff166117ac5760405162461bcd60e51b81526004016105ca90612394565b6102143361138c565b600054610100900460ff166117dc5760405162461bcd60e51b81526004016105ca90612394565b6065805460ff19169055565b600054610100900460ff1661180f5760405162461bcd60e51b81526004016105ca90612394565b815160209283012081519190920120609791909155609855565b6000806fa2a8918ca85bafe22016d0b997e4df60600160ff1b038311156118565750600090506003611903565b8460ff16601b1415801561186e57508460ff16601c14155b1561187f5750600090506004611903565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa1580156118d3573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b0381166118fc57600060019250925050611903565b9150600090505b94509492505050565b6000806fa2a8918ca85bafe22016d0b997e4df60600160ff1b0383111561187f5750600090506003611903565b6001600160a01b038116811461087557600080fd5b60008060006060848603121561196357600080fd5b833561196e81611939565b9250602084013561197e81611939565b929592945050506040919091013590565b6000602082840312156119a157600080fd5b8135610e7f81611939565b6001600160a01b0391909116815260200190565b60008083601f8401126119d257600080fd5b5081356001600160401b038111156119e957600080fd5b6020830191508360208260051b850101111561146557600080fd5b60008083601f840112611a1657600080fd5b5081356001600160401b03811115611a2d57600080fd5b60208301915083602082850101111561146557600080fd5b60008060008060008060008060a0898b031215611a6157600080fd5b8835611a6c81611939565b975060208901356001600160401b0380821115611a8857600080fd5b908a01906080828d031215611a9c57600080fd5b90975060408a01359080821115611ab257600080fd5b611abe8c838d016119c0565b909850965060608b0135915080821115611ad757600080fd5b611ae38c838d01611a04565b909650945060808b0135915080821115611afc57600080fd5b50611b098b828c01611a04565b999c989b5096995094979396929594505050565b801515811461087557600080fd5b60008060408385031215611b3e57600080fd5b8235611b4981611939565b91506020830135611b5981611b1d565b809150509250929050565b60008060408385031215611b7757600080fd5b8235611b8281611939565b91506020830135611b5981611939565b6001600160401b038116811461087557600080fd5b8035611bb281611b92565b919050565b600060208284031215611bc957600080fd5b8135610e7f81611b92565b6000808335601e19843603018112611beb57600080fd5b8301803591506001600160401b03821115611c0557600080fd5b602001915060608102360382131561146557600080fd5b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b6000808335601e19843603018112611c5c57600080fd5b83016020810192503590506001600160401b03811115611c7b57600080fd5b60608102360382131561146557600080fd5b8183526000602080850194508260005b85811015611cf2578135875282820135611cb681611939565b6001600160a01b031687840152604082810135611cd281611b92565b6001600160401b0316908801526060968701969190910190600101611c9d565b509495945050505050565b8183526000602080850194508260005b85811015611cf2578135611d2081611b92565b6001600160401b031687529582019590820190600101611d0d565b6060815260008635601e19883603018112611d5557600080fd5b87016020810190356001600160401b03811115611d7157600080fd5b803603821315611d8057600080fd5b60806060850152611d9560e085018284611c1c565b91505060208801356080840152611daf6040890189611c45565b848303605f190160a0860152611dc6838284611c8d565b92505050611dd660608901611ba7565b6001600160401b031660c08401528281036020840152611df7818789611cfd565b90508281036040840152611e0c818587611c1c565b98975050505050505050565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b80820180821115610b6257610b62611e2e565b600060018201611e6957611e69611e2e565b5060010190565b600060208284031215611e8257600080fd5b5051919050565b60005b83811015611ea4578181015183820152602001611e8c565b50506000910152565b60008251611ebf818460208701611e89565b9190910192915050565b8051611bb281611b1d565b600060208284031215611ee657600080fd5b8151610e7f81611b1d565b634e487b7160e01b600052604160045260246000fd5b6000808335601e19843603018112611f1e57600080fd5b8301803591506001600160401b03821115611f3857600080fd5b60200191503681900382131561146557600080fd5b8183823760009101908152919050565b815160009082906020808601845b83811015611f8757815185529382019390820190600101611f6b565b50929695505050505050565b634e487b7160e01b600052602160045260246000fd5b8281526040602082015260008251806040840152611fce816060850160208701611e89565b601f01601f1916919091016060019392505050565b600060208284031215611ff557600080fd5b8151610e7f81611939565b80516001600160801b0381168114611bb257600080fd5b60006020828403121561202957600080fd5b610e7f82612000565b805160208201516001600160e01b031980821692919060048310156120615780818460040360031b1b83161693505b505050919050565b604080519081016001600160401b038111828210171561208b5761208b611ef1565b60405290565b60405160c081016001600160401b038111828210171561208b5761208b611ef1565b604051601f8201601f191681016001600160401b03811182821017156120db576120db611ef1565b604052919050565b8051611bb281611b92565b805165ffffffffffff81168114611bb257600080fd5b60006001600160401b0382111561211d5761211d611ef1565b5060051b60200190565b600082601f83011261213857600080fd5b8151602061214d61214883612104565b6120b3565b82815260069290921b8401810191818101908684111561216c57600080fd5b8286015b848110156121b457604081890312156121895760008081fd5b612191612069565b81518152848201516121a281611b92565b81860152835291830191604001612170565b509695505050505050565b600082601f8301126121d057600080fd5b815160206121e061214883612104565b82815260059290921b840181019181810190868411156121ff57600080fd5b8286015b848110156121b457805161221681611b92565b8352918301918301612203565b60006020828403121561223557600080fd5b81516001600160401b038082111561224c57600080fd5b9083019060c0828603121561226057600080fd5b612268612091565b612271836120e3565b815261227f60208401612000565b6020820152612290604084016120ee565b60408201526122a160608401611ec9565b60608201526080830151828111156122b857600080fd5b6122c487828601612127565b60808301525060a0830151828111156122dc57600080fd5b6122e8878286016121bf565b60a08301525095945050505050565b600060c0828403121561230957600080fd5b60405160c081016001600160401b038111828210171561232b5761232b611ef1565b6040528251815261233e60208401612000565b602082015261234f60408401612000565b6040820152606083015161236281611b92565b6060820152608083015161237581611b92565b608082015260a083015161238881611b1d565b60a08201529392505050565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b60008160001904831182151516156123f9576123f9611e2e565b500290565b60008261241b57634e487b7160e01b600052601260045260246000fd5b50049056fea26469706673582212208ac24898279b0fabd386d9764e7946e3b1c0068bc042c68de392322a40049c3e64736f6c63430008100033