610 txs
613 calls
constructor
constructor()
functions
decodeData
viewfunction decodeData(bytes32 gameId) view returns (tuple gameData)
DEFAULT_ADMIN_ROLE
viewfunction DEFAULT_ADMIN_ROLE() view returns (bytes32)
fee
viewfunction fee() view returns (uint256)
GAME_MASTER_ROLE
viewfunction GAME_MASTER_ROLE() view returns (bytes32)
games
viewfunction games(bytes32) view returns (uint256 packedData, uint256 packedData2)
getRoleAdmin
viewfunction getRoleAdmin(bytes32 role) view returns (bytes32)
hasRole
viewfunction hasRole(bytes32 role, address account) view returns (bool)
maxDuration
viewfunction maxDuration() view returns (uint256)
minDuration
viewfunction minDuration() view returns (uint256)
refundFee
viewfunction refundFee() view returns (uint256)
supportsInterface
viewfunction supportsInterface(bytes4 interfaceId) view returns (bool)
treasury
viewfunction treasury() view returns (address)
acceptGame
nonpayablefunction acceptGame(bytes32 gameId, uint32 opponentPrice)
acceptGameWithDeposit
nonpayablefunction acceptGameWithDeposit(bytes32 gameId, uint32 opponentPrice)
acceptGameWithPermit
nonpayablefunction acceptGameWithPermit(bytes32 gameId, uint32 opponentPrice, tuple permitData)
changeGameDuration
nonpayablefunction changeGameDuration(uint256 newMaxDuration, uint256 newMinDuration)
closeGame
nonpayablefunction closeGame(bytes32 gameId)
createGame
nonpayablefunction createGame(uint8 feedNumber, address opponent, uint32 endTime, uint32 initiatorPrice, uint16 depositAmount)
createGameWithDeposit
nonpayablefunction createGameWithDeposit(uint8 feedNumber, address opponent, uint32 endTime, uint32 initiatorPrice, uint16 depositAmount)
createGameWithPermit
nonpayablefunction createGameWithPermit(uint8 feedNumber, address opponent, uint32 endTime, uint32 initiatorPrice, uint16 depositAmount, tuple permitData)
finalizeGame
nonpayablefunction finalizeGame(bytes32 gameId, bytes unverifiedReport)
grantRole
nonpayablefunction grantRole(bytes32 role, address account)
liquidateGame
nonpayablefunction liquidateGame(bytes32 gameId)
renounceRole
nonpayablefunction renounceRole(bytes32 role, address callerConfirmation)
revokeRole
nonpayablefunction revokeRole(bytes32 role, address account)
setFee
nonpayablefunction setFee(uint256 newFee)
setRefundFee
nonpayablefunction setRefundFee(uint256 newRefundFee)
setTreasury
nonpayablefunction setTreasury(address newTreasury)
events
ExactPriceAccepted
event ExactPriceAccepted(bytes32 gameId, address opponent, uint32 opponentPrice)
ExactPriceCancelled
event ExactPriceCancelled(bytes32 gameId)
ExactPriceCreated
event ExactPriceCreated(bytes32 gameId, uint8 feedNumber, address opponent, uint32 startTime, uint32 endTime, address initiator, uint32 initiatorPrice, uint32 depositAmount)
ExactPriceFinalized
event ExactPriceFinalized(bytes32 gameId, uint256 winnerGuessPrice, uint256 loserGuessPrice, int192 finalPrice, uint8 gameStatus)
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)
errors
AccessControlBadConfirmation
error AccessControlBadConfirmation()
AccessControlUnauthorizedAccount
error AccessControlUnauthorizedAccount(address account, bytes32 neededRole)
creation bytecode
0x60806040526101f46003556103e86004556101186005556224ea006006553480156200002a57600080fd5b50620000386000336200003f565b50620000ee565b6000828152602081815260408083206001600160a01b038516845290915281205460ff16620000e4576000838152602081815260408083206001600160a01b03861684529091529020805460ff191660011790556200009b3390565b6001600160a01b0316826001600160a01b0316847f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a4506001620000e8565b5060005b92915050565b6125ff80620000fe6000396000f3fe608060405234801561001057600080fd5b50600436106101c45760003560e01c80638e3cd443116100f9578063cadbe9ff11610097578063ea8d53ef11610071578063ea8d53ef146103cc578063f0f44260146103df578063f579f882146103f2578063f6ccb8261461042e57600080fd5b8063cadbe9ff1461039d578063d547741f146103b0578063ddca3f43146103c357600080fd5b8063a217fddf116100d3578063a217fddf14610348578063ad1def1e14610350578063be8654e914610377578063c53535e51461038a57600080fd5b80638e3cd4431461031957806390fe6ddb1461032c57806391d148541461033557600080fd5b806336fd711e11610166578063650db90511610140578063650db905146102ca57806369fe0e2d146102dd5780636db5c8fd146102f05780637ffc32a3146102f957600080fd5b806336fd711e14610283578063567157611461029657806361d027b31461029f57600080fd5b8063248a9ca3116101a2578063248a9ca3146102195780632e9e95fb1461024a5780632f2ff15d1461025d57806336568abe1461027057600080fd5b806301ffc9a7146101c95780630c6d8d53146101f15780632109369e14610206575b600080fd5b6101dc6101d7366004611df4565b610441565b60405190151581526020015b60405180910390f35b6102046101ff366004611e37565b610478565b005b610204610214366004611ebc565b6106e9565b61023c610227366004611f38565b60009081526020819052604090206001015490565b6040519081526020016101e8565b610204610258366004611e37565b610915565b61020461026b366004611f51565b610ab8565b61020461027e366004611f51565b610ae3565b610204610291366004611f38565b610b1b565b61023c60055481565b6002546102b2906001600160a01b031681565b6040516001600160a01b0390911681526020016101e8565b6102046102d8366004611f76565b610b2c565b6102046102eb366004611f38565b610de0565b61023c60065481565b61030c610307366004611f38565b610df1565b6040516101e89190611fed565b610204610327366004612088565b610ec9565b61023c60045481565b6101dc610343366004611f51565b6110f9565b61023c600081565b61023c7f1d93c87416ca7b54f0fb8323167b72760e8e2ec93d48660953897a150f97a8b481565b610204610385366004612088565b611122565b610204610398366004611f38565b6111e6565b6102046103ab366004612109565b611385565b6102046103be366004611f51565b6119ee565b61023c60035481565b6102046103da3660046121c4565b611a13565b6102046103ed3660046121e6565b611a27565b610419610400366004611f38565b6001602081905260009182526040909120805491015482565b604080519283526020830191909152016101e8565b61020461043c366004611f38565b611acd565b60006001600160e01b03198216637965db0b60e01b148061047257506301ffc9a760e01b6001600160e01b03198316145b92915050565b600061048383610df1565b90506001816101200151600481111561049e5761049e611fb5565b146104c45760405162461bcd60e51b81526004016104bb90612203565b60405180910390fd5b426003826040015183606001516104db9190612240565b6104e59190612269565b82604001516104f4919061227d565b10156105125760405162461bcd60e51b81526004016104bb90612290565b8163ffffffff168160c001510361053b5760405162461bcd60e51b81526004016104bb906122c7565b60808101516001600160a01b0316156105885780608001516001600160a01b0316336001600160a01b0316146105835760405162461bcd60e51b81526004016104bb906122f2565b6105c6565b60208101516001600160a01b031633036105b45760405162461bcd60e51b81526004016104bb90612329565b60008381526001602052604090203390555b60008381526001602052604090819020805460e085901b6001600160e01b03191617905560025460a08301519151632b329c5360e21b815260048101929092523360248301526001600160a01b03169063acca714c906044015b600060405180830381600087803b15801561063a57600080fd5b505af115801561064e573d6000803e3d6000fd5b5060d092506003915061065e9050565b60008581526001602081905260409182902001805460ff60d01b191660ff9390931690931b91909117909155517fdf1dff9fca5359c0a24d9b8327d4ed8d668180f9be53606f8df62fa5d41d6648906106dc908590339086909283526001600160a01b0391909116602083015263ffffffff16604082015260600190565b60405180910390a1505050565b336001600160a01b038616036107115760405162461bcd60e51b81526004016104bb90612329565b6005546107244263ffffffff8716612240565b10156107425760405162461bcd60e51b81526004016104bb90612351565b6006546107554263ffffffff8716612240565b11156107735760405162461bcd60e51b81526004016104bb90612386565b6002546001600160a01b0316631567920a8333843561079860408701602088016123bd565b604080516001600160e01b031960e088901b16815261ffff90951660048601526001600160a01b039093166024850152604484019190915260ff1660648301528401356084820152606084013560a482015260c401600060405180830381600087803b15801561080757600080fd5b505af115801561081b573d6000803e3d6000fd5b5050505060008442338860405160200161083894939291906123d8565b60408051808303601f19018152919052805160209091012090506001600160a01b03861660a086811b63ffffffff60a01b169190911760c086811b63ffffffff60c01b169190911791334290911b179085901b61ffff60c01b161760d060016000858152600160208190526040918290208681559290931b9390931760d88c901b60ff60d81b1617910181905590517f38f0cbd3cf9c61f3bbb8e3b2f7853e67d98d226cdd2283b8f45274c57dd97b7a906109029085908c908c9042908d9033908e908e9061241c565b60405180910390a1505050505050505050565b600061092083610df1565b90506001816101200151600481111561093b5761093b611fb5565b146109585760405162461bcd60e51b81526004016104bb90612203565b4260038260400151836060015161096f9190612240565b6109799190612269565b8260400151610988919061227d565b10156109a65760405162461bcd60e51b81526004016104bb90612290565b8163ffffffff168160c00151036109cf5760405162461bcd60e51b81526004016104bb906122c7565b60808101516001600160a01b031615610a1c5780608001516001600160a01b0316336001600160a01b031614610a175760405162461bcd60e51b81526004016104bb906122f2565b610a5a565b60208101516001600160a01b03163303610a485760405162461bcd60e51b81526004016104bb90612329565b60008381526001602052604090203390555b60008381526001602052604090819020805460e085901b6001600160e01b03191617905560025460a083015191516319b7efed60e21b815260048101929092523360248301526001600160a01b0316906366dfbfb490604401610620565b600082815260208190526040902060010154610ad381611c35565b610add8383611c42565b50505050565b6001600160a01b0381163314610b0c5760405163334bd91960e11b815260040160405180910390fd5b610b168282611cd4565b505050565b6000610b2681611c35565b50600455565b6000610b3784610df1565b905060018161012001516004811115610b5257610b52611fb5565b14610b6f5760405162461bcd60e51b81526004016104bb90612203565b42600382604001518360600151610b869190612240565b610b909190612269565b8260400151610b9f919061227d565b1015610bbd5760405162461bcd60e51b81526004016104bb90612290565b8263ffffffff168160c0015103610be65760405162461bcd60e51b81526004016104bb906122c7565b60808101516001600160a01b031615610c335780608001516001600160a01b0316336001600160a01b031614610c2e5760405162461bcd60e51b81526004016104bb906122f2565b610c71565b60208101516001600160a01b03163303610c5f5760405162461bcd60e51b81526004016104bb90612329565b60008481526001602052604090203390555b60008481526001602090815260409182902080546001600160e01b031960e088901b1617905560025460a08401516001600160a01b0390911692631567920a923391873591610cc49189019089016123bd565b604080516001600160e01b031960e088901b16815260048101959095526001600160a01b039093166024850152604484019190915260ff1660648301528501356084820152606085013560a482015260c401600060405180830381600087803b158015610d3057600080fd5b505af1158015610d44573d6000803e3d6000fd5b5060d0925060039150610d549050565b60008681526001602081905260409182902001805460ff60d01b191660ff9390931690931b91909117909155517fdf1dff9fca5359c0a24d9b8327d4ed8d668180f9be53606f8df62fa5d41d664890610dd2908690339087909283526001600160a01b0391909116602083015263ffffffff16604082015260600190565b60405180910390a150505050565b6000610deb81611c35565b50600355565b610df9611d7c565b60008281526001602081815260409283902080549201546001600160a01b03808416608087015263ffffffff60a085811c8216606089015260c086811c8316818a015260e087811c908a01529284169488019490945282841c169486019490945261ffff9381901c93909316908401529060ff60d082901c166004811115610e8357610e83611fb5565b8361012001906004811115610e9a57610e9a611fb5565b90816004811115610ead57610ead611fb5565b90525060ff60d882901c16835260e01c61010083015250919050565b336001600160a01b03851603610ef15760405162461bcd60e51b81526004016104bb90612329565b600554610f044263ffffffff8616612240565b1015610f225760405162461bcd60e51b81526004016104bb90612351565b600654610f354263ffffffff8616612240565b1115610f535760405162461bcd60e51b81526004016104bb90612386565b600254604051632b329c5360e21b815261ffff831660048201523360248201526001600160a01b039091169063acca714c906044015b600060405180830381600087803b158015610fa357600080fd5b505af1158015610fb7573d6000803e3d6000fd5b50505050600083423387604051602001610fd494939291906123d8565b60408051601f19818403018152918152815160209283012060008181526001909352912054909150156110375760405162461bcd60e51b815260206004820152600b60248201526a47616d652065786973747360a81b60448201526064016104bb565b6001600160a01b03851660a085811b63ffffffff60a01b169190911760c085811b63ffffffff60c01b169190911791334290911b179084901b61ffff60c01b161760d060016000858152600160208190526040918290208681559290931b9390931760d88b901b60ff60d81b1617910181905590517f38f0cbd3cf9c61f3bbb8e3b2f7853e67d98d226cdd2283b8f45274c57dd97b7a906110e79085908b908b9042908c9033908d908d9061241c565b60405180910390a15050505050505050565b6000918252602082815260408084206001600160a01b0393909316845291905290205460ff1690565b336001600160a01b0385160361114a5760405162461bcd60e51b81526004016104bb90612329565b60055461115d4263ffffffff8616612240565b101561117b5760405162461bcd60e51b81526004016104bb90612351565b60065461118e4263ffffffff8616612240565b11156111ac5760405162461bcd60e51b81526004016104bb90612386565b6002546040516319b7efed60e21b815261ffff831660048201523360248201526001600160a01b03909116906366dfbfb490604401610f89565b7f1d93c87416ca7b54f0fb8323167b72760e8e2ec93d48660953897a150f97a8b461121081611c35565b600061121b83610df1565b905062093a808160600151426112319190612240565b101561126b5760405162461bcd60e51b8152602060048201526009602482015268546f6f206561726c7960b81b60448201526064016104bb565b6001816101200151600481111561128457611284611fb5565b146112a15760405162461bcd60e51b81526004016104bb90612203565b60025460a0820151602083015160048054604051630b151a7160e01b8152918201939093526001600160a01b039182166024820152604481019290925290911690630b151a7190606401600060405180830381600087803b15801561130557600080fd5b505af1158015611319573d6000803e3d6000fd5b5060d09250600291506113299050565b60008581526001602081905260409182902001805460ff60d01b191660ff9390931690931b91909117909155517f4508d504920b09c87708d104ad40433e6e7f6104005b44c0ebf4231f9c19ce33906106dc9085815260200190565b7f1d93c87416ca7b54f0fb8323167b72760e8e2ec93d48660953897a150f97a8b46113af81611c35565b6002546040805163167a382560e11b815290516000926001600160a01b031691632cf4704a9160048083019260209291908290030181865afa1580156113f9573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061141d919061246d565b9050600061142a85610df1565b805160405163d369dc6160e01b815291925060009182916001600160a01b0386169163d369dc6191611461918a919060040161248a565b60408051808303816000875af115801561147f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114a391906124e2565b9092509050600383610120015160048111156114c1576114c1611fb5565b146114de5760405162461bcd60e51b81526004016104bb90612203565b82606001514210156115285760405162461bcd60e51b81526020600482015260136024820152720a8dede40cac2e4d8f240e8de40ccd2dcd2e6d606b1b60448201526064016104bb565b603c83606001518263ffffffff166115409190612240565b11158061155d5750603c61155a63ffffffff831642612240565b11155b6115a05760405162461bcd60e51b815260206004820152601460248201527313db190818da185a5b9b1a5b9ac81c995c1bdc9d60621b60448201526064016104bb565b60006115b2655af3107a400084612517565b6001600160c01b03168460c00151116115f25760c08401516115da655af3107a400085612517565b6001600160c01b03166115ed9190612240565b61161a565b611602655af3107a400084612517565b6001600160c01b03168460c0015161161a9190612240565b9050600061162e655af3107a400085612517565b6001600160c01b03168560e001511161166e5760e0850151611656655af3107a400086612517565b6001600160c01b03166116699190612240565b611696565b61167e655af3107a400085612517565b6001600160c01b03168560e001516116969190612240565b90508082101561177f576002805460a08701516001600160a01b039091169163775520a4916116c49161253d565b60208801516003546040516001600160e01b031960e086901b16815260048101939093526001600160a01b0390911660248301526044820152606401600060405180830381600087803b15801561171a57600080fd5b505af115801561172e573d6000803e3d6000fd5b505050507f5458161d50452bd42d3465eca8bb2dbe3fe9d9f4a54c99ec2f3e063029f2a52e898660c001518760e00151876004604051611772959493929190612554565b60405180910390a1611980565b80821115611859576002805460a08701516001600160a01b039091169163775520a4916117ab9161253d565b60808801516003546040516001600160e01b031960e086901b16815260048101939093526001600160a01b0390911660248301526044820152606401600060405180830381600087803b15801561180157600080fd5b505af1158015611815573d6000803e3d6000fd5b505050507f5458161d50452bd42d3465eca8bb2dbe3fe9d9f4a54c99ec2f3e063029f2a52e898660e001518760c00151876004604051611772959493929190612554565b60025460a08601516020870151604051631eb489b760e21b815260048101929092526001600160a01b03908116602483015290911690637ad226dc90604401600060405180830381600087803b1580156118b257600080fd5b505af11580156118c6573d6000803e3d6000fd5b505060025460a08801516080890151604051631eb489b760e21b81526001600160a01b039093169450637ad226dc9350611914926004019182526001600160a01b0316602082015260400190565b600060405180830381600087803b15801561192e57600080fd5b505af1158015611942573d6000803e3d6000fd5b505050507f4508d504920b09c87708d104ad40433e6e7f6104005b44c0ebf4231f9c19ce338960405161197791815260200190565b60405180910390a15b600089815260016020819052604090912001805460ff60d01b1916600160d21b17905560e06119b5655af3107a40008661258b565b6001600160c01b0316901b600160008b815260200190815260200160002060010160008282541792505081905550505050505050505050565b600082815260208190526040902060010154611a0981611c35565b610add8383611cd4565b6000611a1e81611c35565b50600555600655565b6000611a3281611c35565b6001600160a01b038216611a775760405162461bcd60e51b815260206004820152600c60248201526b5a65726f206164647265737360a01b60448201526064016104bb565b600280546001600160a01b0319166001600160a01b0384169081179091556040519081527fafa147634b29e2c7bd53ce194256b9f41cfb9ba3036f2b822fdd1d965beea086906020015b60405180910390a15050565b6000611ad882610df1565b60208101519091506001600160a01b03163314611b265760405162461bcd60e51b815260206004820152600c60248201526b2bb937b7339039b2b73232b960a11b60448201526064016104bb565b60018161012001516004811115611b3f57611b3f611fb5565b14611b5c5760405162461bcd60e51b81526004016104bb90612203565b60025460a08201516020830151604051631eb489b760e21b815260048101929092526001600160a01b03908116602483015290911690637ad226dc90604401600060405180830381600087803b158015611bb557600080fd5b505af1158015611bc9573d6000803e3d6000fd5b5060d0925060029150611bd99050565b60008481526001602081905260409182902001805460ff60d01b191660ff9390931690931b91909117909155517f4508d504920b09c87708d104ad40433e6e7f6104005b44c0ebf4231f9c19ce3390611ac19084815260200190565b611c3f8133611d3f565b50565b6000611c4e83836110f9565b611ccc576000838152602081815260408083206001600160a01b03861684529091529020805460ff19166001179055611c843390565b6001600160a01b0316826001600160a01b0316847f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a4506001610472565b506000610472565b6000611ce083836110f9565b15611ccc576000838152602081815260408083206001600160a01b0386168085529252808320805460ff1916905551339286917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a4506001610472565b611d4982826110f9565b611d785760405163e2517d3f60e01b81526001600160a01b0382166004820152602481018390526044016104bb565b5050565b604051806101400160405280600060ff16815260200160006001600160a01b03168152602001600081526020016000815260200160006001600160a01b031681526020016000815260200160008152602001600081526020016000815260200160006004811115611def57611def611fb5565b905290565b600060208284031215611e0657600080fd5b81356001600160e01b031981168114611e1e57600080fd5b9392505050565b63ffffffff81168114611c3f57600080fd5b60008060408385031215611e4a57600080fd5b823591506020830135611e5c81611e25565b809150509250929050565b803560ff81168114611e7857600080fd5b919050565b6001600160a01b0381168114611c3f57600080fd5b803561ffff81168114611e7857600080fd5b600060808284031215611eb657600080fd5b50919050565b6000806000806000806101208789031215611ed657600080fd5b611edf87611e67565b95506020870135611eef81611e7d565b94506040870135611eff81611e25565b93506060870135611f0f81611e25565b9250611f1d60808801611e92565b9150611f2c8860a08901611ea4565b90509295509295509295565b600060208284031215611f4a57600080fd5b5035919050565b60008060408385031215611f6457600080fd5b823591506020830135611e5c81611e7d565b600080600060c08486031215611f8b57600080fd5b833592506020840135611f9d81611e25565b9150611fac8560408601611ea4565b90509250925092565b634e487b7160e01b600052602160045260246000fd5b60058110611fe957634e487b7160e01b600052602160045260246000fd5b9052565b815160ff1681526101408101602083015161201360208401826001600160a01b03169052565b506040830151604083015260608301516060830152608083015161204260808401826001600160a01b03169052565b5060a083015160a083015260c083015160c083015260e083015160e08301526101008084015181840152506101208084015161208082850182611fcb565b505092915050565b600080600080600060a086880312156120a057600080fd5b6120a986611e67565b945060208601356120b981611e7d565b935060408601356120c981611e25565b925060608601356120d981611e25565b91506120e760808701611e92565b90509295509295909350565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561211c57600080fd5b82359150602083013567ffffffffffffffff8082111561213b57600080fd5b818501915085601f83011261214f57600080fd5b813581811115612161576121616120f3565b604051601f8201601f19908116603f01168101908382118183101715612189576121896120f3565b816040528281528860208487010111156121a257600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b600080604083850312156121d757600080fd5b50508035926020909101359150565b6000602082840312156121f857600080fd5b8135611e1e81611e7d565b6020808252600d908201526c57726f6e67207374617475732160981b604082015260600190565b634e487b7160e01b600052601160045260246000fd5b818103818111156104725761047261222a565b634e487b7160e01b600052601260045260246000fd5b60008261227857612278612253565b500490565b808201808211156104725761047261222a565b6020808252601e908201527f47616d6520697320636c6f73656420666f72206e657720706c61796572730000604082015260600190565b60208082526011908201527053616d652061737365742070726963657360781b604082015260600190565b6020808252601f908201527f4f6e6c79206365727461696e206163636f756e742063616e2061636365707400604082015260600190565b6020808252600e908201526d15dc9bdb99c81bdc1c1bdb995b9d60921b604082015260600190565b6020808252818101527f4d696e2067616d65206475726174696f6e206d75737420626520686967686572604082015260600190565b6020808252601f908201527f4d61782067616d65206475726174696f6e206d757374206265206c6f77657200604082015260600190565b6000602082840312156123cf57600080fd5b611e1e82611e67565b60e09490941b6001600160e01b03191684526004840192909252606090811b6bffffffffffffffffffffffff19908116602485015291901b166038820152604c0190565b97885260ff9690961660208801526001600160a01b03948516604088015263ffffffff9384166060880152918316608087015290921660a08501521660c083015261ffff1660e08201526101000190565b60006020828403121561247f57600080fd5b8151611e1e81611e7d565b604081526000835180604084015260005b818110156124b8576020818701810151606086840101520161249b565b506000606082850101526060601f19601f83011684010191505060ff831660208301529392505050565b600080604083850312156124f557600080fd5b82518060170b811461250657600080fd5b6020840151909250611e5c81611e25565b60006001600160c01b038381168061253157612531612253565b92169190910492915050565b80820281158282048414176104725761047261222a565b600060a0820190508682528560208301528460408301528360170b60608301526125816080830184611fcb565b9695505050505050565b60008160170b8360170b806125a2576125a2612253565b6001600160bf1b03198214600019821416156125c0576125c061222a565b9005939250505056fea2646970667358221220d40cf988b535583c431c92984eae0d58228d215e7873bfa339dfdb3db5b7b71264736f6c63430008180033