{
  "Synth": {
    "Burned": "",
    "FeePoolUpdated": "",
    "Issued": "",
    "SynthetixUpdated": "",
    "notFeeAddress": "",
    "onlySynthetixOrFeePool": "",
    "_internalTransfer": "",
    "burn": "",
    "emitBurned": "",
    "emitFeePoolUpdated": "",
    "emitIssued": "",
    "emitSynthetixUpdated": "",
    "fallback": "",
    "issue": "",
    "setFeePool": "",
    "setSynthetix": "",
    "setTotalSupply": "",
    "transfer": "Override ERC20 transfer function in order to subtract the transaction fee and send it to the fee pool for SNX holders to claim.",
    "transferFrom": "Override ERC20 transferFrom function in order to subtract the transaction fee and send it to the fee pool for SNX holders to claim.",
    "transferFromSenderPaysFee": "",
    "transferSenderPaysFee": "",
    "triggerTokenFallbackIfNeeded": ""
  },
  "Depot": {
    "ClearedDeposit": "",
    "Exchange": "",
    "FundsWalletUpdated": "",
    "MinimumDepositAmountUpdated": "",
    "NonPayableContract": "",
    "OracleUpdated": "",
    "PriceStalePeriodUpdated": "",
    "PricesUpdated": "",
    "SynthDeposit": "",
    "SynthDepositNotAccepted": "",
    "SynthDepositRemoved": "",
    "SynthUpdated": "",
    "SynthWithdrawal": "",
    "SynthetixUpdated": "",
    "onlyOracle": "",
    "onlySynth": "",
    "pricesNotStale": "",
    "depositSynths": "DepositSynths: Allows users to deposit synths via the approve / transferFrom workflow if they'd like. You can equally just transfer synths to this contract and it will work exactly the same way but with one less call (and therefore cheaper transaction fees).",
    "exchangeEtherForSynthetix": "Exchange ETH to SNX.",
    "exchangeEtherForSynthetixAtRate": "Exchange ETH to SNX while insisting on a particular set of rates. This allows a user to exchange while protecting against frontrunning by the contract owner on the exchange rates.",
    "exchangeEtherForSynths": "Exchange ETH to sUSD.",
    "exchangeEtherForSynthsAtRate": "Exchange ETH to sUSD while insisting on a particular rate. This allows a user to exchange while protecting against frontrunning by the contract owner on the exchange rate.",
    "exchangeSynthsForSynthetix": "Exchange sUSD for SNX.",
    "exchangeSynthsForSynthetixAtRate": "Exchange sUSD for SNX while insisting on a particular rate. This allows a user to exchange while protecting against frontrunning by the contract owner on the exchange rate.",
    "fallback": "Fallback function (exchanges ETH to sUSD).",
    "pricesAreStale": "Check if the prices haven't been updated for longer than the stale period.",
    "setFundsWallet": "Set the funds wallet where ETH raised is held.",
    "setMinimumDepositAmount": "Set the minimum deposit amount required to depoist sUSD into the FIFO queue.",
    "setOracle": "Set the Oracle that pushes the synthetix price to this contract.",
    "setPriceStalePeriod": "Set the stale period on the updated price variables.",
    "setSynth": "Set the Synth contract that the issuance controller uses to issue Synths.",
    "setSynthetix": "Set the Synthetix contract that the issuance controller uses to issue SNX.",
    "synthetixReceivedForEther": "Calculate how many SNX you will receive if you transfer an amount of ether.",
    "synthetixReceivedForSynths": "Calculate how many SNX you will receive if you transfer an amount of synths.",
    "synthsReceivedForEther": "Calculate how many synths you will receive if you transfer an amount of ether.",
    "tokenFallback": "Triggers when users send us SNX or sUSD, but the modifier only allows sUSD calls to proceed.",
    "updatePrices": "Access point for the oracle to update the prices of SNX / eth.",
    "withdrawMyDepositedSynths": "Allows a user to withdraw all of their previously deposited synths from this contract if needed. Developer note: We could keep an index of address to deposits to make this operation more efficient but then all the other operations on the queue become less efficient. It's expected that this function will be very rarely used, so placing the inefficiency here is intentional. The usual use case does not involve a withdrawal.",
    "withdrawSynthetix": "Allows the owner to withdraw SNX from this contract if needed."
  },
  "SynthetixEscrow": {
    "SynthetixUpdated": "",
    "Vested": "",
    "addVestingSchedule": "Assumes that the quantities are nonzero and that the sequence of timestamps is strictly increasing. This may only be called by the owner during the contract's setup period., Construct a vesting schedule to release a quantities of SNX over a series of intervals.",
    "appendVestingEntry": "A call to this should be accompanied by either enough balance already available in this contract, or a corresponding call to synthetix.endow(), to ensure that when the funds are withdrawn, there is enough balance, as well as correctly calculating the fees. This may only be called by the owner during the contract's setup period. Note; although this function could technically be used to produce unbounded arrays, it's only in the foundation's command to add to these lists., Add a new vesting entry at a given time and quantity to an account's schedule.",
    "balanceOf": "A simple alias to totalVestedAccountBalance: provides ERC20 balance integration.",
    "fallback": "",
    "getNextVestingEntry": "Obtain the next schedule entry that will vest for a given user.",
    "getNextVestingIndex": "Obtain the index of the next schedule entry that will vest for a given user.",
    "getNextVestingQuantity": "Obtain the quantity which the next schedule entry will vest for a given user.",
    "getNextVestingTime": "Obtain the time at which the next schedule entry will vest for a given user.",
    "getVestingQuantity": "Get the quantity of SNX associated with a given schedule entry.",
    "getVestingScheduleEntry": "Get a particular schedule entry for an account.",
    "getVestingTime": "Get the time at which a given schedule entry will vest.",
    "numVestingEntries": "The number of vesting dates in an account's schedule.",
    "purgeAccount": "Destroy the vesting information associated with an account.",
    "setSynthetix": "",
    "vest": "Allow a user to withdraw any SNX in their schedule that have vested.",
    "withdrawSynthetix": "This may only be called by the owner during the contract's setup period., Withdraws a quantity of SNX back to the synthetix contract."
  },
  "Synthetix": {
    "PreferredCurrencyChanged": "",
    "StateContractChanged": "",
    "SynthAdded": "",
    "SynthRemoved": "",
    "nonZeroAmount": "",
    "notFeeAddress": "",
    "onlySynth": "",
    "rateNotStale": "",
    "_addToDebtRegister": "Only internal calls from synthetix address., Function that registers new synth as they are isseud. Calculate delta to append to synthetixState.",
    "_internalExchange": "Fee pool contract address is not allowed to call function, Function that allows synth contract to delegate sending fee to the fee Pool.",
    "_removeFromDebtRegister": "Remove a debt position from the register.",
    "addSynth": "Only the contract owner may call this., Add an associated Synth contract to the Synthetix system.",
    "availableSynthCount": "Returns the count of available synths in the system, which you can use to iterate availableSynths.",
    "burnSynths": "Burn synths to clear issued synths/free SNX.",
    "collateral": "The total SNX owned by this account, both escrowed and unescrowed, against which synths can be issued. This includes those already being used as collateral (locked), and those available for further issuance (unlocked).",
    "collateralisationRatio": "The current collateralisation ratio for a user. Collateralisation ratio varies over time as the value of the underlying Synthetix asset changes, e.g. if a user issues their maximum available synths when they hold $10 worth of Synthetix, they will have issued $2 worth of synths. If the value of Synthetix changes, the ratio returned by this function will adjust accordlingly. Users are incentivised to maintain a collateralisation ratio as close to the issuance ratio as possible by altering the amount of fees they're able to claim from the system.",
    "debtBalanceOf": "If a user issues synths backed by SNX in their wallet, the SNX become locked. This function will tell you how many synths a user has to give back to the system in order to unlock their original debt position. This is priced in whichever synth is passed in as a currency key, e.g. you can price the debt in sUSD, XDR, or any other synth you wish.",
    "effectiveValue": "A function that lets you easily convert an amount in a source currency to an amount in the destination currency.",
    "emitPreferredCurrencyChanged": "",
    "emitStateContractChanged": "",
    "emitSynthAdded": "",
    "emitSynthRemoved": "",
    "exchange": "Function that allows you to exchange synths you hold in one flavour for another.",
    "fallback": "Constructor.",
    "issueMaxSynths": "Issuance is only allowed if the synthetix price isn't stale., Issue the maximum amount of Synths possible against the sender's SNX.",
    "issueSynths": "Issuance is only allowed if the synthetix price isn't stale. Amount should be larger than 0., Issue synths against the sender's SNX.",
    "maxIssuableSynths": "The maximum synths an issuer can issue against their total synthetix quantity, priced in XDRs. This ignores any already issued synths, and is purely giving you the maximimum amount the user can issue.",
    "remainingIssuableSynths": "The remaining synths an issuer can issue against their total synthetix balance.",
    "removeSynth": "Only the contract owner may call this., Remove an associated Synth contract from the Synthetix system.",
    "setEscrow": "Only the contract owner may call this., Set the associated synthetix escrow contract.",
    "setExchangeRates": "Only callable by the contract owner., Set the ExchangeRates contract address where rates are held.",
    "setPreferredCurrency": "Set your preferred currency. Note: This does not automatically exchange any balances you've held previously in other synth currencies in this address, it will apply for any new payments you receive at this address.",
    "setSynthetixState": "Only callable by the contract owner., Set the synthetixState contract address where issuance data is held.",
    "synthInitiatedExchange": "Only the synth contract can call this function, Function that allows synth contract to delegate exchanging of a synth that is not the same sourceCurrency.",
    "synthInitiatedFeePayment": "Only the synth contract can call this function., Function that allows synth contract to delegate sending fee to the fee Pool.",
    "totalIssuedSynths": "Total amount of synths issued by the system, priced in currencyKey.",
    "transfer": "ERC20 transfer function.",
    "transferFrom": "ERC20 transferFrom function.",
    "transferableSynthetix": "When issuing, escrowed SNX are locked first, then non-escrowed SNX are locked last, but escrowed SNX are not transferable, so they are not included in this calculation., The number of SNX that are free to be transferred by an account."
  }
}