0 txs
0 calls
constructor
No constructor.
functions
_feeRecipient
viewfunction _feeRecipient() view returns (address)
AAVE_BASIC_PROXY
viewfunction AAVE_BASIC_PROXY() view returns (address)
AAVE_REFERRAL_CODE
viewfunction AAVE_REFERRAL_CODE() view returns (uint16)
admin
viewfunction admin() view returns (address)
AUTOMATIC_SERVICE_FEE
viewfunction AUTOMATIC_SERVICE_FEE() view returns (uint256)
BOT_REGISTRY_ADDRESS
viewfunction BOT_REGISTRY_ADDRESS() view returns (address)
DISCOUNT_ADDR
viewfunction DISCOUNT_ADDR() view returns (address)
DISCOUNT_ADDRESS
viewfunction DISCOUNT_ADDRESS() view returns (address)
ERR_DEST_AMOUNT_MISSING
viewfunction ERR_DEST_AMOUNT_MISSING() view returns (string)
ERR_NOT_ZEROX_EXCHANGE
viewfunction ERR_NOT_ZEROX_EXCHANGE() view returns (string)
ERR_OFFCHAIN_DATA_INVALID
viewfunction ERR_OFFCHAIN_DATA_INVALID() view returns (string)
ERR_SLIPPAGE_HIT
viewfunction ERR_SLIPPAGE_HIT() view returns (string)
ERR_WRAPPER_INVALID
viewfunction ERR_WRAPPER_INVALID() view returns (string)
ETH_ADDR
viewfunction ETH_ADDR() view returns (address)
EXCHANGE_WETH_ADDRESS
viewfunction EXCHANGE_WETH_ADDRESS() view returns (address)
feeRecipient
viewfunction feeRecipient() view returns (address)
KYBER_ETH_ADDRESS
viewfunction KYBER_ETH_ADDRESS() view returns (address)
MANUAL_SERVICE_FEE
viewfunction MANUAL_SERVICE_FEE() view returns (uint256)
NINETY_NINE_PERCENT_WEI
viewfunction NINETY_NINE_PERCENT_WEI() view returns (uint256)
owner
viewfunction owner() view returns (address)
packExchangeData
purefunction packExchangeData(tuple _exData) pure returns (bytes)
SAVER_EXCHANGE_REGISTRY
viewfunction SAVER_EXCHANGE_REGISTRY() view returns (address)
STABLE_ID
viewfunction STABLE_ID() view returns (uint256)
unpackExchangeData
purefunction unpackExchangeData(bytes _data) pure returns (tuple _exData)
VARIABLE_ID
viewfunction VARIABLE_ID() view returns (uint256)
WETH_ADDRESS
viewfunction WETH_ADDRESS() view returns (address)
ZRX_ALLOWLIST_ADDR
viewfunction ZRX_ALLOWLIST_ADDR() view returns (address)
executeOperation
nonpayablefunction executeOperation(address[], uint256[] amounts, uint256[] premiums, address initiator, bytes params) returns (bool)
kill
nonpayablefunction kill()
setAdminByAdmin
nonpayablefunction setAdminByAdmin(address _admin)
setAdminByOwner
nonpayablefunction setAdminByOwner(address _admin)
setOwnerByAdmin
nonpayablefunction setOwnerByAdmin(address _owner)
withdrawStuckFunds
nonpayablefunction withdrawStuckFunds(address _token, uint256 _amount)
events
No events.
errors
No errors.
creation bytecode
0x608060405234801561001057600080fd5b50600080546001600160a01b03199081163317909155600180549091167325efa336886c74ea8e282ac466bdcd0199f85bb9179055612c9f806100546000396000f3fe6080604052600436106101f25760003560e01c80637b925ab11161010d578063a46a66c9116100a0578063c50ebaf81161006f578063c50ebaf814610491578063cc694d48146104a6578063d4f922dc146104bb578063deca5f88146104d0578063f851a440146104f0576101f9565b8063a46a66c914610399578063a7304bf714610447578063ae08fd1014610467578063b13cdb201461047c576101f9565b80638da5cb5b116100dc5780638da5cb5b146103d8578063920f5c84146103ed578063a342f2381461035a578063a3b8e5d11461041a576101f9565b80637b925ab11461039957806381b94280146101fe578063870e44d9146103ae5780638c8a7958146103c3576101f9565b8063314b6332116101855780634690484011610154578063469048401461035a5780634d2ab9dc1461036f578063526d6461146103845780637753f47b146102d1576101f9565b8063314b6332146102fb5780633a1283221461031057806341c0e1b514610330578063449b9ffa14610345576101f9565b80631e48907b116101c15780631e48907b1461029a578063278d5831146102bc57806329f7fc9e146102d15780632ba38bcb146102e6576101f9565b8063040141e5146101fe57806304c9805c1461022957806305a363de1461024b57806308d4f52a1461026d576101f9565b366101f957005b600080fd5b34801561020a57600080fd5b50610213610505565b60405161022091906129b6565b60405180910390f35b34801561023557600080fd5b5061023e61051d565b6040516102209190612bbf565b34801561025757600080fd5b50610260610523565b6040516102209190612bb0565b34801561027957600080fd5b5061028d61028836600461265e565b610528565b6040516102209190612aae565b3480156102a657600080fd5b506102ba6102b53660046123e3565b610552565b005b3480156102c857600080fd5b5061028d61058b565b3480156102dd57600080fd5b506102136105b3565b3480156102f257600080fd5b5061023e6105cb565b34801561030757600080fd5b506102136105d0565b34801561031c57600080fd5b506102ba61032b36600461241b565b6105e8565b34801561033c57600080fd5b506102ba610681565b34801561035157600080fd5b5061028d6106a6565b34801561036657600080fd5b506102136106d8565b34801561037b57600080fd5b5061023e6106f0565b34801561039057600080fd5b506102136106f6565b3480156103a557600080fd5b5061021361070e565b3480156103ba57600080fd5b5061023e610726565b3480156103cf57600080fd5b50610213610732565b3480156103e457600080fd5b5061021361074a565b3480156103f957600080fd5b5061040d610408366004612446565b610759565b6040516102209190612aa3565b34801561042657600080fd5b5061043a6104353660046125a4565b610a99565b6040516102209190612b71565b34801561045357600080fd5b506102ba6104623660046123e3565b610abb565b34801561047357600080fd5b5061028d610af4565b34801561048857600080fd5b50610213610b25565b34801561049d57600080fd5b5061028d610b3d565b3480156104b257600080fd5b5061028d610b6c565b3480156104c757600080fd5b5061023e610b97565b3480156104dc57600080fd5b506102ba6104eb3660046123e3565b610b9c565b3480156104fc57600080fd5b50610213610bc9565b73c02aaa39b223fe8d0a0e5c4f27ead9083c756cc281565b61014d81565b604081565b60608160405160200161053b9190612b71565b60405160208183030381529060405290505b919050565b6001546001600160a01b0316331461056957600080fd5b600080546001600160a01b0319166001600160a01b0392909216919091179055565b6040518060400160405280600c81526020016b14db1a5c1c1859d9481a1a5d60a21b81525081565b73eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee81565b600181565b7325dd3f51e0c3c3ff164ddc02a8e4d65bb9cbb12d81565b6000546001600160a01b031633146105ff57600080fd5b73eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee6001600160a01b038316141561066357600080546040516001600160a01b039091169183156108fc02918491818181858888f1935050505015801561065d573d6000803e3d6000fd5b5061067d565b60005461067d906001600160a01b03848116911683610bd8565b5050565b6000546001600160a01b0316331461069857600080fd5b6000546001600160a01b0316ff5b6040518060400160405280601681526020017516995c9bde08195e18da185b99d9481a5b9d985b1a5960521b81525081565b7339c4a92dc506300c3ea4c67ca4ca611102ee6f2a81565b61019081565b73637726f8b08a7abe3ae3acab01a80e2d8ddef77b81565b731b14e8d511c9a4395425314f849bd737baf8208f81565b670dbd2fc137a3000081565b734ba1f38427b33b8ab7bb0490200dae1f1c36823f81565b6000546001600160a01b031681565b60006060818080808061076e888a018a6125d7565b955095509550955095509550806001600160a01b03168a6001600160a01b0316146107b45760405162461bcd60e51b81526004016107ab90612b42565b60405180910390fd5b6107bc6120fa565b6107c587610a99565b9050816001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561080057600080fd5b505afa158015610814573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061083891906123ff565b6001600160a01b031660c082015261019060a08201526040516320eb73ed60e11b815273637726f8b08a7abe3ae3acab01a80e2d8ddef77b906341d6e7da906108859032906004016129b6565b60206040518083038186803b15801561089d57600080fd5b505afa1580156108b1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108d59190612543565b156108e35761014d60a08201525b60008d8d60008181106108f257fe5b9050602002013582604001510190508315610a4757610915828888868986610c33565b81516001600160a01b03811673eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee14156109bc5773c02aaa39b223fe8d0a0e5c4f27ead9083c756cc26001600160a01b031663d0e30db0836040518263ffffffff1660e01b81526004016000604051808303818588803b15801561098b57600080fd5b505af115801561099f573d6000803e3d6000fd5b505050505073c02aaa39b223fe8d0a0e5c4f27ead9083c756cc290505b610a41886001600160a01b0316630261bf8b6040518163ffffffff1660e01b815260040160206040518083038186803b1580156109f857600080fd5b505afa158015610a0c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a3091906123ff565b6001600160a01b0383169084610f48565b50610a53565b610a5382888886610f87565b60405132904780156108fc02916000818181858888f19350505050158015610a7f573d6000803e3d6000fd5b506001985050505050505050509998505050505050505050565b610aa16120fa565b81806020019051810190610ab59190612766565b92915050565b6001546001600160a01b03163314610ad257600080fd5b600180546001600160a01b0319166001600160a01b0392909216919091179055565b6040518060400160405280601581526020017413d99998da185a5b8819185d18481a5b9d985b1a59605a1b81525081565b73c17c8eb12ba24d62e69fd57cbd504eef418867f981565b604051806040016040528060138152602001724465737420616d6f756e74206d697373696e6760681b81525081565b6040518060400160405280600f81526020016e15dc985c1c195c881a5b9d985b1a59608a1b81525081565b600281565b6000546001600160a01b03163314610bb357600080fd5b6001546001600160a01b031615610ad257600080fd5b6001546001600160a01b031681565b610c2e8363a9059cbb60e01b8484604051602401610bf7929190612a8a565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b0319909316929092179091526111be565b505050565b6000610c3e8761124d565b9150506000846001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b158015610c7c57600080fd5b505afa158015610c90573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610cb491906123ff565b9050610d37876001600160a01b031663fca513a86040518163ffffffff1660e01b815260040160206040518083038186803b158015610cf257600080fd5b505afa158015610d06573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d2a91906123ff565b8383898c60200151611594565b60208901519203916000906001600160a01b031673eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee1415610d6d575081610d86565b6020890151610d86906001600160a01b03168785610f48565b856001600160a01b0316631cff79cd8273c17c8eb12ba24d62e69fd57cbd504eef418867f98b8d60200151888b604051602401610dc69493929190612a21565b60408051601f198184030181529181526020820180516001600160e01b03166350356ab760e01b1790525160e085901b6001600160e01b0319168152610e10929190600401612a4a565b6020604051808303818588803b158015610e2957600080fd5b505af1158015610e3d573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610e62919061258c565b50856001600160a01b0316631cff79cd73c17c8eb12ba24d62e69fd57cbd504eef418867f98a8c6000015188604051602401610ea0939291906129ca565b60408051601f198184030181529181526020820180516001600160e01b0316636ce5768960e11b1790525160e084901b6001600160e01b0319168152610eea929190600401612a4a565b602060405180830381600087803b158015610f0457600080fd5b505af1158015610f18573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f3c919061258c565b50505050505050505050565b610f688363095ea7b360e01b846000604051602401610bf7929190612a6e565b610c2e8363095ea7b360e01b8484604051602401610bf7929190612a8a565b6000610f928561124d565b9150506000826001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b158015610fd057600080fd5b505afa158015610fe4573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061100891906123ff565b905061108b856001600160a01b031663fca513a86040518163ffffffff1660e01b815260040160206040518083038186803b15801561104657600080fd5b505afa15801561105a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061107e91906123ff565b8383878a60200151611594565b60208701519203916000906001600160a01b031673eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee14156110c15750816110da565b60208701516110da906001600160a01b03168585610f48565b836001600160a01b0316631cff79cd8273c17c8eb12ba24d62e69fd57cbd504eef418867f9898b6020015188604051602401611118939291906129ca565b60408051601f198184030181529181526020820180516001600160e01b0316638340f54960e01b1790525160e085901b6001600160e01b0319168152611162929190600401612a4a565b6020604051808303818588803b15801561117b57600080fd5b505af115801561118f573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906111b4919061258c565b5050505050505050565b6060611213826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b03166117669092919063ffffffff16565b805190915015610c2e57808060200190518101906112319190612543565b610c2e5760405162461bcd60e51b81526004016107ab90612af8565b600080600080600073eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee6001600160a01b031686600001516001600160a01b031614156113085785516112929061177d565b6001600160a01b031686526040808701518151630d0e30db60e41b8152915173c02aaa39b223fe8d0a0e5c4f27ead9083c756cc29263d0e30db09291600480830192600092919082900301818588803b1580156112ee57600080fd5b505af1158015611302573d6000803e3d6000fd5b50505050505b61132486604001518760c0015188600001518960a001516117c4565b60408701805191909103905261012086015160600151156113615761134a866000611a17565b925090508015611361578561012001516020015192505b8061137b57611371866000611c15565b91508560e0015192505b600061139a73c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2611e5e565b1115611480576040516370a0823160e01b815273c02aaa39b223fe8d0a0e5c4f27ead9083c756cc290632e1a7d4d9082906370a08231906113df9030906004016129b6565b602060405180830381600087803b1580156113f957600080fd5b505af115801561140d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611431919061258c565b6040518263ffffffff1660e01b815260040161144d9190612bbf565b600060405180830381600087803b15801561146757600080fd5b505af115801561147b573d6000803e3d6000fd5b505050505b60208601516001600160a01b031673c02aaa39b223fe8d0a0e5c4f27ead9083c756cc21415611523576114bb86608001518760400151611f08565b6114d873eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee611e5e565b10156040518060400160405280600c81526020016b14db1a5c1c1859d9481a1a5d60a21b8152509061151d5760405162461bcd60e51b81526004016107ab9190612aae565b50611589565b61153586608001518760400151611f08565b6115428760200151611e5e565b10156040518060400160405280600c81526020016b14db1a5c1c1859d9481a1a5d60a21b815250906115875760405162461bcd60e51b81526004016107ab9190612aae565b505b509092509050915091565b6000826115a35750600061175d565b60405163b3596f0760e01b81526000906001600160a01b0388169063b3596f07906115d29086906004016129b6565b60206040518083038186803b1580156115ea57600080fd5b505afa1580156115fe573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611622919061258c565b905061162d83611f41565b601203600a0a61163d8583611fa9565b8161164457fe5b049350839150600a860482111561165c57600a860491505b60007339c4a92dc506300c3ea4c67ca4ca611102ee6f2a6001600160a01b031663b38779eb6040518163ffffffff1660e01b815260040160206040518083038186803b1580156116ab57600080fd5b505afa1580156116bf573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906116e391906123ff565b90506001600160a01b03841673eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee1415611746576040516001600160a01b0382169084156108fc029085906000818181858888f19350505050158015611740573d6000803e3d6000fd5b5061175a565b61175a6001600160a01b0385168285610bd8565b50505b95945050505050565b60606117758484600085611fc9565b949350505050565b60006001600160a01b03821673eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee146117a95781610ab5565b5073c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2919050565b600081158015906118575750604051632cdc77ab60e21b8152731b14e8d511c9a4395425314f849bd737baf8208f9063b371deac906118079087906004016129b6565b60206040518083038186803b15801561181f57600080fd5b505afa158015611833573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906118579190612543565b156118e657604051636eeb543160e01b8152731b14e8d511c9a4395425314f849bd737baf8208f90636eeb5431906118939087906004016129b6565b60206040518083038186803b1580156118ab57600080fd5b505afa1580156118bf573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906118e3919061258c565b91505b816118f357506000611775565b8185816118fc57fe5b049050600a85048111156119105750600a84045b60007339c4a92dc506300c3ea4c67ca4ca611102ee6f2a6001600160a01b031663b38779eb6040518163ffffffff1660e01b815260040160206040518083038186803b15801561195f57600080fd5b505afa158015611973573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061199791906123ff565b90506001600160a01b03841673eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee14156119fa576040516001600160a01b0382169083156108fc029084906000818181858888f193505050501580156119f4573d6000803e3d6000fd5b50611a0e565b611a0e6001600160a01b0385168284610bd8565b50949350505050565b610120820151602001516040516302f5cc7960e11b81526000918291734ba1f38427b33b8ab7bb0490200dae1f1c36823f916305eb98f291611a5c91906004016129b6565b60206040518083038186803b158015611a7457600080fd5b505afa158015611a88573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611aac9190612543565b611abb57506000905080611c0e565b6101208401515160405163e0aa279760e01b81527325dd3f51e0c3c3ff164ddc02a8e4d65bb9cbb12d9163e0aa279791611af891906004016129b6565b60206040518083038186803b158015611b1057600080fd5b505afa158015611b24573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611b489190612543565b611b5757506000905080611c0e565b6101208401515160408501518551611b7a926001600160a01b0390911691610bd8565b610120840151805160809091015160405163097396a160e31b81526001600160a01b0390921691634b9cb5089190611bb89088908890600401612b84565b60408051808303818588803b158015611bd057600080fd5b505af1158015611be4573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190611c09919061255f565b915091505b9250929050565b60e082015160405163e0aa279760e01b81526000917325dd3f51e0c3c3ff164ddc02a8e4d65bb9cbb12d9163e0aa279791611c52916004016129b6565b60206040518083038186803b158015611c6a57600080fd5b505afa158015611c7e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611ca29190612543565b6040518060400160405280600f81526020016e15dc985c1c195c881a5b9d985b1a59608a1b81525090611ce85760405162461bcd60e51b81526004016107ab9190612aae565b5060e083015160408401518451611d0a926001600160a01b0390911691610bd8565b6000826001811115611d1857fe5b1415611dbe578260e001516001600160a01b0316635b6f36fc8460000151856020015186604001518761010001516040518563ffffffff1660e01b8152600401611d6594939291906129ee565b602060405180830381600087803b158015611d7f57600080fd5b505af1158015611d93573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611db7919061258c565b9050610ab5565b8260e001516001600160a01b0316633924db668460000151856020015186606001518761010001516040518563ffffffff1660e01b8152600401611e0594939291906129ee565b602060405180830381600087803b158015611e1f57600080fd5b505af1158015611e33573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611e57919061258c565b9392505050565b60006001600160a01b03821673eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee1415611e8c57504761054d565b6040516370a0823160e01b81526001600160a01b038316906370a0823190611eb89030906004016129b6565b60206040518083038186803b158015611ed057600080fd5b505afa158015611ee4573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ab5919061258c565b6000670de0b6b3a7640000611f32611f20858561208d565b6002670de0b6b3a76400005b046120b1565b81611f3957fe5b049392505050565b60006001600160a01b03821673eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee1415611f705750601261054d565b816001600160a01b031663313ce5676040518163ffffffff1660e01b815260040160206040518083038186803b158015611ed057600080fd5b600081611f32611fc185670de0b6b3a764000061208d565b600285611f2c565b6060611fd4856120c1565b611ff05760405162461bcd60e51b81526004016107ab90612ac1565b60006060866001600160a01b0316858760405161200d919061299a565b60006040518083038185875af1925050503d806000811461204a576040519150601f19603f3d011682016040523d82523d6000602084013e61204f565b606091505b509150915081156120635791506117759050565b8051156120735780518082602001fd5b8360405162461bcd60e51b81526004016107ab9190612aae565b60008115806120a8575050808202828282816120a557fe5b04145b610ab557600080fd5b80820182811015610ab557600080fd5b6000813f7fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470818114801590611775575050151592915050565b60405180610140016040528060006001600160a01b0316815260200160006001600160a01b031681526020016000815260200160008152602001600081526020016000815260200160006001600160a01b0316815260200160006001600160a01b0316815260200160608152602001612171612176565b905290565b6040518060c0016040528060006001600160a01b0316815260200160006001600160a01b0316815260200160006001600160a01b031681526020016000815260200160008152602001606081525090565b8035610ab581612c43565b8051610ab581612c43565b60008083601f8401126121ee578182fd5b50813567ffffffffffffffff811115612205578182fd5b6020830191508360208083028501011115611c0e57600080fd5b600082601f83011261222f578081fd5b813561224261223d82612bef565b612bc8565b915080825283602082850101111561225957600080fd5b8060208401602084013760009082016020015292915050565b600082601f830112612282578081fd5b815161229061223d82612bef565b91508082528360208285010111156122a757600080fd5b6122b8816020840160208601612c13565b5092915050565b600060c082840312156122d0578081fd5b6122da60c0612bc8565b905081356122e781612c43565b815260208201356122f781612c43565b6020820152604082013561230a81612c43565b80604083015250606082013560608201526080820135608082015260a082013567ffffffffffffffff81111561233f57600080fd5b61234b8482850161221f565b60a08301525092915050565b600060c08284031215612368578081fd5b61237260c0612bc8565b9050815161237f81612c43565b8152602082015161238f81612c43565b602082015260408201516123a281612c43565b80604083015250606082015160608201526080820151608082015260a082015167ffffffffffffffff8111156123d757600080fd5b61234b84828501612272565b6000602082840312156123f4578081fd5b8135611e5781612c43565b600060208284031215612410578081fd5b8151611e5781612c43565b6000806040838503121561242d578081fd5b823561243881612c43565b946020939093013593505050565b600080600080600080600080600060a08a8c031215612463578485fd5b893567ffffffffffffffff8082111561247a578687fd5b6124868d838e016121dd565b909b50995060208c013591508082111561249e578687fd5b6124aa8d838e016121dd565b909950975060408c01359150808211156124c2578687fd5b6124ce8d838e016121dd565b909750955060608c013591506124e382612c43565b90935060808b013590808211156124f8578384fd5b818c0191508c601f83011261250b578384fd5b813581811115612519578485fd5b8d602082850101111561252a578485fd5b6020830194508093505050509295985092959850929598565b600060208284031215612554578081fd5b8151611e5781612c5b565b60008060408385031215612571578182fd5b825161257c81612c5b565b6020939093015192949293505050565b60006020828403121561259d578081fd5b5051919050565b6000602082840312156125b5578081fd5b813567ffffffffffffffff8111156125cb578182fd5b6117758482850161221f565b60008060008060008060c087890312156125ef578384fd5b863567ffffffffffffffff811115612605578485fd5b61261189828a0161221f565b965050602087013561262281612c43565b94506040870135935060608701359250608087013561264081612c5b565b915060a087013561265081612c43565b809150509295509295509295565b60006020828403121561266f578081fd5b813567ffffffffffffffff80821115612686578283fd5b818401915061014080838703121561269c578384fd5b6126a581612bc8565b90506126b186846121c7565b81526126c086602085016121c7565b602082015260408301356040820152606083013560608201526080830135608082015260a083013560a08201526126fa8660c085016121c7565b60c082015261270c8660e085016121c7565b60e08201526101008084013583811115612724578586fd5b6127308882870161221f565b8284015250506101208084013583811115612749578586fd5b612755888287016122bf565b918301919091525095945050505050565b600060208284031215612777578081fd5b815167ffffffffffffffff8082111561278e578283fd5b81840191506101408083870312156127a4578384fd5b6127ad81612bc8565b90506127b986846121d2565b81526127c886602085016121d2565b602082015260408301516040820152606083015160608201526080830151608082015260a083015160a08201526128028660c085016121d2565b60c08201526128148660e085016121d2565b60e0820152610100808401518381111561282c578586fd5b61283888828701612272565b8284015250506101208084015183811115612851578586fd5b61275588828701612357565b6001600160a01b03169052565b60008151808452612882816020860160208601612c13565b601f01601f19169290920160200192915050565b60006101406128a684845161285d565b60208301516128b8602086018261285d565b5060408301516040850152606083015160608501526080830151608085015260a083015160a085015260c08301516128f360c086018261285d565b5060e083015161290660e086018261285d565b5061010080840151828287015261291f8387018261286a565b92505050610120808401518583038287015261293b8382612945565b9695505050505050565b600060018060a01b0380835116845280602084015116602085015280604084015116604085015250606082015160608401526080820151608084015260a082015160c060a085015261177560c085018261286a565b600082516129ac818460208701612c13565b9190910192915050565b6001600160a01b0391909116815260200190565b6001600160a01b039384168152919092166020820152604081019190915260600190565b6001600160a01b038581168252841660208201526040810183905260806060820181905260009061293b9083018461286a565b6001600160a01b0394851681529290931660208301526040820152606081019190915260800190565b6001600160a01b03831681526040602082018190526000906117759083018461286a565b6001600160a01b0392909216825260ff16602082015260400190565b6001600160a01b03929092168252602082015260400190565b901515815260200190565b600060208252611e57602083018461286a565b6020808252601d908201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604082015260600190565b6020808252602a908201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e6040820152691bdd081cdd58d8d9595960b21b606082015260800190565b602080825260159082015274696e69746961746f722069736e27742070726f787960581b604082015260600190565b600060208252611e576020830184612896565b600060408252612b976040830185612896565b905060028310612ba357fe5b8260208301529392505050565b61ffff91909116815260200190565b90815260200190565b60405181810167ffffffffffffffff81118282101715612be757600080fd5b604052919050565b600067ffffffffffffffff821115612c05578081fd5b50601f01601f191660200190565b60005b83811015612c2e578181015183820152602001612c16565b83811115612c3d576000848401525b50505050565b6001600160a01b0381168114612c5857600080fd5b50565b8015158114612c5857600080fdfea26469706673582212202d873b4078ae218be06b2c15c7d061ae81de823cd79c5f39e2e0bb948dc9484164736f6c634300060c0033