[ { "inputs": [ { "internalType": "address", "name": "_asset", "type": "address" }, { "internalType": "string", "name": "_name", "type": "string" } ], "stateMutability": "nonpayable", "type": "constructor" }, { "stateMutability": "nonpayable", "type": "fallback" }, { "inputs": [], "name": "aToken", "outputs": [ { "internalType": "contract IAToken", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "auction", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "auctionFactory", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "_token", "type": "address" } ], "name": "auctionKicked", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "", "type": "address" } ], "name": "availableDepositLimit", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "", "type": "address" } ], "name": "availableWithdrawLimit", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "balanceOfAsset", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "base", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "checkCooldown", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "claimRewards", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "_amount", "type": "uint256" } ], "name": "deployFunds", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "_amount", "type": "uint256" } ], "name": "freeFunds", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "getSupplyCap", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "harvestAndReport", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "_token", "type": "address" } ], "name": "kickable", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "lendingPool", "outputs": [ { "internalType": "contract IPool", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "manualRedeemAave", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "minAmountToSell", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "", "type": "address" } ], "name": "minAmountToSellMapping", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "_token", "type": "address" }, { "internalType": "uint256", "name": "_amountTaken", "type": "uint256" }, { "internalType": "uint256", "name": "_amountPayed", "type": "uint256" } ], "name": "postTake", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "_token", "type": "address" }, { "internalType": "uint256", "name": "_amountToTake", "type": "uint256" }, { "internalType": "uint256", "name": "_amountToPay", "type": "uint256" } ], "name": "preTake", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "rewardsController", "outputs": [ { "internalType": "contract IRewardsController", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "router", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "_auction", "type": "address" } ], "name": "setAuction", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "bool", "name": "_bool", "type": "bool" } ], "name": "setClaimRewards", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "_token", "type": "address" }, { "internalType": "uint256", "name": "_amount", "type": "uint256" } ], "name": "setMinAmountToSellMapping", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "_token0", "type": "address" }, { "internalType": "address", "name": "_token1", "type": "address" }, { "internalType": "uint24", "name": "_fee", "type": "uint24" } ], "name": "setUniFees", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "bool", "name": "_useAuction", "type": "bool" } ], "name": "setUseAuction", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "_amount", "type": "uint256" } ], "name": "shutdownWithdraw", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "_totalIdle", "type": "uint256" } ], "name": "tendThis", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "tendTrigger", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" }, { "internalType": "bytes", "name": "", "type": "bytes" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "tokenizedStrategyAddress", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "", "type": "address" }, { "internalType": "address", "name": "", "type": "address" } ], "name": "uniFees", "outputs": [ { "internalType": "uint24", "name": "", "type": "uint24" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "useAuction", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" } ]
610120604052600180546001600160a01b031990811673c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2179091556002805490911673e592427a0aece92de3edee1f18e0157c058615641790556004805461010160a01b61ffff60a01b199091161790553480156200007157600080fd5b506040516200373338038062003733833981016040819052620000949162000871565b6001600160a01b0382166080523060a05260405182908290620000fd90620000c990849084903390819081906024016200096f565b60408051601f198184030181529190526020810180516001600160e01b03908116634b839d7360e11b179091526200037616565b505073bb51273d6c746910c7c06fe718f30c936170fed07f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc55506040516335ea6a7560e01b81526001600160a01b038316600482015273c13e21b648a5ee794902342038ff3adab66be987906335ea6a75906024016101e060405180830381865afa15801562000191573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620001b7919062000a38565b610100908101516001600160a01b031690819052620002075760405162461bcd60e51b815260206004820152600760248201526610b0aa37b5b2b760c91b60448201526064015b60405180910390fd5b610100516001600160a01b031663313ce5676040518163ffffffff1660e01b8152600401602060405180830381865afa15801562000249573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200026f919062000b7c565b60ff1660c08181525050610100516001600160a01b03166375d264136040518163ffffffff1660e01b8152600401602060405180830381865afa158015620002bb573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620002e1919062000ba1565b6001600160a01b0390811660e05260805162000322911673c13e21b648a5ee794902342038ff3adab66be9876000196200040a602090811b6200116017901c565b505060008055600180546001600160a01b031990811673c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2179091556002805490911673e592427a0aece92de3edee1f18e0157c0586156417905562000c32565b606060008073bb51273d6c746910c7c06fe718f30c936170fed06001600160a01b031684604051620003a9919062000bc1565b600060405180830381855af49150503d8060008114620003e6576040519150601f19603f3d011682016040523d82523d6000602084013e620003eb565b606091505b50915091508162000403576040513d806000833e8082fd5b9392505050565b801580620004885750604051636eb1769f60e11b81523060048201526001600160a01b03838116602483015284169063dd62ed3e90604401602060405180830381865afa15801562000460573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000486919062000bdf565b155b620004fc5760405162461bcd60e51b815260206004820152603660248201527f5361666545524332303a20617070726f76652066726f6d206e6f6e2d7a65726f60448201527f20746f206e6f6e2d7a65726f20616c6c6f77616e6365000000000000000000006064820152608401620001fe565b604080516001600160a01b038416602482015260448082018490528251808303909101815260649091019091526020810180516001600160e01b0390811663095ea7b360e01b17909152620005549185916200055916565b505050565b6000620005b5826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b03166200063a60201b620012a8179092919060201c565b9050805160001480620005d9575080806020019051810190620005d9919062000bf9565b620005545760405162461bcd60e51b815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e6044820152691bdd081cdd58d8d9595960b21b6064820152608401620001fe565b60606200064b848460008562000653565b949350505050565b606082471015620006b65760405162461bcd60e51b815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f6044820152651c8818d85b1b60d21b6064820152608401620001fe565b600080866001600160a01b03168587604051620006d4919062000bc1565b60006040518083038185875af1925050503d806000811462000713576040519150601f19603f3d011682016040523d82523d6000602084013e62000718565b606091505b5090925090506200072c8783838762000737565b979650505050505050565b60608315620007ab578251600003620007a3576001600160a01b0385163b620007a35760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401620001fe565b50816200064b565b6200064b8383815115620007c25781518083602001fd5b8060405162461bcd60e51b8152600401620001fe919062000c1d565b6001600160a01b0381168114620007f457600080fd5b50565b80516200080481620007de565b919050565b634e487b7160e01b600052604160045260246000fd5b6040516101e081016001600160401b038111828210171562000845576200084562000809565b60405290565b60005b83811015620008685781810151838201526020016200084e565b50506000910152565b600080604083850312156200088557600080fd5b82516200089281620007de565b60208401519092506001600160401b0380821115620008b057600080fd5b818501915085601f830112620008c557600080fd5b815181811115620008da57620008da62000809565b604051601f8201601f19908116603f0116810190838211818310171562000905576200090562000809565b816040528281528860208487010111156200091f57600080fd5b620009328360208301602088016200084b565b80955050505050509250929050565b600081518084526200095b8160208601602086016200084b565b601f01601f19169290920160200192915050565b600060018060a01b03808816835260a060208401526200099360a084018862000941565b9581166040840152938416606083015250911660809091015292915050565b600060208284031215620009c557600080fd5b604051602081016001600160401b0381118282101715620009ea57620009ea62000809565b6040529151825250919050565b80516001600160801b03811681146200080457600080fd5b805164ffffffffff811681146200080457600080fd5b805161ffff811681146200080457600080fd5b60006101e0828403121562000a4c57600080fd5b62000a566200081f565b62000a628484620009b2565b815262000a7260208401620009f7565b602082015262000a8560408401620009f7565b604082015262000a9860608401620009f7565b606082015262000aab60808401620009f7565b608082015262000abe60a08401620009f7565b60a082015262000ad160c0840162000a0f565b60c082015262000ae460e0840162000a25565b60e082015261010062000af9818501620007f7565b9082015261012062000b0d848201620007f7565b9082015261014062000b21848201620007f7565b9082015261016062000b35848201620007f7565b9082015261018062000b49848201620009f7565b908201526101a062000b5d848201620009f7565b908201526101c062000b71848201620009f7565b908201529392505050565b60006020828403121562000b8f57600080fd5b815160ff811681146200040357600080fd5b60006020828403121562000bb457600080fd5b81516200040381620007de565b6000825162000bd58184602087016200084b565b9190910192915050565b60006020828403121562000bf257600080fd5b5051919050565b60006020828403121562000c0c57600080fd5b815180151581146200040357600080fd5b60208152600062000403602083018462000941565b60805160a05160c05160e05161010051612a2262000d116000396000818161044e0152818161056801528181610b9b015281816114d0015281816115fc01526119ab0152600081816103d20152611a05015260006113cd0152600081816106e901528181610819015281816108af0152818161094f01528181610f520152610fe8015260008181610595015281816106170152818161076c01528181610a3401528181610b2601528181610ec20152818161105b015281816114aa01528181611690015281816116f101528181611acd0152611bd60152612a226000f3fe608060405234801561001057600080fd5b50600436106102065760003560e01c80635e311fa51161011a578063a0c1f15e116100ad578063b8c6f5791161007c578063b8c6f579146104b9578063d19a3bb8146104cc578063f3ce280a146104e7578063f887ea401461052b578063fde813a81461053e57610206565b8063a0c1f15e14610449578063a59a997314610470578063a98f92961461048b578063abf4fde41461049e57610206565b80637b3eb8da116100e95780637b3eb8da146102a65780637d9f6db51461040f57806384d78a38146104225780639d7fb70c1461043657610206565b80635e311fa5146103ad5780636bb65f53146103cd5780636c9d273b146103f4578063797bf3431461040757610206565b8063372500ab1161019d5780634aca94821161016c5780634aca94821461031e5780635001f3b514610331578063503160d91461035c5780635d265d3f1461036f5780635d6297b1146103a557610206565b8063372500ab146102cc5780633d6cb575146102f057806346aa2f121461030357806349317f1d1461031657610206565b806320aa49ae116101d957806320aa49ae14610280578063227b9f5a146102935780632dc6b25a146102a65780632e3ecf2c146102b957610206565b806304bd46291461024157806318144367146102675780631e17d967146102705780632036181414610278575b73bb51273d6c746910c7c06fe718f30c936170fed03660008037600080366000845af43d6000803e80801561023a573d6000f35b3d6000fd5b005b61025461024f36600461221e565b610551565b6040519081526020015b60405180910390f35b61025460005481565b61023f6106d4565b610254610755565b61023f61028e366004612249565b610804565b61023f6102a1366004612266565b61089a565b61023f6102b4366004612292565b61092d565b61023f6102c73660046122c7565b61093a565b6004546102e090600160a01b900460ff1681565b604051901515815260200161025e565b61023f6102fe36600461231a565b610a09565b61025461031136600461221e565b610a1d565b610254610c42565b61025461032c36600461221e565b610c59565b600154610344906001600160a01b031681565b6040516001600160a01b03909116815260200161025e565b61023f61036a36600461231a565b610cca565b60408051600481526024810182526020810180516001600160e01b031663440368a360e01b179052905161025e91600091612383565b6102e0610cdb565b6102546103bb36600461221e565b60056020526000908152604090205481565b6103447f000000000000000000000000000000000000000000000000000000000000000081565b61025461040236600461221e565b610e92565b610254610eaa565b600454610344906001600160a01b031681565b6004546102e090600160a81b900460ff1681565b61023f61044436600461231a565b610f35565b6103447f000000000000000000000000000000000000000000000000000000000000000081565b61034473c13e21b648a5ee794902342038ff3adab66be98781565b61023f610499366004612249565b610f3d565b610344734a14145c4977e18c719bb70e6fcbf8fbff6f62d281565b61023f6104c736600461221e565b610fd3565b61034473bb51273d6c746910c7c06fe718f30c936170fed081565b6105176104f536600461239e565b600360209081526000928352604080842090915290825290205462ffffff1681565b60405162ffffff909116815260200161025e565b600254610344906001600160a01b031681565b61023f61054c36600461231a565b61114f565b6040516370a0823160e01b81526001600160a01b037f00000000000000000000000000000000000000000000000000000000000000008116600483015260009182917f000000000000000000000000000000000000000000000000000000000000000016906370a0823190602401602060405180830381865afa1580156105dc573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061060091906123d7565b6040516335ea6a7560e01b81526001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001660048201529091506106b19073c13e21b648a5ee794902342038ff3adab66be987906335ea6a75906024016101e060405180830381865afa158015610680573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106a491906124f5565b51516001603c1b16151590565b156106ba575060005b806106c3610eaa565b6106cd919061262e565b9392505050565b60405163d43fdcf760e01b81523360048201527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169063d43fdcf79060240160006040518083038186803b15801561073357600080fd5b505afa158015610747573d6000803e3d6000fd5b505050506107536112bf565b565b6040516335ea6a7560e01b81526001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001660048201526000906108009073c13e21b648a5ee794902342038ff3adab66be987906335ea6a75906024016101e060405180830381865afa1580156107d5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107f991906124f5565b51516113ba565b5090565b6040516348e4a64960e01b81523360048201527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906348e4a6499060240160006040518083038186803b15801561086357600080fd5b505afa158015610877573d6000803e3d6000fd5b505060048054931515600160a81b0260ff60a81b19909416939093179092555050565b6040516348e4a64960e01b81523360048201527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906348e4a6499060240160006040518083038186803b1580156108f957600080fd5b505afa15801561090d573d6000803e3d6000fd5b5050506001600160a01b0390921660009081526005602052604090205550565b6109356113fd565b505050565b6040516348e4a64960e01b81523360048201527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906348e4a6499060240160006040518083038186803b15801561099957600080fd5b505afa1580156109ad573d6000803e3d6000fd5b505050506001600160a01b0383811660008181526003602081815260408084209588168452948152848320805462ffffff881662ffffff1991821681179092559282528584209484529390529290208054909216179055505050565b610a11611442565b610a1a81611479565b50565b6040516335ea6a7560e01b81526001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000166004820152600090819073c13e21b648a5ee794902342038ff3adab66be987906335ea6a75906024016101e060405180830381865afa158015610a9b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610abf91906124f5565b515190506001603c1b8116151580610ae05750670200000000000000811615155b15610aee5750600092915050565b6000610af9826113ba565b905080600003610b0e57506000199392505050565b6040516370a0823160e01b81523060048201526000907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906370a0823190602401602060405180830381865afa158015610b75573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b9991906123d7565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166318160ddd6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610bf7573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c1b91906123d7565b610c25919061262e565b9050808211610c3957506000949350505050565b90039392505050565b6000610c4c611442565b610c546115c2565b905090565b6040516370a0823160e01b81523060048201526000906001600160a01b038316906370a0823190602401602060405180830381865afa158015610ca0573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610cc491906123d7565b92915050565b610cd2611442565b610a1a81611679565b60405163091030c360e01b81523060048201526000908190734da27a545c0c5b758a6ba100e3a049001de870f59063091030c390602401602060405180830381865afa158015610d2f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d5391906123d7565b905080600003610d6557600091505090565b6000734da27a545c0c5b758a6ba100e3a049001de870f56001600160a01b03166372b49d636040518163ffffffff1660e01b8152600401602060405180830381865afa158015610db9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ddd91906123d7565b90506000734da27a545c0c5b758a6ba100e3a049001de870f56001600160a01b031663359c4a966040518163ffffffff1660e01b8152600401602060405180830381865afa158015610e33573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e5791906123d7565b9050610e63828461262e565b4210610e885780610e74838561262e565b610e7e9042612641565b1115935050505090565b6000935050505090565b6000610e9c6113fd565b610cc4826116ed565b919050565b6040516370a0823160e01b81523060048201526000907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906370a0823190602401602060405180830381865afa158015610f11573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c5491906123d7565b610a1a611442565b6040516348e4a64960e01b81523360048201527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906348e4a6499060240160006040518083038186803b158015610f9c57600080fd5b505afa158015610fb0573d6000803e3d6000fd5b505060048054931515600160a01b0260ff60a01b19909416939093179092555050565b6040516320b8029160e21b81523360048201527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906382e00a449060240160006040518083038186803b15801561103257600080fd5b505afa158015611046573d6000803e3d6000fd5b505050506001600160a01b0381161561112d577f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316816001600160a01b0316631f1fcd516040518163ffffffff1660e01b8152600401602060405180830381865afa1580156110c1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110e59190612654565b6001600160a01b03161461112d5760405162461bcd60e51b815260206004820152600a6024820152691ddc9bdb99c81dd85b9d60b21b60448201526064015b60405180910390fd5b600480546001600160a01b0319166001600160a01b0392909216919091179055565b611157611442565b610a1a81610a11565b8015806111da5750604051636eb1769f60e11b81523060048201526001600160a01b03838116602483015284169063dd62ed3e90604401602060405180830381865afa1580156111b4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111d891906123d7565b155b6112455760405162461bcd60e51b815260206004820152603660248201527f5361666545524332303a20617070726f76652066726f6d206e6f6e2d7a65726f60448201527520746f206e6f6e2d7a65726f20616c6c6f77616e636560501b6064820152608401611124565b6040516001600160a01b03831660248201526044810182905261093590849063095ea7b360e01b906064015b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b0319909316929092179091526117b9565b60606112b7848460008561188e565b949350505050565b6112c7610cdb565b6112cd57565b6040516370a0823160e01b8152306004820152600090734da27a545c0c5b758a6ba100e3a049001de870f5906370a0823190602401602060405180830381865afa15801561131f573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061134391906123d7565b90508015610a1a576040516301e9a69560e41b815230600482015260248101829052734da27a545c0c5b758a6ba100e3a049001de870f590631e9a6950906044015b600060405180830381600087803b15801561139f57600080fd5b505af11580156113b3573d6000803e3d6000fd5b5050505050565b6000640fffffffff607483901c166113f37f0000000000000000000000000000000000000000000000000000000000000000600a612755565b6106cd9082612761565b6004546001600160a01b031633146107535760405162461bcd60e51b815260206004820152600860248201526710b0bab1ba34b7b760c11b6044820152606401611124565b3330146107535760405162461bcd60e51b815260206004820152600560248201526410b9b2b63360d91b6044820152606401611124565b6040516370a0823160e01b815230600482015273c13e21b648a5ee794902342038ff3adab66be987906369328dec907f000000000000000000000000000000000000000000000000000000000000000090611549907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906370a0823190602401602060405180830381865afa15801561151f573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061154391906123d7565b85611969565b6040516001600160e01b031960e085901b1681526001600160a01b03909216600483015260248201523060448201526064016020604051808303816000875af115801561159a573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906115be91906123d7565b5050565b600454600090600160a01b900460ff16156115df576115df61197f565b6115e7610eaa565b6040516370a0823160e01b81523060048201527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906370a0823190602401602060405180830381865afa15801561164b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061166f91906123d7565b610c54919061262e565b60405163617ba03760e01b81526001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000166004820152602481018290523060448201526000606482015273c13e21b648a5ee794902342038ff3adab66be9879063617ba03790608401611385565b60007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316826001600160a01b0316036117585760405162461bcd60e51b8152602060048201526005602482015264185cdcd95d60da1b6044820152606401611124565b61176182611c17565b6001600160a01b038316600090815260056020526040902054909150811015610ea55760405162461bcd60e51b815260206004820152600a602482015269746f6f206c6974746c6560b01b6044820152606401611124565b600061180e826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b03166112a89092919063ffffffff16565b905080516000148061182f57508080602001905181019061182f9190612778565b6109355760405162461bcd60e51b815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e6044820152691bdd081cdd58d8d9595960b21b6064820152608401611124565b6060824710156118ef5760405162461bcd60e51b815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f6044820152651c8818d85b1b60d21b6064820152608401611124565b600080866001600160a01b0316858760405161190b9190612795565b60006040518083038185875af1925050503d8060008114611948576040519150601f19603f3d011682016040523d82523d6000602084013e61194d565b606091505b509150915061195e87838387611d16565b979650505050505050565b600081831061197857816106cd565b5090919050565b6119876112bf565b604080516001808252818301909252600091602080830190803683370190505090507f0000000000000000000000000000000000000000000000000000000000000000816000815181106119dd576119dd6127b1565b6001600160a01b039283166020918202929092010152604051635fc87b1d60e11b81526000917f0000000000000000000000000000000000000000000000000000000000000000169063bf90f63a90611a3a9085906004016127c7565b6000604051808303816000875af1158015611a59573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052611a8191908101906128a3565b509050611a8c611d8f565b600454600160a81b900460ff1615611aa2575050565b6000805b8251811015611c1157828181518110611ac157611ac16127b1565b602002602001015191507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316826001600160a01b03160315611c0157734da27a545c0c5b758a6ba100e3a049001de870f4196001600160a01b03831601611b4257737fc66500c84a76ad7e9c93437bfc5ac33e2ddae991505b6040516370a0823160e01b81523060048201526000906001600160a01b038416906370a0823190602401602060405180830381865afa158015611b89573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611bad91906123d7565b6001600160a01b038416600090815260056020526040902054909150811115611bff57611bfd837f0000000000000000000000000000000000000000000000000000000000000000836000611e6e565b505b505b611c0a81612968565b9050611aa6565b50505050565b6040516370a0823160e01b815230600482015260009081906001600160a01b038416906370a0823190602401602060405180830381865afa158015611c60573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611c8491906123d7565b90508015611ca657600454611ca6906001600160a01b0385811691168361210d565b600480546040516370a0823160e01b81526001600160a01b03918216928101929092528416906370a0823190602401602060405180830381865afa158015611cf2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106cd91906123d7565b60608315611d85578251600003611d7e576001600160a01b0385163b611d7e5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401611124565b50816112b7565b6112b7838361213d565b6040516370a0823160e01b8152306004820152600090734da27a545c0c5b758a6ba100e3a049001de870f5906370a0823190602401602060405180830381865afa158015611de1573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611e0591906123d7565b111561075357734da27a545c0c5b758a6ba100e3a049001de870f56001600160a01b031663787a08a66040518163ffffffff1660e01b8152600401600060405180830381600087803b158015611e5a57600080fd5b505af1158015611c11573d6000803e3d6000fd5b600080548311156112b757600254611e90906001600160a01b03168685612167565b6001546001600160a01b0386811691161480611eb957506001546001600160a01b038581169116145b15611fd35760408051610100810182526001600160a01b0387811680835287821660208085018281526000938452600382528684209284529190528482205462ffffff9081168587019081523060608701908152426080880190815260a088018c815260c089018c815260e08a019788526002549a5163414bf38960e01b81528a518a16600482015296518916602488015293519094166044860152905186166064850152516084840152905160a48301525160c48201529051821660e48201529192169063414bf38990610104016020604051808303816000875af1158015611fa7573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611fcb91906123d7565b9150506112b7565b6001600160a01b0385811660009081526003602081815260408084206001548087168652908352818520549383528185208a8716865283529381902054815160608c811b6bffffffffffffffffffffffff199081169583019590955260e895861b6001600160e81b0319908116603484015296811b851660378301529190941b909416604b8401529288901b16604e8201528151604281830301815260025461010283018452606283018281523060828501524260a285015260c2840189905260e2909301879052925163c04b8d5960e01b81529093929092169163c04b8d59916120c091600401612981565b6020604051808303816000875af11580156120df573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061210391906123d7565b9695505050505050565b6040516001600160a01b03831660248201526044810182905261093590849063a9059cbb60e01b90606401611271565b81511561214d5781518083602001fd5b8060405162461bcd60e51b815260040161112491906129d9565b604051636eb1769f60e11b81523060048201526001600160a01b03848116602483015282919084169063dd62ed3e90604401602060405180830381865afa1580156121b6573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906121da91906123d7565b1015610935576121f56001600160a01b038316846000611160565b6109356001600160a01b0383168483611160565b6001600160a01b0381168114610a1a57600080fd5b60006020828403121561223057600080fd5b81356106cd81612209565b8015158114610a1a57600080fd5b60006020828403121561225b57600080fd5b81356106cd8161223b565b6000806040838503121561227957600080fd5b823561228481612209565b946020939093013593505050565b6000806000606084860312156122a757600080fd5b83356122b281612209565b95602085013595506040909401359392505050565b6000806000606084860312156122dc57600080fd5b83356122e781612209565b925060208401356122f781612209565b9150604084013562ffffff8116811461230f57600080fd5b809150509250925092565b60006020828403121561232c57600080fd5b5035919050565b60005b8381101561234e578181015183820152602001612336565b50506000910152565b6000815180845261236f816020860160208601612333565b601f01601f19169290920160200192915050565b82151581526040602082015260006112b76040830184612357565b600080604083850312156123b157600080fd5b82356123bc81612209565b915060208301356123cc81612209565b809150509250929050565b6000602082840312156123e957600080fd5b5051919050565b634e487b7160e01b600052604160045260246000fd5b6040516101e0810167ffffffffffffffff8111828210171561242a5761242a6123f0565b60405290565b604051601f8201601f1916810167ffffffffffffffff81118282101715612459576124596123f0565b604052919050565b60006020828403121561247357600080fd5b6040516020810181811067ffffffffffffffff82111715612496576124966123f0565b6040529151825250919050565b80516fffffffffffffffffffffffffffffffff81168114610ea557600080fd5b805164ffffffffff81168114610ea557600080fd5b805161ffff81168114610ea557600080fd5b8051610ea581612209565b60006101e0828403121561250857600080fd5b612510612406565b61251a8484612461565b8152612528602084016124a3565b6020820152612539604084016124a3565b604082015261254a606084016124a3565b606082015261255b608084016124a3565b608082015261256c60a084016124a3565b60a082015261257d60c084016124c3565b60c082015261258e60e084016124d8565b60e08201526101006125a18185016124ea565b908201526101206125b38482016124ea565b908201526101406125c58482016124ea565b908201526101606125d78482016124ea565b908201526101806125e98482016124a3565b908201526101a06125fb8482016124a3565b908201526101c061260d8482016124a3565b908201529392505050565b634e487b7160e01b600052601160045260246000fd5b80820180821115610cc457610cc4612618565b81810381811115610cc457610cc4612618565b60006020828403121561266657600080fd5b81516106cd81612209565b600181815b808511156126ac57816000190482111561269257612692612618565b8085161561269f57918102915b93841c9390800290612676565b509250929050565b6000826126c357506001610cc4565b816126d057506000610cc4565b81600181146126e657600281146126f05761270c565b6001915050610cc4565b60ff84111561270157612701612618565b50506001821b610cc4565b5060208310610133831016604e8410600b841016171561272f575081810a610cc4565b6127398383612671565b806000190482111561274d5761274d612618565b029392505050565b60006106cd83836126b4565b8082028115828204841417610cc457610cc4612618565b60006020828403121561278a57600080fd5b81516106cd8161223b565b600082516127a7818460208701612333565b9190910192915050565b634e487b7160e01b600052603260045260246000fd5b6020808252825182820181905260009190848201906040850190845b818110156128085783516001600160a01b0316835292840192918401916001016127e3565b50909695505050505050565b600067ffffffffffffffff82111561282e5761282e6123f0565b5060051b60200190565b600082601f83011261284957600080fd5b8151602061285e61285983612814565b612430565b82815260059290921b8401810191818101908684111561287d57600080fd5b8286015b848110156128985780518352918301918301612881565b509695505050505050565b600080604083850312156128b657600080fd5b825167ffffffffffffffff808211156128ce57600080fd5b818501915085601f8301126128e257600080fd5b815160206128f261285983612814565b82815260059290921b8401810191818101908984111561291157600080fd5b948201945b8386101561293857855161292981612209565b82529482019490820190612916565b9188015191965090935050508082111561295157600080fd5b5061295e85828601612838565b9150509250929050565b60006001820161297a5761297a612618565b5060010190565b602081526000825160a0602084015261299d60c0840182612357565b905060018060a01b0360208501511660408401526040840151606084015260608401516080840152608084015160a08401528091505092915050565b6020815260006106cd602083018461235756fea26469706673582212206d117ceb5b8eebfb498363b1ce1d51274cf4b7f49c1bb9dcc5c5d5884e4f0a5264736f6c634300081200330000000000000000000000006b175474e89094c44da98b954eedeac495271d0f00000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000010537061726b20444149204c656e64657200000000000000000000000000000000