0 txs
0 calls
constructor
No constructor.
functions
getLPPrice
viewfunction getLPPrice(address lp, uint8 protocol, address factory) view returns (uint256 price)
getLPPriceTry
viewfunction getLPPriceTry(address lp, uint8 protocol, address factory) view returns (uint256 price)
getNativePrice
viewfunction getNativePrice(uint8 protocol, address factory) view returns (uint256 nativePrice)
getOraclePriceNormalized
viewfunction getOraclePriceNormalized(address token) view returns (uint256 price)
getParams
viewfunction getParams() view returns (tuple params)
getPriceGetterProtocol
viewfunction getPriceGetterProtocol(uint8 protocol) view returns (address extension)
getTokenPrice
viewfunction getTokenPrice(address token, uint8 protocol, address factory) view returns (uint256 tokenPrice, uint256 usdBalance)
getTokenPrices
viewfunction getTokenPrices(address[] tokens, uint8 protocol, address factory) view returns (uint256[] tokenPrices)
getTokenPriceTry
viewfunction getTokenPriceTry(address token, uint8 protocol, address factory) view returns (uint256 tokenPrice, uint256 usdBalance)
getWrappedLPPrice
viewfunction getWrappedLPPrice(address lp, uint8 protocol, address factory, uint8 wrapper) view returns (uint256 price)
getWrappedLPPriceTry
viewfunction getWrappedLPPriceTry(address lp, uint8 protocol, address factory, uint8 wrapper) view returns (uint256 price)
nativeLiquidityThreshold
viewfunction nativeLiquidityThreshold() view returns (uint256)
owner
viewfunction owner() view returns (address)
protocolPriceGetter
viewfunction protocolPriceGetter(uint8) view returns (address)
stableUsdThreshold
viewfunction stableUsdThreshold() view returns (uint256)
stableUsdTokens
viewfunction stableUsdTokens(uint256) view returns (address tokenAddress, uint8 decimals)
tokenOracles
viewfunction tokenOracles(address) view returns (uint8 oracleType, address oracleAddress, uint8 oracleDecimals)
addStableUsdTokens
nonpayablefunction addStableUsdTokens(address[] newStableUsdTokens)
initialize
nonpayablefunction initialize(address _wNative, uint256 _nativeLiquidityThreshold, uint256 _stableUsdThreshold, address[] _stableUsdTokens, address[] _oracleTokens, address[] _oracles)
removeStableUsdTokens
nonpayablefunction removeStableUsdTokens(address[] tokens)
removeTokenOracle
nonpayablefunction removeTokenOracle(address token)
renounceOwnership
nonpayablefunction renounceOwnership()
setNativeLiquidityThreshold
nonpayablefunction setNativeLiquidityThreshold(uint256 _nativeLiquidityThreshold)
setPriceGetterProtocol
nonpayablefunction setPriceGetterProtocol(uint8 protocol, address extension)
setPriceGetterProtocols
nonpayablefunction setPriceGetterProtocols(uint8[] protocols, address[] extensions)
setStableUsdThreshold
nonpayablefunction setStableUsdThreshold(uint256 _stableUsdThreshold)
setTokenOracle
nonpayablefunction setTokenOracle(address token, address oracleAddress, uint8 oracleType)
transferOwnership
nonpayablefunction transferOwnership(address newOwner)
events
Initialized
event Initialized(uint8 version)
OwnershipTransferred
event OwnershipTransferred(address indexed previousOwner, address indexed newOwner)
errors
No errors.
creation bytecode
0x608080604052346015576120f6908161001b8239f35b600080fdfe6080604052600436101561001257600080fd5b60003560e01c80631e2fa68d146110245780632c5c014414611008578063354c894a14610fef5780634bb3ae6214610fd157806352b4fdbe14610df15780635e615a6b14610dbd5780636888b44014610d13578063715018a614610cb65780637d60227b14610c9d57806384fac4ce14610c7a57806388e32fc214610c3f5780638da5cb5b14610c165780639b788f0b14610bdc578063a9828f8a14610bbe578063abacdeab14610aa5578063af63775f14610662578063b0af197014610626578063b6fe86c414610601578063b71c7ed6146104eb578063b88869b3146104cf578063bd49243214610450578063bff9eb361461042f578063d135babe1461040e578063ed0f171b1461028d578063f2fde38b146101fe578063fcd9c2f0146101bf578063fefa8342146101765763ff72def21461015057600080fd5b346101715760206101696101633661133c565b90611e32565b604051908152f35b600080fd5b34610171576020366003190112610171576004356068548110156101715761019f60409161136b565b505481516001600160a01b038216815260a09190911c60ff166020820152f35b34610171576101df6101d03661133c565b91906101da611eef565b611323565b80546001600160a01b0319166001600160a01b03909216919091179055005b3461017157602036600319011261017157610217611150565b61021f611eef565b6001600160a01b038116156102395761023790611f47565b005b60405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608490fd5b34610171576020366003190112610171576004356001600160401b038111610171576102bd903690600401611120565b906102c6611eef565b60005b8281106102d257005b6102e56102e082858561139c565b6113ac565b6068546001600160a01b039091169060005b81811061030a575b5050506001016102c9565b826103148261136b565b50546001600160a01b03161461032c576001016102f7565b915060001981019081116103f85761034661034d9161136b565b509161136b565b61038a578181036103b6575b505060685480156103a05760001901906103728261136b565b92909261038a576000600193556068559084806102ff565b634e487b7160e01b600052600060045260246000fd5b634e487b7160e01b600052603160045260246000fd5b815481546001600160a01b039091166001600160a01b0319821681178355925460ff60a01b166001600160a81b03199091169092179190911790558380610359565b634e487b7160e01b600052601160045260246000fd5b3461017157602036600319011261017157610427611eef565b600435606955005b3461017157602036600319011261017157610448611eef565b600435606a55005b34610171576020366003190112610171576001600160a01b03610471611150565b16600052606660205260406000205460ff81166040519060028110156104b9578152600882901c6001600160a01b0316602082015260a89190911c60ff166040820152606090f35b634e487b7160e01b600052602160045260246000fd5b346101715760206101696104e236611166565b92919091611dcc565b34610171576020366003190112610171576004356001600160401b0381116101715761051b903690600401611120565b90610524611eef565b60005b82811061053057005b61053e6102e082858561139c565b6068546001600160a01b03821692916000805b8381106105d5575b501561056c575b50506001915001610527565b61057760ff91612068565b60405194610584866111f9565b8552166020840152600160401b8110156105bf578060016105a8920160685561136b565b61038a576001926105b891611d28565b8480610560565b634e487b7160e01b600052604160045260246000fd5b856105df8261136b565b50546001600160a01b0316146105f757600101610551565b5050600187610559565b3461017157604061061a610614366111b6565b91611d60565b82519182526020820152f35b34610171576020366003190112610171576004356007811015610171576020906001600160a01b039061065890611323565b5416604051908152f35b346101715760c03660031901126101715761067b611150565b6064356001600160401b0381116101715761069a903690600401611120565b90916084356001600160401b038111610171576106bb903690600401611120565b93909260a4356001600160401b038111610171576106dd903690600401611120565b90946000549560ff8760081c161596878098610a98575b8015610a81575b15610a255760ff19811660011760005587610a13575b5061072c60ff60005460081c1661072781612008565b612008565b61073533611f47565b602435606955604435606a558288036109d5576001979192600092835b8181106108c557505050505050610767611eef565b8460005b828110610807575050505061077f81612068565b906040519061078d826111f9565b6001600160a01b031680825260ff8316602090920191909152606780546001600160a81b03191690911760a09290921b60ff60a01b169190911790556107cf57005b60207f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989161ff001960005416600055604051908152a1005b6108156102e082858761139c565b6068546001600160a01b03821691600085815b848110610899575b505015610843575b50505001859061076b565b60ff9192945061085290612068565b6040519461085f866111f9565b8552166020840152600160401b8110156105bf578088610882920160685561136b565b61038a57879261089191611d28565b878080610838565b856108a38261136b565b50546001600160a01b0316146108bb57018690610828565b509050858c610830565b6108d36102e082848961139c565b906108e26102e082868861139c565b60405163313ce56760e01b81526001600160a01b039091169290601290602081600481885afa600091816109a5575b5061099d575b5060405191886109268461122f565b6104b9578e83526020830194855260ff604084019216825260018060a01b03166000526066602052604060002091519060028210156104b9578e9460ff845491610100600160a81b03905160081b16928160a81b905160a81b1693169069ffffffffffffffffffff60b01b16171717905501610752565b90508e610917565b6109c791925060203d81116109ce575b6109bf818361124a565b810190611fef565b9038610911565b503d6109b5565b60405162461bcd60e51b815260206004820152601660248201527509ee4c2c6d8ca40d8cadccee8d040dad2e6dac2e8c6d60531b6044820152606490fd5b61ffff19166101011760005588610711565b60405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608490fd5b50303b1580156106fb5750600160ff8216146106fb565b50600160ff8216106106f4565b3461017157606036600319011261017157610abe611150565b6024356001600160a01b038116908190036101715760443591600283101561017157610ae8611eef565b60405163313ce56760e01b815260129190602081600481875afa60009181610b9d575b50610b95575b50610b2860405194610b228661122f565b85611bbe565b6020840192835260ff604085019216825260018060a01b03166000526066602052604060002092519160028310156104b95760ff845491610100600160a81b03905160081b16928160a81b905160a81b1693169069ffffffffffffffffffff60b01b161717179055600080f35b915084610b11565b610bb791925060203d6020116109ce576109bf818361124a565b9086610b0b565b34610171576000366003190112610171576020606954604051908152f35b3461017157602036600319011261017157600435600781101561017157610c04602091611cd2565b6040516001600160a01b039091168152f35b34610171576000366003190112610171576033546040516001600160a01b039091168152602090f35b3461017157602036600319011261017157610c58611150565b610c60611eef565b6001600160a01b0316600090815260666020526040812055005b34610171576020366003190112610171576020610169610c98611150565b611bca565b3461017157604061061a610cb0366111b6565b91611b46565b3461017157600036600319011261017157610ccf611eef565b603380546001600160a01b031981169091556000906001600160a01b03167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e08280a3005b3461017157610d616020610d26366111b6565b906001600160a01b0390610d3990611cd2565b1690610d43611a00565b6040516344ee250760e11b8152958694859384939160048501611b1d565b03915afa8015610db157600090610d7e575b602090604051908152f35b506020813d602011610da9575b81610d986020938361124a565b810103126101715760209051610d73565b3d9150610d8b565b6040513d6000823e3d90fd5b3461017157600036600319011261017157610ded610dd9611a00565b604051918291602083526020830190611282565b0390f35b34610171576040366003190112610171576004356001600160401b0381116101715736602382011215610171578060040135610e2c8161126b565b91610e3a604051938461124a565b8183526024602084019260051b8201019036821161017157602401915b818310610fb857602435846001600160401b0382116101715736602383011215610171578160040135610e898161126b565b92610e97604051948561124a565b8184526024602085019260051b8201019036821161017157602401915b818310610f9857505050610ec6611eef565b8051825103610f375760005b815181101561023757610ee581836113c0565b519060078210156104b957600191610f136001600160a01b03610f0884886113c0565b5116916101da611eef565b90838060a01b03166bffffffffffffffffffffffff60a01b82541617905501610ed2565b60405162461bcd60e51b815260206004820152603360248201527f4e756d626572206f662070726f746f636f6c73206d757374206d61746368206e604482015272756d626572206f6620657874656e73696f6e7360681b6064820152608490fd5b82356001600160a01b038116810361017157815260209283019201610eb4565b8235600781101561017157815260209283019201610e57565b34610171576000366003190112610171576020606a54604051908152f35b34610171576020610169611002366111b6565b91611991565b3461017157602061016961101b36611166565b9291909161143c565b34610171576060366003190112610171576004356001600160401b03811161017157611054903690600401611120565b602435916007831015610171576044356001600160a01b03811681036101715761107d8361126b565b9361108b604051958661124a565b8385526110978461126b565b602086019490601f190136863760005b8181106110f35785876040519182916020830190602084525180915260408301919060005b8181106110da575050500390f35b82518452859450602093840193909201916001016110cc565b8061110e85856111096102e0600196888c61139c565b611b46565b50611119828a6113c0565b52016110a7565b9181601f84011215610171578235916001600160401b038311610171576020808501948460051b01011161017157565b600435906001600160a01b038216820361017157565b6080906003190112610171576004356001600160a01b03811681036101715790602435600781101561017157906044356001600160a01b0381168103610171579060643560038110156101715790565b6060906003190112610171576004356001600160a01b03811681036101715790602435600781101561017157906044356001600160a01b03811681036101715790565b604081019081106001600160401b038211176105bf57604052565b60a081019081106001600160401b038211176105bf57604052565b606081019081106001600160401b038211176105bf57604052565b90601f801991011681019081106001600160401b038211176105bf57604052565b6001600160401b0381116105bf5760051b60200190565b80516001600160a01b039081168352602080830151805190921681850152015160ff16604083015260c08201919060408101519260c060608401528351809152602060e0840194019060005b8181106112ee57505050608081606060a093015182850152015191015290565b90919460206040826113186001948a5160ff6020809260018060a01b038151168552015116910152565b0196019291016112ce565b60078110156104b9576000526065602052604060002090565b604090600319011261017157600435600781101561017157906024356001600160a01b03811681036101715790565b60685481101561138657606860005260206000200190600090565b634e487b7160e01b600052603260045260246000fd5b91908110156113865760051b0190565b356001600160a01b03811681036101715790565b80518210156113865760209160051b010190565b9081602091031261017157516001600160a01b03811681036101715790565b9190826040910312610171576020825192015190565b818102929181159184041417156103f857565b8115611426570490565b634e487b7160e01b600052601260045260246000fd5b92916007821015806104b95760018314159081611941575b8161192f575b8161191e575b506118d957600091600384101593846118c557801593841561175b5750604051630dfe168160e01b81526001600160a01b0387169490602081600481895afa908115610db15760049160209160009161173e575b5060405163d21220a760e01b81526001600160a01b0391909116979092839182905afa908115610db15760009161170f575b506001600160a01b0316955b611509611500868689611b46565b96909589611b46565b9095606a54809110918215611705575b50506116f8576104b95715611659575060408051636253bb0f60e11b815290816004816001600160a01b038a165afa8015610db157600091600091611628575b5090935b82158015611620575b6116145761159061158a9361158a6115969761158461158495612068565b90611fa7565b90611409565b95612068565b81018091116103f8576040516318160ddd60e01b815291602090839060049082906001600160a01b03165afa908115610db1576000916115de575b6115db925061141c565b90565b90506020823d60201161160c575b816115f96020938361124a565b81010312610171576115db9151906115d1565b3d91506115ec565b50505050505050600090565b508315611566565b905061164c915060403d604011611652575b611644818361124a565b8101906113f3565b38611559565b503d61163a565b6000906001036116c45760408051636253bb0f60e11b815290816004816001600160a01b038b165afa9081156116b9578291611698575b50909361155d565b90506116b3915060403d60401161165257611644818361124a565b38611690565b6040513d84823e3d90fd5b60408051636253bb0f60e11b815290816004816001600160a01b038b165afa9081156116b95782916116985750909361155d565b5050505050505050600090565b1090503880611519565b611731915060203d602011611737575b611729818361124a565b8101906113d4565b386114e6565b503d61171f565b6117559150823d841161173757611729818361124a565b386114b4565b945084600182036118055750604051630dfe168160e01b81526001600160a01b0387169490602081600481895afa908115610db1576004916020916000916117e8575b50966040519283809263d21220a760e01b82525afa908115610db1576000916117c9575b50956114f2565b6117e2915060203d60201161173757611729818361124a565b386117c2565b6117ff9150823d841161173757611729818361124a565b3861179e565b604051630dfe168160e01b81526001600160a01b0388169591906020816004818a5afa9182156118b9576004926020929061189c575b5060405163d21220a760e01b81526001600160a01b0391909116979092839182905afa908115610db15760009161187d575b506001600160a01b0316956114f2565b611896915060203d60201161173757611729818361124a565b3861186d565b6118b39150823d841161173757611729818361124a565b3861183b565b604051903d90823e3d90fd5b634e487b7160e01b84526021600452602484fd5b60405162461bcd60e51b815260206004820152601f60248201527f50726f746f636f6c20646f6573206e6f742068617665207772617070657273006044820152606490fd5b90506104b957600482141538611460565b8091506104b95760028314159061145a565b505060038214156000611454565b9060078210156104b95752565b6001600160a01b03909116815260608101939290916040919061198390602085019061194f565b6001600160a01b0316910152565b906020916119b360405194859384936301a222d160e61b85526004850161195c565b0381305afa600091816119cc575b506115db5750600090565b9091506020813d6020116119f8575b816119e86020938361124a565b81010312610171575190386119c1565b3d91506119db565b60006080604051611a1081611214565b828152604051611a1f816111f9565b8381528360208201526020820152606060408201528260608201520152606954606a5460405191611a4f83611214565b308352604051611a5e816111f9565b6067546001600160a01b038116825260a01c60ff16602080830191909152840152606854611a8b8161126b565b90611a99604051928361124a565b8082526020820160686000527fa2153420d844928b4421650203c77babc8b33d7f2e7b450e2966db0c220977536000915b838310611ae7575050505060408401526060830152608082015290565b600160208192604051611af9816111f9565b60ff8654858060a01b038116835260a01c1683820152815201920192019190611aca565b6001600160a01b039182168152911660208201526060604082018190526115db92910190611282565b611b86926040926001600160a01b0390611b5f90611cd2565b1690611b69611a00565b8451637644752d60e11b8152958694859384939160048501611b1d565b03915afa8015610db157600091600091611b9f57509091565b9050611bba915060403d60401161165257611644818361124a565b9091565b60028210156104b95752565b60018060a01b03166000526066602052604060002060405190611bec8261122f565b5490611bfb60ff831682611bbe565b602081019060018060a01b038360081c16825260ff604082019360a81c168352519060028210156104b957600160009214611c365750905090565b51604051633fabe5a360e21b81529060a090829060049082906001600160a01b03165afa9182156118b9578092611c78575b505060ff6115db92511690611fa7565b90915060a0823d60a011611cca575b81611c9460a0938361124a565b81010312611cc757509060ff82611cad6115db94611f90565b50611cbf608060208301519201611f90565b509192611c68565b80fd5b3d9150611c87565b6001600160a01b0390611ce490611323565b5416908115611cef57565b60405162461bcd60e51b815260206004820152601160248201527024b73b30b634b21032bc3a32b739b4b7b760791b6044820152606490fd5b81518154602093909301516001600160a81b03199093166001600160a01b03919091161760a09290921b60ff60a01b16919091179055565b60408051637d60227b60e01b81529493909285928392611d859290916004850161195c565b0381305afa9182600091600094611da9575b50611da55750600091508190565b9190565b909350611dc5915060403d60401161165257611644818361124a565b9238611d97565b604051630b17005160e21b81526001600160a01b039091166004820152929190611dfa90602485019061194f565b6001600160a01b0316604483015260038110156104b9576064820152602081608481305afa600091816119cc57506115db5750600090565b606754611e47906001600160a01b0316611bca565b80611ee95750611ea4916020916001600160a01b0390611e6690611cd2565b16611e6f611a00565b604080516365cdd57160e11b81526001600160a01b039094166004850152602484015291938492839182916044830190611282565b03915afa908115610db157600091611eba575090565b90506020813d602011611ee1575b81611ed56020938361124a565b81010312610171575190565b3d9150611ec8565b91505090565b6033546001600160a01b03163303611f0357565b606460405162461bcd60e51b815260206004820152602060248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152fd5b603380546001600160a01b039283166001600160a01b0319821681179092559091167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0600080a3565b519069ffffffffffffffffffff8216820361017157565b9060ff169060128214611fea57670de0b6b3a7640000810290808204670de0b6b3a764000014901517156103f857604d82116103f8576115db91600a0a9061141c565b905090565b90816020910312610171575160ff811681036101715790565b1561200f57565b60405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b6064820152608490fd5b60405163313ce56760e01b815290602090829060049082906001600160a01b03165afa6000918161209f575b506115db5750601290565b6120b991925060203d6020116109ce576109bf818361124a565b903861209456fea26469706673582212209808118f920390f4aedd6033215fdd0493d6f92c2e30c320c4fc7379e871f85564736f6c634300081c0033