0 txs
1 call
constructor
No constructor.
functions
chainedSpeedMarketsAMM
viewfunction chainedSpeedMarketsAMM() view returns (address)
getBonusesPerCollateral
viewfunction getBonusesPerCollateral(address[] collaterals) view returns (uint256[] bonuses)
getChainedMarketsData
viewfunction getChainedMarketsData(address[] marketsArray) view returns (tuple[])
getChainedSpeedMarketsAMMParameters
viewfunction getChainedSpeedMarketsAMMParameters(address _walletAddress) view returns (tuple)
getDirectionalRiskPerAsset
viewfunction getDirectionalRiskPerAsset(bytes32 asset) view returns (tuple[])
getMarketsData
viewfunction getMarketsData(address[] marketsArray) view returns (tuple[])
getRiskPerAsset
viewfunction getRiskPerAsset(bytes32 asset) view returns (tuple)
getSpeedMarketsAMMParameters
viewfunction getSpeedMarketsAMMParameters(address _walletAddress) view returns (tuple)
lastPauseTime
viewfunction lastPauseTime() view returns (uint256)
nominatedOwner
viewfunction nominatedOwner() view returns (address)
owner
viewfunction owner() view returns (address)
paused
viewfunction paused() view returns (bool)
speedMarketsAMM
viewfunction speedMarketsAMM() view returns (address)
acceptOwnership
nonpayablefunction acceptOwnership()
initialize
nonpayablefunction initialize(address _owner, address _speedMarketsAMM)
nominateNewOwner
nonpayablefunction nominateNewOwner(address _owner)
setOwner
nonpayablefunction setOwner(address _owner)
setPaused
nonpayablefunction setPaused(bool _paused)
setSpeedMarketsAMM
nonpayablefunction setSpeedMarketsAMM(address _speedMarketsAMM, address _chainedSpeedMarketsAMM)
transferOwnershipAtInit
nonpayablefunction transferOwnershipAtInit(address proxyAddress)
events
OwnerChanged
event OwnerChanged(address oldOwner, address newOwner)
OwnerNominated
event OwnerNominated(address newOwner)
PauseChanged
event PauseChanged(bool isPaused)
SetSpeedMarketsAMM
event SetSpeedMarketsAMM(address _speedMarketsAMM, address _chainedSpeedMarketsAMM)
errors
No errors.
creation bytecode
0x608060405234801561001057600080fd5b50614cf3806100206000396000f3fe608060405234801561001057600080fd5b506004361061012c5760003560e01c806379ba5097116100ad578063b7c46c1e11610071578063b7c46c1e146102b0578063c3b83f5f146102d0578063d01b279e146102e3578063d9a10e9414610303578063dc17ea5b1461031b57600080fd5b806379ba5097146102385780638da5cb5b1461024057806391b4ded9146102595780639f293fb114610270578063b1a8ab3e1461029057600080fd5b80632c303f62116100f45780632c303f62146101b5578063485cc955146101d557806353a47bb7146101e857806358dc0d63146102085780635c975abb1461021b57600080fd5b806301a494341461013157806313af40351461015a5780631627540c1461016f57806316c38b3c146101825780631ca7415c14610195575b600080fd5b61014461013f366004614298565b61032e565b6040516101519190614ab0565b60405180910390f35b61016d610168366004614298565b610c6f565b005b61016d61017d366004614298565b610d92565b61016d61019036600461448d565b610de5565b6101a86101a33660046144c5565b610e5b565b6040516101519190614942565b6101c86101c336600461430f565b61120c565b60405161015191906146a8565b61016d6101e33660046142d7565b61238a565b6001546101fb906001600160a01b031681565b604051610151919061467a565b61016d6102163660046142d7565b61246e565b6003546102289060ff1681565b6040519015158152602001610151565b61016d6124f3565b6000546101fb906201000090046001600160a01b031681565b61026260025481565b604051908152602001610151565b61028361027e36600461430f565b6125de565b6040516101519190614822565b6102a361029e36600461430f565b6132e8565b6040516101519190614995565b6102c36102be366004614298565b613442565b60405161015191906149bc565b61016d6102de366004614298565b613b78565b6102f66102f13660046144c5565b613c7b565b6040516101519190614a99565b6003546101fb9061010090046001600160a01b031681565b6004546101fb906001600160a01b031681565b6103c2604051806102000160405280600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081526020016000815260200160006001600160401b0316815260200160006001600160401b0316815260200160608152602001606081526020016000815260200160008152602001600081526020016000151581525090565b60035460405163023fb25960e01b815260009161010090046001600160a01b03169063023fb259906103f890869060040161467a565b60a06040518083038186803b15801561041057600080fd5b505afa158015610424573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610448919061440b565b60808101519091506000816001600160401b0381111561047857634e487b7160e01b600052604160045260246000fd5b6040519080825280602002602001820160405280156104a1578160200160208202803683370190505b5090506000826001600160401b038111156104cc57634e487b7160e01b600052604160045260246000fd5b6040519080825280602002602001820160405280156104f5578160200160208202803683370190505b50905060005b8381101561066b57600354604051632b18dfc560e11b8152600481018390526101009091046001600160a01b031690635631bf8a9060240160206040518083038186803b15801561054b57600080fd5b505afa15801561055f573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061058391906144dd565b8382815181106105a357634e487b7160e01b600052603260045260246000fd5b6020908102919091010152600354604051634eb7c43b60e01b8152600481018390526101009091046001600160a01b031690634eb7c43b9060240160206040518083038186803b1580156105f657600080fd5b505afa15801561060a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061062e91906144dd565b82828151811061064e57634e487b7160e01b600052603260045260246000fd5b60209081029190910101528061066381614c29565b9150506104fb565b50604080516102008101825285518152602080870151908201529081016001600160a01b03881661069d5760006106a3565b60408601515b81526020016001600160a01b0388166106bd5760006106c3565b60608601515b8152602001600360019054906101000a90046001600160a01b03166001600160a01b03166312aa38336040518163ffffffff1660e01b815260040160206040518083038186803b15801561071657600080fd5b505afa15801561072a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061074e91906144dd565b8152602001600360019054906101000a90046001600160a01b03166001600160a01b03166307b53bb46040518163ffffffff1660e01b815260040160206040518083038186803b1580156107a157600080fd5b505afa1580156107b5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107d991906144dd565b8152602001600360019054906101000a90046001600160a01b03166001600160a01b0316633e7ad1de6040518163ffffffff1660e01b815260040160206040518083038186803b15801561082c57600080fd5b505afa158015610840573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061086491906144dd565b8152602001600360019054906101000a90046001600160a01b03166001600160a01b0316635403f80f6040518163ffffffff1660e01b815260040160206040518083038186803b1580156108b757600080fd5b505afa1580156108cb573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108ef91906144dd565b8152602001600360019054906101000a90046001600160a01b03166001600160a01b031663a201b3076040518163ffffffff1660e01b815260040160206040518083038186803b15801561094257600080fd5b505afa158015610956573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061097a9190614535565b6001600160401b03168152602001600360019054906101000a90046001600160a01b03166001600160a01b031663cf898ca96040518163ffffffff1660e01b815260040160206040518083038186803b1580156109d657600080fd5b505afa1580156109ea573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a0e9190614535565b6001600160401b03168152602001838152602001828152602001600360019054906101000a90046001600160a01b03166001600160a01b031663704ce43e6040518163ffffffff1660e01b815260040160206040518083038186803b158015610a7657600080fd5b505afa158015610a8a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610aae91906144dd565b8152602001600360019054906101000a90046001600160a01b03166001600160a01b031663e91558666040518163ffffffff1660e01b815260040160206040518083038186803b158015610b0157600080fd5b505afa158015610b15573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b3991906144dd565b8152602001600360019054906101000a90046001600160a01b03166001600160a01b031663d69fb6686040518163ffffffff1660e01b815260040160206040518083038186803b158015610b8c57600080fd5b505afa158015610ba0573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610bc491906144dd565b81526020016001600160a01b038816610bde576000610c61565b60035460405162d9267b60e31b81526101009091046001600160a01b0316906306c933d890610c11908b9060040161467a565b60206040518083038186803b158015610c2957600080fd5b505afa158015610c3d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c6191906144a9565b151590529695505050505050565b6001600160a01b038116610cc65760405162461bcd60e51b815260206004820152601960248201527804f776e657220616464726573732063616e6e6f74206265203603c1b60448201526064015b60405180910390fd5b600154600160a01b900460ff1615610d325760405162461bcd60e51b815260206004820152602960248201527f416c726561647920696e697469616c697a65642c20757365206e6f6d696e617460448201526832a732bba7bbb732b960b91b6064820152608401610cbd565b6001805460ff60a01b1916600160a01b179055600080546001600160a01b038316620100000262010000600160b01b0319909116178155604051600080516020614c9e83398151915291610d8791849061468e565b60405180910390a150565b610d9a613db0565b600180546001600160a01b0319166001600160a01b0383161790556040517f906a1c6bd7e3091ea86693dd029a831c19049ce77f1dce2ce0bab1cacbabce2290610d8790839061467a565b610ded613db0565b60035460ff1615158115151415610e015750565b6003805460ff191682151590811790915560ff1615610e1f57426002555b60035460405160ff909116151581527f8fb6c181ee25a520cf3dd6565006ef91229fcfe5a989566c2a3b8c115570cec590602001610d87565b50565b60408051600280825260608083018452926000929190602083019080368337019050509050600081600081518110610ea357634e487b7160e01b600052603260045260246000fd5b60200260200101906001811115610eca57634e487b7160e01b600052602160045260246000fd5b90816001811115610eeb57634e487b7160e01b600052602160045260246000fd5b81525050600181600181518110610f1257634e487b7160e01b600052603260045260246000fd5b60200260200101906001811115610f3957634e487b7160e01b600052602160045260246000fd5b90816001811115610f5a57634e487b7160e01b600052602160045260246000fd5b81525050600081516001600160401b03811115610f8757634e487b7160e01b600052604160045260246000fd5b604051908082528060200260200182016040528015610fdd57816020015b610fca6040805160608101909152806000815260200160008152602001600081525090565b815260200190600190039081610fa55790505b50905060005b825181101561120457600083828151811061100e57634e487b7160e01b600052603260045260246000fd5b602002602001015190508083838151811061103957634e487b7160e01b600052603260045260246000fd5b602002602001015160000190600181111561106457634e487b7160e01b600052602160045260246000fd5b9081600181111561108557634e487b7160e01b600052602160045260246000fd5b90525060035460405163016ff7f560e21b81526101009091046001600160a01b0316906305bfdfd4906110be90899085906004016149a8565b60206040518083038186803b1580156110d657600080fd5b505afa1580156110ea573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061110e91906144dd565b83838151811061112e57634e487b7160e01b600052603260045260246000fd5b602090810291909101810151015260035460405163e11f951d60e01b81526101009091046001600160a01b03169063e11f951d9061117290899085906004016149a8565b60206040518083038186803b15801561118a57600080fd5b505afa15801561119e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111c291906144dd565b8383815181106111e257634e487b7160e01b600052603260045260246000fd5b60209081029190910101516040015250806111fc81614c29565b915050610fe3565b509392505050565b60606000826001600160401b0381111561123657634e487b7160e01b600052604160045260246000fd5b6040519080825280602002602001820160405280156112f457816020015b60408051610240810182526000808252602080830182905292820181905260608083018290526080830182905260a0830182905260c0830181905260e0830181905261010083015261012082018190526101408201819052610160820181905261018082018190526101a082018190526101c082018190526101e08201819052610200820181905261022082015282526000199092019101816112545790505b50905060005b8381101561238057600085858381811061132457634e487b7160e01b600052603260045260246000fd5b90506020020160208101906113399190614298565b9050806001600160a01b0316634f8632ba6040518163ffffffff1660e01b815260040160206040518083038186803b15801561137457600080fd5b505afa158015611388573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113ac91906142bb565b8383815181106113cc57634e487b7160e01b600052603260045260246000fd5b6020026020010151600001906001600160a01b031690816001600160a01b031681525050806001600160a01b03166338d52e0f6040518163ffffffff1660e01b815260040160206040518083038186803b15801561142957600080fd5b505afa15801561143d573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061146191906144dd565b83838151811061148157634e487b7160e01b600052603260045260246000fd5b60200260200101516020018181525050806001600160a01b0316638b13b64b6040518163ffffffff1660e01b815260040160206040518083038186803b1580156114ca57600080fd5b505afa1580156114de573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906115029190614535565b83838151811061152257634e487b7160e01b600052603260045260246000fd5b6020026020010151604001906001600160401b031690816001600160401b031681525050806001600160a01b03166320c1bb466040518163ffffffff1660e01b815260040160206040518083038186803b15801561157f57600080fd5b505afa158015611593573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906115b79190614535565b8383815181106115d757634e487b7160e01b600052603260045260246000fd5b6020026020010151606001906001600160401b031690816001600160401b031681525050806001600160a01b03166351d8044f6040518163ffffffff1660e01b815260040160206040518083038186803b15801561163457600080fd5b505afa158015611648573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061166c9190614535565b83838151811061168c57634e487b7160e01b600052603260045260246000fd5b6020026020010151608001906001600160401b031690816001600160401b031681525050806001600160a01b031663855d68cb6040518163ffffffff1660e01b815260040160206040518083038186803b1580156116e957600080fd5b505afa1580156116fd573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117219190614514565b83838151811061174157634e487b7160e01b600052603260045260246000fd5b602002602001015160a0019060070b908160070b815250506000816001600160a01b031663e004b5bf6040518163ffffffff1660e01b815260040160206040518083038186803b15801561179457600080fd5b505afa1580156117a8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117cc919061455c565b60ff166001600160401b038111156117f457634e487b7160e01b600052604160045260246000fd5b60405190808252806020026020018201604052801561181d578160200160208202803683370190505b5090506000826001600160a01b03166377680bb56040518163ffffffff1660e01b815260040160206040518083038186803b15801561185b57600080fd5b505afa15801561186f573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061189391906144dd565b6001600160401b038111156118b857634e487b7160e01b600052604160045260246000fd5b6040519080825280602002602001820160405280156118e1578160200160208202803683370190505b5090506000836001600160a01b03166377680bb56040518163ffffffff1660e01b815260040160206040518083038186803b15801561191f57600080fd5b505afa158015611933573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061195791906144dd565b6001600160401b0381111561197c57634e487b7160e01b600052604160045260246000fd5b6040519080825280602002602001820160405280156119a5578160200160208202803683370190505b50905060005b846001600160a01b031663e004b5bf6040518163ffffffff1660e01b815260040160206040518083038186803b1580156119e457600080fd5b505afa1580156119f8573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611a1c919061455c565b60ff16811015611d9957604051635f51b5c760e01b8152600481018290526001600160a01b03861690635f51b5c79060240160206040518083038186803b158015611a6657600080fd5b505afa158015611a7a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611a9e91906144f5565b848281518110611abe57634e487b7160e01b600052603260045260246000fd5b60200260200101906001811115611ae557634e487b7160e01b600052602160045260246000fd5b90816001811115611b0657634e487b7160e01b600052602160045260246000fd5b81525050846001600160a01b03166377680bb56040518163ffffffff1660e01b815260040160206040518083038186803b158015611b4357600080fd5b505afa158015611b57573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611b7b91906144dd565b811015611d87576040516317a569fb60e11b8152600481018290526001600160a01b03861690632f4ad3f69060240160206040518083038186803b158015611bc257600080fd5b505afa925050508015611bf2575060408051601f3d908101601f19168201909252611bef91810190614514565b60015b611c2c573d808015611c20576040519150601f19603f3d011682016040523d82523d6000602084013e611c25565b606091505b5050611cda565b506040516317a569fb60e11b8152600481018290526001600160a01b03861690632f4ad3f69060240160206040518083038186803b158015611c6d57600080fd5b505afa158015611c81573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611ca59190614514565b838281518110611cc557634e487b7160e01b600052603260045260246000fd5b602002602001019060070b908160070b815250505b60405163027160a360e51b8152600481018290526001600160a01b03861690634e2c14609060240160206040518083038186803b158015611d1a57600080fd5b505afa158015611d2e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611d529190614514565b828281518110611d7257634e487b7160e01b600052603260045260246000fd5b602002602001019060070b908160070b815250505b80611d9181614c29565b9150506119ab565b5082868681518110611dbb57634e487b7160e01b600052603260045260246000fd5b602002602001015160c0018190525081868681518110611deb57634e487b7160e01b600052603260045260246000fd5b602002602001015160e0018190525080868681518110611e1b57634e487b7160e01b600052603260045260246000fd5b60200260200101516101000181905250836001600160a01b0316631fcc8bb26040518163ffffffff1660e01b815260040160206040518083038186803b158015611e6457600080fd5b505afa158015611e78573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611e9c91906144dd565b868681518110611ebc57634e487b7160e01b600052603260045260246000fd5b60200260200101516101200181815250506000600460009054906101000a90046001600160a01b03166001600160a01b0316639324cac76040518163ffffffff1660e01b815260040160206040518083038186803b158015611f1d57600080fd5b505afa158015611f31573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611f5591906142bb565b90506000611f638683613e2a565b905080888881518110611f8657634e487b7160e01b600052603260045260246000fd5b602002602001015161014001906001600160a01b031690816001600160a01b031681525050816001600160a01b0316816001600160a01b031614888881518110611fe057634e487b7160e01b600052603260045260246000fd5b602090810291909101015190151561016090910152612000866001613f11565b88888151811061202057634e487b7160e01b600052603260045260246000fd5b6020026020010151610180018181525050856001600160a01b0316635c8127376040518163ffffffff1660e01b815260040160206040518083038186803b15801561206a57600080fd5b505afa15801561207e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906120a291906144dd565b8888815181106120c257634e487b7160e01b600052603260045260246000fd5b60200260200101516101a0018181525050856001600160a01b0316633f6fa6556040518163ffffffff1660e01b815260040160206040518083038186803b15801561210c57600080fd5b505afa158015612120573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061214491906144a9565b88888151811061216457634e487b7160e01b600052603260045260246000fd5b60200260200101516101c0019015159081151581525050856001600160a01b0316633a2c1e556040518163ffffffff1660e01b815260040160206040518083038186803b1580156121b457600080fd5b505afa1580156121c8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906121ec91906144a9565b88888151811061220c57634e487b7160e01b600052603260045260246000fd5b60200260200101516101e0019015159081151581525050856001600160a01b031663d69fb6686040518163ffffffff1660e01b815260040160206040518083038186803b15801561225c57600080fd5b505afa158015612270573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061229491906144dd565b8888815181106122b457634e487b7160e01b600052603260045260246000fd5b6020026020010151610200018181525050856001600160a01b031663cf09e0d06040518163ffffffff1660e01b815260040160206040518083038186803b1580156122fe57600080fd5b505afa158015612312573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061233691906144dd565b88888151811061235657634e487b7160e01b600052603260045260246000fd5b6020026020010151610220018181525050505050505050808061237890614c29565b9150506112fa565b5090505b92915050565b600054610100900460ff166123a55760005460ff16156123a9565b303b155b61240c5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610cbd565b600054610100900460ff1615801561242e576000805461ffff19166101011790555b61243783610c6f565b60038054610100600160a81b0319166101006001600160a01b038516021790558015612469576000805461ff00191690555b505050565b612476613db0565b60038054610100600160a81b0319166101006001600160a01b038581169190910291909117909155600480546001600160a01b0319169183169190911790556040517f58cdb7e3ecb56fe758429959e8977ca9e1de157dc08685f4b5de5c6db99037e0906124e7908490849061468e565b60405180910390a15050565b6001546001600160a01b0316331461256b5760405162461bcd60e51b815260206004820152603560248201527f596f75206d757374206265206e6f6d696e61746564206265666f726520796f7560448201527402063616e20616363657074206f776e65727368697605c1b6064820152608401610cbd565b600054600154604051600080516020614c9e833981519152926125a2926001600160a01b036201000090920482169291169061468e565b60405180910390a1600180546000805462010000600160b01b0319166001600160a01b03831662010000021790556001600160a01b0319169055565b60606000826001600160401b0381111561260857634e487b7160e01b600052604160045260246000fd5b6040519080825280602002602001820160405280156126b757816020015b604080516102008101825260008082526020808301829052928201819052606082018190526080820181905260a0820181905260c0820181905260e08201819052610100820181905261012082018190526101408201819052610160820181905261018082018190526101a082018190526101c082018190526101e082015282526000199092019101816126265790505b50905060005b838110156123805760008585838181106126e757634e487b7160e01b600052603260045260246000fd5b90506020020160208101906126fc9190614298565b9050806001600160a01b0316634f8632ba6040518163ffffffff1660e01b815260040160206040518083038186803b15801561273757600080fd5b505afa15801561274b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061276f91906142bb565b83838151811061278f57634e487b7160e01b600052603260045260246000fd5b6020026020010151600001906001600160a01b031690816001600160a01b031681525050806001600160a01b03166338d52e0f6040518163ffffffff1660e01b815260040160206040518083038186803b1580156127ec57600080fd5b505afa158015612800573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061282491906144dd565b83838151811061284457634e487b7160e01b600052603260045260246000fd5b60200260200101516020018181525050806001600160a01b03166351d8044f6040518163ffffffff1660e01b815260040160206040518083038186803b15801561288d57600080fd5b505afa1580156128a1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906128c59190614535565b8383815181106128e557634e487b7160e01b600052603260045260246000fd5b6020026020010151604001906001600160401b031690816001600160401b031681525050806001600160a01b031663c52987cf6040518163ffffffff1660e01b815260040160206040518083038186803b15801561294257600080fd5b505afa158015612956573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061297a9190614514565b83838151811061299a57634e487b7160e01b600052603260045260246000fd5b60200260200101516060019060070b908160070b81525050806001600160a01b031663645539ed6040518163ffffffff1660e01b815260040160206040518083038186803b1580156129eb57600080fd5b505afa1580156129ff573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612a2391906144f5565b838381518110612a4357634e487b7160e01b600052603260045260246000fd5b6020026020010151608001906001811115612a6e57634e487b7160e01b600052602160045260246000fd5b90816001811115612a8f57634e487b7160e01b600052602160045260246000fd5b81525050806001600160a01b0316631fcc8bb26040518163ffffffff1660e01b815260040160206040518083038186803b158015612acc57600080fd5b505afa158015612ae0573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612b0491906144dd565b838381518110612b2457634e487b7160e01b600052603260045260246000fd5b602002602001015160a0018181525050806001600160a01b0316633f6fa6556040518163ffffffff1660e01b815260040160206040518083038186803b158015612b6d57600080fd5b505afa158015612b81573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612ba591906144a9565b838381518110612bc557634e487b7160e01b600052603260045260246000fd5b6020026020010151610120019015159081151581525050806001600160a01b031663a6b513ee6040518163ffffffff1660e01b815260040160206040518083038186803b158015612c1557600080fd5b505afa158015612c29573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612c4d9190614514565b838381518110612c6d57634e487b7160e01b600052603260045260246000fd5b6020026020010151610140019060070b908160070b81525050806001600160a01b031663653721476040518163ffffffff1660e01b815260040160206040518083038186803b158015612cbf57600080fd5b505afa158015612cd3573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612cf791906144f5565b838381518110612d1757634e487b7160e01b600052603260045260246000fd5b602002602001015161016001906001811115612d4357634e487b7160e01b600052602160045260246000fd5b90816001811115612d6457634e487b7160e01b600052602160045260246000fd5b81525050806001600160a01b0316633a2c1e556040518163ffffffff1660e01b815260040160206040518083038186803b158015612da157600080fd5b505afa158015612db5573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612dd991906144a9565b838381518110612df957634e487b7160e01b600052603260045260246000fd5b60200260200101516101800190151590811515815250506000600360019054906101000a90046001600160a01b03166001600160a01b0316639324cac76040518163ffffffff1660e01b815260040160206040518083038186803b158015612e6057600080fd5b505afa158015612e74573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612e9891906142bb565b90506000612ea68383613e2a565b905080858581518110612ec957634e487b7160e01b600052603260045260246000fd5b602002602001015160c001906001600160a01b031690816001600160a01b031681525050816001600160a01b0316816001600160a01b031614858581518110612f2257634e487b7160e01b600052603260045260246000fd5b602090810291909101015190151560e090910152612f41836000613f11565b858581518110612f6157634e487b7160e01b600052603260045260246000fd5b602090810291909101015161010090810191909152600354046001600160a01b031663fd6e9b97898987818110612fa857634e487b7160e01b600052603260045260246000fd5b9050602002016020810190612fbd9190614298565b6040518263ffffffff1660e01b8152600401612fd9919061467a565b60206040518083038186803b158015612ff157600080fd5b505afa158015613005573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061302991906144a9565b1561317357826001600160a01b031663d69fb6686040518163ffffffff1660e01b815260040160206040518083038186803b15801561306757600080fd5b505afa15801561307b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061309f91906144dd565b8585815181106130bf57634e487b7160e01b600052603260045260246000fd5b60200260200101516101a0018181525050826001600160a01b031663704ce43e6040518163ffffffff1660e01b815260040160206040518083038186803b15801561310957600080fd5b505afa15801561311d573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061314191906144dd565b85858151811061316157634e487b7160e01b600052603260045260246000fd5b60200260200101516101c00181815250505b60035461010090046001600160a01b03166301bea6368989878181106131a957634e487b7160e01b600052603260045260246000fd5b90506020020160208101906131be9190614298565b6040518263ffffffff1660e01b81526004016131da919061467a565b60206040518083038186803b1580156131f257600080fd5b505afa158015613206573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061322a91906144a9565b156132d257826001600160a01b031663cf09e0d06040518163ffffffff1660e01b815260040160206040518083038186803b15801561326857600080fd5b505afa15801561327c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906132a091906144dd565b8585815181106132c057634e487b7160e01b600052603260045260246000fd5b60200260200101516101e00181815250505b50505080806132e090614c29565b9150506126bd565b6060816001600160401b0381111561331057634e487b7160e01b600052604160045260246000fd5b604051908082528060200260200182016040528015613339578160200160208202803683370190505b50905060005b8281101561343b5760035461010090046001600160a01b0316633c1ae42185858481811061337d57634e487b7160e01b600052603260045260246000fd5b90506020020160208101906133929190614298565b6040518263ffffffff1660e01b81526004016133ae919061467a565b60206040518083038186803b1580156133c657600080fd5b505afa1580156133da573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906133fe91906144dd565b82828151811061341e57634e487b7160e01b600052603260045260246000fd5b60209081029190910101528061343381614c29565b91505061333f565b5092915050565b61344a614203565b6004805460405163023fb25960e01b81526000926001600160a01b039092169163023fb2599161347c9187910161467a565b60806040518083038186803b15801561349457600080fd5b505afa1580156134a8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906134cc919061437e565b90506134eb604051806040016040528060008152602001600081525090565b600480546040805160016221f06960e01b0319815290516001600160a01b039092169263ffde0f97928282019260209290829003018186803b15801561353057600080fd5b505afa158015613544573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061356891906144dd565b8152600480546040805163dc56e7b360e01b815290516001600160a01b039092169263dc56e7b3928282019260209290829003018186803b1580156135ac57600080fd5b505afa1580156135c0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906135e491906144dd565b8160200181815250506000600460009054906101000a90046001600160a01b03166001600160a01b03166323b312156040518163ffffffff1660e01b815260040160206040518083038186803b15801561363d57600080fd5b505afa158015613651573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061367591906144dd565b90506000600460009054906101000a90046001600160a01b03166001600160a01b031663f823c6436040518163ffffffff1660e01b815260040160206040518083038186803b1580156136c757600080fd5b505afa1580156136db573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906136ff91906144dd565b9050600061370d8383614c12565b613718906001614bbb565b90506000816001600160401b0381111561374257634e487b7160e01b600052604160045260246000fd5b60405190808252806020026020018201604052801561376b578160200160208202803683370190505b50905060005b82811015613830576004805460405163c80a4fa560e01b81529182018390526001600160a01b03169063c80a4fa59060240160206040518083038186803b1580156137bb57600080fd5b505afa1580156137cf573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906137f391906144dd565b82828151811061381357634e487b7160e01b600052603260045260246000fd5b60209081029190910101528061382881614c29565b915050613771565b50604080516101a08101825287518152602080890151908201529081016001600160a01b038a16613862576000613868565b60408801515b81526020016001600160a01b038a16613882576000613888565b60608801515b8152602001858152602001848152602001600460009054906101000a90046001600160a01b03166001600160a01b03166335f127526040518163ffffffff1660e01b815260040160206040518083038186803b1580156138e757600080fd5b505afa1580156138fb573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061391f9190614535565b6001600160401b03168152602001600460009054906101000a90046001600160a01b03166001600160a01b0316631b1ad49d6040518163ffffffff1660e01b815260040160206040518083038186803b15801561397b57600080fd5b505afa15801561398f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906139b39190614535565b6001600160401b03168152602001600460009054906101000a90046001600160a01b03166001600160a01b03166312aa38336040518163ffffffff1660e01b815260040160206040518083038186803b158015613a0f57600080fd5b505afa158015613a23573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613a4791906144dd565b8152602001600460009054906101000a90046001600160a01b03166001600160a01b03166307b53bb46040518163ffffffff1660e01b815260040160206040518083038186803b158015613a9a57600080fd5b505afa158015613aae573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613ad291906144dd565b8152602001600460009054906101000a90046001600160a01b03166001600160a01b0316636c9259f46040518163ffffffff1660e01b815260040160206040518083038186803b158015613b2557600080fd5b505afa158015613b39573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613b5d91906144dd565b81526020810196909652604090950152509195945050505050565b613b80613db0565b6001600160a01b038116613bc85760405162461bcd60e51b815260206004820152600f60248201526e496e76616c6964206164647265737360881b6044820152606401610cbd565b600154600160a81b900460ff1615613c185760405162461bcd60e51b8152602060048201526013602482015272105b1c9958591e481d1c985b9cd9995c9c9959606a1b6044820152606401610cbd565b600080546001600160a01b038084166201000090810262010000600160b01b031990931692909217928390556001805460ff60a81b1916600160a81b179055604051600080516020614c9e83398151915293610d8793900490911690849061468e565b6040805180820190915260008082526020820152604080518082019091526000808252602082015260035460405163e60a4d2560e01b8152600481018590526101009091046001600160a01b03169063e60a4d259060240160206040518083038186803b158015613ceb57600080fd5b505afa158015613cff573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613d2391906144dd565b81526003546040516362298c0160e11b8152600481018590526101009091046001600160a01b03169063c45318029060240160206040518083038186803b158015613d6d57600080fd5b505afa158015613d81573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613da591906144dd565b602082015292915050565b6000546201000090046001600160a01b03163314613e285760405162461bcd60e51b815260206004820152602f60248201527f4f6e6c792074686520636f6e7472616374206f776e6572206d6179207065726660448201526e37b936903a3434b99030b1ba34b7b760891b6064820152608401610cbd565b565b60408051600481526024810182526020810180516001600160e01b031663d8dfeb4560e01b17905290516000917fd8dfeb45c97bc90ccb0083a78e72bfb0b5ba747c4da0382471fb4cb159c965b591839182916001600160a01b03881691613e9191614641565b600060405180830381855afa9150503d8060008114613ecc576040519150601f19603f3d011682016040523d82523d6000602084013e613ed1565b606091505b5091509150818015613ee4575080516020145b15613f075780806020019051810190613efd91906142bb565b9350505050612384565b5092949350505050565b60408051600481526024810182526020810180516001600160e01b03166331de8ea560e11b17905290516000917f63bd1d4a88bedfb7160db00a11fe1bffc8c945fca05210a721e82aed2623941391839182916001600160a01b03881691613f7891614641565b600060405180830381855afa9150503d8060008114613fb3576040519150601f19603f3d011682016040523d82523d6000602084013e613fb8565b606091505b50915091508115613fd75780806020019051810190613efd91906144dd565b8461405d57856001600160a01b0316631fcc8bb26040518163ffffffff1660e01b815260040160206040518083038186803b15801561401557600080fd5b505afa158015614029573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061404d91906144dd565b614058906002614bf3565b6141b8565b6141b8866001600160a01b0316631fcc8bb26040518163ffffffff1660e01b815260040160206040518083038186803b15801561409957600080fd5b505afa1580156140ad573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906140d191906144dd565b876001600160a01b031663e004b5bf6040518163ffffffff1660e01b815260040160206040518083038186803b15801561410a57600080fd5b505afa15801561411e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190614142919061455c565b886001600160a01b0316635c8127376040518163ffffffff1660e01b815260040160206040518083038186803b15801561417b57600080fd5b505afa15801561418f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906141b391906144dd565b6141c2565b9695505050505050565b8260005b8360ff168160ff16101561120457670de0b6b3a76400006141e78484614bf3565b6141f19190614bd3565b91506141fc81614c44565b90506141c6565b604051806101a0016040528060008152602001600081526020016000815260200160008152602001600081526020016000815260200160006001600160401b0316815260200160006001600160401b0316815260200160008152602001600081526020016000815260200161428b604051806040016040528060008152602001600081525090565b8152602001606081525090565b6000602082840312156142a9578081fd5b81356142b481614c7a565b9392505050565b6000602082840312156142cc578081fd5b81516142b481614c7a565b600080604083850312156142e9578081fd5b82356142f481614c7a565b9150602083013561430481614c7a565b809150509250929050565b60008060208385031215614321578182fd5b82356001600160401b0380821115614337578384fd5b818501915085601f83011261434a578384fd5b813581811115614358578485fd5b8660208260051b850101111561436c578485fd5b60209290920196919550909350505050565b60006080828403121561438f578081fd5b82601f83011261439d578081fd5b604051608081018181106001600160401b03821117156143cb57634e487b7160e01b83526041600452602483fd5b6040528083608081018610156143df578384fd5b835b60048110156144005781518352602092830192909101906001016143e1565b509195945050505050565b600060a0828403121561441c578081fd5b82601f83011261442a578081fd5b60405160a081018181106001600160401b038211171561445857634e487b7160e01b83526041600452602483fd5b604052808360a0810186101561446c578384fd5b835b600581101561440057815183526020928301929091019060010161446e565b60006020828403121561449e578081fd5b81356142b481614c8f565b6000602082840312156144ba578081fd5b81516142b481614c8f565b6000602082840312156144d6578081fd5b5035919050565b6000602082840312156144ee578081fd5b5051919050565b600060208284031215614506578081fd5b8151600281106142b4578182fd5b600060208284031215614525578081fd5b81518060070b81146142b4578182fd5b600060208284031215614546578081fd5b81516001600160401b03811681146142b4578182fd5b60006020828403121561456d578081fd5b815160ff811681146142b4578182fd5b6000815180845260208085019450808401835b838110156145b3576145a387835161461f565b9582019590820190600101614590565b509495945050505050565b6000815180845260208085019450808401835b838110156145b357815160070b875295820195908201906001016145d1565b6000815180845260208085019450808401835b838110156145b357815187529582019590820190600101614603565b6002811061463d57634e487b7160e01b600052602160045260246000fd5b9052565b60008251815b818110156146615760208186018101518583015201614647565b8181111561466f5782828501525b509190910192915050565b6001600160a01b0391909116815260200190565b6001600160a01b0392831681529116602082015260400190565b60006020808301818452808551808352604092508286019150828160051b870101848801865b8381101561481457888303603f19018552815180516001600160a01b031684528781015188850152868101516001600160401b03908116888601526060808301518216908601526080808301519091169085015260a08082015160070b9085015260c080820151610240828701819052919061474c8388018261457d565b9250505060e0808301518683038288015261476783826145be565b92505050610100808301518683038288015261478383826145be565b92505050610120808301518187015250610140808301516147ae828801826001600160a01b03169052565b50506101608281015115159086015261018080830151908601526101a080830151908601526101c0808301511515908601526101e080830151151590860152610200808301519086015261022091820151919094015293860193908601906001016146ce565b509098975050505050505050565b602080825282518282018190526000919060409081850190868401855b8281101561493557815180516001600160a01b031685528681015187860152858101516001600160401b03168686015260608082015160070b9086015260808082015161488e8288018261461f565b505060a0818101519086015260c0808201516001600160a01b03169086015260e0808201511515908601526101008082015190860152610120808201511515908601526101408082015160070b90860152610160808201516148f28288018261461f565b5050610180818101511515908601526101a080820151908601526101c080820151908601526101e09081015190850152610200909301929085019060010161483f565b5091979650505050505050565b602080825282518282018190526000919060409081850190868401855b8281101561493557815161497485825161461f565b8087015185880152850151858501526060909301929085019060010161495f565b6020815260006142b460208301846145f0565b828152604081016142b4602083018461461f565b6020815281516020820152602082015160408201526040820151606082015260608201516080820152608082015160a082015260a082015160c0820152600060c0830151614a1560e08401826001600160401b03169052565b5060e0830151610100614a32818501836001600160401b03169052565b8401516101208481019190915284015161014080850191909152840151610160808501919091528401519050610180614a778185018380518252602090810151910152565b8401516101c0848101529050614a916101e08401826145f0565b949350505050565b815181526020808301519082015260408101612384565b6020815281516020820152602082015160408201526040820151606082015260608201516080820152608082015160a082015260a082015160c082015260c082015160e0820152600060e0830151610100818185015280850151915050610120614b24818501836001600160401b03169052565b8401519050610140614b40848201836001600160401b03169052565b808501519150506102006101608181860152614b606102208601846145f0565b9250808601519050610180601f198685030181870152614b8084836145f0565b908701516101a0878101919091528701516101c0808801919091528701516101e0808801919091529096015115159190940152509192915050565b60008219821115614bce57614bce614c64565b500190565b600082614bee57634e487b7160e01b81526012600452602481fd5b500490565b6000816000190483118215151615614c0d57614c0d614c64565b500290565b600082821015614c2457614c24614c64565b500390565b6000600019821415614c3d57614c3d614c64565b5060010190565b600060ff821660ff811415614c5b57614c5b614c64565b60010192915050565b634e487b7160e01b600052601160045260246000fd5b6001600160a01b0381168114610e5857600080fd5b8015158114610e5857600080fdfeb532073b38c83145e3e5135377a08bf9aab55bc0fd7c1179cd4fb995d2a5159ca26469706673582212206d6a5708021a5a724267a488929a5f36dae93d09a2224074d18d1a4fd66c635a64736f6c63430008040033