mirror of
https://github.com/Instadapp/fluid-contracts-public.git
synced 2024-07-29 21:57:37 +00:00
494 lines
164 KiB
JSON
494 lines
164 KiB
JSON
|
{
|
||
|
"address": "0x32eE0cB3587C6e9f8Ad2a0CF83B6Cf326848b7c6",
|
||
|
"abi": [
|
||
|
{
|
||
|
"inputs": [
|
||
|
{
|
||
|
"internalType": "contract IWeETH",
|
||
|
"name": "weETH_",
|
||
|
"type": "address"
|
||
|
},
|
||
|
{
|
||
|
"components": [
|
||
|
{
|
||
|
"components": [
|
||
|
{
|
||
|
"internalType": "contract IUniswapV3Pool",
|
||
|
"name": "pool",
|
||
|
"type": "address"
|
||
|
},
|
||
|
{
|
||
|
"internalType": "bool",
|
||
|
"name": "invertRate",
|
||
|
"type": "bool"
|
||
|
},
|
||
|
{
|
||
|
"internalType": "uint256[3]",
|
||
|
"name": "tWAPMaxDeltaPercents",
|
||
|
"type": "uint256[3]"
|
||
|
},
|
||
|
{
|
||
|
"internalType": "uint32[5]",
|
||
|
"name": "secondsAgos",
|
||
|
"type": "uint32[5]"
|
||
|
}
|
||
|
],
|
||
|
"internalType": "struct UniV3OracleImpl.UniV3ConstructorParams",
|
||
|
"name": "uniV3Params",
|
||
|
"type": "tuple"
|
||
|
},
|
||
|
{
|
||
|
"components": [
|
||
|
{
|
||
|
"internalType": "uint8",
|
||
|
"name": "hops",
|
||
|
"type": "uint8"
|
||
|
},
|
||
|
{
|
||
|
"components": [
|
||
|
{
|
||
|
"internalType": "contract IChainlinkAggregatorV3",
|
||
|
"name": "feed",
|
||
|
"type": "address"
|
||
|
},
|
||
|
{
|
||
|
"internalType": "bool",
|
||
|
"name": "invertRate",
|
||
|
"type": "bool"
|
||
|
},
|
||
|
{
|
||
|
"internalType": "uint256",
|
||
|
"name": "token0Decimals",
|
||
|
"type": "uint256"
|
||
|
}
|
||
|
],
|
||
|
"internalType": "struct ChainlinkStructs.ChainlinkFeedData",
|
||
|
"name": "feed1",
|
||
|
"type": "tuple"
|
||
|
},
|
||
|
{
|
||
|
"components": [
|
||
|
{
|
||
|
"internalType": "contract IChainlinkAggregatorV3",
|
||
|
"name": "feed",
|
||
|
"type": "address"
|
||
|
},
|
||
|
{
|
||
|
"internalType": "bool",
|
||
|
"name": "invertRate",
|
||
|
"type": "bool"
|
||
|
},
|
||
|
{
|
||
|
"internalType": "uint256",
|
||
|
"name": "token0Decimals",
|
||
|
"type": "uint256"
|
||
|
}
|
||
|
],
|
||
|
"internalType": "struct ChainlinkStructs.ChainlinkFeedData",
|
||
|
"name": "feed2",
|
||
|
"type": "tuple"
|
||
|
},
|
||
|
{
|
||
|
"components": [
|
||
|
{
|
||
|
"internalType": "contract IChainlinkAggregatorV3",
|
||
|
"name": "feed",
|
||
|
"type": "address"
|
||
|
},
|
||
|
{
|
||
|
"internalType": "bool",
|
||
|
"name": "invertRate",
|
||
|
"type": "bool"
|
||
|
},
|
||
|
{
|
||
|
"internalType": "uint256",
|
||
|
"name": "token0Decimals",
|
||
|
"type": "uint256"
|
||
|
}
|
||
|
],
|
||
|
"internalType": "struct ChainlinkStructs.ChainlinkFeedData",
|
||
|
"name": "feed3",
|
||
|
"type": "tuple"
|
||
|
}
|
||
|
],
|
||
|
"internalType": "struct ChainlinkStructs.ChainlinkConstructorParams",
|
||
|
"name": "chainlinkParams",
|
||
|
"type": "tuple"
|
||
|
},
|
||
|
{
|
||
|
"components": [
|
||
|
{
|
||
|
"internalType": "contract IRedstoneOracle",
|
||
|
"name": "oracle",
|
||
|
"type": "address"
|
||
|
},
|
||
|
{
|
||
|
"internalType": "bool",
|
||
|
"name": "invertRate",
|
||
|
"type": "bool"
|
||
|
},
|
||
|
{
|
||
|
"internalType": "uint256",
|
||
|
"name": "token0Decimals",
|
||
|
"type": "uint256"
|
||
|
}
|
||
|
],
|
||
|
"internalType": "struct RedstoneStructs.RedstoneOracleData",
|
||
|
"name": "redstoneOracle",
|
||
|
"type": "tuple"
|
||
|
},
|
||
|
{
|
||
|
"internalType": "uint8",
|
||
|
"name": "rateSource",
|
||
|
"type": "uint8"
|
||
|
},
|
||
|
{
|
||
|
"internalType": "uint8",
|
||
|
"name": "fallbackMainSource",
|
||
|
"type": "uint8"
|
||
|
},
|
||
|
{
|
||
|
"internalType": "uint256",
|
||
|
"name": "rateCheckMaxDeltaPercent",
|
||
|
"type": "uint256"
|
||
|
}
|
||
|
],
|
||
|
"internalType": "struct UniV3CheckCLRSOracle.UniV3CheckCLRSConstructorParams",
|
||
|
"name": "uniV3CheckCLRSParams_",
|
||
|
"type": "tuple"
|
||
|
}
|
||
|
],
|
||
|
"stateMutability": "nonpayable",
|
||
|
"type": "constructor"
|
||
|
},
|
||
|
{
|
||
|
"inputs": [
|
||
|
{
|
||
|
"internalType": "uint256",
|
||
|
"name": "errorId_",
|
||
|
"type": "uint256"
|
||
|
}
|
||
|
],
|
||
|
"name": "FluidOracleError",
|
||
|
"type": "error"
|
||
|
},
|
||
|
{
|
||
|
"inputs": [],
|
||
|
"name": "chainlinkOracleData",
|
||
|
"outputs": [
|
||
|
{
|
||
|
"internalType": "uint256",
|
||
|
"name": "chainlinkExchangeRate_",
|
||
|
"type": "uint256"
|
||
|
},
|
||
|
{
|
||
|
"internalType": "contract IChainlinkAggregatorV3",
|
||
|
"name": "chainlinkFeed1_",
|
||
|
"type": "address"
|
||
|
},
|
||
|
{
|
||
|
"internalType": "bool",
|
||
|
"name": "chainlinkInvertRate1_",
|
||
|
"type": "bool"
|
||
|
},
|
||
|
{
|
||
|
"internalType": "uint256",
|
||
|
"name": "chainlinkExchangeRate1_",
|
||
|
"type": "uint256"
|
||
|
},
|
||
|
{
|
||
|
"internalType": "contract IChainlinkAggregatorV3",
|
||
|
"name": "chainlinkFeed2_",
|
||
|
"type": "address"
|
||
|
},
|
||
|
{
|
||
|
"internalType": "bool",
|
||
|
"name": "chainlinkInvertRate2_",
|
||
|
"type": "bool"
|
||
|
},
|
||
|
{
|
||
|
"internalType": "uint256",
|
||
|
"name": "chainlinkExchangeRate2_",
|
||
|
"type": "uint256"
|
||
|
},
|
||
|
{
|
||
|
"internalType": "contract IChainlinkAggregatorV3",
|
||
|
"name": "chainlinkFeed3_",
|
||
|
"type": "address"
|
||
|
},
|
||
|
{
|
||
|
"internalType": "bool",
|
||
|
"name": "chainlinkInvertRate3_",
|
||
|
"type": "bool"
|
||
|
},
|
||
|
{
|
||
|
"internalType": "uint256",
|
||
|
"name": "chainlinkExchangeRate3_",
|
||
|
"type": "uint256"
|
||
|
}
|
||
|
],
|
||
|
"stateMutability": "view",
|
||
|
"type": "function"
|
||
|
},
|
||
|
{
|
||
|
"inputs": [],
|
||
|
"name": "getExchangeRate",
|
||
|
"outputs": [
|
||
|
{
|
||
|
"internalType": "uint256",
|
||
|
"name": "exchangeRate_",
|
||
|
"type": "uint256"
|
||
|
}
|
||
|
],
|
||
|
"stateMutability": "view",
|
||
|
"type": "function"
|
||
|
},
|
||
|
{
|
||
|
"inputs": [],
|
||
|
"name": "getExchangeRateLiquidate",
|
||
|
"outputs": [
|
||
|
{
|
||
|
"internalType": "uint256",
|
||
|
"name": "exchangeRate_",
|
||
|
"type": "uint256"
|
||
|
}
|
||
|
],
|
||
|
"stateMutability": "view",
|
||
|
"type": "function"
|
||
|
},
|
||
|
{
|
||
|
"inputs": [],
|
||
|
"name": "getExchangeRateOperate",
|
||
|
"outputs": [
|
||
|
{
|
||
|
"internalType": "uint256",
|
||
|
"name": "exchangeRate_",
|
||
|
"type": "uint256"
|
||
|
}
|
||
|
],
|
||
|
"stateMutability": "view",
|
||
|
"type": "function"
|
||
|
},
|
||
|
{
|
||
|
"inputs": [],
|
||
|
"name": "redstoneOracleData",
|
||
|
"outputs": [
|
||
|
{
|
||
|
"internalType": "uint256",
|
||
|
"name": "redstoneExchangeRate_",
|
||
|
"type": "uint256"
|
||
|
},
|
||
|
{
|
||
|
"internalType": "contract IRedstoneOracle",
|
||
|
"name": "redstoneOracle_",
|
||
|
"type": "address"
|
||
|
},
|
||
|
{
|
||
|
"internalType": "bool",
|
||
|
"name": "redstoneInvertRate_",
|
||
|
"type": "bool"
|
||
|
}
|
||
|
],
|
||
|
"stateMutability": "view",
|
||
|
"type": "function"
|
||
|
},
|
||
|
{
|
||
|
"inputs": [],
|
||
|
"name": "uniV3CheckOracleData",
|
||
|
"outputs": [
|
||
|
{
|
||
|
"internalType": "uint256",
|
||
|
"name": "rateCheckMaxDelta_",
|
||
|
"type": "uint256"
|
||
|
},
|
||
|
{
|
||
|
"internalType": "uint256",
|
||
|
"name": "rateSource_",
|
||
|
"type": "uint256"
|
||
|
},
|
||
|
{
|
||
|
"internalType": "uint256",
|
||
|
"name": "fallbackMainSource_",
|
||
|
"type": "uint256"
|
||
|
}
|
||
|
],
|
||
|
"stateMutability": "view",
|
||
|
"type": "function"
|
||
|
},
|
||
|
{
|
||
|
"inputs": [],
|
||
|
"name": "uniV3OracleData",
|
||
|
"outputs": [
|
||
|
{
|
||
|
"internalType": "contract IUniswapV3Pool",
|
||
|
"name": "uniV3Pool_",
|
||
|
"type": "address"
|
||
|
},
|
||
|
{
|
||
|
"internalType": "bool",
|
||
|
"name": "uniV3InvertRate_",
|
||
|
"type": "bool"
|
||
|
},
|
||
|
{
|
||
|
"internalType": "uint32[]",
|
||
|
"name": "uniV3secondsAgos_",
|
||
|
"type": "uint32[]"
|
||
|
},
|
||
|
{
|
||
|
"internalType": "uint256[]",
|
||
|
"name": "uniV3TwapDeltas_",
|
||
|
"type": "uint256[]"
|
||
|
},
|
||
|
{
|
||
|
"internalType": "uint256",
|
||
|
"name": "uniV3exchangeRateUnsafe_",
|
||
|
"type": "uint256"
|
||
|
},
|
||
|
{
|
||
|
"internalType": "uint256",
|
||
|
"name": "uniV3exchangeRate_",
|
||
|
"type": "uint256"
|
||
|
}
|
||
|
],
|
||
|
"stateMutability": "view",
|
||
|
"type": "function"
|
||
|
},
|
||
|
{
|
||
|
"inputs": [],
|
||
|
"name": "weETHOracleData",
|
||
|
"outputs": [
|
||
|
{
|
||
|
"internalType": "uint256",
|
||
|
"name": "weETHExchangeRate_",
|
||
|
"type": "uint256"
|
||
|
},
|
||
|
{
|
||
|
"internalType": "contract IWeETH",
|
||
|
"name": "weETH_",
|
||
|
"type": "address"
|
||
|
}
|
||
|
],
|
||
|
"stateMutability": "view",
|
||
|
"type": "function"
|
||
|
}
|
||
|
],
|
||
|
"transactionHash": "0xe9e46bc892c68afe39b790b43220e880128e4507c0bd7adc5b2782d91ddcf8d1",
|
||
|
"receipt": {
|
||
|
"to": "0x4e59b44847b379578588920cA78FbF26c0B4956C",
|
||
|
"from": "0x0Ed35B1609Ec45c7079E80d11149a52717e4859A",
|
||
|
"contractAddress": null,
|
||
|
"transactionIndex": 83,
|
||
|
"gasUsed": "2277585",
|
||
|
"logsBloom": "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000",
|
||
|
"blockHash": "0x63d2902fe3ac0e6e13622722646b4be32a23db7a3402de5dd74f302b4d343980",
|
||
|
"transactionHash": "0xe9e46bc892c68afe39b790b43220e880128e4507c0bd7adc5b2782d91ddcf8d1",
|
||
|
"logs": [],
|
||
|
"blockNumber": 20024565,
|
||
|
"cumulativeGasUsed": "10029385",
|
||
|
"status": 1,
|
||
|
"byzantium": true
|
||
|
},
|
||
|
"args": [
|
||
|
"0xcd5fe23c85820f7b72d0926fc9b05b43e359b7ee",
|
||
|
{
|
||
|
"chainlinkParams": {
|
||
|
"hops": 1,
|
||
|
"feed1": {
|
||
|
"feed": "0xEe9F2375b4bdF6387aa8265dD4FB8F16512A1d46",
|
||
|
"invertRate": true,
|
||
|
"token0Decimals": 6
|
||
|
},
|
||
|
"feed2": {
|
||
|
"feed": "0x0000000000000000000000000000000000000000",
|
||
|
"invertRate": false,
|
||
|
"token0Decimals": 0
|
||
|
},
|
||
|
"feed3": {
|
||
|
"feed": "0x0000000000000000000000000000000000000000",
|
||
|
"invertRate": false,
|
||
|
"token0Decimals": 0
|
||
|
}
|
||
|
},
|
||
|
"uniV3Params": {
|
||
|
"pool": "0x88e6a0c2ddd26feeb64f039a2c41296fcb3f5640",
|
||
|
"secondsAgos": [
|
||
|
240,
|
||
|
60,
|
||
|
15,
|
||
|
1,
|
||
|
0
|
||
|
],
|
||
|
"tWAPMaxDeltaPercents": [
|
||
|
200,
|
||
|
50,
|
||
|
20
|
||
|
],
|
||
|
"invertRate": true
|
||
|
},
|
||
|
"redstoneOracle": {
|
||
|
"oracle": "0x0000000000000000000000000000000000000000",
|
||
|
"invertRate": false,
|
||
|
"token0Decimals": 0
|
||
|
},
|
||
|
"rateSource": 2,
|
||
|
"fallbackMainSource": 1,
|
||
|
"rateCheckMaxDeltaPercent": 300
|
||
|
}
|
||
|
],
|
||
|
"numDeployments": 1,
|
||
|
"solcInputHash": "1989963ad64c4704dbe1170530c79d20",
|
||
|
"metadata": "{\"compiler\":{\"version\":\"0.8.21+commit.d9974bed\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"contract IWeETH\",\"name\":\"weETH_\",\"type\":\"address\"},{\"components\":[{\"components\":[{\"internalType\":\"contract IUniswapV3Pool\",\"name\":\"pool\",\"type\":\"address\"},{\"internalType\":\"bool\",\"name\":\"invertRate\",\"type\":\"bool\"},{\"internalType\":\"uint256[3]\",\"name\":\"tWAPMaxDeltaPercents\",\"type\":\"uint256[3]\"},{\"internalType\":\"uint32[5]\",\"name\":\"secondsAgos\",\"type\":\"uint32[5]\"}],\"internalType\":\"struct UniV3OracleImpl.UniV3ConstructorParams\",\"name\":\"uniV3Params\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"uint8\",\"name\":\"hops\",\"type\":\"uint8\"},{\"components\":[{\"internalType\":\"contract IChainlinkAggregatorV3\",\"name\":\"feed\",\"type\":\"address\"},{\"internalType\":\"bool\",\"name\":\"invertRate\",\"type\":\"bool\"},{\"internalType\":\"uint256\",\"name\":\"token0Decimals\",\"type\":\"uint256\"}],\"internalType\":\"struct ChainlinkStructs.ChainlinkFeedData\",\"name\":\"feed1\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"contract IChainlinkAggregatorV3\",\"name\":\"feed\",\"type\":\"address\"},{\"internalType\":\"bool\",\"name\":\"invertRate\",\"type\":\"bool\"},{\"internalType\":\"uint256\",\"name\":\"token0Decimals\",\"type\":\"uint256\"}],\"internalType\":\"struct ChainlinkStructs.ChainlinkFeedData\",\"name\":\"feed2\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"contract IChainlinkAggregatorV3\",\"name\":\"feed\",\"type\":\"address\"},{\"internalType\":\"bool\",\"name\":\"invertRate\",\"type\":\"bool\"},{\"internalType\":\"uint256\",\"name\":\"token0Decimals\",\"type\":\"uint256\"}],\"internalType\":\"struct ChainlinkStructs.ChainlinkFeedData\",\"name\":\"feed3\",\"type\":\"tuple\"}],\"internalType\":\"struct ChainlinkStructs.ChainlinkConstructorParams\",\"name\":\"chainlinkParams\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"contract IRedstoneOracle\",\"name\":\"oracle\",\"type\":\"address\"},{\"internalType\":\"bool\",\"name\":\"invertRate\",\"type\":\"bool\"},{\"internalType\":\"uint256\",\"name\":\"token0Decimals\",\"type\":\"uint256\"}],\"internalType\":\"struct RedstoneStructs.RedstoneOracleData\",\"name\":\"redstoneOracle\",\"type\":\"tuple\"},{\"internalType\":\"uint8\",\"name\":\"rateSource\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"fallbackMainSource\",\"type\":\"uint8\"},{\"internalType\":\"uint256\",\"name\":\"rateCheckMaxDeltaPercent\",\"type\":\"uint256\"}],\"internalType\":\"struct UniV3CheckCLRSOracle.UniV3CheckCLRSConstructorParams\",\"name\":\"uniV3CheckCLRSParams_\",\"type\":\"tuple\"}],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"errorId_\",\"type\":\"uint256\"}],\"name\":\"FluidOracleError\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"chainlinkOracleData\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"chainlinkExchangeRate_\",\"type\":\"uint256\"},{\"internalType\":\"contract IChainlinkAggregatorV3\",\"name\":\"chainlinkFeed1_\",\"type\":\"address\"},{\"internalType\":\"bool\",\"name\":\"chainlinkInvertRate1_\",\"type\":\"bool\"},{\"internalType\":\"uint256\",\"name\":\"chainlinkExchangeRate1_\",\"type\":\"uint256\"},{\"internalType\":\"contract IChainlinkAggregatorV3\",\"name\":\"chainlinkFeed2_\",\"type\":\"address\"},{\"internalType\":\"bool\",\"name\":\"chainlinkInvertRate2_\",\"type\":\"bool\"},{\"internalType\":\"uint256\",\"name\":\"chainlinkExchangeRate2_\",\"type\":\"uint256\"},{\"internalType\":\"contract IChainlinkAggregatorV3\",\"name\":\"chainlinkFeed3_\",\"type\":\"address\"},{\"internalType\":\"bool\",\"name\":\"chainlinkInvertRate3_\",\"type\":\"bool\"},{\"internalType\":\"uint256\",\"name\":\"chainlinkExchangeRate3_\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getExchangeRate\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"exchangeRate_\",\"type\":\"uint256\"}],\
|
||
|
"bytecode": "0x61054060405261dead610340523480156200001957600080fd5b5060405162003734380380620037348339810160408190526200003c91620009b8565b808060800151816020015182604001518160006001600160a01b031682600001516001600160a01b0316146200007357816200009f565b6040518060600160405280610340516001600160a01b0316815260200160001515815260200160018152505b8551886001600160a01b038116620000d45760405163c82fc46560e01b81526201117160048201526024015b60405180910390fd5b6001600160a01b03811660a052620000ef6012601b62000b1f565b620000fc90600a62000c38565b6080525080516001600160a01b03166200012e5760405163c82fc46560e01b815261f2316004820152602401620000cb565b60608101516020810151905163ffffffff91821691161115806200016e57506060810151604081015163ffffffff16906001602002015163ffffffff1611155b806200019657506060818101519081015163ffffffff16906002602002015163ffffffff1611155b80620001be57506060810151608081015163ffffffff16906003602002015163ffffffff1611155b15620001e25760405163c82fc46560e01b815261f2326004820152602401620000cb565b60408101515161271011158062000203575060408101518051602090910151115b806200021a57506040818101516020810151910151115b156200023e5760405163c82fc46560e01b815261f2336004820152602401620000cb565b606081810180515163ffffffff90811661016052815160209081015182166101805282516040015182166101a05282519093015181166101c052815160800151166101e0525190810151905162000296919062000c4d565b63ffffffff166102005260608101516040810151602090910151620002bc919062000c4d565b63ffffffff166102205260608181015190810151604090910151620002e2919062000c4d565b63ffffffff1661024052606081810151608081015191015162000306919062000c4d565b63ffffffff16610260526040818101805151610100528051602090810151610120529051909101516101405281516001600160a01b031660c052810151151560e05262000356601b600a62000c38565b6102805262000368601b600262000c74565b6200037590600a62000c38565b6102a0525080516001600160a01b031615806200039457506040810151155b15620003b85760405163c82fc46560e01b815261fa016004820152602401620000cb565b80516001600160a01b039081166102c052602082015115156102e052610340518251821691161462000409576040810151620003f690601b62000b1f565b6200040390600a62000c38565b6200040c565b60015b610300526103405181516001600160a01b039081169116146200044e5760408101516200043b90601b62000c8e565b6200044890600a62000c38565b62000451565b60015b61032052508051600160ff90911610806200047357506003816000015160ff16115b806200049c57506020810151516001600160a01b031615806200049c5750602081015160400151155b80620004d757506001816000015160ff16118015620004d757506040810151516001600160a01b03161580620004d757506040808201510151155b806200051357506002816000015160ff161180156200051357506060810151516001600160a01b03161580620005135750606081015160400151155b15620005375760405163c82fc46560e01b815261ee496004820152602401620000cb565b60208082018051516001600160a01b03908116610360526040808501805151831661038052606086018051519093166103a052835185015115156103c0525184015115156103e0529051909201511515610400525101516200059b90601b62000b1f565b620005a890600a62000c38565b61042052602081015160400151620005c290601b62000c8e565b620005cf90600a62000c38565b610440528051600160ff90911611620005ea5760016200060c565b6040808201510151620005ff90601b62000b1f565b6200060c90600a62000c38565b610460528051600160ff909116116200062757600162000649565b60408082015101516200063c90601b62000c8e565b6200064990600a62000c38565b610480528051600260ff909116116200066457600162000687565b6060810151604001516200067a90601b62000b1f565b6200068790600a62000c38565b6104a0528051600260ff90911611620006a2576001620006c5565b606081015160400151620006b890601b62000c8e565b620006c590600a62000c38565b6104c05250600160ff84161080620006e0575060038360ff16115b15620007045760405163c82fc46560e01b815261fde96004820152602401620000cb565b505060ff9081166104e05260608201516001911610806200072c57506003816060015160ff16115b806200073d57506127108160a00151115b80620007635750806080015160ff166001148015620007635750806060015160ff166003145b15620007875760405163c82fc46560e01b815261ea626004820152602401620000cb565b60a0810151610500526060015160ff16610520525062000ca49050565b6001600160a01b0381168114620007ba57600080fd5b50565b634e487b7160e01b600052604160045260246000fd5b604051606081016001600160401b0381118282101715620007f857620007f8620007bd
|
||
|
"deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100885760003560e01c80638e7bfbc01161005b5780638e7bfbc0146101f3578063a6ac913414610209578063e6aa216c14610223578063f3190c89146101f357600080fd5b80631b3904f21461008d5780637557ca41146100c45780637cebd7c51461013757806388c35209146101b9575b600080fd5b61009561022b565b6040805192835273ffffffffffffffffffffffffffffffffffffffff9091166020830152015b60405180910390f35b6100cc61025e565b604080519a8b5273ffffffffffffffffffffffffffffffffffffffff998a1660208c0152971515978a01979097526060890195909552928616608088015290151560a087015260c086015290921660e0840152901515610100830152610120820152610140016100bb565b604080517f0000000000000000000000000000000000000000000000000000000000000000815260ff7f0000000000000000000000000000000000000000000000000000000000000000811660208301527f000000000000000000000000000000000000000000000000000000000000000016918101919091526060016100bb565b6101c1610547565b6040805193845273ffffffffffffffffffffffffffffffffffffffff90921660208401521515908201526060016100bb565b6101fb61061a565b6040519081526020016100bb565b610211610651565b6040516100bb96959493929190612169565b6101fb61094e565b600080610236610958565b927f000000000000000000000000000000000000000000000000000000000000000092509050565b600080600080600080600080600080610275610a3d565b7f00000000000000000000000000000000000000000000000000000000000000007f00000000000000000000000000000000000000000000000000000000000000006103437f00000000000000000000000000000000000000000000000000000000000000007f00000000000000000000000000000000000000000000000000000000000000007f00000000000000000000000000000000000000000000000000000000000000007f0000000000000000000000000000000000000000000000000000000000000000610caf565b7f00000000000000000000000000000000000000000000000000000000000000007f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff8216156104325761042d7f00000000000000000000000000000000000000000000000000000000000000007f00000000000000000000000000000000000000000000000000000000000000007f00000000000000000000000000000000000000000000000000000000000000007f0000000000000000000000000000000000000000000000000000000000000000610caf565b610435565b60005b7f00000000000000000000000000000000000000000000000000000000000000007f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff8216156105245761051f7f00000000000000000000000000000000000000000000000000000000000000007f00000000000000000000000000000000000000000000000000000000000000007f00000000000000000000000000000000000000000000000000000000000000007f0000000000000000000000000000000000000000000000000000000000000000610caf565b610527565b60005b995099509950995099509950995099509950995090919293949596979899565b60008060007f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff167f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16146105cc576105c7610d70565b6105cf565b60005b937f000000000000000000000000000000000000000000000000000000000000000093507f000000000000000000000000000000000000000000000000000000000000000092509050565b6000610628601b600a612349565b610630610958565b610638610ea4565b6106429190612355565b61064c919061239b565b905090565b60008060608082806005604051908082528060200260200182016040528015610684578160200160208202803683370190505b5093507f0000000000000000000000000000000000000000000000000000000000000000846000815181106106bb576106bb6123de565b602002602001019063ffffffff16908163ffffffff16815250507f000000000000000000000000000000000000000000000000000000000000000084600181518110610709576107096123de565b602002602001019063ffffffff16908163ffffffff16815250507f000000000000000000000000000000000000000000000000000000000000000084600281518110610757576107576123de565b602002602001019063ffffffff16908163ffffffff16815250507f0000000000000000000000000000000000000000000000000000000000000000846003815181106107a5576107a56123de565b602002602001019063ffffffff16908163ffffffff16815250507f0000000000000000000000000000000000000000000000000000000000000000846004815181106107f3576107f36123de56
|
||
|
"devdoc": {
|
||
|
"kind": "dev",
|
||
|
"methods": {
|
||
|
"constructor": {
|
||
|
"params": {
|
||
|
"uniV3CheckCLRSParams_": "UniV3CheckCLRSOracle constructor params",
|
||
|
"weETH_": "address of the weETH contract"
|
||
|
}
|
||
|
},
|
||
|
"getExchangeRate()": {
|
||
|
"details": "Deprecated. Use `getExchangeRateOperate()` and `getExchangeRateLiquidate()` instead. Only implemented for backwards compatibility."
|
||
|
}
|
||
|
},
|
||
|
"title": "weETHOracle combined with a uniV3CheckCLRSOracle.",
|
||
|
"version": 1
|
||
|
},
|
||
|
"userdoc": {
|
||
|
"kind": "user",
|
||
|
"methods": {
|
||
|
"chainlinkOracleData()": {
|
||
|
"notice": "returns all Chainlink oracle related data as utility for easy off-chain use / block explorer in a single view method"
|
||
|
},
|
||
|
"constructor": {
|
||
|
"notice": "constructs a WeETHUniV3CheckCLRSOracle with all inherited contracts"
|
||
|
},
|
||
|
"getExchangeRateLiquidate()": {
|
||
|
"notice": "Get the `exchangeRate_` between the underlying asset and the peg asset in 1e27 for liquidations"
|
||
|
},
|
||
|
"getExchangeRateOperate()": {
|
||
|
"notice": "Get the `exchangeRate_` between the underlying asset and the peg asset in 1e27 for operates"
|
||
|
},
|
||
|
"redstoneOracleData()": {
|
||
|
"notice": "returns all Redstone oracle related data as utility for easy off-chain use / block explorer in a single view method"
|
||
|
},
|
||
|
"uniV3CheckOracleData()": {
|
||
|
"notice": "returns all oracle related data as utility for easy off-chain / block explorer use in a single view method"
|
||
|
},
|
||
|
"uniV3OracleData()": {
|
||
|
"notice": "returns all UniV3 oracle related data as utility for easy off-chain use / block explorer in a single view method"
|
||
|
},
|
||
|
"weETHOracleData()": {
|
||
|
"notice": "returns all weETH oracle related data as utility for easy off-chain use / block explorer in a single view method"
|
||
|
}
|
||
|
},
|
||
|
"notice": "Gets the exchange rate between the underlying asset and the peg asset by using: 1. weETH Oracle price for weETH -> eETH = ETH (pegged) 2. result from 1. combined with a uniV3CheckCLRSOracle to get someToken (e.g. ETH) -> someToken2. e.g. when going from weETH to USDC: 1. weETH -> eETH = ETH via weETH Oracle 2. ETH -> USDC via UniV3 ETH <> USDC pool checked against ETH -> USDC Chainlink feed.",
|
||
|
"version": 1
|
||
|
},
|
||
|
"storageLayout": {
|
||
|
"storage": [],
|
||
|
"types": null
|
||
|
}
|
||
|
}
|