Overview
S Balance
0 S
S Value
-More Info
Private Name Tags
ContractCreator
Latest 1 from a total of 1 transactions
Transaction Hash |
Method
|
Block
|
From
|
To
|
|||||
---|---|---|---|---|---|---|---|---|---|
Set Errors | 637271 | 4 hrs ago | IN | 0 S | 0.00261887 |
Loading...
Loading
Contract Name:
VaultErrorController
Compiler Version
v0.6.12+commit.27d51765
Contract Source Code (Solidity)
/** *Submitted for verification at SonicScan.org on 2024-12-19 */ // SPDX-License-Identifier: MIT pragma solidity 0.6.12; contract Governable { address public gov; constructor() public { gov = msg.sender; } modifier onlyGov() { require(msg.sender == gov, "Governable: forbidden"); _; } function setGov(address _gov) external onlyGov { gov = _gov; } } pragma solidity 0.6.12; interface IVaultUtils { function updateCumulativeFundingRate(address _collateralToken, address _indexToken) external returns (bool); function validateIncreasePosition(address _account, address _collateralToken, address _indexToken, uint256 _sizeDelta, bool _isLong) external view; function validateDecreasePosition(address _account, address _collateralToken, address _indexToken, uint256 _collateralDelta, uint256 _sizeDelta, bool _isLong, address _receiver) external view; function validateLiquidation(address _account, address _collateralToken, address _indexToken, bool _isLong, bool _raise) external view returns (uint256, uint256); function getEntryFundingRate(address _collateralToken, address _indexToken, bool _isLong) external view returns (uint256); function getPositionFee(address _account, address _collateralToken, address _indexToken, bool _isLong, uint256 _sizeDelta) external view returns (uint256); function getFundingFee(address _account, address _collateralToken, address _indexToken, bool _isLong, uint256 _size, uint256 _entryFundingRate) external view returns (uint256); function getBuyUsdgFeeBasisPoints(address _token, uint256 _usdgAmount) external view returns (uint256); function getSellUsdgFeeBasisPoints(address _token, uint256 _usdgAmount) external view returns (uint256); function getSwapFeeBasisPoints(address _tokenIn, address _tokenOut, uint256 _usdgAmount) external view returns (uint256); function getFeeBasisPoints(address _token, uint256 _usdgDelta, uint256 _feeBasisPoints, uint256 _taxBasisPoints, bool _increment) external view returns (uint256); } pragma solidity 0.6.12; interface IVault { function isInitialized() external view returns (bool); function isSwapEnabled() external view returns (bool); function isLeverageEnabled() external view returns (bool); function setVaultUtils(IVaultUtils _vaultUtils) external; function setError(uint256 _errorCode, string calldata _error) external; function router() external view returns (address); function usdg() external view returns (address); function gov() external view returns (address); function whitelistedTokenCount() external view returns (uint256); function maxLeverage() external view returns (uint256); function minProfitTime() external view returns (uint256); function hasDynamicFees() external view returns (bool); function fundingInterval() external view returns (uint256); function totalTokenWeights() external view returns (uint256); function getTargetUsdgAmount(address _token) external view returns (uint256); function inManagerMode() external view returns (bool); function inPrivateLiquidationMode() external view returns (bool); function maxGasPrice() external view returns (uint256); function approvedRouters(address _account, address _router) external view returns (bool); function isLiquidator(address _account) external view returns (bool); function isManager(address _account) external view returns (bool); function minProfitBasisPoints(address _token) external view returns (uint256); function tokenBalances(address _token) external view returns (uint256); function lastFundingTimes(address _token) external view returns (uint256); function setMaxLeverage(uint256 _maxLeverage) external; function setInManagerMode(bool _inManagerMode) external; function setManager(address _manager, bool _isManager) external; function setIsSwapEnabled(bool _isSwapEnabled) external; function setIsLeverageEnabled(bool _isLeverageEnabled) external; function setMaxGasPrice(uint256 _maxGasPrice) external; function setUsdgAmount(address _token, uint256 _amount) external; function setBufferAmount(address _token, uint256 _amount) external; function setMaxGlobalShortSize(address _token, uint256 _amount) external; function setInPrivateLiquidationMode(bool _inPrivateLiquidationMode) external; function setLiquidator(address _liquidator, bool _isActive) external; function setFundingRate(uint256 _fundingInterval, uint256 _fundingRateFactor, uint256 _stableFundingRateFactor) external; function setFees( uint256 _taxBasisPoints, uint256 _stableTaxBasisPoints, uint256 _mintBurnFeeBasisPoints, uint256 _swapFeeBasisPoints, uint256 _stableSwapFeeBasisPoints, uint256 _marginFeeBasisPoints, uint256 _liquidationFeeUsd, uint256 _minProfitTime, bool _hasDynamicFees ) external; function setTokenConfig( address _token, uint256 _tokenDecimals, uint256 _redemptionBps, uint256 _minProfitBps, uint256 _maxUsdgAmount, bool _isStable, bool _isShortable ) external; function setPriceFeed(address _priceFeed) external; function withdrawFees(address _token, address _receiver) external returns (uint256); function directPoolDeposit(address _token) external; function buyUSDG(address _token, address _receiver) external returns (uint256); function sellUSDG(address _token, address _receiver) external returns (uint256); function swap(address _tokenIn, address _tokenOut, address _receiver) external returns (uint256); function increasePosition(address _account, address _collateralToken, address _indexToken, uint256 _sizeDelta, bool _isLong) external; function decreasePosition(address _account, address _collateralToken, address _indexToken, uint256 _collateralDelta, uint256 _sizeDelta, bool _isLong, address _receiver) external returns (uint256); function validateLiquidation(address _account, address _collateralToken, address _indexToken, bool _isLong, bool _raise) external view returns (uint256, uint256); function liquidatePosition(address _account, address _collateralToken, address _indexToken, bool _isLong, address _feeReceiver) external; function tokenToUsdMin(address _token, uint256 _tokenAmount) external view returns (uint256); function priceFeed() external view returns (address); function fundingRateFactor() external view returns (uint256); function stableFundingRateFactor() external view returns (uint256); function cumulativeFundingRates(address _token) external view returns (uint256); function getNextFundingRate(address _token) external view returns (uint256); function getFeeBasisPoints(address _token, uint256 _usdgDelta, uint256 _feeBasisPoints, uint256 _taxBasisPoints, bool _increment) external view returns (uint256); function liquidationFeeUsd() external view returns (uint256); function taxBasisPoints() external view returns (uint256); function stableTaxBasisPoints() external view returns (uint256); function mintBurnFeeBasisPoints() external view returns (uint256); function swapFeeBasisPoints() external view returns (uint256); function stableSwapFeeBasisPoints() external view returns (uint256); function marginFeeBasisPoints() external view returns (uint256); function allWhitelistedTokensLength() external view returns (uint256); function allWhitelistedTokens(uint256) external view returns (address); function whitelistedTokens(address _token) external view returns (bool); function stableTokens(address _token) external view returns (bool); function shortableTokens(address _token) external view returns (bool); function feeReserves(address _token) external view returns (uint256); function globalShortSizes(address _token) external view returns (uint256); function globalShortAveragePrices(address _token) external view returns (uint256); function maxGlobalShortSizes(address _token) external view returns (uint256); function tokenDecimals(address _token) external view returns (uint256); function tokenWeights(address _token) external view returns (uint256); function guaranteedUsd(address _token) external view returns (uint256); function poolAmounts(address _token) external view returns (uint256); function bufferAmounts(address _token) external view returns (uint256); function reservedAmounts(address _token) external view returns (uint256); function usdgAmounts(address _token) external view returns (uint256); function maxUsdgAmounts(address _token) external view returns (uint256); function getRedemptionAmount(address _token, uint256 _usdgAmount) external view returns (uint256); function getMaxPrice(address _token) external view returns (uint256); function getMinPrice(address _token) external view returns (uint256); function getDelta(address _indexToken, uint256 _size, uint256 _averagePrice, bool _isLong, uint256 _lastIncreasedTime) external view returns (bool, uint256); function getPosition(address _account, address _collateralToken, address _indexToken, bool _isLong) external view returns (uint256, uint256, uint256, uint256, uint256, uint256, bool, uint256); } pragma solidity 0.6.12; pragma experimental ABIEncoderV2; contract VaultErrorController is Governable { function setErrors(IVault _vault, string[] calldata _errors) external onlyGov { for (uint256 i = 0; i < _errors.length; i++) { _vault.setError(i, _errors[i]); } } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"inputs":[],"name":"gov","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"contract IVault","name":"_vault","type":"address"},{"internalType":"string[]","name":"_errors","type":"string[]"}],"name":"setErrors","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_gov","type":"address"}],"name":"setGov","outputs":[],"stateMutability":"nonpayable","type":"function"}]
Contract Creation Code
608060405234801561001057600080fd5b50600080546001600160a01b0319163317905561036b806100326000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c806312d43a51146100465780636216c01b14610064578063cfad57a214610079575b600080fd5b61004e61008c565b60405161005b9190610259565b60405180910390f35b6100776100723660046101d8565b61009b565b005b6100776100873660046101b5565b610169565b6000546001600160a01b031681565b6000546001600160a01b031633146100ce5760405162461bcd60e51b81526004016100c59061026d565b60405180910390fd5b60005b8181101561016357836001600160a01b03166328e67be5828585858181106100f557fe5b905060200281019061010791906102d2565b6040518463ffffffff1660e01b81526004016101259392919061029c565b600060405180830381600087803b15801561013f57600080fd5b505af1158015610153573d6000803e3d6000fd5b5050600190920191506100d19050565b50505050565b6000546001600160a01b031633146101935760405162461bcd60e51b81526004016100c59061026d565b600080546001600160a01b0319166001600160a01b0392909216919091179055565b6000602082840312156101c6578081fd5b81356101d18161031d565b9392505050565b6000806000604084860312156101ec578182fd5b83356101f78161031d565b925060208401356001600160401b0380821115610212578384fd5b818601915086601f830112610225578384fd5b813581811115610233578485fd5b8760208083028501011115610246578485fd5b6020830194508093505050509250925092565b6001600160a01b0391909116815260200190565b60208082526015908201527423b7bb32b93730b136329d103337b93134b23232b760591b604082015260600190565b60008482526040602083015282604083015282846060840137818301606090810191909152601f909201601f1916010192915050565b6000808335601e198436030181126102e8578283fd5b8301803591506001600160401b03821115610301578283fd5b60200191503681900382131561031657600080fd5b9250929050565b6001600160a01b038116811461033257600080fd5b5056fea2646970667358221220d41a7337238c19d589983a5b0bbd8dd1bdd7f751c2618b9043ee36655f9d2b0964736f6c634300060c0033
Deployed Bytecode
0x608060405234801561001057600080fd5b50600436106100415760003560e01c806312d43a51146100465780636216c01b14610064578063cfad57a214610079575b600080fd5b61004e61008c565b60405161005b9190610259565b60405180910390f35b6100776100723660046101d8565b61009b565b005b6100776100873660046101b5565b610169565b6000546001600160a01b031681565b6000546001600160a01b031633146100ce5760405162461bcd60e51b81526004016100c59061026d565b60405180910390fd5b60005b8181101561016357836001600160a01b03166328e67be5828585858181106100f557fe5b905060200281019061010791906102d2565b6040518463ffffffff1660e01b81526004016101259392919061029c565b600060405180830381600087803b15801561013f57600080fd5b505af1158015610153573d6000803e3d6000fd5b5050600190920191506100d19050565b50505050565b6000546001600160a01b031633146101935760405162461bcd60e51b81526004016100c59061026d565b600080546001600160a01b0319166001600160a01b0392909216919091179055565b6000602082840312156101c6578081fd5b81356101d18161031d565b9392505050565b6000806000604084860312156101ec578182fd5b83356101f78161031d565b925060208401356001600160401b0380821115610212578384fd5b818601915086601f830112610225578384fd5b813581811115610233578485fd5b8760208083028501011115610246578485fd5b6020830194508093505050509250925092565b6001600160a01b0391909116815260200190565b60208082526015908201527423b7bb32b93730b136329d103337b93134b23232b760591b604082015260600190565b60008482526040602083015282604083015282846060840137818301606090810191909152601f909201601f1916010192915050565b6000808335601e198436030181126102e8578283fd5b8301803591506001600160401b03821115610301578283fd5b60200191503681900382131561031657600080fd5b9250929050565b6001600160a01b038116811461033257600080fd5b5056fea2646970667358221220d41a7337238c19d589983a5b0bbd8dd1bdd7f751c2618b9043ee36655f9d2b0964736f6c634300060c0033
Deployed Bytecode Sourcemap
9543:252:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;89:18;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9594:198;;;;;;:::i;:::-;;:::i;:::-;;289:76;;;;;;:::i;:::-;;:::i;89:18::-;;;-1:-1:-1;;;;;89:18:0;;:::o;9594:198::-;232:3;;-1:-1:-1;;;;;232:3:0;218:10;:17;210:51;;;;-1:-1:-1;;;210:51:0;;;;;;;:::i;:::-;;;;;;;;;9688:9:::1;9683:102;9703:18:::0;;::::1;9683:102;;;9743:6;-1:-1:-1::0;;;;;9743:15:0::1;;9759:1;9762:7;;9770:1;9762:10;;;;;;;;;;;;;;;;;;:::i;:::-;9743:30;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;-1:-1:-1::0;;9723:3:0::1;::::0;;::::1;::::0;-1:-1:-1;9683:102:0::1;::::0;-1:-1:-1;9683:102:0::1;;;9594:198:::0;;;:::o;289:76::-;232:3;;-1:-1:-1;;;;;232:3:0;218:10;:17;210:51;;;;-1:-1:-1;;;210:51:0;;;;;;;:::i;:::-;347:3:::1;:10:::0;;-1:-1:-1;;;;;;347:10:0::1;-1:-1:-1::0;;;;;347:10:0;;;::::1;::::0;;;::::1;::::0;;289:76::o;696:241:-1:-;;800:2;788:9;779:7;775:23;771:32;768:2;;;-1:-1;;806:12;768:2;85:6;72:20;97:33;124:5;97:33;:::i;:::-;858:63;762:175;-1:-1;;;762:175::o;944:574::-;;;;1126:2;1114:9;1105:7;1101:23;1097:32;1094:2;;;-1:-1;;1132:12;1094:2;625:6;612:20;637:47;678:5;637:47;:::i;:::-;1184:77;-1:-1;1326:2;1311:18;;1298:32;-1:-1;;;;;1339:30;;;1336:2;;;-1:-1;;1372:12;1336:2;1485:6;1474:9;1470:22;;;301:3;294:4;286:6;282:17;278:27;268:2;;-1:-1;;309:12;268:2;352:6;339:20;1350:18;371:6;368:30;365:2;;;-1:-1;;401:12;365:2;496:3;1326:2;;480:6;476:17;437:6;462:32;;459:41;456:2;;;-1:-1;;503:12;456:2;1326;437:6;433:17;1392:110;;;;;;;;1088:430;;;;;:::o;2428:222::-;-1:-1;;;;;4486:54;;;;1596:37;;2555:2;2540:18;;2526:124::o;2657:416::-;2857:2;2871:47;;;2203:2;2842:18;;;4146:19;-1:-1;;;4186:14;;;2219:44;2282:12;;;2828:245::o;3080:441::-;;2409:5;2386:3;2379:37;3265:2;3383;3372:9;3368:18;3361:48;4158:6;3265:2;3254:9;3250:18;4146:19;4713:6;4708:3;4186:14;3254:9;4186:14;4690:30;4751:16;;;4186:14;4751:16;;;4744:27;;;;4869:7;4853:14;;;-1:-1;;4849:28;1925:39;;;3236:285;-1:-1;;3236:285::o;3528:507::-;;;3664:11;3651:25;3715:48;;3739:8;3723:14;3719:29;3715:48;3695:18;3691:73;3681:2;;-1:-1;;3768:12;3681:2;3795:33;;3849:18;;;-1:-1;;;;;;3876:30;;3873:2;;;-1:-1;;3909:12;3873:2;3754:4;3937:13;;-1:-1;3723:14;3969:38;;;3959:49;;3956:2;;;4021:1;;4011:12;3956:2;3619:416;;;;;:::o;4890:117::-;-1:-1;;;;;4486:54;;4949:35;;4939:2;;4998:1;;4988:12;4939:2;4933:74;:::o
Swarm Source
ipfs://d41a7337238c19d589983a5b0bbd8dd1bdd7f751c2618b9043ee36655f9d2b09
Loading...
Loading
Loading...
Loading
Multichain Portfolio | 30 Chains
Chain | Token | Portfolio % | Price | Amount | Value |
---|
[ Download: CSV Export ]
A contract address hosts a smart contract, which is a set of code stored on the blockchain that runs when predetermined conditions are met. Learn more about addresses in our Knowledge Base.