151.3k txs
151.3k calls
constructor
constructor()
functions
currentGameId
viewfunction currentGameId() view returns (bytes32)
decodeData
viewfunction decodeData() view returns (tuple data)
DEFAULT_ADMIN_ROLE
viewfunction DEFAULT_ADMIN_ROLE() view returns (bytes32)
depositAmounts
viewfunction depositAmounts(address) view returns (uint256)
DownPlayers
viewfunction DownPlayers(uint256) view returns (address)
fee
viewfunction fee() view returns (uint256)
GAME_MASTER_ROLE
viewfunction GAME_MASTER_ROLE() view returns (bytes32)
getRoleAdmin
viewfunction getRoleAdmin(bytes32 role) view returns (bytes32)
getTotalPlayers
viewfunction getTotalPlayers() view returns (uint256, uint256)
hasRole
viewfunction hasRole(bytes32 role, address account) view returns (bool)
isParticipating
viewfunction isParticipating(address) view returns (bool)
maxPlayers
viewfunction maxPlayers() view returns (uint256)
minDepositAmount
viewfunction minDepositAmount() view returns (uint256)
supportsInterface
viewfunction supportsInterface(bytes4 interfaceId) view returns (bool)
treasury
viewfunction treasury() view returns (address)
UpPlayers
viewfunction UpPlayers(uint256) view returns (address)
closeGame
nonpayablefunction closeGame()
finalizeGame
nonpayablefunction finalizeGame(bytes unverifiedReport)
grantRole
nonpayablefunction grantRole(bytes32 role, address account)
play
nonpayablefunction play(bool isLong, uint256 depositAmount)
playWithDeposit
nonpayablefunction playWithDeposit(bool isLong, uint256 depositAmount)
playWithPermit
nonpayablefunction playWithPermit(bool isLong, uint256 depositAmount, tuple permitData)
renounceRole
nonpayablefunction renounceRole(bytes32 role, address callerConfirmation)
revokeRole
nonpayablefunction revokeRole(bytes32 role, address account)
setFee
nonpayablefunction setFee(uint256 newFee)
setMaxPlayers
nonpayablefunction setMaxPlayers(uint256 newMax)
setStartingPrice
nonpayablefunction setStartingPrice(bytes unverifiedReport)
setTreasury
nonpayablefunction setTreasury(address newTreasury)
startGame
nonpayablefunction startGame(uint32 endTime, uint32 stopPredictAt, uint256 depositAmount, uint8 feedNumber)
events
NewFee
event NewFee(uint256 newFee)
NewTreasury
event NewTreasury(address newTreasury)
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)
UpDownCancelled
event UpDownCancelled(bytes32 gameId)
UpDownCreated
event UpDownCreated(uint256 startTime, uint32 stopPredictAt, uint32 endTime, uint8 feedNumber, bytes32 gameId)
UpDownFinalized
event UpDownFinalized(int192 finalPrice, bool isLong, bytes32 gameId)
UpDownNewPlayer
event UpDownNewPlayer(address player, bool isLong, uint256 depositAmount, bytes32 gameId)
UpDownStarted
event UpDownStarted(int192 startingPrice, bytes32 gameId)
errors
AccessControlBadConfirmation
error AccessControlBadConfirmation()
AccessControlUnauthorizedAccount
error AccessControlUnauthorizedAccount(address account, bytes32 neededRole)
creation bytecode
0x608060405260646009556105dc600a553480156200001c57600080fd5b506200002a60003362000031565b50620000e0565b6000828152602081815260408083206001600160a01b038516845290915281205460ff16620000d6576000838152602081815260408083206001600160a01b03861684529091529020805460ff191660011790556200008d3390565b6001600160a01b0316826001600160a01b0316847f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a4506001620000da565b5060005b92915050565b612bb380620000f06000396000f3fe608060405234801561001057600080fd5b50600436106101cf5760003560e01c806385ddbaf211610104578063bf0294d0116100a2578063ddca3f4311610071578063ddca3f431461042d578063ddfd29cf14610436578063f0f4426014610449578063f4caee881461045c57600080fd5b8063bf0294d014610386578063c0bf4152146103a6578063ce07b075146103b9578063d547741f1461041a57600080fd5b8063a217fddf116100de578063a217fddf14610343578063acc373441461034b578063acebb2801461035e578063ad1def1e1461037157600080fd5b806385ddbaf21461030a5780638fdd9b681461031d57806391d148541461033057600080fd5b8063536a3ddc11610171578063645006ca1161014b578063645006ca146102d357806369fe0e2d146102dc578063786b844b146102ef5780637d26b6be146102f757600080fd5b8063536a3ddc1461028c5780636024a6b31461029557806361d027b3146102c057600080fd5b80632f2ff15d116101ad5780632f2ff15d1461024257806336568abe146102555780634529cae7146102685780634c2412a21461028357600080fd5b806301ffc9a7146101d4578063248a9ca3146101fc578063288dee3b1461022d575b600080fd5b6101e76101e23660046126a8565b61047f565b60405190151581526020015b60405180910390f35b61021f61020a3660046126d9565b60009081526020819052604090206001015490565b6040519081526020016101f3565b61024061023b3660046126d9565b6104b6565b005b610240610250366004612707565b6104c7565b610240610263366004612707565b6104f2565b600254600354604080519283526020830191909152016101f3565b61021f60095481565b61021f60065481565b6102a86102a33660046126d9565b61052a565b6040516001600160a01b0390911681526020016101f3565b6007546102a8906001600160a01b031681565b61021f60085481565b6102406102ea3660046126d9565b610554565b61024061059c565b61024061030536600461274c565b610947565b6102406103183660046127aa565b610c58565b61024061032b36600461287e565b610ec6565b6101e761033e366004612707565b611073565b61021f600081565b6102a86103593660046126d9565b61109c565b61024061036c3660046127aa565b6110ac565b61021f600080516020612b5e83398151915281565b61021f6103943660046128cf565b60056020526000908152604090205481565b6102406103b43660046128ec565b611f0a565b6103c16121a4565b6040516101f39190600060e082019050825182526020830151602083015260408301516040830152606083015160608301526080830151608083015260a083015160a083015260ff60c08401511660c083015292915050565b610240610428366004612707565b612240565b61021f600a5481565b6102406104443660046128ec565b612265565b6102406104573660046128cf565b612495565b6101e761046a3660046128cf565b60046020526000908152604090205460ff1681565b60006001600160e01b03198216637965db0b60e01b14806104b057506301ffc9a760e01b6001600160e01b03198316145b92915050565b60006104c181612533565b50600955565b6000828152602081905260409020600101546104e281612533565b6104ec8383612540565b50505050565b6001600160a01b038116331461051b5760405163334bd91960e11b815260040160405180910390fd5b61052582826125d2565b505050565b6003818154811061053a57600080fd5b6000918252602090912001546001600160a01b0316905081565b600061055f81612533565b600a8290556040518281527f63fe946ed58429ac3c5e64d4356ff92c26d7fa1e73586515df8ba9f059ab54a5906020015b60405180910390a15050565b600080516020612b5e8339815191526105b481612533565b6006546105fb5760405162461bcd60e51b815260206004820152601060248201526f11d85b59481b9bdd081cdd185c9d195960821b60448201526064015b60405180910390fd5b60005b60025481101561077057600754600280546001600160a01b0390921691637ad226dc91600591600091908690811061063857610638612916565b60009182526020808320909101546001600160a01b03168352820192909252604001902054600280548590811061067157610671612916565b60009182526020909120015460405160e084901b6001600160e01b031916815260048101929092526001600160a01b03166024820152604401600060405180830381600087803b1580156106c457600080fd5b505af11580156106d8573d6000803e3d6000fd5b50505050600060046000600284815481106106f5576106f5612916565b6000918252602080832091909101546001600160a01b031683528201929092526040018120805460ff1916921515929092179091556002805460059183918590811061074357610743612916565b60009182526020808320909101546001600160a01b031683528201929092526040019020556001016105fe565b5061077d60026000612676565b60005b6003548110156108f257600754600380546001600160a01b0390921691637ad226dc9160059160009190869081106107ba576107ba612916565b60009182526020808320909101546001600160a01b0316835282019290925260400190205460038054859081106107f3576107f3612916565b60009182526020909120015460405160e084901b6001600160e01b031916815260048101929092526001600160a01b03166024820152604401600060405180830381600087803b15801561084657600080fd5b505af115801561085a573d6000803e3d6000fd5b505050506000600460006003848154811061087757610877612916565b6000918252602080832091909101546001600160a01b031683528201929092526040018120805460ff191692151592909217909155600380546005918391859081106108c5576108c5612916565b60009182526020808320909101546001600160a01b03168352820192909252604001902055600101610780565b506108ff60036000612676565b7f902a8e7f6231be7266d538b9ebd51fc2d2275f10cf965f3d80fbf3988cf3263060065460405161093291815260200190565b60405180910390a15060006006819055600155565b6008548210156109695760405162461bcd60e51b81526004016105f29061292c565b3360009081526004602052604090205460ff16156109995760405162461bcd60e51b81526004016105f29061295a565b6009546002546003546109ac919061299f565b6109b790600161299f565b11156109d55760405162461bcd60e51b81526004016105f2906129b2565b60006109df6121a4565b9050428160400151118015610a26575060a081015163ffffffff90610a0590859061299f565b111580610a265750608081015163ffffffff90610a2390859061299f565b11155b610a425760405162461bcd60e51b81526004016105f2906129e9565b8315610ab25760a8816080015184610a5a919061299f565b6001805463ffffffff60a81b19169190921b1781556002805491820181556000527f405787fa12a823e0f2b7631cc41b3ba8828b3321ca811111fa75cd3aa3bb5ace0180546001600160a01b03191633179055610b18565b60888160a0015184610ac4919061299f565b6001805463ffffffff60881b19169190921b1781556003805491820181556000527fc2575a0e9e593c00f959f8c92f12db2869c3395a3b0502d05e2516446f71f85b0180546001600160a01b031916331790555b336000818152600560209081526040918290208690556007546001600160a01b031692631567920a928792873591610b5591908901908901612a20565b604080516001600160e01b031960e088901b16815260048101959095526001600160a01b039093166024850152604484019190915260ff1660648301528501356084820152606085013560a482015260c401600060405180830381600087803b158015610bc157600080fd5b505af1158015610bd5573d6000803e3d6000fd5b50503360008181526004602052604090819020805460ff1916600117905560065490517f8abdc2d2db916c774861c9d3ace367e06f9033617a4e7e14bc0a80ecf2c39b209450610c4a9350889188916001600160a01b0394909416845291151560208401526040830152606082015260800190565b60405180910390a150505050565b600080516020612b5e833981519152610c7081612533565b6000610c7a6121a4565b90508060400151421015610cbc5760405162461bcd60e51b8152602060048201526009602482015268546f6f206561726c7960b81b60448201526064016105f2565b600254151580610ccd575060035415155b610d0e5760405162461bcd60e51b81526020600482015260126024820152714e6f7420656e6f75676820706c617965727360701b60448201526064016105f2565b6007546040805163167a382560e11b815290516000926001600160a01b031691632cf4704a9160048083019260209291908290030181865afa158015610d58573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d7c9190612a3b565b9050600080826001600160a01b031663d369dc61878660c001516040518363ffffffff1660e01b8152600401610db3929190612a58565b60408051808303816000875af1158015610dd1573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610df59190612ab0565b9092509050603c610e0c63ffffffff831642612ae5565b1115610e515760405162461bcd60e51b815260206004820152601460248201527313db190818da185a5b9b1a5b9ac81c995c1bdc9d60621b60448201526064016105f2565b6068610e63655af3107a400084612af8565b600180546001600160c01b0392831690931b909116909117905560065460408051601785900b815260208101929092527ffcd72aeb09107db0b2cdb05b7c9377eafa86a5ac4474c90a97c61258db9cba14910160405180910390a1505050505050565b600080516020612b5e833981519152610ede81612533565b60015415610f2e5760405162461bcd60e51b815260206004820152601a60248201527f46696e6973682070726576696f75732067616d6520666972737400000000000060448201526064016105f2565b8363ffffffff168563ffffffff1611610f895760405162461bcd60e51b815260206004820152601a60248201527f456e64696e672074696d65206d7573742062652068696768657200000000000060448201526064016105f2565b60608260ff16901b60408663ffffffff16901b60208663ffffffff16901b42171717600181905550844230604051602001610ff89392919060e09390931b6001600160e01b0319168352600483019190915260601b6bffffffffffffffffffffffff1916602482015260380190565b60408051601f1981840301815282825280516020918201206006819055600887905542845263ffffffff888116928501929092529088168383015260ff851660608401526080830152517f66ef776df9bb4faf8faefeef145326f5191f042e792f750f799ddb2ed4d4f1a99181900360a00190a15050505050565b6000918252602082815260408084206001600160a01b0393909316845291905290205460ff1690565b6002818154811061053a57600080fd5b600080516020612b5e8339815191526110c481612533565b60006110ce6121a4565b90506001546000036111195760405162461bcd60e51b815260206004820152601460248201527314dd185c9d081d1a194819d85b5948199a5c9cdd60621b60448201526064016105f2565b80602001514210156111635760405162461bcd60e51b81526020600482015260136024820152720a8dede40cac2e4d8f240e8de40ccd2dcd2e6d606b1b60448201526064016105f2565b60025415806111725750600354155b156114da57600254156113065760005b6002548110156112f457600754600280546001600160a01b0390921691637ad226dc9160059160009190869081106111bc576111bc612916565b60009182526020808320909101546001600160a01b0316835282019290925260400190205460028054859081106111f5576111f5612916565b60009182526020909120015460405160e084901b6001600160e01b031916815260048101929092526001600160a01b03166024820152604401600060405180830381600087803b15801561124857600080fd5b505af115801561125c573d6000803e3d6000fd5b505050506000600460006002848154811061127957611279612916565b6000918252602080832091909101546001600160a01b031683528201929092526040018120805460ff191692151592909217909155600280546005918391859081106112c7576112c7612916565b60009182526020808320909101546001600160a01b03168352820192909252604001902055600101611182565b5061130160026000612676565b611490565b600354156114905760005b60035481101561148357600754600380546001600160a01b0390921691637ad226dc91600591600091908690811061134b5761134b612916565b60009182526020808320909101546001600160a01b03168352820192909252604001902054600380548590811061138457611384612916565b60009182526020909120015460405160e084901b6001600160e01b031916815260048101929092526001600160a01b03166024820152604401600060405180830381600087803b1580156113d757600080fd5b505af11580156113eb573d6000803e3d6000fd5b505050506000600460006003848154811061140857611408612916565b6000918252602080832091909101546001600160a01b031683528201929092526040018120805460ff1916921515929092179091556003805460059183918590811061145657611456612916565b60009182526020808320909101546001600160a01b03168352820192909252604001902055600101611311565b5061149060036000612676565b7f902a8e7f6231be7266d538b9ebd51fc2d2275f10cf965f3d80fbf3988cf326306006546040516114c391815260200190565b60405180910390a150600060018190556006555050565b806060015160000361152e5760405162461bcd60e51b815260206004820152601a60248201527f5374617274696e67207072696365206d7573742062652073657400000000000060448201526064016105f2565b6007546040805163167a382560e11b815290516000926001600160a01b031691632cf4704a9160048083019260209291908290030181865afa158015611578573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061159c9190612a3b565b9050600080826001600160a01b031663d369dc61878660c001516040518363ffffffff1660e01b81526004016115d3929190612a58565b60408051808303816000875af11580156115f1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906116159190612ab0565b91509150603c84602001518263ffffffff166116319190612ae5565b11158061164e5750603c61164b63ffffffff831642612ae5565b11155b6116915760405162461bcd60e51b815260206004820152601460248201527313db190818da185a5b9b1a5b9ac81c995c1bdc9d60621b60448201526064016105f2565b606084015184906116a8655af3107a400085612af8565b6001600160c01b0316111561189d5760075460a08201516080830151600a546040516397465b7560e01b81526004810193909352602483019190915260448201526000916001600160a01b0316906397465b75906064016020604051808303816000875af115801561171e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117429190612b44565b905060005b60025481101561184c57600754600280546001600160a01b039092169163fcf08c4f9185918590811061177c5761177c612916565b9060005260206000200160009054906101000a90046001600160a01b0316600a5460056000600288815481106117b4576117b4612916565b6000918252602080832091909101546001600160a01b039081168452908301939093526040918201902054905160e087901b6001600160e01b031916815260048101959095529216602484015260448301526064820152608401600060405180830381600087803b15801561182857600080fd5b505af115801561183c573d6000803e3d6000fd5b5050600190920191506117479050565b5060065460408051601787900b815260016020820152908101919091527ff4570c324e50c8cf2966e6ca6c7dce637fd012713169a420ddf51f963cf3dd69906060015b60405180910390a150611d96565b60608101516118b2655af3107a400085612af8565b6001600160c01b03161015611a9d57600754608082015160a0830151600a546040516397465b7560e01b81526004810193909352602483019190915260448201526000916001600160a01b0316906397465b75906064016020604051808303816000875af1158015611928573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061194c9190612b44565b905060005b600354811015611a5657600754600380546001600160a01b039092169163fcf08c4f9185918590811061198657611986612916565b9060005260206000200160009054906101000a90046001600160a01b0316600a5460056000600388815481106119be576119be612916565b6000918252602080832091909101546001600160a01b039081168452908301939093526040918201902054905160e087901b6001600160e01b031916815260048101959095529216602484015260448301526064820152608401600060405180830381600087803b158015611a3257600080fd5b505af1158015611a46573d6000803e3d6000fd5b5050600190920191506119519050565b5060065460408051601787900b815260006020820152908101919091527ff4570c324e50c8cf2966e6ca6c7dce637fd012713169a420ddf51f963cf3dd699060600161188f565b6060810151611ab2655af3107a400085612af8565b6001600160c01b031603611d965760005b600254811015611bf657600754600280546001600160a01b0390921691637ad226dc916005916000919086908110611afd57611afd612916565b60009182526020808320909101546001600160a01b031683528201929092526040019020546002805485908110611b3657611b36612916565b60009182526020909120015460405160e084901b6001600160e01b031916815260048101929092526001600160a01b03166024820152604401600060405180830381600087803b158015611b8957600080fd5b505af1158015611b9d573d6000803e3d6000fd5b5050505060006004600060028481548110611bba57611bba612916565b6000918252602080832091909101546001600160a01b031683528201929092526040019020805460ff1916911515919091179055600101611ac3565b50611c0360026000612676565b60005b600354811015611d3957600754600380546001600160a01b0390921691637ad226dc916005916000919086908110611c4057611c40612916565b60009182526020808320909101546001600160a01b031683528201929092526040019020546003805485908110611c7957611c79612916565b60009182526020909120015460405160e084901b6001600160e01b031916815260048101929092526001600160a01b03166024820152604401600060405180830381600087803b158015611ccc57600080fd5b505af1158015611ce0573d6000803e3d6000fd5b5050505060006004600060038481548110611cfd57611cfd612916565b6000918252602080832091909101546001600160a01b031683528201929092526040019020805460ff1916911515919091179055600101611c06565b50611d4660036000612676565b7f902a8e7f6231be7266d538b9ebd51fc2d2275f10cf965f3d80fbf3988cf32630600654604051611d7991815260200190565b60405180910390a150506000600181905560065550611f06915050565b60005b600254811015611e395760006005600060028481548110611dbc57611dbc612916565b60009182526020808320909101546001600160a01b0316835282019290925260400181209190915560028054600491839185908110611dfd57611dfd612916565b6000918252602080832091909101546001600160a01b031683528201929092526040019020805460ff1916911515919091179055600101611d99565b5060005b600354811015611edd5760006005600060038481548110611e6057611e60612916565b60009182526020808320909101546001600160a01b0316835282019290925260400181209190915560038054600491839185908110611ea157611ea1612916565b6000918252602080832091909101546001600160a01b031683528201929092526040019020805460ff1916911515919091179055600101611e3d565b50611eea60036000612676565b611ef660026000612676565b5050600060068190556001555050505b5050565b600854811015611f2c5760405162461bcd60e51b81526004016105f29061292c565b3360009081526004602052604090205460ff1615611f5c5760405162461bcd60e51b81526004016105f29061295a565b600954600254600354611f6f919061299f565b611f7a90600161299f565b1115611f985760405162461bcd60e51b81526004016105f2906129b2565b6000611fa26121a4565b9050428160400151118015611fe9575060a081015163ffffffff90611fc890849061299f565b111580611fe95750608081015163ffffffff90611fe690849061299f565b11155b6120055760405162461bcd60e51b81526004016105f2906129e9565b82156120755760a881608001518361201d919061299f565b6001805463ffffffff60a81b19169190921b1781556002805491820181556000527f405787fa12a823e0f2b7631cc41b3ba8828b3321ca811111fa75cd3aa3bb5ace0180546001600160a01b031916331790556120db565b60888160a0015183612087919061299f565b6001805463ffffffff60881b19169190921b1781556003805491820181556000527fc2575a0e9e593c00f959f8c92f12db2869c3395a3b0502d05e2516446f71f85b0180546001600160a01b031916331790555b336000818152600560205260409081902084905560075490516319b7efed60e21b81526004810185905260248101929092526001600160a01b0316906366dfbfb4906044015b600060405180830381600087803b15801561213b57600080fd5b505af115801561214f573d6000803e3d6000fd5b50506006546040805133815287151560208201528082018790526060810192909252517f8abdc2d2db916c774861c9d3ace367e06f9033617a4e7e14bc0a80ecf2c39b209350908190036080019150a1505050565b6121e76040518060e00160405280600081526020016000815260200160008152602001600081526020016000815260200160008152602001600060ff1681525090565b60015463ffffffff8082168352602082811c821660408086019190915283901c821690840152606082811c60ff1660c0850152606883901c821690840152608882901c811660a084015260a89190911c16608082015290565b60008281526020819052604090206001015461225b81612533565b6104ec83836125d2565b6008548110156122875760405162461bcd60e51b81526004016105f29061292c565b3360009081526004602052604090205460ff16156122b75760405162461bcd60e51b81526004016105f29061295a565b6009546002546003546122ca919061299f565b6122d590600161299f565b11156122f35760405162461bcd60e51b81526004016105f2906129b2565b60006122fd6121a4565b9050428160400151118015612344575060a081015163ffffffff9061232390849061299f565b1115806123445750608081015163ffffffff9061234190849061299f565b11155b6123605760405162461bcd60e51b81526004016105f2906129e9565b82156123d05760a8816080015183612378919061299f565b6001805463ffffffff60a81b19169190921b1781556002805491820181556000527f405787fa12a823e0f2b7631cc41b3ba8828b3321ca811111fa75cd3aa3bb5ace0180546001600160a01b03191633179055612436565b60888160a00151836123e2919061299f565b6001805463ffffffff60881b19169190921b1781556003805491820181556000527fc2575a0e9e593c00f959f8c92f12db2869c3395a3b0502d05e2516446f71f85b0180546001600160a01b031916331790555b33600081815260056020908152604080832086905560049182905291829020805460ff191660011790556007549151632b329c5360e21b815290810185905260248101929092526001600160a01b03169063acca714c90604401612121565b60006124a081612533565b6001600160a01b0382166124e55760405162461bcd60e51b815260206004820152600c60248201526b5a65726f206164647265737360a01b60448201526064016105f2565b600780546001600160a01b0319166001600160a01b0384169081179091556040519081527fafa147634b29e2c7bd53ce194256b9f41cfb9ba3036f2b822fdd1d965beea08690602001610590565b61253d813361263d565b50565b600061254c8383611073565b6125ca576000838152602081815260408083206001600160a01b03861684529091529020805460ff191660011790556125823390565b6001600160a01b0316826001600160a01b0316847f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45060016104b0565b5060006104b0565b60006125de8383611073565b156125ca576000838152602081815260408083206001600160a01b0386168085529252808320805460ff1916905551339286917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a45060016104b0565b6126478282611073565b611f065760405163e2517d3f60e01b81526001600160a01b0382166004820152602481018390526044016105f2565b508054600082559060005260206000209081019061253d91905b808211156126a45760008155600101612690565b5090565b6000602082840312156126ba57600080fd5b81356001600160e01b0319811681146126d257600080fd5b9392505050565b6000602082840312156126eb57600080fd5b5035919050565b6001600160a01b038116811461253d57600080fd5b6000806040838503121561271a57600080fd5b82359150602083013561272c816126f2565b809150509250929050565b8035801515811461274757600080fd5b919050565b600080600083850360c081121561276257600080fd5b61276b85612737565b9350602085013592506080603f198201121561278657600080fd5b506040840190509250925092565b634e487b7160e01b600052604160045260246000fd5b6000602082840312156127bc57600080fd5b813567ffffffffffffffff808211156127d457600080fd5b818401915084601f8301126127e857600080fd5b8135818111156127fa576127fa612794565b604051601f8201601f19908116603f0116810190838211818310171561282257612822612794565b8160405282815287602084870101111561283b57600080fd5b826020860160208301376000928101602001929092525095945050505050565b63ffffffff8116811461253d57600080fd5b803560ff8116811461274757600080fd5b6000806000806080858703121561289457600080fd5b843561289f8161285b565b935060208501356128af8161285b565b9250604085013591506128c46060860161286d565b905092959194509250565b6000602082840312156128e157600080fd5b81356126d2816126f2565b600080604083850312156128ff57600080fd5b61290883612737565b946020939093013593505050565b634e487b7160e01b600052603260045260246000fd5b60208082526014908201527315dc9bdb99c819195c1bdcda5d08185b5bdd5b9d60621b604082015260600190565b602080825260159082015274416c72656164792070617274696369706174696e6760581b604082015260600190565b634e487b7160e01b600052601160045260246000fd5b808201808211156104b0576104b0612989565b60208082526019908201527f4d617820706c6179657220616d6f756e74207265616368656400000000000000604082015260600190565b6020808252601e908201527f47616d6520697320636c6f73656420666f72206e657720706c61796572730000604082015260600190565b600060208284031215612a3257600080fd5b6126d28261286d565b600060208284031215612a4d57600080fd5b81516126d2816126f2565b604081526000835180604084015260005b81811015612a865760208187018101516060868401015201612a69565b506000606082850101526060601f19601f83011684010191505060ff831660208301529392505050565b60008060408385031215612ac357600080fd5b82518060170b8114612ad457600080fd5b602084015190925061272c8161285b565b818103818111156104b0576104b0612989565b60008160170b8360170b80612b1d57634e487b7160e01b600052601260045260246000fd5b6001600160bf1b0319821460001982141615612b3b57612b3b612989565b90059392505050565b600060208284031215612b5657600080fd5b505191905056fe1d93c87416ca7b54f0fb8323167b72760e8e2ec93d48660953897a150f97a8b4a26469706673582212206e9372c836fbee521703932d360107a58d8e8d093e1407b9a771dadd2cfa7ea564736f6c63430008180033