0 txs
446 calls
constructor
No constructor.
functions
ADMIN_ROLE
viewfunction ADMIN_ROLE() view returns (bytes32)
allowedTokens
viewfunction allowedTokens() view returns (address[])
countdownReductionFactor
viewfunction countdownReductionFactor() view returns (uint256)
DEFAULT_ADMIN_ROLE
viewfunction DEFAULT_ADMIN_ROLE() view returns (bytes32)
finalGameFactor
viewfunction finalGameFactor() view returns (uint256)
finalResetFactor
viewfunction finalResetFactor() view returns (uint256)
gameIdCounter
viewfunction gameIdCounter() view returns (uint256)
getGameDetails
viewfunction getGameDetails(uint256 gameId) view returns (tuple)
getRoleAdmin
viewfunction getRoleAdmin(bytes32 role) view returns (bytes32)
getUserDetails
viewfunction getUserDetails(uint256 gameId, address user) view returns (address[], uint256[], uint256[])
getUserRewards
viewfunction getUserRewards(uint256 gameId, address user) view returns (uint256 reward)
hasRole
viewfunction hasRole(bytes32 role, address account) view returns (bool)
paused
viewfunction paused() view returns (bool)
rewardsClaimed
viewfunction rewardsClaimed(uint256, address) view returns (bool)
stakes
viewfunction stakes(uint256, address, address) view returns (uint256)
starToken
viewfunction starToken() view returns (address)
supportsInterface
viewfunction supportsInterface(bytes4 interfaceId) view returns (bool)
totalGameStakes
viewfunction totalGameStakes(uint256, address) view returns (uint256)
claimAllGameRewards
nonpayablefunction claimAllGameRewards(uint256 gameId)
createNewGame
nonpayablefunction createNewGame(uint256 startBlock, uint256 endBlock, uint256 rewardPoolAmount)
endGame
nonpayablefunction endGame(uint256 gameId)
grantRole
nonpayablefunction grantRole(bytes32 role, address account)
initialize
nonpayablefunction initialize(address starToken_, address adminAddress, address[] allowedTokens_, uint256 countdownReductionFactor_, uint256 finalGameFactor_, uint256 finalResetFactor_)
pause
nonpayablefunction pause()
renounceRole
nonpayablefunction renounceRole(bytes32 role, address callerConfirmation)
revokeRole
nonpayablefunction revokeRole(bytes32 role, address account)
stakeInGame
nonpayablefunction stakeInGame(uint256 gameId, address token, uint256 amount)
unpause
nonpayablefunction unpause()
updateAllowedTokens
nonpayablefunction updateAllowedTokens(address[] newAllowedTokens_)
updateGameFactors
nonpayablefunction updateGameFactors(uint256 newCountdownReductionFactor, uint256 newFinalGameFactor, uint256 newFinalResetFactor)
events
AllowedTokensUpdated
event AllowedTokensUpdated(address[] newAllowedTokens)
FactorsUpdated
event FactorsUpdated(uint256 newReductionFactor, uint256 newIncreaseFactor, uint256 newDifferenceFactor)
GameEnded
event GameEnded(uint256 gameId)
GameRewardClaimed
event GameRewardClaimed(uint256 gameId, address user, uint256 rewardAmount)
Initialized
event Initialized(uint64 version)
NewGameCreated
event NewGameCreated(uint256 gameId, uint256 startBlock, uint256 endBlock, uint256 rewardAmount)
Paused
event Paused(address account)
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)
StakedInGame
event StakedInGame(uint256 gameId, address user, address token, uint256 amount)
Unpaused
event Unpaused(address account)
errors
AccessControlBadConfirmation
error AccessControlBadConfirmation()
AccessControlUnauthorizedAccount
error AccessControlUnauthorizedAccount(address account, bytes32 neededRole)
EnforcedPause
error EnforcedPause()
ExpectedPause
error ExpectedPause()
InvalidInitialization
error InvalidInitialization()
NotInitializing
error NotInitializing()
ReentrancyGuardReentrantCall
error ReentrancyGuardReentrantCall()
creation bytecode
0x608060405234801561001057600080fd5b50612f74806100206000396000f3fe608060405234801561001057600080fd5b50600436106101da5760003560e01c80639a835e9111610104578063c90902cb116100a2578063f45961fa11610071578063f45961fa14610437578063f73541691461044a578063fb6990391461045d578063fdeef4251461047057600080fd5b8063c90902cb146103c4578063d0399bb8146103e6578063d547741f146103f9578063e7bfc3f71461040c57600080fd5b8063b41140fd116100de578063b41140fd1461034c578063b7ca51e814610355578063bebb720114610380578063c79c213d146103b157600080fd5b80639a835e91146103035780639a88910614610331578063a217fddf1461034457600080fd5b80633f4ba83a1161017c57806375b238fc1161014b57806375b238fc146102c05780638456cb59146102d55780638a8b6001146102dd57806391d14854146102f057600080fd5b80633f4ba83a146102825780635284d6d01461028a5780635c975abb1461029f5780635e368984146102b757600080fd5b8063248a9ca3116101b8578063248a9ca31461023e5780632a6c1325146102515780632f2ff15d1461025a57806336568abe1461026f57600080fd5b806301ffc9a7146101df5780631b31abda146102075780631bb412d614610227575b600080fd5b6101f26101ed3660046126f8565b610483565b60405190151581526020015b60405180910390f35b61021a610215366004612729565b6104ba565b6040516101fe9190612786565b61023060015481565b6040519081526020016101fe565b61023061024c366004612729565b610650565b61023060025481565b61026d610268366004612853565b610672565b005b61026d61027d366004612853565b610694565b61026d6106cc565b6102926106ef565b6040516101fe9190612883565b600080516020612f088339815191525460ff166101f2565b61023060035481565b610230600080516020612f4883398151915281565b61026d610751565b61026d6102eb366004612896565b610771565b6101f26102fe366004612853565b6108c8565b6101f2610311366004612853565b600760209081526000928352604080842090915290825290205460ff1681565b61026d61033f36600461297a565b610900565b610230600081565b61023060045481565b600054610368906001600160a01b031681565b6040516001600160a01b0390911681526020016101fe565b61023061038e3660046129b7565b600a60209081526000938452604080852082529284528284209052825290205481565b61026d6103bf366004612729565b610988565b6103d76103d2366004612853565b610df6565b6040516101fe93929190612a29565b61026d6103f4366004612729565b611015565b61026d610407366004612853565b611240565b61023061041a366004612853565b600960209081526000928352604080842090915290825290205481565b61026d610445366004612896565b61125c565b61026d610458366004612a6c565b611605565b61026d61046b366004612aea565b61189e565b61023061047e366004612853565b611e63565b60006001600160e01b03198216637965db0b60e01b14806104b457506301ffc9a760e01b6001600160e01b03198316145b92915050565b61051d6040518061012001604052806000815260200160008152602001600081526020016000815260200160006001600160a01b0316815260200160006001600160a01b0316815260200160608152602001606081526020016000151581525090565b600082815260066020818152604092839020835161012081018552815481526001820154818401526002820154818601526003820154606082015260048201546001600160a01b03908116608083015260058301541660a082015292810180548551818502810185019096528086529394919360c08601938301828280156105ce57602002820191906000526020600020905b81546001600160a01b031681526001909101906020018083116105b0575b505050505081526020016007820180548060200260200160405190810160405280929190818152602001828054801561063057602002820191906000526020600020905b81546001600160a01b03168152600190910190602001808311610612575b50505091835250506008919091015460ff16151560209091015292915050565b6000908152600080516020612ee8833981519152602052604090206001015490565b61067b82610650565b61068481611f4c565b61068e8383611f56565b50505050565b6001600160a01b03811633146106bd5760405163334bd91960e11b815260040160405180910390fd5b6106c78282611ffb565b505050565b600080516020612f488339815191526106e481611f4c565b6106ec612077565b50565b6060600580548060200260200160405190810160405280929190818152602001828054801561074757602002820191906000526020600020905b81546001600160a01b03168152600190910190602001808311610729575b5050505050905090565b600080516020612f4883398151915261076981611f4c565b6106ec6120d7565b610779612120565b600080516020612f4883398151915261079181611f4c565b600084116107ba5760405162461bcd60e51b81526004016107b190612b22565b60405180910390fd5b600083116107da5760405162461bcd60e51b81526004016107b190612b7f565b600082116107fa5760405162461bcd60e51b81526004016107b190612bdc565b6002548414158061080d57506003548314155b8061081a57506004548214155b6108725760405162461bcd60e51b815260206004820152602360248201527f416c6c53746172735374616b696e673a204e6f20666163746f7273206368616e60448201526219d95960ea1b60648201526084016107b1565b60028490556003839055600482905560408051858152602081018590529081018390527f6bf041f5e85f1e30b186a46afad10d1097cffac11d670c0bc688ce01e67039119060600160405180910390a150505050565b6000918252600080516020612ee8833981519152602090815260408084206001600160a01b0393909316845291905290205460ff1690565b600080516020612f4883398151915261091881611f4c565b8151806109375760405162461bcd60e51b81526004016107b190612c39565b825161094a906005906020860190612620565b507f80cf834692f79dc85e731aea9ee1788c7c7cca8fd087d25a7b0b885beff51c41600560405161097b9190612c84565b60405180910390a1505050565b610990612153565b610998612120565b6001548111156109ba5760405162461bcd60e51b81526004016107b190612cd4565b60008181526006602052604090206001015443116109ea5760405162461bcd60e51b81526004016107b190612d1b565b600081815260076020908152604080832033845290915290205460ff1615610a245760405162461bcd60e51b81526004016107b190612d5e565b6000818152600660209081526040808320600581015460039091015460088452828520338652845282852080548451818702810187019095528085526001600160a01b03909316959194919384939092830182828015610aad57602002820191906000526020600020905b81546001600160a01b03168152600190910190602001808311610a8f575b5050835193945050508115159050610b1a5760405162461bcd60e51b815260206004820152602a60248201527f416c6c53746172735374616b696e673a204e6f207374616b656420746f6b656e6044820152697320746f20636c61696d60b01b60648201526084016107b1565b60008681526007602090815260408083203384529091528120805460ff191660011790555b81811015610ccd576000838281518110610b5b57610b5b612da5565b602002602001015190506000600a60008a81526020019081526020016000206000610b833390565b6001600160a01b039081168252602080830193909352604091820160009081209186168152925290205490508015610cb857876001600160a01b0316826001600160a01b031603610c145760008981526009602090815260408083206001600160a01b038616845290915290205480610bfc838a612dd1565b610c069190612de8565b610c109088612e0a565b9650505b60006001600160a01b03831663a9059cbb336040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602481018590526044016020604051808303816000875af1158015610c73573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c979190612e1d565b905080610cb65760405162461bcd60e51b81526004016107b190612e3f565b505b50508080610cc590612e85565b915050610b3f565b508215610d7957600080546001600160a01b031663a9059cbb336040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602481018790526044016020604051808303816000875af1158015610d34573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d589190612e1d565b905080610d775760405162461bcd60e51b81526004016107b190612e3f565b505b6040805187815233602082015280820185905290517f88758f5bf10e78eb94f15a42685e01984f79397c9c30c4dda0a916e028bc6ca69181900360600190a160008681526008602090815260408083203384529091528120610dda91612685565b50505050506106ec6001600080516020612f2883398151915255565b600082815260066020526040812060070154606091829182918167ffffffffffffffff811115610e2857610e286128c2565b604051908082528060200260200182016040528015610e51578160200160208202803683370190505b50905060008267ffffffffffffffff811115610e6f57610e6f6128c2565b604051908082528060200260200182016040528015610e98578160200160208202803683370190505b50905060008367ffffffffffffffff811115610eb657610eb66128c2565b604051908082528060200260200182016040528015610edf578160200160208202803683370190505b50905060005b848160ff1610156110055760008a8152600660205260408120600701805460ff8416908110610f1657610f16612da5565b9060005260206000200160009054906101000a90046001600160a01b0316905080858360ff1681518110610f4c57610f4c612da5565b6001600160a01b0392831660209182029290920181019190915260008d815260098252604080822093851682529290915220548451859060ff8516908110610f9657610f96612da5565b60209081029190910181019190915260008c8152600a825260408082206001600160a01b03808f168452908452818320908516835290925220548351849060ff8516908110610fe757610fe7612da5565b60209081029190910101525080610ffd81612e9e565b915050610ee5565b5091955093509150509250925092565b61101d612153565b611025612120565b600080516020612f4883398151915261103d81611f4c565b60015482111561105f5760405162461bcd60e51b81526004016107b190612cd4565b600082815260066020526040902060010154431161108f5760405162461bcd60e51b81526004016107b190612d1b565b6000828152600660205260409020600501546001600160a01b0316156111035760405162461bcd60e51b815260206004820152602360248201527f416c6c53746172735374616b696e673a2055736572207374616b696e672065786044820152621a5cdd60ea1b60648201526084016107b1565b60008281526006602052604090206008015460ff16156111355760405162461bcd60e51b81526004016107b190612d5e565b60008281526006602052604080822060088101805460ff191660011790558254600480830154600390930154935163a9059cbb60e01b81526001600160a01b03938416918101919091526024810193909352169063a9059cbb906044016020604051808303816000875af11580156111b1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111d59190612e1d565b9050806111f45760405162461bcd60e51b81526004016107b190612e3f565b6040518381527fce24807f7e4b60b4e641462f13029fa5e5f79075bbc3f8e5cd43ecd19661d7609060200160405180910390a150506106ec6001600080516020612f2883398151915255565b61124982610650565b61125281611f4c565b61068e8383611ffb565b611264612120565b600080516020612f4883398151915261127c81611f4c565b8383116112f15760405162461bcd60e51b815260206004820152603b60248201527f416c6c53746172735374616b696e673a20456e6420626c6f636b206d7573742060448201527f62652067726561746572207468616e20737461727420626c6f636b000000000060648201526084016107b1565b4384116113665760405162461bcd60e51b815260206004820152603f60248201527f416c6c53746172735374616b696e673a20537461727420626c6f636b206d757360448201527f742062652067726561746572207468616e2063757272656e7420626c6f636b0060648201526084016107b1565b600082116113dc5760405162461bcd60e51b815260206004820152603860248201527f416c6c53746172735374616b696e673a2052657761726420616d6f756e74206d60448201527f7573742062652067726561746572207468616e207a65726f000000000000000060648201526084016107b1565b600180549060006113ec83612e85565b919050555060018054111561147b57600660006001805461140d9190612ebd565b815260200190815260200160002060010154431161147b5760405162461bcd60e51b815260206004820152602560248201527f416c6c53746172735374616b696e673a2047616d6520616c72656164792072756044820152646e6e696e6760d81b60648201526084016107b1565b6001805460009081526006602052604080822087905582548252808220830186905591548152206003018290556114b28484612ebd565b60018054600090815260066020526040808220600201939093559054815220600580546114e39260070191906126a3565b5033600154600090815260066020526040812060040180546001600160a01b0319166001600160a01b0393841617905580549091166323b872dd336040516001600160e01b031960e084901b1681526001600160a01b039091166004820152306024820152604481018690526064016020604051808303816000875af1158015611571573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906115959190612e1d565b9050806115b45760405162461bcd60e51b81526004016107b190612e3f565b60015460408051918252602082018790528101859052606081018490527fa04fad86c120eb1a6f69e15fd3adfcfbed0b2f9128a2edb7c324bfcd7502d4a29060800160405180910390a15050505050565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a008054600160401b810460ff16159067ffffffffffffffff1660008115801561164b5750825b905060008267ffffffffffffffff1660011480156116685750303b155b905081158015611676575080155b156116945760405163f92ee8a960e01b815260040160405180910390fd5b845467ffffffffffffffff1916600117855583156116be57845460ff60401b1916600160401b1785555b600088116116de5760405162461bcd60e51b81526004016107b190612b22565b600087116116fe5760405162461bcd60e51b81526004016107b190612b7f565b6000861161171e5760405162461bcd60e51b81526004016107b190612bdc565b6001600160a01b038b161580159061173e57506001600160a01b038a1615155b6117b05760405162461bcd60e51b815260206004820152603e60248201527f416c6c53746172735374616b696e673a205a65726f206164647265737320707260448201527f6f766964656420666f72205354415220746f6b656e206f722061646d696e000060648201526084016107b1565b8851806117cf5760405162461bcd60e51b81526004016107b190612c39565b6117d761219f565b6117df6121a7565b6117e76121b7565b600080546001600160a01b0319166001600160a01b038e1617905589516118159060059060208d0190612620565b5060028990556003889055600487905561183060008c611f56565b50611849600080516020612f488339815191528c611f56565b5050831561189157845460ff60401b19168555604051600181527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a15b5050505050505050505050565b6118a6612153565b6118ae612120565b6001548311156118d05760405162461bcd60e51b81526004016107b190612cd4565b6001600160a01b0382166119355760405162461bcd60e51b815260206004820152602660248201527f416c6c53746172735374616b696e673a20546f6b656e206973207a65726f206160448201526564647265737360d01b60648201526084016107b1565b600081116119ab5760405162461bcd60e51b815260206004820152603760248201527f416c6c53746172735374616b696e673a205374616b6520616d6f756e74206d7560448201527f73742062652067726561746572207468616e207a65726f00000000000000000060648201526084016107b1565b6119b583836121c7565b611a0f5760405162461bcd60e51b815260206004820152602560248201527f416c6c53746172735374616b696e673a20546f6b656e206973206e6f7420616c6044820152641b1bddd95960da1b60648201526084016107b1565b6000838152600660208181526040808420815161012081018352815481526001820154818501526002820154818401526003820154606082015260048201546001600160a01b03908116608083015260058301541660a08201529381018054835181860281018601909452808452919360c08601939290830182828015611abf57602002820191906000526020600020905b81546001600160a01b03168152600190910190602001808311611aa1575b5050505050815260200160078201805480602002602001604051908101604052809291908181526020018280548015611b2157602002820191906000526020600020905b81546001600160a01b03168152600190910190602001808311611b03575b50505091835250506008919091015460ff1615156020909101528051909150431015611ba15760405162461bcd60e51b815260206004820152602960248201527f416c6c53746172735374616b696e673a2047616d6520686173206e6f74207374604482015268185c9d1959081e595d60ba1b60648201526084016107b1565b8060200151431115611bf55760405162461bcd60e51b815260206004820152601f60248201527f416c6c53746172735374616b696e673a2047616d652068617320656e6465640060448201526064016107b1565b60a08101516001600160a01b03161580611c3f5750826001600160a01b03168160c00151600081518110611c2b57611c2b612da5565b60200260200101516001600160a01b031614155b15611c6c576004548151602083015160009291611c5b91612ebd565b11159050611c6a85858361225a565b505b6000848152600a6020908152604080832033845282528083206001600160a01b03871684529091528120549003611cdd57600084815260086020908152604080832033845282528220805460018101825590835291200180546001600160a01b0319166001600160a01b0385161790555b6000848152600a6020908152604080832033845282528083206001600160a01b038716845290915281208054849290611d17908490612e0a565b909155505060008481526009602090815260408083206001600160a01b038716845290915281208054849290611d4e908490612e0a565b90915550600090506001600160a01b0384166323b872dd336040516001600160e01b031960e084901b1681526001600160a01b039091166004820152306024820152604481018690526064016020604051808303816000875af1158015611db9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611ddd9190612e1d565b905080611dfc5760405162461bcd60e51b81526004016107b190612e3f565b604080518681523360208201526001600160a01b038616818301526060810185905290517f434a63ea912bd33d203a14946f16bca79601eaa5c0974c4756ca6a036641084e9181900360800190a150506106c76001600080516020612f2883398151915255565b6000600154831115611e875760405162461bcd60e51b81526004016107b190612cd4565b6000838152600660205260409020600101544311611eb75760405162461bcd60e51b81526004016107b190612d1b565b600083815260066020908152604080832060050154600a83528184206001600160a01b03878116865290845282852091168085529252909120548015611f445760008581526009602090815260408083206001600160a01b03861684528252808320548884526006909252909120600301548190611f36908490612dd1565b611f409190612de8565b9350505b505092915050565b6106ec8133612541565b6000600080516020612ee8833981519152611f7184846108c8565b611ff1576000848152602082815260408083206001600160a01b03871684529091529020805460ff19166001179055611fa73390565b6001600160a01b0316836001600160a01b0316857f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a460019150506104b4565b60009150506104b4565b6000600080516020612ee883398151915261201684846108c8565b15611ff1576000848152602082815260408083206001600160a01b0387168085529252808320805460ff1916905551339287917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a460019150506104b4565b61207f61257e565b600080516020612f08833981519152805460ff191681557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa335b6040516001600160a01b03909116815260200160405180910390a150565b6120df612120565b600080516020612f08833981519152805460ff191660011781557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258336120b9565b600080516020612f088339815191525460ff16156121515760405163d93c066560e01b815260040160405180910390fd5b565b600080516020612f2883398151915280546001190161218557604051633ee5aeb560e01b815260040160405180910390fd5b60029055565b6001600080516020612f2883398151915255565b6121516125ae565b6121af6125ae565b6121516125f7565b6121bf6125ae565b612151612618565b600082815260066020526040812060070154815b818160ff16101561224f57600085815260066020526040902060070180546001600160a01b038616919060ff841690811061221857612218612da5565b6000918252602090912001546001600160a01b03160361223d576001925050506104b4565b8061224781612e9e565b9150506121db565b506000949350505050565b600083815260066020526040812082156122825760035461227b9043612e0a565b91506122ad565b600254815460018301546122969190612ebd565b6122a09190612ebd565b6122aa9043612e0a565b91505b6005810180546001600160a01b0319166001600160a01b0386161790556001810182905543815560068101546000908190815b8181101561233f57876001600160a01b031685600601828154811061230757612307612da5565b6000918252602090912001546001600160a01b03160361232d576001935080925061233f565b8061233781612e85565b9150506122e0565b5082612460576006840180546001808201835560008381526020812090920180546001600160a01b0319166001600160a01b038c161790559154909161238491612ebd565b90505b8015612415576006850161239c600183612ebd565b815481106123ac576123ac612da5565b6000918252602090912001546006860180546001600160a01b0390921691839081106123da576123da612da5565b600091825260209091200180546001600160a01b0319166001600160a01b03929092169190911790558061240d81612ed0565b915050612387565b50868460060160008154811061242d5761242d612da5565b9060005260206000200160006101000a8154816001600160a01b0302191690836001600160a01b03160217905550612537565b815b80156124f05760068501612477600183612ebd565b8154811061248757612487612da5565b6000918252602090912001546006860180546001600160a01b0390921691839081106124b5576124b5612da5565b600091825260209091200180546001600160a01b0319166001600160a01b0392909216919091179055806124e881612ed0565b915050612462565b50868460060160008154811061250857612508612da5565b9060005260206000200160006101000a8154816001600160a01b0302191690836001600160a01b031602179055505b5050505050505050565b61254b82826108c8565b61257a5760405163e2517d3f60e01b81526001600160a01b0382166004820152602481018390526044016107b1565b5050565b600080516020612f088339815191525460ff1661215157604051638dfc202b60e01b815260040160405180910390fd5b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a0054600160401b900460ff1661215157604051631afcd79f60e31b815260040160405180910390fd5b6125ff6125ae565b600080516020612f08833981519152805460ff19169055565b61218b6125ae565b828054828255906000526020600020908101928215612675579160200282015b8281111561267557825182546001600160a01b0319166001600160a01b03909116178255602090920191600190910190612640565b506126819291506126e3565b5090565b50805460008255906000526020600020908101906106ec91906126e3565b8280548282559060005260206000209081019282156126755760005260206000209182015b828111156126755782548255916001019190600101906126c8565b5b8082111561268157600081556001016126e4565b60006020828403121561270a57600080fd5b81356001600160e01b03198116811461272257600080fd5b9392505050565b60006020828403121561273b57600080fd5b5035919050565b600081518084526020808501945080840160005b8381101561277b5781516001600160a01b031687529582019590820190600101612756565b509495945050505050565b6020815281516020820152602082015160408201526040820151606082015260608201516080820152600060808301516127cb60a08401826001600160a01b03169052565b5060a08301516001600160a01b03811660c08401525060c08301516101208060e08501526127fd610140850183612742565b915060e0850151610100601f19868503018187015261281c8483612742565b96015115159190940152509192915050565b6001600160a01b03811681146106ec57600080fd5b803561284e8161282e565b919050565b6000806040838503121561286657600080fd5b8235915060208301356128788161282e565b809150509250929050565b6020815260006127226020830184612742565b6000806000606084860312156128ab57600080fd5b505081359360208301359350604090920135919050565b634e487b7160e01b600052604160045260246000fd5b600082601f8301126128e957600080fd5b8135602067ffffffffffffffff80831115612906576129066128c2565b8260051b604051601f19603f8301168101818110848211171561292b5761292b6128c2565b60405293845285810183019383810192508785111561294957600080fd5b83870191505b8482101561296f5761296082612843565b8352918301919083019061294f565b979650505050505050565b60006020828403121561298c57600080fd5b813567ffffffffffffffff8111156129a357600080fd5b6129af848285016128d8565b949350505050565b6000806000606084860312156129cc57600080fd5b8335925060208401356129de8161282e565b915060408401356129ee8161282e565b809150509250925092565b600081518084526020808501945080840160005b8381101561277b57815187529582019590820190600101612a0d565b606081526000612a3c6060830186612742565b8281036020840152612a4e81866129f9565b90508281036040840152612a6281856129f9565b9695505050505050565b60008060008060008060c08789031215612a8557600080fd5b8635612a908161282e565b95506020870135612aa08161282e565b9450604087013567ffffffffffffffff811115612abc57600080fd5b612ac889828a016128d8565b945050606087013592506080870135915060a087013590509295509295509295565b600080600060608486031215612aff57600080fd5b833592506020840135612b118161282e565b929592945050506040919091013590565b6020808252603b908201527f416c6c53746172735374616b696e673a20436f756e74646f776e20666163746f60408201527f72206d7573742062652067726561746572207468616e207a65726f0000000000606082015260800190565b6020808252603c908201527f416c6c53746172735374616b696e673a2046696e616c2067616d65206661637460408201527f6f72206d7573742062652067726561746572207468616e207a65726f00000000606082015260800190565b6020808252603d908201527f416c6c53746172735374616b696e673a2046696e616c2072657365742066616360408201527f746f72206d7573742062652067726561746572207468616e207a65726f000000606082015260800190565b6020808252602b908201527f416c6c53746172735374616b696e673a204e6f20616c6c6f77656420746f6b6560408201526a1b9cc81c1c9bdd9a59195960aa1b606082015260800190565b6020808252825482820181905260008481528281209092916040850190845b81811015612cc85783546001600160a01b031683526001938401939285019201612ca3565b50909695505050505050565b60208082526027908201527f416c6c53746172735374616b696e673a2047616d6520496420646f6573206e6f6040820152661d08195e1a5cdd60ca1b606082015260800190565b60208082526023908201527f416c6c53746172735374616b696e673a2047616d6520686173206e6f7420656e60408201526219195960ea1b606082015260800190565b60208082526027908201527f416c6c53746172735374616b696e673a2052657761726420616c72656164792060408201526618db185a5b595960ca1b606082015260800190565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b80820281158282048414176104b4576104b4612dbb565b600082612e0557634e487b7160e01b600052601260045260246000fd5b500490565b808201808211156104b4576104b4612dbb565b600060208284031215612e2f57600080fd5b8151801515811461272257600080fd5b60208082526026908201527f416c6c53746172735374616b696e673a20546f6b656e207472616e736665722060408201526519985a5b195960d21b606082015260800190565b600060018201612e9757612e97612dbb565b5060010190565b600060ff821660ff8103612eb457612eb4612dbb565b60010192915050565b818103818111156104b4576104b4612dbb565b600081612edf57612edf612dbb565b50600019019056fe02dd7bc7dec4dceedda775e58dd541e08a116c6c53815c0bd028192f7b626800cd5ed15c6e187e77e9aee88184c21f4f2182ab5827cb3b7e07fbedcd63f033009b779b17422d0df92223018b32b4d1fa46e071723d6817e2486d003becc55f00a49807205ce4d355092ef5a8a18f56e8913cf4a201fbe287825b095693c21775a164736f6c6343000814000a