UNPKG

synthetix-demaa

Version:

The smart contracts which make up the Demaa system. (demaa.io)

1,586 lines 1.01 MB
{ "contracts/AddressResolver.sol": { "imports": [ "./Owned.sol", "./interfaces/IAddressResolver.sol", "./interfaces/IIssuer.sol", "./MixinResolver.sol" ], "contracts": { "AddressResolver": { "functions": [ { "name": "constructor", "signature": "constructor(address _owner)", "returns": "()", "modifiers": [], "visibility": "public", "lineNumber": 15, "requires": [], "events": [], "stateMutability": "" }, { "name": "importAddresses", "signature": "importAddresses(bytes32[] names, address[] destinations)", "returns": "()", "modifiers": [ "onlyOwner" ], "visibility": "external", "lineNumber": 19, "requires": [ { "name": "require(..., \"Input lengths must match\")", "lineNumber": 20 } ], "events": [], "stateMutability": "" }, { "name": "rebuildCaches", "signature": "rebuildCaches(contract MixinResolver[] destinations)", "returns": "()", "modifiers": [], "visibility": "external", "lineNumber": 32, "requires": [], "events": [], "stateMutability": "" }, { "name": "areAddressesImported", "signature": "areAddressesImported(bytes32[] names, address[] destinations) view", "returns": "(bool)", "modifiers": [], "visibility": "external", "lineNumber": 40, "requires": [], "events": [], "stateMutability": "view" }, { "name": "getAddress", "signature": "getAddress(bytes32 name) view", "returns": "(address)", "modifiers": [], "visibility": "external", "lineNumber": 49, "requires": [], "events": [], "stateMutability": "view" }, { "name": "requireAndGetAddress", "signature": "requireAndGetAddress(bytes32 name, string reason) view", "returns": "(address)", "modifiers": [], "visibility": "external", "lineNumber": 53, "requires": [ { "name": "require(..., \"string calldata\")", "lineNumber": 55 } ], "events": [], "stateMutability": "view" }, { "name": "getSynth", "signature": "getSynth(bytes32 key) view", "returns": "(address)", "modifiers": [], "visibility": "external", "lineNumber": 59, "requires": [ { "name": "require(..., \"Cannot find Issuer address\")", "lineNumber": 61 } ], "events": [], "stateMutability": "view" } ], "events": [ { "name": "AddressImported", "parameters": "(bytes32 name, address destination)", "lineNumber": 67 } ], "variables": [ { "name": "repository", "type": "mapping(bytes32 => address)", "visibility": "public", "lineNumber": 13 } ], "modifiers": [], "structs": [], "inherits": [ "Owned", "IAddressResolver" ] } }, "libraries": {}, "interfaces": {} }, "contracts/AddressSetLib.sol": { "imports": [], "contracts": {}, "libraries": { "AddressSetLib": { "functions": [ { "name": "contains", "signature": "contains(struct AddressSetLib.AddressSet set, address candidate) view", "returns": "(bool)", "modifiers": [], "visibility": "internal", "lineNumber": 10, "requires": [], "events": [], "stateMutability": "view" }, { "name": "getPage", "signature": "getPage(struct AddressSetLib.AddressSet set, uint256 index, uint256 pageSize) view", "returns": "(address[])", "modifiers": [], "visibility": "internal", "lineNumber": 18, "requires": [], "events": [], "stateMutability": "view" }, { "name": "add", "signature": "add(struct AddressSetLib.AddressSet set, address element)", "returns": "()", "modifiers": [], "visibility": "internal", "lineNumber": 42, "requires": [], "events": [], "stateMutability": "" }, { "name": "remove", "signature": "remove(struct AddressSetLib.AddressSet set, address element)", "returns": "()", "modifiers": [], "visibility": "internal", "lineNumber": 50, "requires": [ { "name": "require(..., \"Element not in set.\")", "lineNumber": 51 } ], "events": [], "stateMutability": "" } ], "events": [], "variables": [], "modifiers": [], "structs": [ { "name": "AddressSet", "members": [ { "name": "elements", "type": "address[]" }, { "name": "indices", "type": "mapping(address => uint256)" } ], "lineNumber": 5 } ], "inherits": [] } }, "interfaces": {} }, "contracts/BaseDebtCache.sol": { "imports": [ "./Owned.sol", "./MixinResolver.sol", "./MixinSystemSettings.sol", "./interfaces/IDebtCache.sol", "./SafeDecimalMath.sol", "./interfaces/IIssuer.sol", "./interfaces/IExchanger.sol", "./interfaces/IExchangeRates.sol", "./interfaces/ISystemStatus.sol", "./interfaces/IEtherCollateral.sol", "./interfaces/IEtherCollateralsUSD.sol", "./interfaces/IERC20.sol", "./interfaces/ICollateralManager.sol", "./interfaces/IEtherWrapper.sol" ], "contracts": { "BaseDebtCache": { "functions": [ { "name": "constructor", "signature": "constructor(address _owner, address _resolver)", "returns": "()", "modifiers": [], "visibility": "public", "lineNumber": 49, "requires": [], "events": [], "stateMutability": "" }, { "name": "resolverAddressesRequired", "signature": "resolverAddressesRequired() view", "returns": "(bytes32[] addresses)", "modifiers": [], "visibility": "public", "lineNumber": 53, "requires": [], "events": [], "stateMutability": "view" }, { "name": "issuer", "signature": "issuer() view", "returns": "(contract IIssuer)", "modifiers": [], "visibility": "internal", "lineNumber": 67, "requires": [], "events": [], "stateMutability": "view" }, { "name": "exchanger", "signature": "exchanger() view", "returns": "(contract IExchanger)", "modifiers": [], "visibility": "internal", "lineNumber": 71, "requires": [], "events": [], "stateMutability": "view" }, { "name": "exchangeRates", "signature": "exchangeRates() view", "returns": "(contract IExchangeRates)", "modifiers": [], "visibility": "internal", "lineNumber": 75, "requires": [], "events": [], "stateMutability": "view" }, { "name": "systemStatus", "signature": "systemStatus() view", "returns": "(contract ISystemStatus)", "modifiers": [], "visibility": "internal", "lineNumber": 79, "requires": [], "events": [], "stateMutability": "view" }, { "name": "etherCollateral", "signature": "etherCollateral() view", "returns": "(contract IEtherCollateral)", "modifiers": [], "visibility": "internal", "lineNumber": 83, "requires": [], "events": [], "stateMutability": "view" }, { "name": "etherCollateralsUSD", "signature": "etherCollateralsUSD() view", "returns": "(contract IEtherCollateralsUSD)", "modifiers": [], "visibility": "internal", "lineNumber": 87, "requires": [], "events": [], "stateMutability": "view" }, { "name": "collateralManager", "signature": "collateralManager() view", "returns": "(contract ICollateralManager)", "modifiers": [], "visibility": "internal", "lineNumber": 91, "requires": [], "events": [], "stateMutability": "view" }, { "name": "etherWrapper", "signature": "etherWrapper() view", "returns": "(contract IEtherWrapper)", "modifiers": [], "visibility": "internal", "lineNumber": 95, "requires": [], "events": [], "stateMutability": "view" }, { "name": "debtSnapshotStaleTime", "signature": "debtSnapshotStaleTime() view", "returns": "(uint256)", "modifiers": [], "visibility": "external", "lineNumber": 99, "requires": [], "events": [], "stateMutability": "view" }, { "name": "cachedDebt", "signature": "cachedDebt() view", "returns": "(uint256)", "modifiers": [], "visibility": "external", "lineNumber": 103, "requires": [], "events": [], "stateMutability": "view" }, { "name": "cachedSynthDebt", "signature": "cachedSynthDebt(bytes32 currencyKey) view", "returns": "(uint256)", "modifiers": [], "visibility": "external", "lineNumber": 107, "requires": [], "events": [], "stateMutability": "view" }, { "name": "cacheTimestamp", "signature": "cacheTimestamp() view", "returns": "(uint256)", "modifiers": [], "visibility": "external", "lineNumber": 111, "requires": [], "events": [], "stateMutability": "view" }, { "name": "cacheInvalid", "signature": "cacheInvalid() view", "returns": "(bool)", "modifiers": [], "visibility": "external", "lineNumber": 115, "requires": [], "events": [], "stateMutability": "view" }, { "name": "_cacheStale", "signature": "_cacheStale(uint256 timestamp) view", "returns": "(bool)", "modifiers": [], "visibility": "internal", "lineNumber": 119, "requires": [], "events": [], "stateMutability": "view" }, { "name": "cacheStale", "signature": "cacheStale() view", "returns": "(bool)", "modifiers": [], "visibility": "external", "lineNumber": 126, "requires": [], "events": [], "stateMutability": "view" }, { "name": "_issuedSynthValues", "signature": "_issuedSynthValues(bytes32[] currencyKeys, uint256[] rates) view", "returns": "(uint256[] values)", "modifiers": [], "visibility": "internal", "lineNumber": 130, "requires": [], "events": [], "stateMutability": "view" }, { "name": "_currentSynthDebts", "signature": "_currentSynthDebts(bytes32[] currencyKeys) view", "returns": "(uint256[] snxIssuedDebts, uint256 _excludedDebt, bool anyRateIsInvalid)", "modifiers": [], "visibility": "internal", "lineNumber": 149, "requires": [], "events": [], "stateMutability": "view" }, { "name": "currentSynthDebts", "signature": "currentSynthDebts(bytes32[] currencyKeys) view", "returns": "(uint256[] debtValues, uint256 excludedDebt, bool anyRateIsInvalid)", "modifiers": [], "visibility": "external", "lineNumber": 164, "requires": [], "events": [], "stateMutability": "view" }, { "name": "_cachedSynthDebts", "signature": "_cachedSynthDebts(bytes32[] currencyKeys) view", "returns": "(uint256[])", "modifiers": [], "visibility": "internal", "lineNumber": 176, "requires": [], "events": [], "stateMutability": "view" }, { "name": "cachedSynthDebts", "signature": "cachedSynthDebts(bytes32[] currencyKeys) view", "returns": "(uint256[] snxIssuedDebts)", "modifiers": [], "visibility": "external", "lineNumber": 185, "requires": [], "events": [], "stateMutability": "view" }, { "name": "totalNonSnxBackedDebt", "signature": "totalNonSnxBackedDebt() view", "returns": "(uint256 excludedDebt, bool isInvalid)", "modifiers": [], "visibility": "external", "lineNumber": 190, "requires": [], "events": [], "stateMutability": "view" }, { "name": "_totalNonSnxBackedDebt", "signature": "_totalNonSnxBackedDebt() view", "returns": "(uint256 excludedDebt, bool isInvalid)", "modifiers": [], "visibility": "internal", "lineNumber": 194, "requires": [], "events": [], "stateMutability": "view" }, { "name": "_currentDebt", "signature": "_currentDebt() view", "returns": "(uint256 debt, bool anyRateIsInvalid)", "modifiers": [], "visibility": "internal", "lineNumber": 220, "requires": [], "events": [], "stateMutability": "view" }, { "name": "currentDebt", "signature": "currentDebt() view", "returns": "(uint256 debt, bool anyRateIsInvalid)", "modifiers": [], "visibility": "external", "lineNumber": 238, "requires": [], "events": [], "stateMutability": "view" }, { "name": "cacheInfo", "signature": "cacheInfo() view", "returns": "(uint256 debt, uint256 timestamp, bool isInvalid, bool isStale)", "modifiers": [], "visibility": "external", "lineNumber": 242, "requires": [], "events": [], "stateMutability": "view" }, { "name": "updateCachedSynthDebts", "signature": "updateCachedSynthDebts(bytes32[] currencyKeys)", "returns": "()", "modifiers": [], "visibility": "external", "lineNumber": 261, "requires": [], "events": [], "stateMutability": "" }, { "name": "updateCachedSynthDebtWithRate", "signature": "updateCachedSynthDebtWithRate(bytes32 currencyKey, uint256 currencyRate)", "returns": "()", "modifiers": [], "visibility": "external", "lineNumber": 263, "requires": [], "events": [], "stateMutability": "" }, { "name": "updateCachedSynthDebtsWithRates", "signature": "updateCachedSynthDebtsWithRates(bytes32[] currencyKeys, uint256[] currencyRates)", "returns": "()", "modifiers": [], "visibility": "external", "lineNumber": 265, "requires": [], "events": [], "stateMutability": "" }, { "name": "updateDebtCacheValidity", "signature": "updateDebtCacheValidity(bool currentlyInvalid)", "returns": "()", "modifiers": [], "visibility": "external", "lineNumber": 267, "requires": [], "events": [], "stateMutability": "" }, { "name": "purgeCachedSynthDebt", "signature": "purgeCachedSynthDebt(bytes32 currencyKey)", "returns": "()", "modifiers": [], "visibility": "external", "lineNumber": 269, "requires": [], "events": [], "stateMutability": "" }, { "name": "takeDebtSnapshot", "signature": "takeDebtSnapshot()", "returns": "()", "modifiers": [], "visibility": "external", "lineNumber": 271, "requires": [], "events": [], "stateMutability": "" }, { "name": "_requireSystemActiveIfNotOwner", "signature": "_requireSystemActiveIfNotOwner() view", "returns": "()", "modifiers": [], "visibility": "internal", "lineNumber": 275, "requires": [], "events": [], "stateMutability": "view" }, { "name": "_onlyIssuer", "signature": "_onlyIssuer() view", "returns": "()", "modifiers": [], "visibility": "internal", "lineNumber": 286, "requires": [ { "name": "require(..., \"Sender is not Issuer\")", "lineNumber": 287 } ], "events": [], "stateMutability": "view" }, { "name": "_onlyIssuerOrExchanger", "signature": "_onlyIssuerOrExchanger() view", "returns": "()", "modifiers": [], "visibility": "internal", "lineNumber": 295, "requires": [ { "name": "require(..., \"Sender is not Issuer or Exchanger\")", "lineNumber": 296 } ], "events": [], "stateMutability": "view" } ], "events": [], "variables": [ { "name": "_cachedDebt", "type": "uint256", "visibility": "internal", "lineNumber": 28 }, { "name": "_cachedSynthDebt", "type": "mapping(bytes32 => uint256)", "visibility": "internal", "lineNumber": 29 }, { "name": "_cacheTimestamp", "type": "uint256", "visibility": "internal", "lineNumber": 30 }, { "name": "_cacheInvalid", "type": "bool", "visibility": "internal", "lineNumber": 31 }, { "name": "sUSD", "type": "bytes32", "visibility": "internal", "lineNumber": 35 }, { "name": "sETH", "type": "bytes32", "visibility": "internal", "lineNumber": 36 }, { "name": "CONTRACT_ISSUER", "type": "bytes32", "visibility": "private", "lineNumber": 40 }, { "name": "CONTRACT_EXCHANGER", "type": "bytes32", "visibility": "private", "lineNumber": 41 }, { "name": "CONTRACT_EXRATES", "type": "bytes32", "visibility": "private", "lineNumber": 42 }, { "name": "CONTRACT_SYSTEMSTATUS", "type": "bytes32", "visibility": "private", "lineNumber": 43 }, { "name": "CONTRACT_ETHERCOLLATERAL", "type": "bytes32", "visibility": "private", "lineNumber": 44 }, { "name": "CONTRACT_ETHERCOLLATERAL_SUSD", "type": "bytes32", "visibility": "private", "lineNumber": 45 }, { "name": "CONTRACT_COLLATERALMANAGER", "type": "bytes32", "visibility": "private", "lineNumber": 46 }, { "name": "CONTRACT_ETHER_WRAPPER", "type": "bytes32", "visibility": "private", "lineNumber": 47 } ], "modifiers": [ { "name": "requireSystemActiveIfNotOwner", "signature": "requireSystemActiveIfNotOwner()", "visibility": "internal", "parameters": "()", "lineNumber": 281 }, { "name": "onlyIssuer", "signature": "onlyIssuer()", "visibility": "internal", "parameters": "()", "lineNumber": 290 }, { "name": "onlyIssuerOrExchanger", "signature": "onlyIssuerOrExchanger()", "visibility": "internal", "parameters": "()", "lineNumber": 299 } ], "structs": [], "inherits": [ "Owned", "MixinSystemSettings", "IDebtCache" ] } }, "libraries": {}, "interfaces": {} }, "contracts/BaseRewardEscrowV2.sol": { "imports": [ "./Owned.sol", "./MixinResolver.sol", "./LimitedSetup.sol", "./interfaces/IRewardEscrowV2.sol", "./SafeDecimalMath.sol", "./interfaces/IERC20.sol", "./interfaces/IFeePool.sol", "./interfaces/ISynthetix.sol", "./interfaces/IIssuer.sol" ], "contracts": { "BaseRewardEscrowV2": { "functions": [ { "name": "constructor", "signature": "constructor(address _owner, address _resolver)", "returns": "()", "modifiers": [], "visibility": "public", "lineNumber": 63, "requires": [], "events": [], "stateMutability": "" }, { "name": "feePool", "signature": "feePool() view", "returns": "(contract IFeePool)", "modifiers": [], "visibility": "internal", "lineNumber": 69, "requires": [], "events": [], "stateMutability": "view" }, { "name": "synthetix", "signature": "synthetix() view", "returns": "(contract ISynthetix)", "modifiers": [], "visibility": "internal", "lineNumber": 73, "requires": [], "events": [], "stateMutability": "view" }, { "name": "issuer", "signature": "issuer() view", "returns": "(contract IIssuer)", "modifiers": [], "visibility": "internal", "lineNumber": 77, "requires": [], "events": [], "stateMutability": "view" }, { "name": "_notImplemented", "signature": "_notImplemented() pure", "returns": "()", "modifiers": [], "visibility": "internal", "lineNumber": 81, "requires": [], "events": [], "stateMutability": "pure" }, { "name": "resolverAddressesRequired", "signature": "resolverAddressesRequired() view", "returns": "(bytes32[] addresses)", "modifiers": [], "visibility": "public", "lineNumber": 88, "requires": [], "events": [], "stateMutability": "view" }, { "name": "balanceOf", "signature": "balanceOf(address account) view", "returns": "(uint256)", "modifiers": [], "visibility": "public", "lineNumber": 98, "requires": [], "events": [], "stateMutability": "view" }, { "name": "numVestingEntries", "signature": "numVestingEntries(address account) view", "returns": "(uint256)", "modifiers": [], "visibility": "external", "lineNumber": 105, "requires": [], "events": [], "stateMutability": "view" }, { "name": "getVestingEntry", "signature": "getVestingEntry(address account, uint256 entryID) view", "returns": "(uint64 endTime, uint256 escrowAmount)", "modifiers": [], "visibility": "external", "lineNumber": 113, "requires": [], "events": [], "stateMutability": "view" }, { "name": "getVestingSchedules", "signature": "getVestingSchedules(address account, uint256 index, uint256 pageSize) view", "returns": "(struct VestingEntries.VestingEntryWithID[])", "modifiers": [], "visibility": "external", "lineNumber": 118, "requires": [], "events": [], "stateMutability": "view" }, { "name": "getAccountVestingEntryIDs", "signature": "getAccountVestingEntryIDs(address account, uint256 index, uint256 pageSize) view", "returns": "(uint256[])", "modifiers": [], "visibility": "external", "lineNumber": 151, "requires": [], "events": [], "stateMutability": "view" }, { "name": "getVestingQuantity", "signature": "getVestingQuantity(address account, uint256[] entryIDs) view", "returns": "(uint256 total)", "modifiers": [], "visibility": "external", "lineNumber": 174, "requires": [], "events": [], "stateMutability": "view" }, { "name": "getVestingEntryClaimable", "signature": "getVestingEntryClaimable(address account, uint256 entryID) view", "returns": "(uint256)", "modifiers": [], "visibility": "external", "lineNumber": 188, "requires": [], "events": [], "stateMutability": "view" }, { "name": "_claimableAmount", "signature": "_claimableAmount(struct VestingEntries.VestingEntry _entry) view", "returns": "(uint256)", "modifiers": [], "visibility": "internal", "lineNumber": 193, "requires": [], "events": [], "stateMutability": "view" }, { "name": "vest", "signature": "vest(uint256[] entryIDs)", "returns": "()", "modifiers": [], "visibility": "external", "lineNumber": 209, "requires": [], "events": [], "stateMutability": "" }, { "name": "createEscrowEntry", "signature": "createEscrowEntry(address beneficiary, uint256 deposit, uint256 duration)", "returns": "()", "modifiers": [], "visibility": "external", "lineNumber": 239, "requires": [ { "name": "require(..., \"Cannot create escrow with address(0)\")", "lineNumber": 244 }, { "name": "require(..., \"token transfer failed\")", "lineNumber": 247 } ], "events": [], "stateMutability": "" }, { "name": "appendVestingEntry", "signature": "appendVestingEntry(address account, uint256 quantity, uint256 duration)", "returns": "()", "modifiers": [ "onlyFeePool" ], "visibility": "external", "lineNumber": 261, "requires": [], "events": [], "stateMutability": "" }, { "name": "_transferVestedTokens", "signature": "_transferVestedTokens(address _account, uint256 _amount)", "returns": "()", "modifiers": [], "visibility": "internal", "lineNumber": 270, "requires": [], "events": [ "Vested" ], "stateMutability": "" }, { "name": "_reduceAccountEscrowBalances", "signature": "_reduceAccountEscrowBalances(address _account, uint256 _amount)", "returns": "()", "modifiers": [], "visibility": "internal", "lineNumber": 277, "requires": [], "events": [], "stateMutability": "" }, { "name": "accountMergingIsOpen", "signature": "accountMergingIsOpen() view", "returns": "(bool)", "modifiers": [], "visibility": "public", "lineNumber": 285, "requires": [], "events": [], "stateMutability": "view" }, { "name": "startMergingWindow", "signature": "startMergingWindow()", "returns": "()", "modifiers": [ "onlyOwner" ], "visibility": "external", "lineNumber": 289, "requires": [], "events": [ "AccountMergingStarted" ], "stateMutability": "" }, { "name": "setAccountMergingDuration", "signature": "setAccountMergingDuration(uint256 duration)", "returns": "()", "modifiers": [ "onlyOwner" ], "visibility": "external", "lineNumber": 294, "requires": [ { "name": "require(..., \"exceeds max merging duration\")", "lineNumber": 295 } ], "events": [ "AccountMergingDurationUpdated" ], "stateMutability": "" }, { "name": "setMaxAccountMergingWindow", "signature": "setMaxAccountMergingWindow(uint256 duration)", "returns": "()", "modifiers": [ "onlyOwner" ], "visibility": "external", "lineNumber": 300, "requires": [], "events": [ "MaxAccountMergingDurationUpdated" ], "stateMutability": "" }, { "name": "setMaxEscrowDuration", "signature": "setMaxEscrowDuration(uint256 duration)", "returns": "()", "modifiers": [ "onlyOwner" ], "visibility": "external", "lineNumber": 305, "requires": [], "events": [ "MaxEscrowDurationUpdated" ], "stateMutability": "" }, { "name": "nominateAccountToMerge", "signature": "nominateAccountToMerge(address account)", "returns": "()", "modifiers": [], "visibility": "external", "lineNumber": 311, "requires": [ { "name": "require(..., \"Cannot nominate own account to merge\")", "lineNumber": 312 }, { "name": "require(..., \"Account merging has ended\")", "lineNumber": 313 }, { "name": "require(..., \"Cannot merge accounts with debt\")", "lineNumber": 314 } ], "events": [ "NominateAccountToMerge" ], "stateMutability": "" }, { "name": "mergeAccount", "signature": "mergeAccount(address accountToMerge, uint256[] entryIDs)", "returns": "()", "modifiers": [], "visibility": "external", "lineNumber": 319, "requires": [ { "name": "require(..., \"Account merging has ended\")", "lineNumber": 320 }, { "name": "require(..., \"Cannot merge accounts with debt\")", "lineNumber": 321 }, { "name": "require(..., \"Address is not nominated to merge\")", "lineNumber": 322 } ], "events": [ "AccountMerged" ], "stateMutability": "" }, { "name": "_addVestingEntry", "signature": "_addVestingEntry(address account, struct VestingEntries.VestingEntry entry)", "returns": "(uint256)", "modifiers": [], "visibility": "internal", "lineNumber": 355, "requires": [], "events": [], "stateMutability": "" }, { "name": "migrateVestingSchedule", "signature": "migrateVestingSchedule(address)", "returns": "()", "modifiers": [], "visibility": "external", "lineNumber": 370, "requires": [], "events": [], "stateMutability": "" }, { "name": "migrateAccountEscrowBalances", "signature": "migrateAccountEscrowBalances(address[], uint256[], uint256[])", "returns": "()", "modifiers": [], "visibility": "external", "lineNumber": 374, "requires": [], "events": [], "stateMutability": "" }, { "name": "burnForMigration", "signature": "burnForMigration(address, uint256[])", "returns": "(uint256, struct VestingEntries.VestingEntry[])", "modifiers": [], "visibility": "external", "lineNumber": 384, "requires": [], "events": [], "stateMutability": "" }, { "name": "importVestingEntries", "signature": "importVestingEntries(address, uint256, struct VestingEntries.VestingEntry[])", "returns": "()", "modifiers": [], "visibility": "external", "lineNumber": 388, "requires": [], "events": [], "stateMutability": "" }, { "name": "_appendVestingEntry", "signature": "_appendVestingEntry(address account, uint256 quantity, uint256 duration)", "returns": "()", "modifiers": [], "visibility": "internal", "lineNumber": 398, "requires": [ { "name": "require(..., \"Quantity cannot be zero\")", "lineNumber": 404 }, { "name": "require(..., \"Cannot escrow with 0 duration OR above max_duration\")", "lineNumber": 405 }, { "name": "require(..., \"Must be enough balance in the contract to provide for the vesting entry\")", "lineNumber": 410 } ], "events": [ "VestingEntryCreated" ], "stateMutability": "" } ], "events": [ { "name": "Vested", "parameters": "(address beneficiary, uint256 time, uint256 value)", "lineNumber": 439 }, { "name": "VestingEntryCreated", "parameters": "(address beneficiary, uint256 time, uint256 value, uint256 duration, uint256 entryID)", "lineNumber": 440 }, { "name": "MaxEscrowDurationUpdated", "parameters": "(uint256 newDuration)", "lineNumber": 441 }, { "name": "MaxAccountMergingDurationUpdated", "parameters": "(uint256 newDuration)", "lineNumber": 442 }, { "name": "AccountMergingDurationUpdated", "parameters": "(uint256 newDuration)", "lineNumber": 443 }, { "name": "AccountMergingStarted", "parameters": "(uint256 time, uint256 endTime)", "lineNumber": 444 }, { "name": "AccountMerged", "parameters": "(address accountToMerge, address destinationAddress, uint256 escrowAmountMerged, uint256[] entryIDs, uint256 time)", "lineNumber": 445 }, { "name": "NominateAccountToMerge", "parameters": "(address account, address destination)", "lineNumber": 452 } ], "variables": [ { "name": "vestingSchedules", "type": "mapping(address => mapping(uint256 => struct VestingEntries.VestingEntry))", "visibility": "public", "lineNumber": 24 }, { "name": "accountVestingEntryIDs", "type": "mapping(address => uint256[])", "visibility": "public", "lineNumber": 26 }, { "name": "nextEntryId", "type": "uint256", "visibility": "public", "lineNumber": 29 }, { "name": "totalEscrowedAccountBalance", "type": "mapping(address => uint256)", "visibility": "public", "lineNumber": 32 }, { "name": "totalVestedAccountBalance", "type": "mapping(address => uint256)", "visibility": "public", "lineNumber": 35 }, { "name": "nominatedReceiver", "type": "mapping(address => address)", "visibility": "public", "lineNumber": 38 }, { "name": "totalEscrowedBalance", "type": "uint256", "visibility": "public", "lineNumber": 41 }, { "name": "max_duration", "type": "uint256", "visibility": "public", "lineNumber": 44 }, { "name": "maxAccountMergingDuration", "type": "uint256", "visibility": "public", "lineNumber": 47 }, { "name": "accountMergingDuration", "type": "uint256", "visibility": "public", "lineNumber": 51 }, { "name": "accountMergingStartTime", "type": "uint256", "visibility": "public", "lineNumber": 53 }, { "name": "CONTRACT_SYNTHETIX", "type": "bytes32", "visibility": "private", "lineNumber": 57 }, { "name": "CONTRACT_ISSUER", "type": "bytes32", "visibility": "private", "lineNumber": 58 }, { "name": "CONTRACT_FEEPOOL", "type": "bytes32", "visibility": "private", "lineNumber": 59 } ], "modifiers": [ { "name": "onlyFeePool", "signature": "onlyFeePool()", "visibility": "internal", "parameters": "()", "lineNumber": 433 } ], "structs": [], "inherits": [ "Owned", "IRewardEscrowV2", "LimitedSetup", "MixinResolver" ] } }, "libraries": {}, "interfaces": {} }, "contracts/BaseSynthetix.sol": { "imports": [ "./interfaces/IERC20.sol", "./ExternStateToken.sol", "./MixinResolver.sol", "./interfaces/ISynthetix.sol", "./interfaces/ISynth.sol", "./TokenState.sol", "./interfaces/ISynthetixState.sol", "./interfaces/ISystemStatus.sol", "./interfaces/IExchanger.sol", "./interfaces/IIssuer.sol", "./interfaces/IRewardsDistribution.sol", "./interfaces/IVirtualSynth.sol" ], "contracts": { "BaseSynthetix": { "functions": [ { "name": "constructor", "signature": "constructor(address payable _proxy, contract TokenState _tokenState, address _owner, uint256 _totalSupply, address _resolver)", "returns": "()", "modifiers": [], "visibility": "public", "lineNumber": 37, "requires": [], "events": [], "stateMutability": "" }, { "name": "resolverAddressesRequired", "signature": "resolverAddressesRequired() view", "returns": "(bytes32[] addresses)", "modifiers": [], "visibility": "public", "lineNumber": 52, "requires": [], "events": [], "stateMutability": "view" }, { "name": "synthetixState", "signature": "synthetixState() view", "returns": "(contract ISynthetixState)", "modifiers": [], "visibility": "internal", "lineNumber": 61, "requires": [], "events": [], "stateMutability": "view" }, { "name": "systemStatus", "signature": "systemStatus() view", "returns": "(contract ISystemStatus)", "modifiers": [], "visibility": "internal", "lineNumber": 65, "requires": [], "events": [], "stateMutability": "view" }, { "name": "exchanger", "signature": "exchanger() view", "returns": "(contract IExchanger)", "modifiers": [], "visibility": "internal", "lineNumber": 69, "requires": [], "events": [], "stateMutability": "view" }, { "name": "issuer", "signature": "issuer() view", "returns": "(contract IIssuer)", "modifiers": [], "visibility": "internal", "lineNumber": 73, "requires": [], "events": [], "stateMutability": "view" }, { "name": "rewardsDistribution", "signature": "rewardsDistribution() view", "returns": "(contract IRewardsDistribution)", "modifiers": [], "visibility": "internal", "lineNumber": 77, "requires": [], "events": [], "stateMutability": "view" }, { "name": "debtBalanceOf", "signature": "debtBalanceOf(address account, bytes32 currencyKey) view", "returns": "(uint256)", "modifiers": [], "visibility": "external", "lineNumber": 81, "requires": [], "events": [], "stateMutability": "view" }, { "name": "totalIssuedSynths", "signature": "totalIssuedSynths(bytes32 currencyKey) view", "returns": "(uint256)", "modifiers": [], "visibility": "external", "lineNumber": 85, "requires": [], "events": [], "stateMutability": "view" }, { "name": "totalIssuedSynthsExcludeEtherCollateral", "signature": "totalIssuedSynthsExcludeEtherCollateral(bytes32 currencyKey) view", "returns": "(uint256)", "modifiers": [], "visibility": "external", "lineNumber": 91, "requires": [], "events": [], "stateMutability": "view" }, { "name": "availableCurrencyKeys", "signature": "availableCurrencyKeys() view", "returns": "(bytes32[])", "modifiers": [], "visibility": "external", "lineNumber": 95, "requires": [], "events": [], "stateMutability": "view" }, { "name": "availableSynthCount", "signature": "availableSynthCount() view", "returns": "(uint256)", "modifiers": [], "visibility": "external", "lineNumber": 99, "requires": [], "events": [], "stateMutability": "view" }, { "name": "availableSynths", "signature": "availableSynths(uint256 index) view", "returns": "(contract ISynth)", "modifiers": [], "visibility": "external", "lineNumber": 103, "requires": [], "events": [], "stateMutability": "view" }, { "name": "synths", "signature": "synths(bytes32 currencyKey) view", "returns": "(contract ISynth)", "modifiers": [], "visibility": "external", "lineNumber": 107, "requires": [], "events": [], "stateMutability": "view" }, { "name": "synthsByAddress", "signature": "synthsByAddress(address synthAddress) view", "returns": "(bytes32)", "modifiers": [], "visibility": "external", "lineNumber": 111, "requires": [], "events": [], "stateMutability": "view" }, { "name": "isWaitingPeriod", "signature": "isWaitingPeriod(bytes32 currencyKey) view", "returns": "(bool)", "modifiers": [], "visibility": "external", "lineNumber": 115, "requires": [], "events": [], "stateMutability": "view" }, { "name": "anySynthOrSNXRateIsInvalid", "signature": "anySynthOrSNXRateIsInvalid() view", "returns": "(bool anyRateInvalid)", "modifiers": [], "visibility": "external", "lineNumber": 119, "requires": [], "events": [], "stateMutability": "view" }, { "name": "maxIssuableSynths", "signature": "maxIssuableSynths(address account) view", "returns": "(uint256 maxIssuable)", "modifiers": [], "visibility": "external", "lineNumber": 123, "requires": [], "events": [], "stateMutability": "view" }, { "name": "remainingIssuableSynths", "signature": "remainingIssuableSynths(address account) view", "returns": "(uint256 maxIssuable, uint256 alreadyIssued, uint256 totalSystemDebt)", "modifiers": [], "visibility": "external", "lineNumber": 127, "requires": [], "events": [], "stateMutability": "view" }, { "name": "collateralisationRatio", "signature": "collateralisationRati