0 txs
67 calls
constructor
constructor(address pool_, address swapper_, address receiptToken_, string name_)
functions
collateral
viewfunction collateral() view returns (address)
collateralToken
viewfunction collateralToken() view returns (address)
feeCollector
viewfunction feeCollector() view returns (address)
governor
viewfunction governor() view returns (address)
isReservedToken
viewfunction isReservedToken(address token_) view returns (bool)
keepers
viewfunction keepers() view returns (address[])
NAME
viewfunction NAME() view returns (string)
pool
viewfunction pool() view returns (address)
receiptToken
viewfunction receiptToken() view returns (address)
swapper
viewfunction swapper() view returns (address)
token
viewfunction token() view returns (address)
tvl
viewfunction tvl() view returns (uint256)
VERSION
viewfunction VERSION() view returns (string)
addKeeper
nonpayablefunction addKeeper(address _keeperAddress)
approveToken
nonpayablefunction approveToken(uint256 _approvalAmount)
claimAndSwapRewards
nonpayablefunction claimAndSwapRewards(uint256 _minAmountOut) returns (uint256 _amountOut)
migrate
nonpayablefunction migrate(address _newStrategy)
rebalance
nonpayablefunction rebalance() returns (uint256 _profit, uint256 _loss, uint256 _payback)
removeKeeper
nonpayablefunction removeKeeper(address _keeperAddress)
swapToCollateral
nonpayablefunction swapToCollateral(address _tokenIn, uint256 _minAmountOut) returns (uint256 _amountOut)
sweep
nonpayablefunction sweep(address _fromToken)
updateFeeCollector
nonpayablefunction updateFeeCollector(address _feeCollector)
updateSwapper
nonpayablefunction updateSwapper(address _swapper)
withdraw
nonpayablefunction withdraw(uint256 _amount)
events
UpdatedFeeCollector
event UpdatedFeeCollector(address indexed previousFeeCollector, address indexed newFeeCollector)
UpdatedSwapper
event UpdatedSwapper(address indexed oldSwapper, address indexed newSwapper)
errors
No errors.
creation bytecode
0x6101006040523480156200001257600080fd5b506040516200372538038062003725833981016040819052620000359162000461565b8383836001600160a01b038316620000945760405162461bcd60e51b815260206004820152601460248201527f706f6f6c2d616464726573732d69732d7a65726f00000000000000000000000060448201526064015b60405180910390fd5b6001600160a01b038216620000ec5760405162461bcd60e51b815260206004820152601760248201527f737761707065722d616464726573732d69732d7a65726f00000000000000000060448201526064016200008b565b600280546001600160a01b0319166001600160a01b0384811691909117909155831660a081905260408051637e062a3560e11b8152905163fc0c546a91600480820192602092909190829003018186803b1580156200014a57600080fd5b505afa1580156200015f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200018591906200057f565b6001600160a01b03908116608052600080546001600160a01b031916918316919091179055620001cc620001b63390565b60036200031a60201b62001b691790919060201c565b6200020e5760405162461bcd60e51b81526020600482015260116024820152701859190b5ad9595c195c8b59985a5b1959607a1b60448201526064016200008b565b5050506001600160a01b038216620002695760405162461bcd60e51b815260206004820152601660248201527f79546f6b656e2d616464726573732d69732d7a65726f0000000000000000000060448201526064016200008b565b6001600160a01b03821660c08190526040805163313ce56760e01b8152905163313ce56791600480820192602092909190829003018186803b158015620002af57600080fd5b505afa158015620002c4573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620002ea9190620005a6565b620002f790600a620006de565b60e05280516200030f9060059060208401906200038c565b50505050506200072c565b600062000331836001600160a01b0384166200033a565b90505b92915050565b6000818152600183016020526040812054620003835750815460018181018455600084815260208082209093018490558454848252828601909352604090209190915562000334565b50600062000334565b8280546200039a90620006ef565b90600052602060002090601f016020900481019282620003be576000855562000409565b82601f10620003d957805160ff191683800117855562000409565b8280016001018555821562000409579182015b8281111562000409578251825591602001919060010190620003ec565b50620004179291506200041b565b5090565b5b808211156200041757600081556001016200041c565b6001600160a01b03811681146200044857600080fd5b50565b634e487b7160e01b600052604160045260246000fd5b600080600080608085870312156200047857600080fd5b8451620004858162000432565b809450506020808601516200049a8162000432565b6040870151909450620004ad8162000432565b60608701519093506001600160401b0380821115620004cb57600080fd5b818801915088601f830112620004e057600080fd5b815181811115620004f557620004f56200044b565b604051601f8201601f19908116603f011681019083821181831017156200052057620005206200044b565b816040528281528b868487010111156200053957600080fd5b600093505b828410156200055d57848401860151818501870152928501926200053e565b828411156200056f5760008684830101525b989b979a50959850505050505050565b6000602082840312156200059257600080fd5b81516200059f8162000432565b9392505050565b600060208284031215620005b957600080fd5b815160ff811681146200059f57600080fd5b634e487b7160e01b600052601160045260246000fd5b600181815b8085111562000622578160001904821115620006065762000606620005cb565b808516156200061457918102915b93841c9390800290620005e6565b509250929050565b6000826200063b5750600162000334565b816200064a5750600062000334565b81600181146200066357600281146200066e576200068e565b600191505062000334565b60ff841115620006825762000682620005cb565b50506001821b62000334565b5060208310610133831016604e8410600b8410161715620006b3575081810a62000334565b620006bf8383620005e1565b8060001904821115620006d657620006d6620005cb565b029392505050565b60006200033160ff8416836200062a565b600181811c908216806200070457607f821691505b602082108114156200072657634e487b7160e01b600052602260045260246000fd5b50919050565b60805160a05160c05160e051612e92620008936000396000818161241801526129f401526000818161028e0152818161054a015281816117f601528181611d9001528181611e3601528181611f080152818161237001528181612439015281816124dd0152612960015260008181610210015281816106990152818161090d01528181610a5601528181610b9d01528181610c7201528181610d2501528181610f6d0152818161103a0152818161125c0152818161146a01528181611f5301528181611ff0015281816122570152612a5201526000818161032001528181610390015281816104c8015281816107950152818161083001528181610ae301528181610b7b01528181610be901528181610ca5015281816111e00152818161168e015281816117740152818161188001528181611a4e01528181611a8c01528181611ee60152818161208d0152818161217e015281816122ce0152612a300152612e926000f3fe608060405234801561001057600080fd5b50600436106101985760003560e01c8063a3f4df7e116100e3578063d8dfeb451161008c578063ee330ee311610066578063ee330ee3146103cf578063fc0c546a146103e2578063ffa1ad74146103f357600080fd5b8063d8dfeb451461038e578063e5328e06146103b4578063ec78e832146103bc57600080fd5b8063ce5494bb116100bd578063ce5494bb14610355578063d2c35ce814610368578063d3033c391461037b57600080fd5b8063a3f4df7e14610306578063b2016bd41461031b578063c415b95c1461034257600080fd5b80632e1a7d4d11610145578063440d72481161011f578063440d72481461027e5780637d7c2a1c146102ce578063951dc22c146102f157600080fd5b80632e1a7d4d146102455780633ac9fc11146102585780634032b72b1461026b57600080fd5b806314ae9f2e1161017657806314ae9f2e146101f857806316f0115b1461020b5780632b3297f91461023257600080fd5b806301681a621461019d5780630c340a24146101b25780631026013a146101d7575b600080fd5b6101b06101ab366004612bf3565b610417565b005b6101ba610695565b6040516001600160a01b0390911681526020015b60405180910390f35b6101ea6101e5366004612c10565b61072d565b6040519081526020016101ce565b6101b0610206366004612bf3565b61090b565b6101ba7f000000000000000000000000000000000000000000000000000000000000000081565b6002546101ba906001600160a01b031681565b6101b0610253366004612c10565b610a53565b6101b0610266366004612c10565b610ccc565b6101b0610279366004612bf3565b610d23565b6102be61028c366004612bf3565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0390811691161490565b60405190151581526020016101ce565b6102d6610e6b565b604080519384526020840192909252908201526060016101ce565b6102f9610ed0565b6040516101ce9190612c29565b61030e610edc565b6040516101ce9190612ca2565b6101ba7f000000000000000000000000000000000000000000000000000000000000000081565b6001546101ba906001600160a01b031681565b6101b0610363366004612bf3565b610f6a565b6101b0610376366004612bf3565b61125a565b6101b0610389366004612bf3565b611468565b7f00000000000000000000000000000000000000000000000000000000000000006101ba565b6101ea611676565b6000546101ba906001600160a01b031681565b6101ea6103dd366004612cd5565b611722565b6000546001600160a01b03166101ba565b61030e604051806040016040528060058152602001640352e312e360dc1b81525081565b610424335b600390611b87565b61046e5760405162461bcd60e51b815260206004820152601660248201527531b0b63632b916b4b996b737ba16b096b5b2b2b832b960511b60448201526064015b60405180910390fd5b6001546001600160a01b03166104c65760405162461bcd60e51b815260206004820152601560248201527f6665652d636f6c6c6563746f722d6e6f742d73657400000000000000000000006044820152606401610465565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316816001600160a01b031614156105485760405162461bcd60e51b815260206004820152601f60248201527f6e6f742d616c6c6f7765642d746f2d73776565702d636f6c6c61746572616c006044820152606401610465565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0390811690821614156105bc5760405162461bcd60e51b815260206004820152601460248201527306e6f742d616c6c6f7765642d746f2d73776565760641b6044820152606401610465565b6001600160a01b03811673eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee14156105fa576001546105f7906001600160a01b031647611ba9565b50565b6040516370a0823160e01b81523060048201526000906001600160a01b038316906370a082319060240160206040518083038186803b15801561063c57600080fd5b505afa158015610650573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106749190612d01565b600154909150610691906001600160a01b03848116911683611cc7565b5050565b60007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316630c340a246040518163ffffffff1660e01b815260040160206040518083038186803b1580156106f057600080fd5b505afa158015610704573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107289190612d1a565b905090565b60006107383361041c565b61077d5760405162461bcd60e51b815260206004820152601660248201527531b0b63632b916b4b996b737ba16b096b5b2b2b832b960511b6044820152606401610465565b6040516370a0823160e01b81523060048201526000907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906370a082319060240160206040518083038186803b1580156107df57600080fd5b505afa1580156107f3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108179190612d01565b90506040516370a0823160e01b815230600482015281907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906370a082319060240160206040518083038186803b15801561087a57600080fd5b505afa15801561088e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108b29190612d01565b6108bc9190612d4d565b9150828210156109055760405162461bcd60e51b81526020600482015260146024820152731b9bdd0b595b9bdd59da0b585b5bdd5b9d13dd5d60621b6044820152606401610465565b50919050565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316630c340a246040518163ffffffff1660e01b815260040160206040518083038186803b15801561096457600080fd5b505afa158015610978573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061099c9190612d1a565b6001600160a01b0316336001600160a01b0316146109fc5760405162461bcd60e51b815260206004820152601a60248201527f63616c6c65722d69732d6e6f742d7468652d676f7665726e6f720000000000006044820152606401610465565b610a07600382611d57565b6105f75760405162461bcd60e51b815260206004820152601460248201527f72656d6f76652d6b65657065722d6661696c65640000000000000000000000006044820152606401610465565b337f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031614610acb5760405162461bcd60e51b815260206004820152601960248201527f63616c6c65722d69732d6e6f742d7665737065722d706f6f6c000000000000006044820152606401610465565b6040516370a0823160e01b81523060048201526000907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906370a082319060240160206040518083038186803b158015610b2d57600080fd5b505afa158015610b41573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b659190612d01565b9050818110610bc2576106916001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000167f000000000000000000000000000000000000000000000000000000000000000084611cc7565b610bd4610bcf8284612d4d565b611d6c565b6040516370a0823160e01b81523060048201527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906370a082319060240160206040518083038186803b158015610c3357600080fd5b505afa158015610c47573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c6b9190612d01565b90506106917f0000000000000000000000000000000000000000000000000000000000000000610c9b8484611eba565b6001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169190611cc7565b610cd53361041c565b610d1a5760405162461bcd60e51b815260206004820152601660248201527531b0b63632b916b4b996b737ba16b096b5b2b2b832b960511b6044820152606401610465565b6105f781611ed0565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316630c340a246040518163ffffffff1660e01b815260040160206040518083038186803b158015610d7c57600080fd5b505afa158015610d90573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610db49190612d1a565b6001600160a01b0316336001600160a01b031614610e145760405162461bcd60e51b815260206004820152601a60248201527f63616c6c65722d69732d6e6f742d7468652d676f7665726e6f720000000000006044820152606401610465565b610e1f600382611b69565b6105f75760405162461bcd60e51b815260206004820152601160248201527f6164642d6b65657065722d6661696c65640000000000000000000000000000006044820152606401610465565b60008080610e783361041c565b610ebd5760405162461bcd60e51b815260206004820152601660248201527531b0b63632b916b4b996b737ba16b096b5b2b2b832b960511b6044820152606401610465565b610ec5611f2d565b925092509250909192565b60606107286003612400565b60058054610ee990612d64565b80601f0160208091040260200160405190810160405280929190818152602001828054610f1590612d64565b8015610f625780601f10610f3757610100808354040283529160200191610f62565b820191906000526020600020905b815481529060010190602001808311610f4557829003601f168201915b505050505081565b337f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031614610fe25760405162461bcd60e51b815260206004820152601960248201527f63616c6c65722d69732d6e6f742d7665737065722d706f6f6c000000000000006044820152606401610465565b6001600160a01b0381166110385760405162461bcd60e51b815260206004820152601c60248201527f6e65772d73747261746567792d616464726573732d69732d7a65726f000000006044820152606401610465565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316816001600160a01b03166316f0115b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561109b57600080fd5b505afa1580156110af573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110d39190612d1a565b6001600160a01b0316146111295760405162461bcd60e51b815260206004820152601660248201527f6e6f742d76616c69642d6e65772d7374726174656779000000000000000000006044820152606401610465565b6000546040516370a0823160e01b81523060048201526111bd9183916001600160a01b03909116906370a082319060240160206040518083038186803b15801561117257600080fd5b505afa158015611186573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111aa9190612d01565b6000546001600160a01b03169190611cc7565b6040516370a0823160e01b81523060048201526105f79082906001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906370a082319060240160206040518083038186803b15801561122257600080fd5b505afa158015611236573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c9b9190612d01565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316630c340a246040518163ffffffff1660e01b815260040160206040518083038186803b1580156112b357600080fd5b505afa1580156112c7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112eb9190612d1a565b6001600160a01b0316336001600160a01b03161461134b5760405162461bcd60e51b815260206004820152601a60248201527f63616c6c65722d69732d6e6f742d7468652d676f7665726e6f720000000000006044820152606401610465565b6001600160a01b0381166113a15760405162461bcd60e51b815260206004820152601d60248201527f6665652d636f6c6c6563746f722d616464726573732d69732d7a65726f0000006044820152606401610465565b6001546001600160a01b03828116911614156113ff5760405162461bcd60e51b815260206004820152601560248201527f6665652d636f6c6c6563746f722d69732d73616d6500000000000000000000006044820152606401610465565b6001546040516001600160a01b038084169216907f0f06062680f9bd68e786e9980d9bb03d73d5620fc3b345e417b6eacb310b970690600090a36001805473ffffffffffffffffffffffffffffffffffffffff19166001600160a01b0392909216919091179055565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316630c340a246040518163ffffffff1660e01b815260040160206040518083038186803b1580156114c157600080fd5b505afa1580156114d5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114f99190612d1a565b6001600160a01b0316336001600160a01b0316146115595760405162461bcd60e51b815260206004820152601a60248201527f63616c6c65722d69732d6e6f742d7468652d676f7665726e6f720000000000006044820152606401610465565b6001600160a01b0381166115af5760405162461bcd60e51b815260206004820152601760248201527f737761707065722d616464726573732d69732d7a65726f0000000000000000006044820152606401610465565b6002546001600160a01b038281169116141561160d5760405162461bcd60e51b815260206004820152600f60248201527f737761707065722d69732d73616d6500000000000000000000000000000000006044820152606401610465565b6002546040516001600160a01b038084169216907f6c953b7ec311055c20b96a42cea31e89528e375b1bf953a503db40854b3188fe90600090a36002805473ffffffffffffffffffffffffffffffffffffffff19166001600160a01b0392909216919091179055565b6040516370a0823160e01b81523060048201526000907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906370a082319060240160206040518083038186803b1580156116d857600080fd5b505afa1580156116ec573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117109190612d01565b611718612414565b6107289190612d99565b600061172d3361041c565b6117725760405162461bcd60e51b815260206004820152601660248201527531b0b63632b916b4b996b737ba16b096b5b2b2b832b960511b6044820152606401610465565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316836001600160a01b031614156117f45760405162461bcd60e51b815260206004820152601f60248201527f6e6f742d616c6c6f7765642d746f2d73776565702d636f6c6c61746572616c006044820152606401610465565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0390811690841614156118685760405162461bcd60e51b815260206004820152601460248201527306e6f742d616c6c6f7765642d746f2d73776565760641b6044820152606401610465565b6040516370a0823160e01b81523060048201526000907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906370a082319060240160206040518083038186803b1580156118ca57600080fd5b505afa1580156118de573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906119029190612d01565b6040516370a0823160e01b81523060048201529091506000906001600160a01b038616906370a082319060240160206040518083038186803b15801561194757600080fd5b505afa15801561195b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061197f9190612d01565b90508015611a7557600254604051636eb1769f60e11b81523060048201526001600160a01b0391821660248201529086169063dd62ed3e9060440160206040518083038186803b1580156119d257600080fd5b505afa1580156119e6573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611a0a9190612d01565b811115611a4857600254611a2c906001600160a01b0387811691166000612573565b600254611a48906001600160a01b038781169116600019612573565b611a73857f00000000000000000000000000000000000000000000000000000000000000008361269e565b505b6040516370a0823160e01b815230600482015282907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906370a082319060240160206040518083038186803b158015611ad657600080fd5b505afa158015611aea573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611b0e9190612d01565b611b189190612d4d565b925083831015611b615760405162461bcd60e51b81526020600482015260146024820152731b9bdd0b595b9bdd59da0b585b5bdd5b9d13dd5d60621b6044820152606401610465565b505092915050565b6000611b7e836001600160a01b038416612742565b90505b92915050565b6001600160a01b03811660009081526001830160205260408120541515611b7e565b80471015611bf95760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a20696e73756666696369656e742062616c616e63650000006044820152606401610465565b6000826001600160a01b03168260405160006040518083038185875af1925050503d8060008114611c46576040519150601f19603f3d011682016040523d82523d6000602084013e611c4b565b606091505b5050905080611cc25760405162461bcd60e51b815260206004820152603a60248201527f416464726573733a20756e61626c6520746f2073656e642076616c75652c207260448201527f6563697069656e74206d617920686176652072657665727465640000000000006064820152608401610465565b505050565b6040516001600160a01b038316602482015260448101829052611cc290849063a9059cbb60e01b906064015b60408051601f198184030181529190526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fffffffff0000000000000000000000000000000000000000000000000000000090931692909217909152612791565b6000611b7e836001600160a01b038416612869565b6040516370a0823160e01b8152306004820152600090611e18906001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906370a082319060240160206040518083038186803b158015611dd257600080fd5b505afa158015611de6573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611e0a9190612d01565b611e138461295c565b611eba565b9050801561069157604051632e1a7d4d60e01b8152600481018290527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031690632e1a7d4d90602401602060405180830381600087803b158015611e8257600080fd5b505af1158015611e96573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611cc29190612d01565b6000818310611ec95781611b7e565b5090919050565b611ed981612a23565b6105f76001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000167f000000000000000000000000000000000000000000000000000000000000000083612573565b604051636a9eee1360e11b81523060048201526000908190819081906001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063d53ddc269060240160206040518083038186803b158015611f9557600080fd5b505afa158015611fa9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611fcd9190612d01565b604051639f2b283360e01b81523060048201529091506000906001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001690639f2b28339060240160206040518083038186803b15801561203257600080fd5b505afa158015612046573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061206a9190612d01565b6040516370a0823160e01b81523060048201529091506000906001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906370a082319060240160206040518083038186803b1580156120cf57600080fd5b505afa1580156120e3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906121079190612d01565b9050600081612114612414565b61211e9190612d99565b905082811115612139576121328382612d4d565b9650612146565b6121438184612d4d565b95505b60006121528589612d99565b90508281111561220357612169610bcf8483612d4d565b6040516370a0823160e01b81523060048201527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906370a082319060240160206040518083038186803b1580156121c857600080fd5b505afa1580156121dc573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906122009190612d01565b92505b61220d8386611eba565b955085831161221d576000612230565b61223061222a8785612d4d565b89611eba565b6040516302df682360e11b81526004810182905260248101899052604481018890529098507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906305bed04690606401600060405180830381600087803b1580156122a357600080fd5b505af11580156122b7573d6000803e3d6000fd5b50506040516370a0823160e01b81523060048201527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031692506370a08231915060240160206040518083038186803b15801561231a57600080fd5b505afa15801561232e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906123529190612d01565b925082156123f65760405163b6b55f2560e01b8152600481018490527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169063b6b55f2590602401602060405180830381600087803b1580156123bc57600080fd5b505af11580156123d0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906123f49190612d01565b505b5050505050909192565b6060600061240d83612a77565b9392505050565b60007f00000000000000000000000000000000000000000000000000000000000000007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166399530b066040518163ffffffff1660e01b815260040160206040518083038186803b15801561249057600080fd5b505afa1580156124a4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906124c89190612d01565b6040516370a0823160e01b81523060048201527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906370a082319060240160206040518083038186803b15801561252757600080fd5b505afa15801561253b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061255f9190612d01565b6125699190612db1565b6107289190612dd0565b8015806125fc5750604051636eb1769f60e11b81523060048201526001600160a01b03838116602483015284169063dd62ed3e9060440160206040518083038186803b1580156125c257600080fd5b505afa1580156125d6573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906125fa9190612d01565b155b61266e5760405162461bcd60e51b815260206004820152603660248201527f5361666545524332303a20617070726f76652066726f6d206e6f6e2d7a65726f60448201527f20746f206e6f6e2d7a65726f20616c6c6f77616e6365000000000000000000006064820152608401610465565b6040516001600160a01b038316602482015260448101829052611cc290849063095ea7b360e01b90606401611cf3565b600254604051636ccb2b0160e01b81526001600160a01b038581166004830152848116602483015260448201849052600160648301523060848301526000921690636ccb2b019060a401602060405180830381600087803b15801561270257600080fd5b505af1158015612716573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061273a9190612d01565b949350505050565b600081815260018301602052604081205461278957508154600181810184556000848152602080822090930184905584548482528286019093526040902091909155611b81565b506000611b81565b60006127e6826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b0316612ad39092919063ffffffff16565b805190915015611cc257808060200190518101906128049190612df2565b611cc25760405162461bcd60e51b815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e6044820152691bdd081cdd58d8d9595960b21b6064820152608401610465565b50505050565b6000818152600183016020526040812054801561295257600061288d600183612d4d565b85549091506000906128a190600190612d4d565b90508181146129065760008660000182815481106128c1576128c1612e14565b90600052602060002001549050808760000184815481106128e4576128e4612e14565b6000918252602080832090910192909255918252600188019052604090208390555b855486908061291757612917612e2a565b600190038181906000526020600020016000905590558560010160008681526020019081526020016000206000905560019350505050611b81565b6000915050611b81565b60007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166399530b066040518163ffffffff1660e01b815260040160206040518083038186803b1580156129b757600080fd5b505afa1580156129cb573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906129ef9190612d01565b612a197f000000000000000000000000000000000000000000000000000000000000000084612db1565b611b819190612dd0565b6105f76001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000167f000000000000000000000000000000000000000000000000000000000000000083612573565b606081600001805480602002602001604051908101604052809291908181526020018280548015612ac757602002820191906000526020600020905b815481526020019060010190808311612ab3575b50505050509050919050565b606061273a848460008585843b612b2c5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401610465565b600080866001600160a01b03168587604051612b489190612e40565b60006040518083038185875af1925050503d8060008114612b85576040519150601f19603f3d011682016040523d82523d6000602084013e612b8a565b606091505b5091509150612b9a828286612ba5565b979650505050505050565b60608315612bb457508161240d565b825115612bc45782518084602001fd5b8160405162461bcd60e51b81526004016104659190612ca2565b6001600160a01b03811681146105f757600080fd5b600060208284031215612c0557600080fd5b813561240d81612bde565b600060208284031215612c2257600080fd5b5035919050565b6020808252825182820181905260009190848201906040850190845b81811015612c6a5783516001600160a01b031683529284019291840191600101612c45565b50909695505050505050565b60005b83811015612c91578181015183820152602001612c79565b838111156128635750506000910152565b6020815260008251806020840152612cc1816040850160208701612c76565b601f01601f19169190910160400192915050565b60008060408385031215612ce857600080fd5b8235612cf381612bde565b946020939093013593505050565b600060208284031215612d1357600080fd5b5051919050565b600060208284031215612d2c57600080fd5b815161240d81612bde565b634e487b7160e01b600052601160045260246000fd5b600082821015612d5f57612d5f612d37565b500390565b600181811c90821680612d7857607f821691505b6020821081141561090557634e487b7160e01b600052602260045260246000fd5b60008219821115612dac57612dac612d37565b500190565b6000816000190483118215151615612dcb57612dcb612d37565b500290565b600082612ded57634e487b7160e01b600052601260045260246000fd5b500490565b600060208284031215612e0457600080fd5b8151801515811461240d57600080fd5b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052603160045260246000fd5b60008251612e52818460208701612c76565b919091019291505056fea2646970667358221220aa66d936568f71c67d6d67ee0af87d1679b9fd3b4b7c9328ba35b56d7aac74bf64736f6c634300080900330000000000000000000000000538c8bac84e95a9df8ac10aad17dbe81b9e36ee000000000000000000000000229f19942612a8dbdec3643cb23f88685ccd56a5000000000000000000000000da816459f1ab5631232fe5e97a05bbbb94970c950000000000000000000000000000000000000000000000000000000000000080000000000000000000000000000000000000000000000000000000000000000c596561726e5f56325f4441490000000000000000000000000000000000000000