0 txs
0 calls
constructor
constructor()
functions
addressesProvider
viewfunction addressesProvider() view returns (address)
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)
DAI_ADDRESS
viewfunction DAI_ADDRESS() view returns (address)
DAI_JOIN_ADDRESS
viewfunction DAI_JOIN_ADDRESS() view returns (address)
daiJoin
viewfunction daiJoin() view returns (address)
DISCOUNT_ADDRESS
viewfunction DISCOUNT_ADDRESS() view returns (address)
ERC20_PROXY_0X
viewfunction ERC20_PROXY_0X() view returns (address)
ETH_ILK
viewfunction ETH_ILK() view returns (bytes32)
getCdpDetailedInfo
viewfunction getCdpDetailedInfo(uint256 _cdpId) view returns (uint256 collateral, uint256 debt, uint256 price, bytes32 ilk)
getCdpInfo
viewfunction getCdpInfo(address _manager, uint256 _cdpId, bytes32 _ilk) view returns (uint256, uint256)
getMaxCollateral
viewfunction getMaxCollateral(uint256 _cdpId, bytes32 _ilk, address _joinAddr) view returns (uint256)
getMaxDebt
viewfunction getMaxDebt(uint256 _cdpId, bytes32 _ilk) view returns (uint256)
getOwner
viewfunction getOwner(address _manager, uint256 _cdpId) view returns (address)
getPrice
viewfunction getPrice(bytes32 _ilk) view returns (uint256)
getRatio
viewfunction getRatio(uint256 _cdpId, bytes32 _ilk) view returns (uint256)
JUG_ADDRESS
viewfunction JUG_ADDRESS() view returns (address)
KYBER_ETH_ADDRESS
viewfunction KYBER_ETH_ADDRESS() view returns (address)
LENDING_POOL_ADDRESS_PROVIDER
viewfunction LENDING_POOL_ADDRESS_PROVIDER() view returns (address)
logger
viewfunction logger() view returns (address)
MANAGER_ADDRESS
viewfunction MANAGER_ADDRESS() view returns (address)
manager
viewfunction manager() view returns (address)
MANUAL_SERVICE_FEE
viewfunction MANUAL_SERVICE_FEE() 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)
SPOTTER_ADDRESS
viewfunction SPOTTER_ADDRESS() view returns (address)
spotter
viewfunction spotter() view returns (address)
unpackExchangeData
purefunction unpackExchangeData(bytes _data) pure returns (tuple _exData)
VAT_ADDRESS
viewfunction VAT_ADDRESS() view returns (address)
vat
viewfunction vat() view returns (address)
WALLET_ID
viewfunction WALLET_ID() view returns (address)
WETH_ADDRESS
viewfunction WETH_ADDRESS() view returns (address)
ZRX_ALLOWLIST_ADDR
viewfunction ZRX_ALLOWLIST_ADDR() view returns (address)
boost
payablefunction boost(tuple _exchangeData, uint256 _cdpId, uint256 _gasCost, address _joinAddr) payable
executeOperation
nonpayablefunction executeOperation(address _reserve, uint256 _amount, uint256 _fee, bytes _params)
kill
nonpayablefunction kill()
repay
payablefunction repay(tuple _exchangeData, uint256 _cdpId, uint256 _gasCost, address _joinAddr) payable
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
0x6080604052600380546001600160a01b0319167324a42fd28c976a61df5d00d0599c34c4f90748c817905534801561003657600080fd5b50600354600080546001600160a01b03199081163317909155600280549091166001600160a01b039092169190911790556153b8806100766000396000f3fe6080604052600436106102605760003560e01c8063856cba6c11610144578063cfac57c7116100b6578063e31f584c1161007a578063e31f584c146105f5578063e9c2b6f914610615578063ed20210914610628578063ee87255814610648578063f24ccbfe14610668578063f851a4401461067d57610267565b8063cfac57c714610551578063d0cc72891461057b578063d3661fa514610590578063deca5f88146105a5578063e304c608146105c557610267565b8063a46a66c911610108578063a46a66c914610507578063a7304bf71461051c578063acbeba611461053c578063c11645bc14610551578063c72c4d1014610566578063cf786f8f1461038457610267565b8063856cba6c146104885780638c8a79581461049b5780638da5cb5b146104b057806398ab3d49146104c5578063a3b8e5d1146104da57610267565b806336569e77116101dd578063481c6a75116101a1578063481c6a75146103995780634d2ab9dc1461041157806351a885c014610426578063526d646114610446578063534859071461045b5780636738929f1461031a57610267565b806336569e7714610384578063380d4244146103995780633a128322146103ae5780634115fe6b146103ce57806341c0e1b5146103fc57610267565b80632a4c0a1a116102245780632a4c0a1a146103055780632e77468d1461031a5780632f634a901461032f578063314b63321461034f57806331d98b3f1461036457610267565b8063040141e51461026c57806304c9805c14610297578063186cab76146102b95780631e48907b146102ce57806329f7fc9e146102f057610267565b3661026757005b600080fd5b34801561027857600080fd5b50610281610692565b60405161028e9190614d24565b60405180910390f35b3480156102a357600080fd5b506102ac6106aa565b60405161028e9190614f17565b3480156102c557600080fd5b506102ac6106b0565b3480156102da57600080fd5b506102ee6102e9366004614815565b6106bc565b005b3480156102fc57600080fd5b506102816106f5565b34801561031157600080fd5b5061028161070d565b34801561032657600080fd5b50610281610725565b34801561033b57600080fd5b5061028161034a366004614894565b61073d565b34801561035b57600080fd5b50610281610839565b34801561037057600080fd5b506102ac61037f36600461496c565b610851565b34801561039057600080fd5b50610281610a11565b3480156103a557600080fd5b50610281610a29565b3480156103ba57600080fd5b506102ee6103c9366004614894565b610a3b565b3480156103da57600080fd5b506103ee6103e9366004614aa6565b610ad4565b60405161028e929190615298565b34801561040857600080fd5b506102ee610cf0565b34801561041d57600080fd5b506102ac610d15565b34801561043257600080fd5b506102ac610441366004614c11565b610d1b565b34801561045257600080fd5b50610281610d7b565b34801561046757600080fd5b5061047b610476366004614b07565b610d93565b60405161028e9190614f6c565b6102ee610496366004614b3a565b610e37565b3480156104a757600080fd5b50610281610ff9565b3480156104bc57600080fd5b50610281611011565b3480156104d157600080fd5b50610281611020565b3480156104e657600080fd5b506104fa6104f536600461499c565b61102f565b60405161028e9190615162565b34801561051357600080fd5b506102816110c9565b34801561052857600080fd5b506102ee610537366004614815565b6110e1565b34801561054857600080fd5b5061028161111a565b34801561055d57600080fd5b50610281611132565b34801561057257600080fd5b5061028161114a565b34801561058757600080fd5b50610281611159565b34801561059c57600080fd5b50610281611171565b3480156105b157600080fd5b506102ee6105c0366004614815565b611189565b3480156105d157600080fd5b506105e56105e036600461496c565b6111b6565b60405161028e94939291906152a6565b34801561060157600080fd5b506102ac610610366004614c32565b61140c565b6102ee610623366004614b3a565b61157d565b34801561063457600080fd5b506102ac610643366004614c11565b611744565b34801561065457600080fd5b506102ee6106633660046148bf565b611830565b34801561067457600080fd5b50610281611930565b34801561068957600080fd5b50610281611948565b73c02aaa39b223fe8d0a0e5c4f27ead9083c756cc281565b61014d81565b644554482d4160d81b81565b6001546001600160a01b031633146106d357600080fd5b600080546001600160a01b0319166001600160a01b0392909216919091179055565b73eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee81565b736b175474e89094c44da98b954eedeac495271d0f81565b7365c79fcb50ca1594b025960e539ed7a9a6d434a381565b600080836001600160a01b0316638161b120846040518263ffffffff1660e01b815260040161076c9190614f17565b60206040518083038186803b15801561078457600080fd5b505afa158015610798573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107bc9190614831565b9050806001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b1580156107f757600080fd5b505afa15801561080b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061082f9190614831565b9150505b92915050565b7325dd3f51e0c3c3ff164ddc02a8e4d65bb9cbb12d81565b604051636cb1c69b60e11b815260009081907365c79fcb50ca1594b025960e539ed7a9a6d434a39063d9638d369061088d908690600401614f17565b604080518083038186803b1580156108a457600080fd5b505afa1580156108b8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108dc9190614ada565b604051636cb1c69b60e11b8152909250600091507335d1b3f3d7966a1dfe207aa4514c12a259a0492b9063d9638d369061091a908790600401614f17565b60a06040518083038186803b15801561093257600080fd5b505afa158015610946573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061096a9190614c8d565b505092505050610a07610a01827365c79fcb50ca1594b025960e539ed7a9a6d434a36001600160a01b031663495d32cb6040518163ffffffff1660e01b815260040160206040518083038186803b1580156109c457600080fd5b505afa1580156109d8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109fc9190614984565b611957565b83611957565b925050505b919050565b7335d1b3f3d7966a1dfe207aa4514c12a259a0492b81565b60008051602061536383398151915281565b6000546001600160a01b03163314610a5257600080fd5b73eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee6001600160a01b0383161415610ab657600080546040516001600160a01b039091169183156108fc02918491818181858888f19350505050158015610ab0573d6000803e3d6000fd5b50610ad0565b600054610ad0906001600160a01b03848116911683611996565b5050565b6000806000856001600160a01b03166336569e776040518163ffffffff1660e01b815260040160206040518083038186803b158015610b1257600080fd5b505afa158015610b26573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b4a9190614831565b90506000866001600160a01b0316632726b073876040518263ffffffff1660e01b8152600401610b7a9190614f17565b60206040518083038186803b158015610b9257600080fd5b505afa158015610ba6573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610bca9190614831565b9050600080836001600160a01b0316632424be5c88856040518363ffffffff1660e01b8152600401610bfd929190614f20565b604080518083038186803b158015610c1457600080fd5b505afa158015610c28573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c4c9190614c6a565b915091506000846001600160a01b031663d9638d36896040518263ffffffff1660e01b8152600401610c7e9190614f17565b60a06040518083038186803b158015610c9657600080fd5b505afa158015610caa573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610cce9190614c8d565b50505091505082610cdf8383611957565b965096505050505050935093915050565b6000546001600160a01b03163314610d0757600080fd5b6000546001600160a01b0316ff5b61019081565b600080610d2783610851565b9050600080610d456000805160206153638339815191528787610ad4565b915091508060001415610d5e5760009350505050610833565b610d71610d6b83856119f1565b82611a19565b9695505050505050565b73637726f8b08a7abe3ae3acab01a80e2d8ddef77b81565b6060808260000151836020015184604001518560600151604051602001610dbd9493929190614ed2565b60408051601f1981840301815290829052608085015160a086015160c087015160e0880151610100890151949650606095610dfb959060200161521a565b60405160208183030381529060405290508181604051602001610e1f929190614f7f565b60405160208183030381529060405292505050919050565b6000610e516000805160206153638339815191528561073d565b604051632c2cb9fd60e01b815290915060009060008051602061536383398151915290632c2cb9fd90610e88908890600401614f17565b60206040518083038186803b158015610ea057600080fd5b505afa158015610eb4573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ed89190614984565b9050610ee985848860400151611a3c565b506000610ef587611d56565b9150506000610f0e82610f09848988611fcd565b612284565b9050610f1c87848387612294565b4715610f505760405132904780156108fc02916000818181858888f19350505050158015610f4e573d6000803e3d6000fd5b505b735c55b921f590a89c1ebe84df170e655a82b621266001600160a01b031663d061ce5030338a888d6040015188604051602001610f90949392919061525e565b6040516020818303038152906040526040518463ffffffff1660e01b8152600401610fbd93929190614e49565b600060405180830381600087803b158015610fd757600080fd5b505af1158015610feb573d6000803e3d6000fd5b505050505050505050505050565b734ba1f38427b33b8ab7bb0490200dae1f1c36823f81565b6000546001600160a01b031681565b6003546001600160a01b031681565b61103761460c565b6060808380602001905181019061104e91906149cf565b9150915081806020019051810190611066919061484d565b606087015260408601526001600160a01b0390811660208087019190915291168452815161109b919083018101908301614b9b565b61010088015260e08701526001600160a01b0390811660c08701521660a08501526080840152509092915050565b731b14e8d511c9a4395425314f849bd737baf8208f81565b6001546001600160a01b031633146110f857600080fd5b600180546001600160a01b0319166001600160a01b0392909216919091179055565b7319c0976f590d67707e62397c87829d896dc0f1f181565b739759a6ac90977b93b58547b4a71c78317f391a2881565b6002546001600160a01b031681565b7395e6f48254609a6ee006f7d493c8e5fb97094cef81565b73322d58b9e75a6918f7e7849aee0ff09369977e0881565b6000546001600160a01b031633146111a057600080fd5b6001546001600160a01b0316156110f857600080fd5b60008060008060006000805160206153638339815191526001600160a01b0316632726b073876040518263ffffffff1660e01b81526004016111f89190614f17565b60206040518083038186803b15801561121057600080fd5b505afa158015611224573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112489190614831565b604051632c2cb9fd60e01b815290915060008051602061536383398151915290632c2cb9fd9061127c908990600401614f17565b60206040518083038186803b15801561129457600080fd5b505afa1580156112a8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112cc9190614984565b6040516309092f9760e21b81529092507335d1b3f3d7966a1dfe207aa4514c12a259a0492b90632424be5c906113089085908590600401614f20565b604080518083038186803b15801561131f57600080fd5b505afa158015611333573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113579190614c6a565b604051636cb1c69b60e11b815291965094506000907335d1b3f3d7966a1dfe207aa4514c12a259a0492b9063d9638d3690611396908690600401614f17565b60a06040518083038186803b1580156113ae57600080fd5b505afa1580156113c2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113e69190614c8d565b5050509150506113f68582611957565b945061140183610851565b935050509193509193565b60008061141884610851565b90506000806114366000805160206153638339815191528888610ad4565b604051636cb1c69b60e11b815291935091506000907365c79fcb50ca1594b025960e539ed7a9a6d434a39063d9638d3690611475908a90600401614f17565b604080518083038186803b15801561148c57600080fd5b505afa1580156114a0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114c49190614ada565b91505060006114e084610f096114da8587612625565b88612649565b90506000876001600160a01b031663b3bcfa826040518163ffffffff1660e01b815260040160206040518083038186803b15801561151d57600080fd5b505afa158015611531573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906115559190614984565b601203600a0a828161156357fe5b0490506064606382020496505050505050505b9392505050565b60006115976000805160206153638339815191528561073d565b604051632c2cb9fd60e01b815290915060009060008051602061536383398151915290632c2cb9fd906115ce908890600401614f17565b60206040518083038186803b1580156115e657600080fd5b505afa1580156115fa573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061161e9190614984565b9050600061163186838960400151612654565b9050600061164482610f09848988611fcd565b604089018190529050600061165889611d56565b915050611666888783612a95565b471561169a5760405132904780156108fc02916000818181858888f19350505050158015611698573d6000803e3d6000fd5b505b735c55b921f590a89c1ebe84df170e655a82b621266001600160a01b031663d061ce5030338b898e60400151876040516020016116da949392919061525e565b6040516020818303038152906040526040518463ffffffff1660e01b815260040161170793929190614dac565b600060405180830381600087803b15801561172157600080fd5b505af1158015611735573d6000803e3d6000fd5b50505050505050505050505050565b60008061175083610851565b604051636cb1c69b60e11b81529091506000907365c79fcb50ca1594b025960e539ed7a9a6d434a39063d9638d369061178d908790600401614f17565b604080518083038186803b1580156117a457600080fd5b505afa1580156117b8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117dc9190614ada565b9150506000806117fb6000805160206153638339815191528888610ad4565b9150915061182561181e6118186118128588612625565b86612649565b83612284565b600a612284565b979650505050505050565b61183a3086612df0565b8411156118625760405162461bcd60e51b815260040161185990615086565b60405180910390fd5b6060600080808061187586880188614a30565b9450945094509450945061188761460c565b6118908661102f565b905061189a61467c565b6040518060a001604052808781526020018681526020018c81526020018b8152602001856001600160a01b0316815250905082156118e1576118dc8282612ea0565b6118eb565b6118eb8282613059565b6118fe8c6118f98d8d6132f4565b613319565b4715610feb5760405132904780156108fc02916000818181858888f19350505050158015611735573d6000803e3d6000fd5b735c55b921f590a89c1ebe84df170e655a82b6212681565b6001546001600160a01b031681565b6000676765c793fa10079d601b1b6119876119728585612625565b6002676765c793fa10079d601b1b5b046133a3565b8161198e57fe5b049392505050565b6119ec8363a9059cbb60e01b84846040516024016119b5929190614e95565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b0319909316929092179091526133b3565b505050565b6000670de0b6b3a7640000611987611a098585612625565b6002670de0b6b3a7640000611981565b600081611987611a3485676765c793fa10079d601b1b612625565b600285611981565b600080829050836001600160a01b031663b3bcfa826040518163ffffffff1660e01b815260040160206040518083038186803b158015611a7b57600080fd5b505afa158015611a8f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611ab39190614984565b601214611b3657836001600160a01b031663b3bcfa826040518163ffffffff1660e01b815260040160206040518083038186803b158015611af357600080fd5b505afa158015611b07573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611b2b9190614984565b601203600a0a830290505b6000805160206153638339815191526345e6bdcd86611b5484613442565b60000360006040518463ffffffff1660e01b8152600401611b7793929190615282565b600060405180830381600087803b158015611b9157600080fd5b505af1158015611ba5573d6000803e3d6000fd5b50506040516313771f0760e31b81526000805160206153638339815191529250639bb8f8389150611bde908890309086906004016151fb565b600060405180830381600087803b158015611bf857600080fd5b505af1158015611c0c573d6000803e3d6000fd5b505060405163ef693bed60e01b81526001600160a01b038716925063ef693bed9150611c3e9030908790600401614e95565b600060405180830381600087803b158015611c5857600080fd5b505af1158015611c6c573d6000803e3d6000fd5b50505050611c7984613464565b15611d4d57836001600160a01b0316637bd2bea76040518163ffffffff1660e01b815260040160206040518083038186803b158015611cb757600080fd5b505afa158015611ccb573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611cef9190614831565b6001600160a01b0316632e1a7d4d846040518263ffffffff1660e01b8152600401611d1a9190614f17565b600060405180830381600087803b158015611d3457600080fd5b505af1158015611d48573d6000803e3d6000fd5b505050505b50909392505050565b604081015181516000918291829182918291906001600160a01b031673eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee1415611e0e578651611d9890613541565b6001600160a01b031687526040808801518151630d0e30db60e41b8152915173c02aaa39b223fe8d0a0e5c4f27ead9083c756cc29263d0e30db09291600480830192600092919082900301818588803b158015611df457600080fd5b505af1158015611e08573d6000803e3d6000fd5b50505050505b61010087015115611e6557611e2b87600001518860400151613588565b6000611e3f886000015189604001516135d4565b9050611e4d8882600061361b565b90955090935091508215611e63578760c0015194505b505b81611e7f57611e7587600061394c565b92508660a0015193505b611e91876080015188604001516119f1565b611e9e8860200151613b61565b1015611ebc5760405162461bcd60e51b815260040161185990615009565b6000611edb73c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2613b61565b1115611fc1576040516370a0823160e01b815273c02aaa39b223fe8d0a0e5c4f27ead9083c756cc290632e1a7d4d9082906370a0823190611f20903090600401614d24565b602060405180830381600087803b158015611f3a57600080fd5b505af1158015611f4e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611f729190614984565b6040518263ffffffff1660e01b8152600401611f8e9190614f17565b600060405180830381600087803b158015611fa857600080fd5b505af1158015611fbc573d6000803e3d6000fd5b505050505b50919350915050915091565b6040516320eb73ed60e11b81526000906101909073637726f8b08a7abe3ae3acab01a80e2d8ddef77b906341d6e7da9061200b903290600401614d24565b60206040518083038186803b15801561202357600080fd5b505afa158015612037573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061205b9190614950565b15612065575061014d5b604051632cdc77ab60e21b8152731b14e8d511c9a4395425314f849bd737baf8208f9063b371deac9061209c908690600401614d24565b60206040518083038186803b1580156120b457600080fd5b505afa1580156120c8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906120ec9190614950565b1561217b57604051636eeb543160e01b8152731b14e8d511c9a4395425314f849bd737baf8208f90636eeb543190612128908690600401614d24565b60206040518083038186803b15801561214057600080fd5b505afa158015612154573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906121789190614984565b90505b80156121905780858161218a57fe5b04612193565b60005b915083156121ca5760006121ae644554482d4160d81b610851565b90506121ba8582611957565b94506121c683866133a3565b9250505b600585048211156121dc576005850491505b60405163a9059cbb60e01b8152736b175474e89094c44da98b954eedeac495271d0f9063a9059cbb906122299073322d58b9e75a6918f7e7849aee0ff09369977e08908690600401614e95565b602060405180830381600087803b15801561224357600080fd5b505af1158015612257573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061227b9190614950565b50509392505050565b8082038281111561083357600080fd5b604051632726b07360e01b815260009060008051602061536383398151915290632726b073906122c8908890600401614f17565b60206040518083038186803b1580156122e057600080fd5b505afa1580156122f4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906123189190614831565b9050600061233c7335d1b3f3d7966a1dfe207aa4514c12a259a0492b838488613c0b565b9050808411156123df57736b175474e89094c44da98b954eedeac495271d0f63a9059cbb8461236b8785612284565b6040518363ffffffff1660e01b8152600401612388929190614e95565b602060405180830381600087803b1580156123a257600080fd5b505af11580156123b6573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906123da9190614950565b508093505b604051636eb1769f60e11b8152736b175474e89094c44da98b954eedeac495271d0f9063dd62ed3e9061242c903090739759a6ac90977b93b58547b4a71c78317f391a2890600401614d38565b60206040518083038186803b15801561244457600080fd5b505afa158015612458573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061247c9190614984565b6125235760405163095ea7b360e01b8152736b175474e89094c44da98b954eedeac495271d0f9063095ea7b3906124cf90739759a6ac90977b93b58547b4a71c78317f391a289060001990600401614e95565b602060405180830381600087803b1580156124e957600080fd5b505af11580156124fd573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906125219190614950565b505b604051633b4da69f60e01b8152739759a6ac90977b93b58547b4a71c78317f391a2890633b4da69f9061255c9085908890600401614e95565b600060405180830381600087803b15801561257657600080fd5b505af115801561258a573d6000803e3d6000fd5b505050506000805160206153638339815191526001600160a01b03166345e6bdcd8760006125cd7335d1b3f3d7966a1dfe207aa4514c12a259a0492b878b613de6565b6040518463ffffffff1660e01b81526004016125eb93929190615282565b600060405180830381600087803b15801561260557600080fd5b505af1158015612619573d6000803e3d6000fd5b50505050505050505050565b60008115806126405750508082028282828161263d57fe5b04145b61083357600080fd5b600081838161198e57fe5b60405163089c54b560e31b815260009081907319c0976f590d67707e62397c87829d896dc0f1f1906344e2a5a890612690908790600401614f17565b602060405180830381600087803b1580156126aa57600080fd5b505af11580156126be573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906126e29190614984565b604051632726b07360e01b81529091506000907335d1b3f3d7966a1dfe207aa4514c12a259a0492b90636c25b3469060008051602061536383398151915290632726b07390612735908b90600401614f17565b60206040518083038186803b15801561274d57600080fd5b505afa158015612761573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906127859190614831565b6040518263ffffffff1660e01b81526004016127a19190614d24565b60206040518083038186803b1580156127b957600080fd5b505afa1580156127cd573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906127f19190614984565b905060006127ff8787611744565b905080851061281657612813816001612284565b94505b6000805160206153638339815191526345e6bdcd886000612838898888613fa7565b6040518463ffffffff1660e01b815260040161285693929190615282565b600060405180830381600087803b15801561287057600080fd5b505af1158015612884573d6000803e3d6000fd5b505050506000805160206153638339815191526001600160a01b031663f9f30db688306128b089614027565b6040518463ffffffff1660e01b81526004016128ce939291906151fb565b600060405180830381600087803b1580156128e857600080fd5b505af11580156128fc573d6000803e3d6000fd5b5050604051634538c4eb60e01b81527335d1b3f3d7966a1dfe207aa4514c12a259a0492b9250634538c4eb915061294d903090739759a6ac90977b93b58547b4a71c78317f391a2890600401614d38565b60206040518083038186803b15801561296557600080fd5b505afa158015612979573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061299d9190614984565b612a1f576040516328ec8bf160e21b81527335d1b3f3d7966a1dfe207aa4514c12a259a0492b9063a3b22fc4906129ec90739759a6ac90977b93b58547b4a71c78317f391a2890600401614d24565b600060405180830381600087803b158015612a0657600080fd5b505af1158015612a1a573d6000803e3d6000fd5b505050505b60405163ef693bed60e01b8152739759a6ac90977b93b58547b4a71c78317f391a289063ef693bed90612a589030908990600401614e95565b600060405180830381600087803b158015612a7257600080fd5b505af1158015612a86573d6000803e3d6000fd5b50969998505050505050505050565b6000612aa083613464565b15612b7957826001600160a01b0316637bd2bea76040518163ffffffff1660e01b815260040160206040518083038186803b158015612ade57600080fd5b505afa158015612af2573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612b169190614831565b6001600160a01b031663d0e30db0836040518263ffffffff1660e01b81526004016000604051808303818588803b158015612b5057600080fd5b505af1158015612b64573d6000803e3d6000fd5b5050505050612b7282613442565b9050612b8e565b612b8b612b86848461403e565b613442565b90505b612c148383856001600160a01b0316637bd2bea76040518163ffffffff1660e01b815260040160206040518083038186803b158015612bcc57600080fd5b505afa158015612be0573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612c049190614831565b6001600160a01b031691906140c0565b604051633b4da69f60e01b81526001600160a01b03841690633b4da69f90612c429030908690600401614e95565b600060405180830381600087803b158015612c5c57600080fd5b505af1158015612c70573d6000803e3d6000fd5b5050604051632c2cb9fd60e01b81527335d1b3f3d7966a1dfe207aa4514c12a259a0492b92506376088703915060008051602061536383398151915290632c2cb9fd90612cc1908990600401614f17565b60206040518083038186803b158015612cd957600080fd5b505afa158015612ced573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612d119190614984565b604051632726b07360e01b815260008051602061536383398151915290632726b07390612d42908a90600401614f17565b60206040518083038186803b158015612d5a57600080fd5b505afa158015612d6e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612d929190614831565b30308660006040518763ffffffff1660e01b8152600401612db896959493929190614f37565b600060405180830381600087803b158015612dd257600080fd5b505af1158015612de6573d6000803e3d6000fd5b5050505050505050565b6000612dfa6140ff565b6001600160a01b0316826001600160a01b03161415612e2457506001600160a01b03821631610833565b6040516370a0823160e01b81526001600160a01b038316906370a0823190612e50908690600401614d24565b60206040518083038186803b158015612e6857600080fd5b505afa158015612e7c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906115769190614984565b6000612ebe600080516020615363833981519152836000015161073d565b8251604051632c2cb9fd60e01b815291925060009160008051602061536383398151915291632c2cb9fd91612ef69190600401614f17565b60206040518083038186803b158015612f0e57600080fd5b505afa158015612f22573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612f469190614984565b90506000612f5d846000015183866080015161140c565b90506000612f748560000151866080015184611a3c565b60408087015182019088015290506000612f8d87611d56565b9150506000612fa182886020015188611fcd565b82039050612fb58760000151868389614117565b9050612fc78760000151868389612294565b612fe48760000151886080015189606001518a6040015101611a3c565b5086516000546040808b01519051735c55b921f590a89c1ebe84df170e655a82b621269363d061ce50933093339361302c93926001600160a01b031691908a9060200161525e565b6040516020818303038152906040526040518463ffffffff1660e01b8152600401610fbd93929190614df8565b6000613077600080516020615363833981519152836000015161073d565b8251604051632c2cb9fd60e01b8152919250600091613105919060008051602061536383398151915290632c2cb9fd906130b5908490600401614f17565b60206040518083038186803b1580156130cd57600080fd5b505afa1580156130e1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106439190614984565b8351604051632c2cb9fd60e01b8152919250600091613199919060008051602061536383398151915290632c2cb9fd90613143908490600401614f17565b60206040518083038186803b15801561315b57600080fd5b505afa15801561316f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906131939190614984565b84612654565b905060006131b285604001518301866020015186611fcd565b604080870151840182900390880181905290915060006131d188611d56565b9150506131e78760000151886080015183612a95565b8651604051632c2cb9fd60e01b815261327f919060008051602061536383398151915290632c2cb9fd9061321f908490600401614f17565b60206040518083038186803b15801561323757600080fd5b505afa15801561324b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061326f9190614984565b89606001518a6040015101612654565b5086516000546040808b01519051735c55b921f590a89c1ebe84df170e655a82b621269363d061ce5093309333936132c793926001600160a01b03169190899060200161525e565b6040516020818303038152906040526040518463ffffffff1660e01b8152600401610fbd93929190614d52565b6000828201838110156115765760405162461bcd60e51b815260040161185990614fa4565b6002546040805163076b7fbb60e51b815290516000926001600160a01b03169163ed6ff760916004808301926020929190829003018186803b15801561335e57600080fd5b505afa158015613372573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906133969190614831565b90506119ec81848461443e565b8082018281101561083357600080fd5b6060613408826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b03166144d49092919063ffffffff16565b8051909150156119ec57808060200190518101906134269190614950565b6119ec5760405162461bcd60e51b8152600401611859906150f2565b806000811215610a0c5760405162461bcd60e51b81526004016118599061513c565b6000739759a6ac90977b93b58547b4a71c78317f391a286001600160a01b038316141561349357506000610a0c565b816001600160a01b0316637bd2bea76040518163ffffffff1660e01b815260040160206040518083038186803b1580156134cc57600080fd5b505afa1580156134e0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906135049190614831565b6001600160a01b031673c02aaa39b223fe8d0a0e5c4f27ead9083c756cc26001600160a01b0316141561353957506001610a0c565b506000919050565b60006001600160a01b03821673eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee1461356d5781610833565b73c02aaa39b223fe8d0a0e5c4f27ead9083c756cc292915050565b6001600160a01b03821673eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee14610ad057610ad06001600160a01b0383167395e6f48254609a6ee006f7d493c8e5fb97094cef836140c0565b60006001600160a01b03831673c02aaa39b223fe8d0a0e5c4f27ead9083c756cc214613601575047610833565b81471115613613578147039050610833565b504792915050565b600080808084600181111561362c57fe5b141561364b576136468660e00151602488604001516144e3565b61365f565b61365f8660e00151602488606001516144e3565b60c0860151604051620c045f60e41b8152734ba1f38427b33b8ab7bb0490200dae1f1c36823f9162c045f0916136989190600401614d24565b60206040518083038186803b1580156136b057600080fd5b505afa1580156136c4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906136e89190614950565b156136f257600094505b60006137018760200151613b61565b60c08801516040516302f5cc7960e11b8152919250734ba1f38427b33b8ab7bb0490200dae1f1c36823f916305eb98f29161373e91600401614d24565b60206040518083038186803b15801561375657600080fd5b505afa15801561376a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061378e9190614950565b15613801578660c001516001600160a01b0316868860e001516040516137b49190614d05565b60006040518083038185875af1925050503d80600081146137f1576040519150601f19603f3d011682016040523d82523d6000602084013e6137f6565b606091505b505080945050613806565b600093505b6040870151600090851561393d57885161381f90613b61565b60208a01519091506001600160a01b031673eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee141561392b576040516370a0823160e01b815273c02aaa39b223fe8d0a0e5c4f27ead9083c756cc290632e1a7d4d9082906370a082319061388a903090600401614d24565b602060405180830381600087803b1580156138a457600080fd5b505af11580156138b8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906138dc9190614984565b6040518263ffffffff1660e01b81526004016138f89190614f17565b600060405180830381600087803b15801561391257600080fd5b505af1158015613926573d6000803e3d6000fd5b505050505b826139398a60200151613b61565b0391505b90935091505093509350939050565b60a082015160405163e0aa279760e01b81526000917325dd3f51e0c3c3ff164ddc02a8e4d65bb9cbb12d9163e0aa27979161398991600401614d24565b60206040518083038186803b1580156139a157600080fd5b505afa1580156139b5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906139d99190614950565b6139f55760405162461bcd60e51b815260040161185990614fdb565b60a083015160408401518451600092613a19926001600160a01b0390921691611996565b6000836001811115613a2757fe5b1415613ac7578360a001516001600160a01b031663cae270b6828660000151876020015188604001516040518563ffffffff1660e01b8152600401613a6e93929190614eae565b6020604051808303818588803b158015613a8757600080fd5b505af1158015613a9b573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190613ac09190614984565b9150613b5a565b8360a001516001600160a01b031663153e66e6828660000151876020015188606001516040518563ffffffff1660e01b8152600401613b0893929190614eae565b6020604051808303818588803b158015613b2157600080fd5b505af1158015613b35573d6000803e3d6000fd5b50505050506040513d601f19601f8201168201806040525081019061082f9190614984565b5092915050565b60006001600160a01b03821673eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee1415613b8f575047610a0c565b6040516370a0823160e01b81526001600160a01b038316906370a0823190613bbb903090600401614d24565b60206040518083038186803b158015613bd357600080fd5b505afa158015613be7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108339190614984565b600080856001600160a01b031663d9638d36846040518263ffffffff1660e01b8152600401613c3a9190614f17565b60a06040518083038186803b158015613c5257600080fd5b505afa158015613c66573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613c8a9190614c8d565b5050509150506000866001600160a01b0316632424be5c85876040518363ffffffff1660e01b8152600401613cc0929190614f20565b604080518083038186803b158015613cd757600080fd5b505afa158015613ceb573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613d0f9190614c6a565b9150506000876001600160a01b0316636c25b346886040518263ffffffff1660e01b8152600401613d409190614d24565b60206040518083038186803b158015613d5857600080fd5b505afa158015613d6c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613d909190614984565b90506000613da16118188486612625565b9050676765c793fa10079d601b1b8104945080613dc986676765c793fa10079d601b1b612625565b10613dd45784613dd9565b846001015b9998505050505050505050565b600080846001600160a01b0316636c25b346856040518263ffffffff1660e01b8152600401613e159190614d24565b60206040518083038186803b158015613e2d57600080fd5b505afa158015613e41573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613e659190614984565b90506000856001600160a01b031663d9638d36856040518263ffffffff1660e01b8152600401613e959190614f17565b60a06040518083038186803b158015613ead57600080fd5b505afa158015613ec1573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613ee59190614c8d565b5050509150506000866001600160a01b0316632424be5c86886040518363ffffffff1660e01b8152600401613f1b929190614f20565b604080518083038186803b158015613f3257600080fd5b505afa158015613f46573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613f6a9190614c6a565b915050613f7f828481613f7957fe5b04613442565b935080841115613f9a57613f9281613442565b600003611825565b5050506000039392505050565b6000613fbe84676765c793fa10079d601b1b612625565b82101561157657613fee83613fe7613fe187676765c793fa10079d601b1b612625565b85612284565b81613f7957fe5b905061400584676765c793fa10079d601b1b612625565b61400f8285612625565b1061401a578061401f565b806001015b949350505050565b600061083382676765c793fa10079d601b1b612625565b600061157682846001600160a01b031663b3bcfa826040518163ffffffff1660e01b815260040160206040518083038186803b15801561407d57600080fd5b505afa158015614091573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906140b59190614984565b601203600a0a612625565b6140e08363095ea7b360e01b8460006040516024016119b5929190614efb565b6119ec8363095ea7b360e01b84846040516024016119b5929190614e95565b73eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee90565b6000806142437335d1b3f3d7966a1dfe207aa4514c12a259a0492b6000805160206153638339815191526001600160a01b0316632726b073896040518263ffffffff1660e01b815260040161416c9190614f17565b60206040518083038186803b15801561418457600080fd5b505afa158015614198573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906141bc9190614831565b604051632726b07360e01b815260008051602061536383398151915290632726b073906141ed908c90600401614f17565b60206040518083038186803b15801561420557600080fd5b505afa158015614219573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061423d9190614831565b88613c0b565b9050808411156142e25760405163a9059cbb60e01b8152736b175474e89094c44da98b954eedeac495271d0f9063a9059cbb9061428890869085890390600401614e95565b602060405180830381600087803b1580156142a257600080fd5b505af11580156142b6573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906142da9190614950565b50905061401f565b604051636cb1c69b60e11b8152848203906000907335d1b3f3d7966a1dfe207aa4514c12a259a0492b9063d9638d3690614320908a90600401614f17565b60a06040518083038186803b15801561433857600080fd5b505afa15801561434c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906143709190614c8d565b945050505050676765c793fa10079d601b1b818161438a57fe5b049050808210156144325760405163a9059cbb60e01b815282820390736b175474e89094c44da98b954eedeac495271d0f9063a9059cbb906143d29089908590600401614e95565b602060405180830381600087803b1580156143ec57600080fd5b505af1158015614400573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906144249190614950565b508603935061401f92505050565b50939695505050505050565b6144466140ff565b6001600160a01b0316826001600160a01b031614156144c057826001600160a01b03168160405161447690614d21565b60006040518083038185875af1925050503d80600081146144b3576040519150601f19603f3d011682016040523d82523d6000602084013e6144b8565b606091505b5050506119ec565b6119ec6001600160a01b0383168483611996565b606061401f848460008561450f565b81602001835110156145075760405162461bcd60e51b815260040161185990615040565b910160200152565b606061451a856145d3565b6145365760405162461bcd60e51b8152600401611859906150bb565b60006060866001600160a01b031685876040516145539190614d05565b60006040518083038185875af1925050503d8060008114614590576040519150601f19603f3d011682016040523d82523d6000602084013e614595565b606091505b509150915081156145a957915061401f9050565b8051156145b95780518082602001fd5b8360405162461bcd60e51b81526004016118599190614f6c565b6000813f7fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470818114801590610a07575050151592915050565b60405180610120016040528060006001600160a01b0316815260200160006001600160a01b0316815260200160008152602001600081526020016000815260200160006001600160a01b0316815260200160006001600160a01b0316815260200160608152602001600081525090565b6040518060a001604052806000815260200160008152602001600081526020016000815260200160006001600160a01b031681525090565b80356108338161533c565b600082601f8301126146cf578081fd5b81356146e26146dd826152e8565b6152c1565b91508082528360208285010111156146f957600080fd5b8060208401602084013760009082016020015292915050565b600082601f830112614722578081fd5b81516147306146dd826152e8565b915080825283602082850101111561474757600080fd5b613b5a81602084016020860161530c565b600061012080838503121561476b578182fd5b614774816152c1565b91505061478183836146b4565b815261479083602084016146b4565b60208201526040820135604082015260608201356060820152608082013560808201526147c08360a084016146b4565b60a08201526147d28360c084016146b4565b60c082015260e082013567ffffffffffffffff8111156147f157600080fd5b6147fd848285016146bf565b60e08301525061010080830135818301525092915050565b600060208284031215614826578081fd5b81356115768161533c565b600060208284031215614842578081fd5b81516115768161533c565b60008060008060808587031215614862578283fd5b845161486d8161533c565b602086015190945061487e8161533c565b6040860151606090960151949790965092505050565b600080604083850312156148a6578182fd5b82356148b18161533c565b946020939093013593505050565b6000806000806000608086880312156148d6578081fd5b85356148e18161533c565b94506020860135935060408601359250606086013567ffffffffffffffff8082111561490b578283fd5b818801915088601f83011261491e578283fd5b81358181111561492c578384fd5b89602082850101111561493d578384fd5b9699959850939650602001949392505050565b600060208284031215614961578081fd5b815161157681615354565b60006020828403121561497d578081fd5b5035919050565b600060208284031215614995578081fd5b5051919050565b6000602082840312156149ad578081fd5b813567ffffffffffffffff8111156149c3578182fd5b61082f848285016146bf565b600080604083850312156149e1578182fd5b825167ffffffffffffffff808211156149f8578384fd5b614a0486838701614712565b93506020850151915080821115614a19578283fd5b50614a2685828601614712565b9150509250929050565b600080600080600060a08688031215614a47578283fd5b853567ffffffffffffffff811115614a5d578384fd5b614a69888289016146bf565b95505060208601359350604086013592506060860135614a888161533c565b91506080860135614a9881615354565b809150509295509295909350565b600080600060608486031215614aba578081fd5b8335614ac58161533c565b95602085013595506040909401359392505050565b60008060408385031215614aec578182fd5b8251614af78161533c565b6020939093015192949293505050565b600060208284031215614b18578081fd5b813567ffffffffffffffff811115614b2e578182fd5b61082f84828501614758565b60008060008060808587031215614b4f578182fd5b843567ffffffffffffffff811115614b65578283fd5b614b7187828801614758565b94505060208501359250604085013591506060850135614b908161533c565b939692955090935050565b600080600080600060a08688031215614bb2578283fd5b855194506020860151614bc48161533c565b6040870151909450614bd58161533c565b606087015190935067ffffffffffffffff811115614bf1578182fd5b614bfd88828901614712565b925050608086015190509295509295909350565b60008060408385031215614c23578182fd5b50508035926020909101359150565b600080600060608486031215614c46578081fd5b83359250602084013591506040840135614c5f8161533c565b809150509250925092565b60008060408385031215614c7c578182fd5b505080516020909101519092909150565b600080600080600060a08688031215614ca4578283fd5b5050835160208501516040860151606087015160809097015192989197509594509092509050565b6001600160a01b03169052565b60008151808452614cf181602086016020860161530c565b601f01601f19169290920160200192915050565b60008251614d1781846020870161530c565b9190910192915050565b90565b6001600160a01b0391909116815260200190565b6001600160a01b0392831681529116602082015260400190565b6001600160a01b03848116825283166020820152608060408201819052600d908201526c1350d1119b185cda109bdbdcdd609a1b60a082015260c060608201819052600090614da390830184614cd9565b95945050505050565b6001600160a01b03848116825283166020820152608060408201819052600890820152671350d1109bdbdcdd60c21b60a082015260c060608201819052600090614da390830184614cd9565b6001600160a01b03848116825283166020820152608060408201819052600d908201526c4d4344466c617368526570617960981b60a082015260c060608201819052600090614da390830184614cd9565b6001600160a01b03848116825283166020820152608060408201819052600890820152674d4344526570617960c01b60a082015260c060608201819052600090614da390830184614cd9565b6001600160a01b03929092168252602082015260400190565b6001600160a01b039384168152919092166020820152604081019190915260600190565b6001600160a01b0394851681529290931660208301526040820152606081019190915260800190565b6001600160a01b0392909216825260ff16602082015260400190565b90815260200190565b9182526001600160a01b0316602082015260400190565b9586526001600160a01b039485166020870152928416604086015292166060840152608083019190915260a082015260c00190565b6000602082526115766020830184614cd9565b600060408252614f926040830185614cd9565b8281036020840152614da38185614cd9565b6020808252601b908201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604082015260600190565b60208082526014908201527315dc985c1c195c881a5cc81b9bdd081d985b1a5960621b604082015260600190565b6020808252601a908201527f46696e616c20616d6f756e742069736e277420636f7272656374000000000000604082015260600190565b60208082526026908201527f496e636f7272656e74206c656e6774207768696c65207772697474696e6720626040820152653cba32b9999960d11b606082015260800190565b6020808252818101527f496e76616c69642062616c616e636520666f722074686520636f6e7472616374604082015260600190565b6020808252601d908201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604082015260600190565b6020808252602a908201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e6040820152691bdd081cdd58d8d9595960b21b606082015260800190565b6020808252600c908201526b696e742d6f766572666c6f7760a01b604082015260600190565b600060208252615176602083018451614ccc565b60208301516151886040840182614ccc565b506040830151606083015260608301516080830152608083015160a083015260a08301516151b960c0840182614ccc565b5060c08301516151cc60e0840182614ccc565b5060e083015161012061010081818601526151eb610140860184614cd9565b9501519301929092525090919050565b9283526001600160a01b03919091166020830152604082015260600190565b8581526001600160a01b0385811660208301528416604082015260a06060820181905260009061524c90830185614cd9565b90508260808301529695505050505050565b9384526001600160a01b039290921660208401526040830152606082015260800190565b9283526020830191909152604082015260600190565b918252602082015260400190565b93845260208401929092526040830152606082015260800190565b60405181810167ffffffffffffffff811182821017156152e057600080fd5b604052919050565b600067ffffffffffffffff8211156152fe578081fd5b50601f01601f191660200190565b60005b8381101561532757818101518382015260200161530f565b83811115615336576000848401525b50505050565b6001600160a01b038116811461535157600080fd5b50565b801515811461535157600080fdfe0000000000000000000000005ef30b9986345249bc32d8928b7ee64de9435e39a26469706673582212200bc4130c7d178f567d22d831239833f140a6d03d6245f4153f60eeeda72065ec64736f6c634300060c0033