41 txs
762 calls
constructor
constructor()
functions
adjustmentBasisPoints
viewfunction adjustmentBasisPoints(address) view returns (uint256)
BASIS_POINTS_DIVISOR
viewfunction BASIS_POINTS_DIVISOR() view returns (uint256)
bnb
viewfunction bnb() view returns (address)
bnbBusd
viewfunction bnbBusd() view returns (address)
btc
viewfunction btc() view returns (address)
btcBnb
viewfunction btcBnb() view returns (address)
chainlinkFlags
viewfunction chainlinkFlags() view returns (address)
eth
viewfunction eth() view returns (address)
ethBnb
viewfunction ethBnb() view returns (address)
favorPrimaryPrice
viewfunction favorPrimaryPrice() view returns (bool)
getAmmPrice
viewfunction getAmmPrice(address _token) view returns (uint256)
getAmmPriceV2
viewfunction getAmmPriceV2(address _token, bool _maximise, uint256 _primaryPrice) view returns (uint256)
getLatestPrimaryPrice
viewfunction getLatestPrimaryPrice(address _token) view returns (uint256)
getPairPrice
viewfunction getPairPrice(address _pair, bool _divByReserve0) view returns (uint256)
getPrice
viewfunction getPrice(address _token, bool _maximise, bool _includeAmmPrice, bool) view returns (uint256)
getPriceV1
viewfunction getPriceV1(address _token, bool _maximise, bool _includeAmmPrice) view returns (uint256)
getPriceV2
viewfunction getPriceV2(address _token, bool _maximise, bool _includeAmmPrice) view returns (uint256)
getPrimaryPrice
viewfunction getPrimaryPrice(address _token, bool _maximise) view returns (uint256)
getSecondaryPrice
viewfunction getSecondaryPrice(address _token, uint256 _referencePrice, bool _maximise) view returns (uint256)
gov
viewfunction gov() view returns (address)
isAdjustmentAdditive
viewfunction isAdjustmentAdditive(address) view returns (bool)
isAmmEnabled
viewfunction isAmmEnabled() view returns (bool)
isSecondaryPriceEnabled
viewfunction isSecondaryPriceEnabled() view returns (bool)
lastAdjustmentTimings
viewfunction lastAdjustmentTimings(address) view returns (uint256)
MAX_ADJUSTMENT_BASIS_POINTS
viewfunction MAX_ADJUSTMENT_BASIS_POINTS() view returns (uint256)
MAX_ADJUSTMENT_INTERVAL
viewfunction MAX_ADJUSTMENT_INTERVAL() view returns (uint256)
MAX_SPREAD_BASIS_POINTS
viewfunction MAX_SPREAD_BASIS_POINTS() view returns (uint256)
maxStrictPriceDeviation
viewfunction maxStrictPriceDeviation() view returns (uint256)
ONE_USD
viewfunction ONE_USD() view returns (uint256)
PRICE_PRECISION
viewfunction PRICE_PRECISION() view returns (uint256)
priceDecimals
viewfunction priceDecimals(address) view returns (uint256)
priceFeeds
viewfunction priceFeeds(address) view returns (address)
priceSampleSpace
viewfunction priceSampleSpace() view returns (uint256)
secondaryPriceFeed
viewfunction secondaryPriceFeed() view returns (address)
spreadBasisPoints
viewfunction spreadBasisPoints(address) view returns (uint256)
spreadThresholdBasisPoints
viewfunction spreadThresholdBasisPoints() view returns (uint256)
strictStableTokens
viewfunction strictStableTokens(address) view returns (bool)
useV2Pricing
viewfunction useV2Pricing() view returns (bool)
setAdjustment
nonpayablefunction setAdjustment(address _token, bool _isAdditive, uint256 _adjustmentBps)
setChainlinkFlags
nonpayablefunction setChainlinkFlags(address _chainlinkFlags)
setFavorPrimaryPrice
nonpayablefunction setFavorPrimaryPrice(bool _favorPrimaryPrice)
setGov
nonpayablefunction setGov(address _gov)
setIsAmmEnabled
nonpayablefunction setIsAmmEnabled(bool _isEnabled)
setIsSecondaryPriceEnabled
nonpayablefunction setIsSecondaryPriceEnabled(bool _isEnabled)
setMaxStrictPriceDeviation
nonpayablefunction setMaxStrictPriceDeviation(uint256 _maxStrictPriceDeviation)
setPairs
nonpayablefunction setPairs(address _bnbBusd, address _ethBnb, address _btcBnb)
setPriceSampleSpace
nonpayablefunction setPriceSampleSpace(uint256 _priceSampleSpace)
setSecondaryPriceFeed
nonpayablefunction setSecondaryPriceFeed(address _secondaryPriceFeed)
setSpreadBasisPoints
nonpayablefunction setSpreadBasisPoints(address _token, uint256 _spreadBasisPoints)
setSpreadThresholdBasisPoints
nonpayablefunction setSpreadThresholdBasisPoints(uint256 _spreadThresholdBasisPoints)
setTokenConfig
nonpayablefunction setTokenConfig(address _token, address _priceFeed, uint256 _priceDecimals, bool _isStrictStable)
setTokens
nonpayablefunction setTokens(address _btc, address _eth, address _bnb)
setUseV2Pricing
nonpayablefunction setUseV2Pricing(bool _useV2Pricing)
events
No events.
errors
No errors.
creation bytecode
0x60806040526001805463ffffffff60a01b191661010160a01b1790556003600281905560009055601e60055534801561003757600080fd5b50600080546001600160a01b03191633179055611c88806100596000396000f3fe608060405234801561001057600080fd5b50600436106103275760003560e01c8063732391b4116101b8578063a27ea38611610104578063c2138d8c116100a2578063d694376c1161007c578063d694376c1461071f578063e4440e0214610732578063eb1c92a914610745578063fd34ec401461075857600080fd5b8063c2138d8c146106d9578063cefe0f21146106ec578063cfad57a21461070c57600080fd5b8063a39c73a3116100de578063a39c73a314610687578063b02a2de414610690578063b731dd87146106a3578063b8f61105146106b657600080fd5b8063a27ea38614610641578063a28d57d814610661578063a2ad7b931461067457600080fd5b8063971bd396116101715780639a0a66351161014b5780639a0a6635146105e95780639b18dc47146105fc5780639b889380146106055780639dcb511a1461061857600080fd5b8063971bd396146105b057806397dfade7146105c35780639917dc74146105d657600080fd5b8063732391b414610551578063826e055f146105645780638b86616c146105775780638c7c9e0c1461058a57806393f690741461059d57806395082d25146104f257600080fd5b8063443be2091161027757806356c8c2c11161023057806367781c0e1161020a57806367781c0e146104f25780636ce8a44b146105055780636fc8070814610528578063717cfe7a1461053157600080fd5b806356c8c2c1146104b8578063593d9e80146104cb578063604f37e9146104df57600080fd5b8063443be2091461044457806348cac2771461045757806349a876e4146104775780634a4b1f4f1461048a5780634b9ade471461049257806356bf9de4146104a557600080fd5b80632fc3a70a116102e45780633d949c5f116102be5780633d949c5f146103f65780633eba8d36146104095780633ebbc6011461041c5780633f0c3bb71461043057600080fd5b80632fc3a70a146103b657806330536ee5146103c9578063378e7bf7146103ed57600080fd5b80630957aed91461032c5780631193c80914610347578063126082cf1461037257806312d43a511461037b5780632fa03b8f1461038e5780632fbfe3d3146103a3575b600080fd5b610334603281565b6040519081526020015b60405180910390f35b600a5461035a906001600160a01b031681565b6040516001600160a01b03909116815260200161033e565b61033461271081565b60005461035a906001600160a01b031681565b6103a161039c366004611754565b61076b565b005b6103a16103b1366004611754565b610805565b6103346103c436600461179a565b610834565b6001546103dd90600160b01b900460ff1681565b604051901515815260200161033e565b61033460035481565b6103346104043660046117f4565b6108f2565b61033461041736600461183d565b610ac6565b6001546103dd90600160a81b900460ff1681565b6001546103dd90600160a01b900460ff1681565b6103a1610452366004611872565b610b67565b6103346104653660046118b5565b60106020526000908152604090205481565b60085461035a906001600160a01b031681565b610334601481565b6103a16104a03660046118d0565b610bd0565b6103346104b33660046118b5565b610c4f565b6103346104c6366004611914565b610d44565b6001546103dd90600160b81b900460ff1681565b6103a16104ed36600461194b565b610fa7565b61033468327cb2734119d3b7a9601e1b81565b6103dd6105133660046118b5565b60116020526000908152604090205460ff1681565b61033460025481565b61033461053f3660046118b5565b60126020526000908152604090205481565b61033461055f3660046117f4565b610fef565b6103a16105723660046118b5565b611044565b60045461035a906001600160a01b031681565b60075461035a906001600160a01b031681565b6103a16105ab366004611872565b611090565b600b5461035a906001600160a01b031681565b60095461035a906001600160a01b031681565b6103a16105e436600461194b565b6110f9565b6103a16105f73660046118b5565b611141565b610334611c2081565b6103a1610613366004611968565b61118d565b61035a6106263660046118b5565b600c602052600090815260409020546001600160a01b031681565b61033461064f3660046118b5565b600e6020526000908152604090205481565b60065461035a906001600160a01b031681565b610334610682366004611914565b611237565b61033460055481565b61033461069e366004611992565b611321565b6103a16106b1366004611754565b6113e9565b6103dd6106c43660046118b5565b600f6020526000908152604090205460ff1681565b6103346106e73660046118b5565b611418565b6103346106fa3660046118b5565b600d6020526000908152604090205481565b6103a161071a3660046118b5565b611506565b6103a161072d366004611992565b611552565b60015461035a906001600160a01b031681565b6103a161075336600461194b565b611694565b6103a161076636600461194b565b6116dc565b6000546001600160a01b0316331461079e5760405162461bcd60e51b8152600401610795906119d1565b60405180910390fd5b600081116108005760405162461bcd60e51b815260206004820152602960248201527f5661756c745072696365466565643a20696e76616c6964205f707269636553616044820152686d706c65537061636560b81b6064820152608401610795565b600255565b6000546001600160a01b0316331461082f5760405162461bcd60e51b8152600401610795906119d1565b600355565b6001546000908190600160b01b900460ff1661085a576108558686866108f2565b610865565b610865868686610fef565b6001600160a01b03871660009081526010602052604090205490915080156108e8576001600160a01b03871660009081526011602052604090205460ff1680156108d0576108c96127106108c36108bc8286611724565b8690611730565b9061173c565b92506108e6565b6108e36127106108c36108bc8286611748565b92505b505b5095945050505050565b6000806108ff8585610d44565b90508280156109175750600154600160a01b900460ff165b1561095c57600061092786611418565b9050801561095a5784801561093b57508181115b15610944578091505b8415801561095157508181105b1561095a578091505b505b600154600160a81b900460ff161561097c57610979858286610ac6565b90505b6001600160a01b0385166000908152600f602052604090205460ff1615610a6557600068327cb2734119d3b7a9601e1b82116109cd576109c868327cb2734119d3b7a9601e1b83611748565b6109e3565b6109e38268327cb2734119d3b7a9601e1b611748565b90506003548111610a045768327cb2734119d3b7a9601e1b92505050610abf565b848015610a1c575068327cb2734119d3b7a9601e1b82115b15610a2957509050610abf565b84158015610a42575068327cb2734119d3b7a9601e1b82105b15610a4f57509050610abf565b68327cb2734119d3b7a9601e1b92505050610abf565b6001600160a01b0385166000908152600e60205260409020548415610aa757610a9e6127106108c3610a978285611724565b8590611730565b92505050610abf565b610aba6127106108c3610a978285611748565b925050505b9392505050565b6004546000906001600160a01b0316610ae0575081610abf565b60048054604051630ffd9c6d60e31b81526001600160a01b0387811693820193909352602481018690528415156044820152911690637fece36890606401602060405180830381865afa158015610b3b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b5f9190611a08565b949350505050565b6000546001600160a01b03163314610b915760405162461bcd60e51b8152600401610795906119d1565b600680546001600160a01b039485166001600160a01b031991821617909155600780549385169382169390931790925560088054919093169116179055565b6000546001600160a01b03163314610bfa5760405162461bcd60e51b8152600401610795906119d1565b6001600160a01b039384166000908152600c6020908152604080832080546001600160a01b0319169690971695909517909555600d855283812092909255600f90935220805460ff1916911515919091179055565b6001600160a01b038082166000908152600c602052604081205490911680610c895760405162461bcd60e51b815260040161079590611a21565b60008190506000816001600160a01b03166350d25bcd6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610cce573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610cf29190611a08565b905060008113610b5f5760405162461bcd60e51b815260206004820152601d60248201527f5661756c745072696365466565643a20696e76616c69642070726963650000006044820152606401610795565b6001600160a01b038083166000908152600c602052604081205490911680610d7e5760405162461bcd60e51b815260040161079590611a21565b6001546001600160a01b031615610e9557600180546000916001600160a01b039091169063357e47fe90610dd2907fa438451d6458044c3c8cd2f6f31c91ac882a6d917fa1d50c2bc3074c4524952d611a79565b60405160e083901b6001600160e01b031916815260609190911c6004820152602401602060405180830381865afa158015610e11573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e359190611a90565b90508015610e935760405162461bcd60e51b815260206004820152602560248201527f436861696e6c696e6b20666565647320617265206e6f74206265696e6720757060448201526419185d195960da1b6064820152608401610795565b505b600080829050806001600160a01b03166350d25bcd6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610ed9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610efd9190611a08565b915060008211610f5d5760405162461bcd60e51b815260206004820152602560248201527f5661756c745072696365466565643a20636f756c64206e6f7420666574636820604482015264707269636560d81b6064820152608401610795565b6001600160a01b0386166000908152600d6020526040902054610f9a610f8482600a611b91565b6108c38568327cb2734119d3b7a9601e1b611730565b9450505050505b92915050565b6000546001600160a01b03163314610fd15760405162461bcd60e51b8152600401610795906119d1565b60018054911515600160b81b0260ff60b81b19909216919091179055565b600080610ffc8585610d44565b90508280156110145750600154600160a01b900460ff165b1561095c57611024858583611321565b905060015460ff600160a81b909104161561097c57610979858286610ac6565b6000546001600160a01b0316331461106e5760405162461bcd60e51b8152600401610795906119d1565b600180546001600160a01b0319166001600160a01b0392909216919091179055565b6000546001600160a01b031633146110ba5760405162461bcd60e51b8152600401610795906119d1565b600980546001600160a01b039485166001600160a01b031991821617909155600a805493851693821693909317909255600b8054919093169116179055565b6000546001600160a01b031633146111235760405162461bcd60e51b8152600401610795906119d1565b60018054911515600160a01b0260ff60a01b19909216919091179055565b6000546001600160a01b0316331461116b5760405162461bcd60e51b8152600401610795906119d1565b600480546001600160a01b0319166001600160a01b0392909216919091179055565b6000546001600160a01b031633146111b75760405162461bcd60e51b8152600401610795906119d1565b603281111561121b5760405162461bcd60e51b815260206004820152602a60248201527f5661756c745072696365466565643a20696e76616c6964205f7370726561644260448201526961736973506f696e747360b01b6064820152608401610795565b6001600160a01b039091166000908152600e6020526040902055565b6000806000846001600160a01b0316630902f1ac6040518163ffffffff1660e01b8152600401606060405180830381865afa15801561127a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061129e9190611bb4565b506001600160701b031691506001600160701b0316915083156112ee57816112cb57600092505050610fa1565b6112e5826108c38368327cb2734119d3b7a9601e1b611730565b92505050610fa1565b806112fe57600092505050610fa1565b611318816108c38468327cb2734119d3b7a9601e1b611730565b95945050505050565b60008061132d85611418565b90508061133d5782915050610abf565b6000838211611355576113508483611748565b61135f565b61135f8285611748565b90506113766005548561173090919063ffffffff16565b61138282612710611730565b10156113ac57600154600160b81b900460ff16156113a4578392505050610abf565b509050610abf565b8480156113b857508382115b156113c557509050610abf565b841580156113d257508382105b156113df57509050610abf565b5091949350505050565b6000546001600160a01b031633146114135760405162461bcd60e51b8152600401610795906119d1565b600555565b6008546000906001600160a01b038381169116141561144857600954610fa1906001600160a01b03166001611237565b6007546001600160a01b03838116911614156114b157600954600090611478906001600160a01b03166001611237565b600a54909150600090611495906001600160a01b03166001611237565b9050610b5f68327cb2734119d3b7a9601e1b6108c38484611730565b6006546001600160a01b03838116911614156114fe576009546000906114e1906001600160a01b03166001611237565b600b54909150600090611495906001600160a01b03166001611237565b506000919050565b6000546001600160a01b031633146115305760405162461bcd60e51b8152600401610795906119d1565b600080546001600160a01b0319166001600160a01b0392909216919091179055565b6000546001600160a01b0316331461157c5760405162461bcd60e51b8152600401610795906119d1565b6001600160a01b03831660009081526012602052604090205442906115a390611c20611724565b106116065760405162461bcd60e51b815260206004820152602d60248201527f5661756c745072696365466565643a2061646a7573746d656e7420667265717560448201526c195b98de48195e18d959591959609a1b6064820152608401610795565b60148111156116505760405162461bcd60e51b8152602060048201526016602482015275696e76616c6964205f61646a7573746d656e7442707360501b6044820152606401610795565b6001600160a01b03929092166000908152601160209081526040808320805460ff191694151594909417909355601081528282209390935560129092529020429055565b6000546001600160a01b031633146116be5760405162461bcd60e51b8152600401610795906119d1565b60018054911515600160a81b0260ff60a81b19909216919091179055565b6000546001600160a01b031633146117065760405162461bcd60e51b8152600401610795906119d1565b60018054911515600160b01b0260ff60b01b19909216919091179055565b6000610abf8284611bf9565b6000610abf8284611c11565b6000610abf8284611c30565b6000610abf8284611a79565b60006020828403121561176657600080fd5b5035919050565b80356001600160a01b038116811461178457600080fd5b919050565b801515811461179757600080fd5b50565b600080600080608085870312156117b057600080fd5b6117b98561176d565b935060208501356117c981611789565b925060408501356117d981611789565b915060608501356117e981611789565b939692955090935050565b60008060006060848603121561180957600080fd5b6118128461176d565b9250602084013561182281611789565b9150604084013561183281611789565b809150509250925092565b60008060006060848603121561185257600080fd5b61185b8461176d565b925060208401359150604084013561183281611789565b60008060006060848603121561188757600080fd5b6118908461176d565b925061189e6020850161176d565b91506118ac6040850161176d565b90509250925092565b6000602082840312156118c757600080fd5b610abf8261176d565b600080600080608085870312156118e657600080fd5b6118ef8561176d565b93506118fd6020860161176d565b92506040850135915060608501356117e981611789565b6000806040838503121561192757600080fd5b6119308361176d565b9150602083013561194081611789565b809150509250929050565b60006020828403121561195d57600080fd5b8135610abf81611789565b6000806040838503121561197b57600080fd5b6119848361176d565b946020939093013593505050565b6000806000606084860312156119a757600080fd5b6119b08461176d565b925060208401356119c081611789565b929592945050506040919091013590565b60208082526019908201527f5661756c745072696365466565643a20666f7262696464656e00000000000000604082015260600190565b600060208284031215611a1a57600080fd5b5051919050565b60208082526022908201527f5661756c745072696365466565643a20696e76616c6964207072696365206665604082015261195960f21b606082015260800190565b634e487b7160e01b600052601160045260246000fd5b600082821015611a8b57611a8b611a63565b500390565b600060208284031215611aa257600080fd5b8151610abf81611789565b600181815b80851115611ae8578160001904821115611ace57611ace611a63565b80851615611adb57918102915b93841c9390800290611ab2565b509250929050565b600082611aff57506001610fa1565b81611b0c57506000610fa1565b8160018114611b225760028114611b2c57611b48565b6001915050610fa1565b60ff841115611b3d57611b3d611a63565b50506001821b610fa1565b5060208310610133831016604e8410600b8410161715611b6b575081810a610fa1565b611b758383611aad565b8060001904821115611b8957611b89611a63565b029392505050565b6000610abf8383611af0565b80516001600160701b038116811461178457600080fd5b600080600060608486031215611bc957600080fd5b611bd284611b9d565b9250611be060208501611b9d565b9150604084015163ffffffff8116811461183257600080fd5b60008219821115611c0c57611c0c611a63565b500190565b6000816000190483118215151615611c2b57611c2b611a63565b500290565b600082611c4d57634e487b7160e01b600052601260045260246000fd5b50049056fea26469706673582212201cd7e5fe483365efc48e2056bd5b0a41c9f881de01d45603eb3edba07bceee1164736f6c634300080c0033