{
	"targets": {
	  "SafeDecimalMath": {
		"name": "SafeDecimalMath",
		"address": "0x4c6213012C61539F9c72b679C127DBb6556FDA46",
		"source": "SafeDecimalMath"
	  },
	  "Math": {
		"name": "Math",
		"address": "0xee5cFeEA2caC5F3A13DB1193c211C7bfA5c03dF0",
		"source": "Math"
	  },
	  "SystemSettingsLib": {
		"name": "SystemSettingsLib",
		"address": "0x849e83df9731d249015395B018Bb2b1a2A4011e9",
		"source": "SystemSettingsLib"
	  },
	  "SignedSafeDecimalMath": {
		"name": "SignedSafeDecimalMath",
		"address": "0xbFe5dA86981e2dB461bd85D31795aD233748EE32",
		"source": "SignedSafeDecimalMath"
	  },
	  "AddressResolver": {
		"name": "AddressResolver",
		"address": "0xE514CBD0996BC568f5129F8D2F29881d14866De5",
		"source": "AddressResolver"
	  },
	  "ReadProxyAddressResolver": {
		"name": "ReadProxyAddressResolver",
		"address": "0x58719E8Ef4d201541e44505a2ACB3424481d6681",
		"source": "ReadProxy"
	  },
	  "OneNetAggregatorIssuedSynths": {
		"name": "OneNetAggregatorIssuedSynths",
		"address": "0xecE3b70733EA7A8512bC3065702ACfCc6E13c116",
		"source": "OneNetAggregatorIssuedSynths"
	  },
	  "OneNetAggregatorDebtRatio": {
		"name": "OneNetAggregatorDebtRatio",
		"address": "0x409b427d6c8227eeCb4079EF74A6F9224297E19E",
		"source": "OneNetAggregatorDebtRatio"
	  },
	  "OneNetAggregatorsDEFI": {
		"name": "OneNetAggregatorsDEFI",
		"address": "0xA43Ba9F2A27F5Fe86c7A8Fe4A75d42F4d2Cf6358",
		"source": "OneNetAggregatorsDEFI"
	  },
	  "FlexibleStorage": {
		"name": "FlexibleStorage",
		"address": "0x4679Ff04611a131D876523aC17d5888602b0A6B4",
		"source": "FlexibleStorage"
	  },
	  "SystemSettings": {
		"name": "SystemSettings",
		"address": "0xDACcd61F0943701D5eC44e0E94DA729354496689",
		"source": "SystemSettings"
	  },
	  "SystemStatus": {
		"name": "SystemStatus",
		"address": "0xD18290F41B671Ffa4C63BAA21357c16aE725879B",
		"source": "SystemStatus"
	  },
	  "ExchangeRates": {
		"name": "ExchangeRates",
		"address": "0x1eB9Cf03e586f82c3B063042020C1EFBFcef8AcD",
		"source": "ExchangeRatesWithDexPricing"
	  },
	  "RewardEscrow": {
		"name": "RewardEscrow",
		"address": "0xd435461f7521b7647D2ad39F8DD4903C2e7f407d",
		"source": "RewardEscrow"
	  },
	  "RewardEscrowV2": {
		"name": "RewardEscrowV2",
		"address": "0xF844f12E4357e9fC926ED332E9379D61b6E95E2B",
		"source": "RewardEscrowV2"
	  },
	  "RewardEscrowV2Manager": {
		"name": "RewardEscrowV2Manager",
		"address": "0x6371e703Ba05432906fB010379AE94C9da73b507",
		"source": "RewardEscrowV2Manager"
	  },
	  "SynthetixEscrow": {
		"name": "SynthetixEscrow",
		"address": "0xC6a2a938F8ae3dE8Ee5e26938098Acb961CBCdA8",
		"source": "SynthetixEscrow"
	  },
	  "SynthetixState": {
		"name": "SynthetixState",
		"address": "0xcbcFB6E2d8517DB83BedB30f79D5197607207A2c",
		"source": "SynthetixState"
	  },
	  "SynthetixDebtShare": {
		"name": "SynthetixDebtShare",
		"address": "0x38A37f7A044cdCe7DE92214feC1a6B58d4984d04",
		"source": "SynthetixDebtShare"
	  },
	  "ProxyFeePool": {
		"name": "ProxyFeePool",
		"address": "0x9333da04c6BC03111E458C1ff717d2A64fD56590",
		"source": "Proxy"
	  },
	  "DelegateApprovalsEternalStorage": {
		"name": "DelegateApprovalsEternalStorage",
		"address": "0x84d1E9847cb8d7e0e31C6fd06bd26B4031049138",
		"source": "EternalStorage"
	  },
	  "DelegateApprovals": {
		"name": "DelegateApprovals",
		"address": "0x7F4D6d314aEb6fCa6a2aeB330260B2B7fc66E38B",
		"source": "DelegateApprovals"
	  },
	  "Liquidator": {
		"name": "Liquidator",
		"address": "0x792525d8c0B230F0cF768fD0fc74847890e8EB9F",
		"source": "Liquidator"
	  },
	  "LiquidatorRewards": {
		"name": "LiquidatorRewards",
		"address": "0x5A1E3158DadB68BF74dF6F3729ba72Acc4e7a5b3",
		"source": "LiquidatorRewards"
	  },
	  "LiquidatorRewardsManager": {
		"name": "LiquidatorRewardsManager",
		"address": "0x03cc0484A774Eca797262A5a4d43BC18ED56709E",
		"source": "LiquidatorRewardsManager"
	  },
	  "FeePoolEternalStorage": {
		"name": "FeePoolEternalStorage",
		"address": "0xA3777b70D9801826d32cAbA4cFBe336837A0CF07",
		"source": "FeePoolEternalStorage"
	  },
	  "FeePool": {
		"name": "FeePool",
		"address": "0xAa3016F425Bfb0a282A8b259f274cf1495F4b127",
		"source": "FeePool"
	  },
	  "FeePoolState": {
		"name": "FeePoolState",
		"address": "0x7F4a3D2d0e45ECD301Be8a181c3911677c353C85",
		"source": "FeePoolState"
	  },
	  "RewardsDistribution": {
		"name": "RewardsDistribution",
		"address": "0x1E9f90cD112c2E3a4FB2951dd05CB35EA3C367D5",
		"source": "RewardsDistribution"
	  },
	  "TokenStateSynthetix": {
		"name": "TokenStateSynthetix",
		"address": "0x51c8a8E3307E72bF9B65f044051814426f934e9C",
		"source": "LegacyTokenState"
	  },
	  "ProxySynthetix": {
		"name": "ProxySynthetix",
		"address": "0xA8d4e786623ce6C99AE74265251A01000E2FcdC5",
		"source": "ProxyERC20"
	  },
	  "Synthetix": {
		"name": "Synthetix",
		"address": "0xA8d4e786623ce6C99AE74265251A01000E2FcdC5",
		"source": "Synthetix"
	  },
	  "DebtCache": {
		"name": "DebtCache",
		"address": "0xe143E07a1400CD49c9953449fEf820135566ae98",
		"source": "DebtCache"
	  },
	  "Exchanger": {
		"name": "Exchanger",
		"address": "0x5c509Ce65A297B08dfBd233AB9ECDb2c8C3d0ee9",
		"source": "ExchangerWithFeeRecAlternatives"
	  },
	  "ExchangeCircuitBreaker": {
		"name": "ExchangeCircuitBreaker",
		"address": "0x52245015EB7e8746c0312efAFD0434B0A64A8B63",
		"source": "ExchangeCircuitBreaker"
	  },
	  "VirtualSynthMastercopy": {
		"name": "VirtualSynthMastercopy",
		"address": "0x381f09C9CF5b5Be0af7F66167349343AFCD8E0aF",
		"source": "VirtualSynthMastercopy"
	  },
	  "ExchangeState": {
		"name": "ExchangeState",
		"address": "0x35e6fe6462F729F667488351Cae418FcAb9d4e5e",
		"source": "ExchangeState"
	  },
	  "Issuer": {
		"name": "Issuer",
		"address": "0x6370c72e063DA2D9cc5556dfce83F7D102F60A73",
		"source": "Issuer"
	  },
	  "IssuedSynthAggregator": {
		"name": "IssuedSynthAggregator",
		"address": "0x7223E89340B600Ff4F76C2eca648A454965BcD2d",
		"source": "IssuedSynthAggregator"
	  },
	  "TradingRewards": {
		"name": "TradingRewards",
		"address": "0x2cBCCcA083b46AF4fB3AE0BF68aE32f4E4ae6818",
		"source": "TradingRewards"
	  },
	  "SupplySchedule": {
		"name": "SupplySchedule",
		"address": "0x791CceE29Bc2477Efa1b25148c1b948B6e7c45f7",
		"source": "SupplySchedule"
	  },
	  "EscrowChecker": {
		"name": "EscrowChecker",
		"address": "0x3C2dd2989f600b9bCd8F0Ce5eC10154d789B9250",
		"source": "EscrowChecker"
	  },
	  "SynthetixBridgeToOptimism": {
		"name": "SynthetixBridgeToOptimism",
		"address": "0x9A4D7540E8679645Af703FE62CbFF30B2ff2092C",
		"source": "SynthetixBridgeToOptimism"
	  },
	  "SynthetixBridgeEscrow": {
		"name": "SynthetixBridgeEscrow",
		"address": "0x3CC3B15e24C5Cf2a6eE9cfF998A844280AD85683",
		"source": "SynthetixBridgeEscrow"
	  },
	  "OwnerRelayOnEthereum": {
		"name": "OwnerRelayOnEthereum",
		"address": "0xFdB31235cDFe68bfFD1d687AC3A2b31E80eacf0d",
		"source": "OwnerRelayOnEthereum"
	  },
	  "SynthRedeemer": {
		"name": "SynthRedeemer",
		"address": "0x32aFd950659Dbc45da3599712FE09fE5EC5C8CdF",
		"source": "SynthRedeemer"
	  },
	  "WrapperFactory": {
		"name": "WrapperFactory",
		"address": "0x87076a60815c9aa137C0844Fd8DC28F697F612D3",
		"source": "WrapperFactory"
	  },
	  "SynthrBridge": {
		"name": "SynthrBridge",
		"address": "0x97Fd3D4508704B3a55C48639E6A8db4090D02a24",
		"source": "SynthrBridge"
	  },
	  "TokenStatesUSD": {
		"name": "TokenStatesUSD",
		"address": "0xA5dc80524EB7B1e71754Ed88B59bce05481D6e3E",
		"source": "TokenState"
	  },
	  "ProxysUSD": {
		"name": "ProxysUSD",
		"address": "0xF53C5Dff635c44B30A171d4c18F25Ce9EF9aA459",
		"source": "ProxyERC20"
	  },
	  "SynthsUSD": {
		"name": "SynthsUSD",
		"address": "0x4752a203e8867f5c2B760dA9689CafbE01d4d8B1",
		"source": "Synth"
	  },
	  "TokenStatesDOT": {
		"name": "TokenStatesDOT",
		"address": "0xf1209E75e0395419FFA90dEf2CEC51749a9E00b2",
		"source": "TokenState"
	  },
	  "ProxysDOT": {
		"name": "ProxysDOT",
		"address": "0x1158916883760c261E44B00b3f0b614bbAf89413",
		"source": "ProxyERC20"
	  },
	  "SynthsDOT": {
		"name": "SynthsDOT",
		"address": "0x8Fd8FB64A13F738d1a71b629342d4758AfE5DA2c",
		"source": "MultiCollateralSynth"
	  },
	  "Depot": {
		"name": "Depot",
		"address": "0x92cE92e37090364B4711964E6cd1965eEa356C64",
		"source": "Depot"
	  },
	  "EtherWrapper": {
		"name": "EtherWrapper",
		"address": "0x4556b9761b2aC071D1665FAe01faA255a53d1307",
		"source": "EtherWrapper"
	  },
	  "NativeEtherWrapper": {
		"name": "NativeEtherWrapper",
		"address": "0x3b820F825088DB6cD6E118C0c9B39755859932a9",
		"source": "NativeEtherWrapper"
	  },
	  "CollateralUtil": {
		"name": "CollateralUtil",
		"address": "0x814AAB41E07D2c3fA53C0c6f3002cD654a4489EE",
		"source": "CollateralUtil"
	  },
	  "CollateralManagerState": {
		"name": "CollateralManagerState",
		"address": "0x870CaAfab80361Ff458E5743e8E720d27Be88932",
		"source": "CollateralManagerState"
	  },
	  "CollateralManager": {
		"name": "CollateralManager",
		"address": "0xC6412b04732737580ea20704A87CcD9A5Ad21E04",
		"source": "CollateralManager"
	  },
	  "CollateralEth": {
		"name": "CollateralEth",
		"address": "0x8Ece5e21BF2CD01CA48320F3469969aC8503d89A",
		"source": "CollateralEth"
	  },
	  "CollateralErc20": {
		"name": "CollateralErc20",
		"address": "0xA8A2bFE97c51bB83e21bF0405e98CF9D8eFB2674",
		"source": "CollateralErc20"
	  },
	  "CollateralShort": {
		"name": "CollateralShort",
		"address": "0x6d20C286D94a603A1cdE80D1f8e5f44Bc22550C0",
		"source": "CollateralShort"
	  },
	  "FuturesMarketManager": {
		"name": "FuturesMarketManager",
		"address": "0xC727039bF71D021f1Ea1a84FA21c81eb4472c84d",
		"source": "EmptyFuturesMarketManager"
	  },
	  "SynthUtil": {
		"name": "SynthUtil",
		"address": "0x9Fd279E28D5f9D0DB2d62E92905D85B2e3f08f82",
		"source": "SynthUtil"
	  },
	  "DappMaintenance": {
		"name": "DappMaintenance",
		"address": "0x29A2CAfD898B7A24A6Ec3eA97d8C7b07958eC560",
		"source": "DappMaintenance"
	  },
	  "TokenStatesBTC": {
		"name": "TokenStatesBTC",
		"address": "0x523ED7A4d3982Ccf191341Ae638d01992f3729FB",
		"source": "TokenState"
	  },
	  "ProxysBTC": {
		"name": "ProxysBTC",
		"address": "0xb9B0ED7fBAb3EE7D3E47D3BdEC273AD79f151049",
		"source": "ProxyERC20"
	  },
	  "SynthsBTC": {
		"name": "SynthsBTC",
		"address": "0xEc7f969b099Ca4E2E8721d3CBD58a4A824c49C19",
		"source": "MultiCollateralSynth"
	  },
	  "TokenStatesAVAX": {
		"name": "TokenStatesAVAX",
		"address": "0x7d4046113FFEDcDeC08D727741b559F8060F332e",
		"source": "TokenState"
	  },
	  "ProxysAVAX": {
		"name": "ProxysAVAX",
		"address": "0x8c7010c2DE7e56B70008445937BbD786dEbBCA3A",
		"source": "ProxyERC20"
	  },
	  "SynthsAVAX": {
		"name": "SynthsAVAX",
		"address": "0xFBeF4Be0551620c6E9054A057AA8E5152D81b01c",
		"source": "MultiCollateralSynth"
	  },
	  "TokenStatesBNB": {
		"name": "TokenStatesBNB",
		"address": "0xbB6453dd9a57F92Ac0dD02B4734a55d6156d4512",
		"source": "TokenState"
	  },
	  "ProxysBNB": {
		"name": "ProxysBNB",
		"address": "0x10c3e80af8D60478f3d57d3034F4902126f132fc",
		"source": "ProxyERC20"
	  },
	  "SynthsBNB": {
		"name": "SynthsBNB",
		"address": "0x170Ade483218001b6498e9bC7e978AF1b13306E3",
		"source": "MultiCollateralSynth"
	  },
	  "TokenStatesMATIC": {
		"name": "TokenStatesMATIC",
		"address": "0x7a8542a5fA1c683aEc93d54e21Ee39Ad3BDDad3A",
		"source": "TokenState"
	  },
	  "ProxysMATIC": {
		"name": "ProxysMATIC",
		"address": "0x2723559e93604317d098c4aD0c63305d1C4716c7",
		"source": "ProxyERC20"
	  },
	  "SynthsMATIC": {
		"name": "SynthsMATIC",
		"address": "0xeB4467Bb34E3f4cD2F2052452BDFb55600B1CD60",
		"source": "MultiCollateralSynth"
	  },
	  "TokenStatesETH": {
		"name": "TokenStatesETH",
		"address": "0x9a9Dc6641fca35509091d56796e13D42855D47f8",
		"source": "TokenState"
	  },
	  "ProxysETH": {
		"name": "ProxysETH",
		"address": "0xBC7468137ECFcacEDe612089cFa361dBb9B82Fb2",
		"source": "ProxyERC20"
	  },
	  "SynthsETH": {
		"name": "SynthsETH",
		"address": "0xe358BE746Cc9FeA9EA59221CBfcbE8D04D4C933c",
		"source": "MultiCollateralSynth"
	  },
	  "SynthrAggregator": {
		"name": "SynthrAggregator",
		"address": "0xC6c7eC1BDf142c107977e0fc1209E5cE749e3376",
		"source": "SynthrAggregator"
	  },
	  "ExternWrappedStateToken": {
		"name": "ExternWrappedStateToken",
		"address": "0x4D84a0262F765172c972fDaA19c39634939d4d1E",
		"source": "ExternWrappedStateToken"
	  }
	},
	"sources": {
	  "ExternWrappedStateToken": {
		"abi": [
		  {
			"inputs": [
			  {
				"internalType": "string",
				"name": "_name",
				"type": "string"
			  },
			  {
				"internalType": "string",
				"name": "_symbol",
				"type": "string"
			  },
			  {
				"internalType": "uint8",
				"name": "_decimals",
				"type": "uint8"
			  },
			  {
				"internalType": "address",
				"name": "_owner",
				"type": "address"
			  },
			  {
				"internalType": "address",
				"name": "_associatedContract",
				"type": "address"
			  }
			],
			"stateMutability": "nonpayable",
			"type": "constructor"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "address",
				"name": "associatedContract",
				"type": "address"
			  }
			],
			"name": "AssociatedContractUpdated",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "bytes32",
				"name": "currencyKey",
				"type": "bytes32"
			  },
			  {
				"indexed": false,
				"internalType": "address",
				"name": "collateralCurrency",
				"type": "address"
			  }
			],
			"name": "CollateralCurrencyAdded",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "bytes32",
				"name": "currencyKey",
				"type": "bytes32"
			  },
			  {
				"indexed": false,
				"internalType": "address",
				"name": "collateralCurrency",
				"type": "address"
			  }
			],
			"name": "CollateralCurrencyRemoved",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "address",
				"name": "oldOwner",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "address",
				"name": "newOwner",
				"type": "address"
			  }
			],
			"name": "OwnerChanged",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "address",
				"name": "newOwner",
				"type": "address"
			  }
			],
			"name": "OwnerNominated",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": true,
				"internalType": "address",
				"name": "_account",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "bytes32",
				"name": "_currencyKey",
				"type": "bytes32"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "_amount",
				"type": "uint256"
			  }
			],
			"name": "SetCollateralBalance",
			"type": "event"
		  },
		  {
			"inputs": [],
			"name": "acceptOwnership",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "_collateralAddress",
				"type": "address"
			  },
			  {
				"internalType": "bytes32",
				"name": "_currencyKey",
				"type": "bytes32"
			  }
			],
			"name": "addCollateralCurrency",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "associatedContract",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"name": "availableCollateralCurrencies",
			"outputs": [
			  {
				"internalType": "bytes32",
				"name": "",
				"type": "bytes32"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "",
				"type": "bytes32"
			  },
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"name": "collateralByIssuer",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "",
				"type": "bytes32"
			  }
			],
			"name": "collateralCurrency",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "decimals",
			"outputs": [
			  {
				"internalType": "uint8",
				"name": "",
				"type": "uint8"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "_to",
				"type": "address"
			  },
			  {
				"internalType": "bytes32",
				"name": "_currencyKey",
				"type": "bytes32"
			  },
			  {
				"internalType": "uint256",
				"name": "_collateralAmount",
				"type": "uint256"
			  }
			],
			"name": "decreaseCollateral",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "getAvailableCollaterals",
			"outputs": [
			  {
				"internalType": "bytes32[]",
				"name": "",
				"type": "bytes32[]"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "_to",
				"type": "address"
			  },
			  {
				"internalType": "bytes32",
				"name": "_currencyKey",
				"type": "bytes32"
			  },
			  {
				"internalType": "uint256",
				"name": "_collateralAmount",
				"type": "uint256"
			  }
			],
			"name": "increaseCollateral",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "name",
			"outputs": [
			  {
				"internalType": "string",
				"name": "",
				"type": "string"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "_owner",
				"type": "address"
			  }
			],
			"name": "nominateNewOwner",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "nominatedOwner",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "owner",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "_currencyKey",
				"type": "bytes32"
			  }
			],
			"name": "removeCollateralCurrency",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "_associatedContract",
				"type": "address"
			  }
			],
			"name": "setAssociatedContract",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "_account",
				"type": "address"
			  },
			  {
				"internalType": "bytes32",
				"name": "_currencyKey",
				"type": "bytes32"
			  },
			  {
				"internalType": "uint256",
				"name": "_amount",
				"type": "uint256"
			  }
			],
			"name": "setCollateralBalance",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "symbol",
			"outputs": [
			  {
				"internalType": "string",
				"name": "",
				"type": "string"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "",
				"type": "bytes32"
			  }
			],
			"name": "totalSupplyPerKey",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "_to",
				"type": "address"
			  },
			  {
				"internalType": "bytes32",
				"name": "_currencyKey",
				"type": "bytes32"
			  },
			  {
				"internalType": "uint256",
				"name": "_collateralAmount",
				"type": "uint256"
			  }
			],
			"name": "withdrawCollateral",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "_to",
				"type": "address"
			  },
			  {
				"internalType": "bytes32",
				"name": "_currencyKey",
				"type": "bytes32"
			  },
			  {
				"internalType": "uint256",
				"name": "_collateralAmount",
				"type": "uint256"
			  }
			],
			"name": "withdrawFundsByAdmin",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"stateMutability": "payable",
			"type": "receive"
		  }
		]
	  },
	  "SynthrAggregator": {
		"abi": [
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": true,
				"internalType": "address",
				"name": "account",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "bool",
				"name": "state",
				"type": "bool"
			  }
			],
			"name": "ChangeAuthority",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": true,
				"internalType": "address",
				"name": "previousOwner",
				"type": "address"
			  },
			  {
				"indexed": true,
				"internalType": "address",
				"name": "newOwner",
				"type": "address"
			  }
			],
			"name": "OwnershipTransferred",
			"type": "event"
		  },
		  {
			"inputs": [],
			"name": "_exchangeFeeAddress",
			"outputs": [
			  { "internalType": "address", "name": "", "type": "address" }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "synthKey",
				"type": "bytes32"
			  },
			  { "internalType": "uint256", "name": "amount", "type": "uint256" },
			  {
				"internalType": "uint16",
				"name": "srcChainId",
				"type": "uint16"
			  },
			  { "internalType": "uint16", "name": "dstChainId", "type": "uint16" }
			],
			"name": "bridgeSynth",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "synthKey",
				"type": "bytes32"
			  },
			  {
				"internalType": "uint256",
				"name": "synthAmount",
				"type": "uint256"
			  },
			  { "internalType": "uint16", "name": "chainId", "type": "uint16" }
			],
			"name": "burnSynth",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "synthKey",
				"type": "bytes32"
			  },
			  { "internalType": "uint16", "name": "chainId", "type": "uint16" }
			],
			"name": "chainSynthTotalSupply",
			"outputs": [
			  { "internalType": "uint256", "name": "", "type": "uint256" }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "currencyKey",
				"type": "bytes32"
			  },
			  { "internalType": "address", "name": "account", "type": "address" }
			],
			"name": "collateralByIssuer",
			"outputs": [
			  { "internalType": "uint256", "name": "", "type": "uint256" }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "currencyKey",
				"type": "bytes32"
			  },
			  { "internalType": "uint16", "name": "chainId", "type": "uint16" },
			  { "internalType": "address", "name": "account", "type": "address" }
			],
			"name": "collateralByIssuerAggregation",
			"outputs": [
			  { "internalType": "uint256", "name": "", "type": "uint256" }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  { "internalType": "address", "name": "account", "type": "address" },
			  {
				"internalType": "bytes32",
				"name": "collateralKey",
				"type": "bytes32"
			  },
			  { "internalType": "uint256", "name": "amount", "type": "uint256" },
			  { "internalType": "uint16", "name": "chainId", "type": "uint16" }
			],
			"name": "depositCollateral",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "sourceKey",
				"type": "bytes32"
			  },
			  {
				"internalType": "uint256",
				"name": "sourceAmount",
				"type": "uint256"
			  },
			  { "internalType": "bytes32", "name": "destKey", "type": "bytes32" },
			  {
				"internalType": "uint256",
				"name": "destAmount",
				"type": "uint256"
			  },
			  { "internalType": "uint256", "name": "fee", "type": "uint256" },
			  {
				"internalType": "uint16",
				"name": "srcChainId",
				"type": "uint16"
			  },
			  {
				"internalType": "uint16",
				"name": "destChainId",
				"type": "uint16"
			  }
			],
			"name": "exchangeSynth",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "__exchangeFeeAddress",
				"type": "address"
			  },
			  {
				"internalType": "address",
				"name": "__synthrBridge",
				"type": "address"
			  },
			  {
				"internalType": "uint16",
				"name": "__selfLZChainId",
				"type": "uint16"
			  }
			],
			"name": "initialize",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  { "internalType": "address", "name": "account", "type": "address" },
			  {
				"internalType": "bytes32",
				"name": "collateralKey",
				"type": "bytes32"
			  },
			  {
				"internalType": "uint256",
				"name": "collateralAmount",
				"type": "uint256"
			  },
			  {
				"internalType": "uint16",
				"name": "destChainId",
				"type": "uint16"
			  }
			],
			"name": "liquidate",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "synthKey",
				"type": "bytes32"
			  },
			  {
				"internalType": "uint256",
				"name": "synthAmount",
				"type": "uint256"
			  },
			  { "internalType": "uint16", "name": "chainId", "type": "uint16" }
			],
			"name": "mintSynth",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "owner",
			"outputs": [
			  { "internalType": "address", "name": "", "type": "address" }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "renounceOwnership",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  { "internalType": "bytes32", "name": "synthKey", "type": "bytes32" }
			],
			"name": "synthTotalSupply",
			"outputs": [
			  { "internalType": "uint256", "name": "", "type": "uint256" }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "synthrBridge",
			"outputs": [
			  { "internalType": "address", "name": "", "type": "address" }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  { "internalType": "address", "name": "newOwner", "type": "address" }
			],
			"name": "transferOwnership",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  { "internalType": "address", "name": "account", "type": "address" },
			  { "internalType": "uint256", "name": "amount", "type": "uint256" },
			  {
				"internalType": "bytes32",
				"name": "collateralKey",
				"type": "bytes32"
			  },
			  { "internalType": "uint16", "name": "chainId", "type": "uint16" }
			],
			"name": "withdrawCollateral",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  }
		]
	  },
	  "SafeDecimalMath": {
		"abi": [
		  {
			"inputs": [],
			"name": "PRECISE_UNIT",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "UNIT",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "decimals",
			"outputs": [
			  {
				"internalType": "uint8",
				"name": "",
				"type": "uint8"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "highPrecisionDecimals",
			"outputs": [
			  {
				"internalType": "uint8",
				"name": "",
				"type": "uint8"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "preciseUnit",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "pure",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "unit",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "pure",
			"type": "function"
		  }
		]
	  },
	  "Math": {
		"abi": []
	  },
	  "SystemSettingsLib": {
		"abi": [
		  {
			"inputs": [],
			"name": "MAX_ATOMIC_TWAP_WINDOW",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "MAX_ATOMIC_VOLATILITY_CONSIDERATION_WINDOW",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "MAX_ATOMIC_VOLUME_PER_BLOCK",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "MAX_EXCHANGE_FEE_RATE",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "MAX_ISSUANCE_RATIO",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "MAX_MINIMUM_STAKE_TIME",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "MAX_TARGET_THRESHOLD",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "MIN_ATOMIC_TWAP_WINDOW",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "MIN_ATOMIC_VOLATILITY_CONSIDERATION_WINDOW",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "RATIO_FROM_TARGET_BUFFER",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "SETTINGS_CONTRACT_NAME",
			"outputs": [
			  {
				"internalType": "bytes32",
				"name": "",
				"type": "bytes32"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "contractName",
			"outputs": [
			  {
				"internalType": "bytes32",
				"name": "",
				"type": "bytes32"
			  }
			],
			"stateMutability": "pure",
			"type": "function"
		  }
		]
	  },
	  "SignedSafeDecimalMath": {
		"abi": [
		  {
			"constant": true,
			"inputs": [],
			"name": "PRECISE_UNIT",
			"outputs": [
			  {
				"internalType": "int256",
				"name": "",
				"type": "int256"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "UNIT",
			"outputs": [
			  {
				"internalType": "int256",
				"name": "",
				"type": "int256"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "decimals",
			"outputs": [
			  {
				"internalType": "uint8",
				"name": "",
				"type": "uint8"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "highPrecisionDecimals",
			"outputs": [
			  {
				"internalType": "uint8",
				"name": "",
				"type": "uint8"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "preciseUnit",
			"outputs": [
			  {
				"internalType": "int256",
				"name": "",
				"type": "int256"
			  }
			],
			"payable": false,
			"stateMutability": "pure",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "unit",
			"outputs": [
			  {
				"internalType": "int256",
				"name": "",
				"type": "int256"
			  }
			],
			"payable": false,
			"stateMutability": "pure",
			"type": "function"
		  }
		]
	  },
	  "AddressResolver": {
		"abi": [
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "_owner",
				"type": "address"
			  }
			],
			"stateMutability": "nonpayable",
			"type": "constructor"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "bytes32",
				"name": "name",
				"type": "bytes32"
			  },
			  {
				"indexed": false,
				"internalType": "address",
				"name": "destination",
				"type": "address"
			  }
			],
			"name": "AddressImported",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "address",
				"name": "oldOwner",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "address",
				"name": "newOwner",
				"type": "address"
			  }
			],
			"name": "OwnerChanged",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "address",
				"name": "newOwner",
				"type": "address"
			  }
			],
			"name": "OwnerNominated",
			"type": "event"
		  },
		  {
			"inputs": [],
			"name": "acceptOwnership",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32[]",
				"name": "names",
				"type": "bytes32[]"
			  },
			  {
				"internalType": "address[]",
				"name": "destinations",
				"type": "address[]"
			  }
			],
			"name": "areAddressesImported",
			"outputs": [
			  {
				"internalType": "bool",
				"name": "",
				"type": "bool"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "name",
				"type": "bytes32"
			  }
			],
			"name": "getAddress",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "key",
				"type": "bytes32"
			  }
			],
			"name": "getSynth",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32[]",
				"name": "names",
				"type": "bytes32[]"
			  },
			  {
				"internalType": "address[]",
				"name": "destinations",
				"type": "address[]"
			  }
			],
			"name": "importAddresses",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "_owner",
				"type": "address"
			  }
			],
			"name": "nominateNewOwner",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "nominatedOwner",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "owner",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "contract MixinResolver[]",
				"name": "destinations",
				"type": "address[]"
			  }
			],
			"name": "rebuildCaches",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "",
				"type": "bytes32"
			  }
			],
			"name": "repository",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "name",
				"type": "bytes32"
			  },
			  {
				"internalType": "string",
				"name": "reason",
				"type": "string"
			  }
			],
			"name": "requireAndGetAddress",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  }
		]
	  },
	  "ReadProxy": {
		"abi": [
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "_owner",
				"type": "address"
			  }
			],
			"payable": false,
			"stateMutability": "nonpayable",
			"type": "constructor"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "address",
				"name": "oldOwner",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "address",
				"name": "newOwner",
				"type": "address"
			  }
			],
			"name": "OwnerChanged",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "address",
				"name": "newOwner",
				"type": "address"
			  }
			],
			"name": "OwnerNominated",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "address",
				"name": "newTarget",
				"type": "address"
			  }
			],
			"name": "TargetUpdated",
			"type": "event"
		  },
		  {
			"payable": false,
			"stateMutability": "nonpayable",
			"type": "fallback"
		  },
		  {
			"constant": false,
			"inputs": [],
			"name": "acceptOwnership",
			"outputs": [],
			"payable": false,
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"constant": false,
			"inputs": [
			  {
				"internalType": "address",
				"name": "_owner",
				"type": "address"
			  }
			],
			"name": "nominateNewOwner",
			"outputs": [],
			"payable": false,
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "nominatedOwner",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "owner",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": false,
			"inputs": [
			  {
				"internalType": "address",
				"name": "_target",
				"type": "address"
			  }
			],
			"name": "setTarget",
			"outputs": [],
			"payable": false,
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "target",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  }
		]
	  },
	  "OneNetAggregatorIssuedSynths": {
		"abi": [
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "_owner",
				"type": "address"
			  },
			  {
				"internalType": "address",
				"name": "_resolver",
				"type": "address"
			  }
			],
			"payable": false,
			"stateMutability": "nonpayable",
			"type": "constructor"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "bytes32",
				"name": "name",
				"type": "bytes32"
			  },
			  {
				"indexed": false,
				"internalType": "address",
				"name": "destination",
				"type": "address"
			  }
			],
			"name": "CacheUpdated",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "address",
				"name": "oldOwner",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "address",
				"name": "newOwner",
				"type": "address"
			  }
			],
			"name": "OwnerChanged",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "address",
				"name": "newOwner",
				"type": "address"
			  }
			],
			"name": "OwnerNominated",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "bytes32",
				"name": "currencyKey",
				"type": "bytes32"
			  },
			  {
				"indexed": false,
				"internalType": "address",
				"name": "synthAggregator",
				"type": "address"
			  }
			],
			"name": "SynthAggregatorAdded",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "bytes32",
				"name": "currencyKey",
				"type": "bytes32"
			  },
			  {
				"indexed": false,
				"internalType": "address",
				"name": "synthAggregator",
				"type": "address"
			  }
			],
			"name": "SynthAggregatorRemoved",
			"type": "event"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "CONTRACT_NAME",
			"outputs": [
			  {
				"internalType": "bytes32",
				"name": "",
				"type": "bytes32"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": false,
			"inputs": [],
			"name": "acceptOwnership",
			"outputs": [],
			"payable": false,
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"name": "availableSynthAggregators",
			"outputs": [
			  {
				"internalType": "contract ISynthAggregator",
				"name": "",
				"type": "address"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "isResolverCached",
			"outputs": [
			  {
				"internalType": "bool",
				"name": "",
				"type": "bool"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": false,
			"inputs": [
			  {
				"internalType": "address",
				"name": "_owner",
				"type": "address"
			  }
			],
			"name": "nominateNewOwner",
			"outputs": [],
			"payable": false,
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "nominatedOwner",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "owner",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": false,
			"inputs": [],
			"name": "rebuildCache",
			"outputs": [],
			"payable": false,
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "resolver",
			"outputs": [
			  {
				"internalType": "contract AddressResolver",
				"name": "",
				"type": "address"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "",
				"type": "bytes32"
			  }
			],
			"name": "syAggregators",
			"outputs": [
			  {
				"internalType": "contract ISynthAggregator",
				"name": "",
				"type": "address"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"name": "syAggregatorsByAddress",
			"outputs": [
			  {
				"internalType": "bytes32",
				"name": "",
				"type": "bytes32"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "resolverAddressesRequired",
			"outputs": [
			  {
				"internalType": "bytes32[]",
				"name": "addresses",
				"type": "bytes32[]"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "totalIssuedSynths",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "_issuedSynths",
				"type": "uint256"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [
			  {
				"internalType": "address",
				"name": "account",
				"type": "address"
			  }
			],
			"name": "totalIssuedSynthsPerIssuer",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "_issuedSynths",
				"type": "uint256"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "currencyKey",
				"type": "bytes32"
			  }
			],
			"name": "totalIssuedSynthPerAsset",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "_issuedSynth",
				"type": "uint256"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "currencyKey",
				"type": "bytes32"
			  },
			  {
				"internalType": "address",
				"name": "account",
				"type": "address"
			  }
			],
			"name": "totalIssuedSynthPerAssetAndIssuer",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "_issuedSynth",
				"type": "uint256"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": false,
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "currencyKey",
				"type": "bytes32"
			  },
			  {
				"internalType": "contract ISynthAggregator",
				"name": "syAggregator",
				"type": "address"
			  }
			],
			"name": "addSynthAggregator",
			"outputs": [],
			"payable": false,
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"constant": false,
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "currencyKey",
				"type": "bytes32"
			  }
			],
			"name": "removeSynthAggregator",
			"outputs": [],
			"payable": false,
			"stateMutability": "nonpayable",
			"type": "function"
		  }
		]
	  },
	  "OneNetAggregatorDebtRatio": {
		"abi": [
		  {
			"inputs": [
			  {
				"internalType": "contract AddressResolver",
				"name": "_resolver",
				"type": "address"
			  }
			],
			"payable": false,
			"stateMutability": "nonpayable",
			"type": "constructor"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "address",
				"name": "oldOwner",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "address",
				"name": "newOwner",
				"type": "address"
			  }
			],
			"name": "OwnerChanged",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "address",
				"name": "newOwner",
				"type": "address"
			  }
			],
			"name": "OwnerNominated",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "timestamp",
				"type": "uint256"
			  }
			],
			"name": "SetOverrideTimestamp",
			"type": "event"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "CONTRACT_NAME",
			"outputs": [
			  {
				"internalType": "bytes32",
				"name": "",
				"type": "bytes32"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": false,
			"inputs": [],
			"name": "acceptOwnership",
			"outputs": [],
			"payable": false,
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "decimals",
			"outputs": [
			  {
				"internalType": "uint8",
				"name": "",
				"type": "uint8"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [
			  {
				"internalType": "uint256",
				"name": "_roundId",
				"type": "uint256"
			  }
			],
			"name": "getAnswer",
			"outputs": [
			  {
				"internalType": "int256",
				"name": "answer",
				"type": "int256"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [
			  {
				"internalType": "uint80",
				"name": "",
				"type": "uint80"
			  }
			],
			"name": "getRoundData",
			"outputs": [
			  {
				"internalType": "uint80",
				"name": "",
				"type": "uint80"
			  },
			  {
				"internalType": "int256",
				"name": "",
				"type": "int256"
			  },
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  },
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  },
			  {
				"internalType": "uint80",
				"name": "",
				"type": "uint80"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [
			  {
				"internalType": "uint256",
				"name": "_roundId",
				"type": "uint256"
			  }
			],
			"name": "getTimestamp",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "timestamp",
				"type": "uint256"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "latestRound",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "latestRoundData",
			"outputs": [
			  {
				"internalType": "uint80",
				"name": "",
				"type": "uint80"
			  },
			  {
				"internalType": "int256",
				"name": "",
				"type": "int256"
			  },
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  },
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  },
			  {
				"internalType": "uint80",
				"name": "",
				"type": "uint80"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": false,
			"inputs": [
			  {
				"internalType": "address",
				"name": "_owner",
				"type": "address"
			  }
			],
			"name": "nominateNewOwner",
			"outputs": [],
			"payable": false,
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "nominatedOwner",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "overrideTimestamp",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "owner",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "resolver",
			"outputs": [
			  {
				"internalType": "contract AddressResolver",
				"name": "",
				"type": "address"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": false,
			"inputs": [
			  {
				"internalType": "uint256",
				"name": "timestamp",
				"type": "uint256"
			  }
			],
			"name": "setOverrideTimestamp",
			"outputs": [],
			"payable": false,
			"stateMutability": "nonpayable",
			"type": "function"
		  }
		]
	  },
	  "OneNetAggregatorsDEFI": {
		"abi": [
		  {
			"inputs": [
			  {
				"internalType": "contract AddressResolver",
				"name": "_resolver",
				"type": "address"
			  }
			],
			"payable": false,
			"stateMutability": "nonpayable",
			"type": "constructor"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "address",
				"name": "oldOwner",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "address",
				"name": "newOwner",
				"type": "address"
			  }
			],
			"name": "OwnerChanged",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "address",
				"name": "newOwner",
				"type": "address"
			  }
			],
			"name": "OwnerNominated",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "timestamp",
				"type": "uint256"
			  }
			],
			"name": "SetOverrideTimestamp",
			"type": "event"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "CONTRACT_NAME",
			"outputs": [
			  {
				"internalType": "bytes32",
				"name": "",
				"type": "bytes32"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": false,
			"inputs": [],
			"name": "acceptOwnership",
			"outputs": [],
			"payable": false,
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "decimals",
			"outputs": [
			  {
				"internalType": "uint8",
				"name": "",
				"type": "uint8"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [
			  {
				"internalType": "uint256",
				"name": "_roundId",
				"type": "uint256"
			  }
			],
			"name": "getAnswer",
			"outputs": [
			  {
				"internalType": "int256",
				"name": "answer",
				"type": "int256"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [
			  {
				"internalType": "uint80",
				"name": "",
				"type": "uint80"
			  }
			],
			"name": "getRoundData",
			"outputs": [
			  {
				"internalType": "uint80",
				"name": "",
				"type": "uint80"
			  },
			  {
				"internalType": "int256",
				"name": "",
				"type": "int256"
			  },
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  },
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  },
			  {
				"internalType": "uint80",
				"name": "",
				"type": "uint80"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [
			  {
				"internalType": "uint256",
				"name": "_roundId",
				"type": "uint256"
			  }
			],
			"name": "getTimestamp",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "timestamp",
				"type": "uint256"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "latestRound",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "latestRoundData",
			"outputs": [
			  {
				"internalType": "uint80",
				"name": "",
				"type": "uint80"
			  },
			  {
				"internalType": "int256",
				"name": "",
				"type": "int256"
			  },
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  },
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  },
			  {
				"internalType": "uint80",
				"name": "",
				"type": "uint80"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": false,
			"inputs": [
			  {
				"internalType": "address",
				"name": "_owner",
				"type": "address"
			  }
			],
			"name": "nominateNewOwner",
			"outputs": [],
			"payable": false,
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "nominatedOwner",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "overrideTimestamp",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "owner",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "resolver",
			"outputs": [
			  {
				"internalType": "contract AddressResolver",
				"name": "",
				"type": "address"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": false,
			"inputs": [
			  {
				"internalType": "uint256",
				"name": "timestamp",
				"type": "uint256"
			  }
			],
			"name": "setOverrideTimestamp",
			"outputs": [],
			"payable": false,
			"stateMutability": "nonpayable",
			"type": "function"
		  }
		]
	  },
	  "FlexibleStorage": {
		"abi": [
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "_resolver",
				"type": "address"
			  }
			],
			"stateMutability": "nonpayable",
			"type": "constructor"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "bytes32",
				"name": "fromContractName",
				"type": "bytes32"
			  },
			  {
				"indexed": false,
				"internalType": "bytes32",
				"name": "toContractName",
				"type": "bytes32"
			  },
			  {
				"indexed": false,
				"internalType": "bool",
				"name": "removeAccessFromPreviousContract",
				"type": "bool"
			  }
			],
			"name": "KeyMigrated",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "bytes32",
				"name": "contractName",
				"type": "bytes32"
			  },
			  {
				"indexed": false,
				"internalType": "bytes32",
				"name": "record",
				"type": "bytes32"
			  },
			  {
				"indexed": false,
				"internalType": "address",
				"name": "value",
				"type": "address"
			  }
			],
			"name": "ValueDeletedAddress",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "bytes32",
				"name": "contractName",
				"type": "bytes32"
			  },
			  {
				"indexed": false,
				"internalType": "bytes32",
				"name": "record",
				"type": "bytes32"
			  },
			  {
				"indexed": false,
				"internalType": "bool",
				"name": "value",
				"type": "bool"
			  }
			],
			"name": "ValueDeletedBool",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "bytes32",
				"name": "contractName",
				"type": "bytes32"
			  },
			  {
				"indexed": false,
				"internalType": "bytes32",
				"name": "record",
				"type": "bytes32"
			  },
			  {
				"indexed": false,
				"internalType": "bytes32",
				"name": "value",
				"type": "bytes32"
			  }
			],
			"name": "ValueDeletedBytes32",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "bytes32",
				"name": "contractName",
				"type": "bytes32"
			  },
			  {
				"indexed": false,
				"internalType": "bytes32",
				"name": "record",
				"type": "bytes32"
			  },
			  {
				"indexed": false,
				"internalType": "int256",
				"name": "value",
				"type": "int256"
			  }
			],
			"name": "ValueDeletedInt",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "bytes32",
				"name": "contractName",
				"type": "bytes32"
			  },
			  {
				"indexed": false,
				"internalType": "bytes32",
				"name": "record",
				"type": "bytes32"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "value",
				"type": "uint256"
			  }
			],
			"name": "ValueDeletedUInt",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "bytes32",
				"name": "contractName",
				"type": "bytes32"
			  },
			  {
				"indexed": false,
				"internalType": "bytes32",
				"name": "record",
				"type": "bytes32"
			  },
			  {
				"indexed": false,
				"internalType": "address",
				"name": "value",
				"type": "address"
			  }
			],
			"name": "ValueSetAddress",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "bytes32",
				"name": "contractName",
				"type": "bytes32"
			  },
			  {
				"indexed": false,
				"internalType": "bytes32",
				"name": "record",
				"type": "bytes32"
			  },
			  {
				"indexed": false,
				"internalType": "bool",
				"name": "value",
				"type": "bool"
			  }
			],
			"name": "ValueSetBool",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "bytes32",
				"name": "contractName",
				"type": "bytes32"
			  },
			  {
				"indexed": false,
				"internalType": "bytes32",
				"name": "record",
				"type": "bytes32"
			  },
			  {
				"indexed": false,
				"internalType": "bytes32",
				"name": "value",
				"type": "bytes32"
			  }
			],
			"name": "ValueSetBytes32",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "bytes32",
				"name": "contractName",
				"type": "bytes32"
			  },
			  {
				"indexed": false,
				"internalType": "bytes32",
				"name": "record",
				"type": "bytes32"
			  },
			  {
				"indexed": false,
				"internalType": "int256",
				"name": "value",
				"type": "int256"
			  }
			],
			"name": "ValueSetInt",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "bytes32",
				"name": "contractName",
				"type": "bytes32"
			  },
			  {
				"indexed": false,
				"internalType": "bytes32",
				"name": "record",
				"type": "bytes32"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "value",
				"type": "uint256"
			  }
			],
			"name": "ValueSetUInt",
			"type": "event"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "contractName",
				"type": "bytes32"
			  },
			  {
				"internalType": "bytes32",
				"name": "record",
				"type": "bytes32"
			  }
			],
			"name": "deleteAddressValue",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "contractName",
				"type": "bytes32"
			  },
			  {
				"internalType": "bytes32",
				"name": "record",
				"type": "bytes32"
			  }
			],
			"name": "deleteBoolValue",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "contractName",
				"type": "bytes32"
			  },
			  {
				"internalType": "bytes32",
				"name": "record",
				"type": "bytes32"
			  }
			],
			"name": "deleteBytes32Value",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "contractName",
				"type": "bytes32"
			  },
			  {
				"internalType": "bytes32",
				"name": "record",
				"type": "bytes32"
			  }
			],
			"name": "deleteIntValue",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "contractName",
				"type": "bytes32"
			  },
			  {
				"internalType": "bytes32",
				"name": "record",
				"type": "bytes32"
			  }
			],
			"name": "deleteUIntValue",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "contractName",
				"type": "bytes32"
			  },
			  {
				"internalType": "bytes32",
				"name": "record",
				"type": "bytes32"
			  }
			],
			"name": "getAddressValue",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "contractName",
				"type": "bytes32"
			  },
			  {
				"internalType": "bytes32[]",
				"name": "records",
				"type": "bytes32[]"
			  }
			],
			"name": "getAddressValues",
			"outputs": [
			  {
				"internalType": "address[]",
				"name": "",
				"type": "address[]"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "contractName",
				"type": "bytes32"
			  },
			  {
				"internalType": "bytes32",
				"name": "record",
				"type": "bytes32"
			  }
			],
			"name": "getBoolValue",
			"outputs": [
			  {
				"internalType": "bool",
				"name": "",
				"type": "bool"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "contractName",
				"type": "bytes32"
			  },
			  {
				"internalType": "bytes32[]",
				"name": "records",
				"type": "bytes32[]"
			  }
			],
			"name": "getBoolValues",
			"outputs": [
			  {
				"internalType": "bool[]",
				"name": "",
				"type": "bool[]"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "contractName",
				"type": "bytes32"
			  },
			  {
				"internalType": "bytes32",
				"name": "record",
				"type": "bytes32"
			  }
			],
			"name": "getBytes32Value",
			"outputs": [
			  {
				"internalType": "bytes32",
				"name": "",
				"type": "bytes32"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "contractName",
				"type": "bytes32"
			  },
			  {
				"internalType": "bytes32[]",
				"name": "records",
				"type": "bytes32[]"
			  }
			],
			"name": "getBytes32Values",
			"outputs": [
			  {
				"internalType": "bytes32[]",
				"name": "",
				"type": "bytes32[]"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "contractName",
				"type": "bytes32"
			  },
			  {
				"internalType": "bytes32",
				"name": "record",
				"type": "bytes32"
			  }
			],
			"name": "getIntValue",
			"outputs": [
			  {
				"internalType": "int256",
				"name": "",
				"type": "int256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "contractName",
				"type": "bytes32"
			  },
			  {
				"internalType": "bytes32[]",
				"name": "records",
				"type": "bytes32[]"
			  }
			],
			"name": "getIntValues",
			"outputs": [
			  {
				"internalType": "int256[]",
				"name": "",
				"type": "int256[]"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "contractName",
				"type": "bytes32"
			  },
			  {
				"internalType": "bytes32",
				"name": "record",
				"type": "bytes32"
			  }
			],
			"name": "getUIntValue",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "contractName",
				"type": "bytes32"
			  },
			  {
				"internalType": "bytes32[]",
				"name": "records",
				"type": "bytes32[]"
			  }
			],
			"name": "getUIntValues",
			"outputs": [
			  {
				"internalType": "uint256[]",
				"name": "",
				"type": "uint256[]"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "",
				"type": "bytes32"
			  }
			],
			"name": "hashes",
			"outputs": [
			  {
				"internalType": "bytes32",
				"name": "",
				"type": "bytes32"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "fromContractName",
				"type": "bytes32"
			  },
			  {
				"internalType": "bytes32",
				"name": "toContractName",
				"type": "bytes32"
			  },
			  {
				"internalType": "bool",
				"name": "removeAccessFromPreviousContract",
				"type": "bool"
			  }
			],
			"name": "migrateContractKey",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "resolverProxy",
			"outputs": [
			  {
				"internalType": "contract IAddressResolver",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "contractName",
				"type": "bytes32"
			  },
			  {
				"internalType": "bytes32",
				"name": "record",
				"type": "bytes32"
			  },
			  {
				"internalType": "address",
				"name": "value",
				"type": "address"
			  }
			],
			"name": "setAddressValue",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "contractName",
				"type": "bytes32"
			  },
			  {
				"internalType": "bytes32[]",
				"name": "records",
				"type": "bytes32[]"
			  },
			  {
				"internalType": "address[]",
				"name": "values",
				"type": "address[]"
			  }
			],
			"name": "setAddressValues",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "contractName",
				"type": "bytes32"
			  },
			  {
				"internalType": "bytes32",
				"name": "record",
				"type": "bytes32"
			  },
			  {
				"internalType": "bool",
				"name": "value",
				"type": "bool"
			  }
			],
			"name": "setBoolValue",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "contractName",
				"type": "bytes32"
			  },
			  {
				"internalType": "bytes32[]",
				"name": "records",
				"type": "bytes32[]"
			  },
			  {
				"internalType": "bool[]",
				"name": "values",
				"type": "bool[]"
			  }
			],
			"name": "setBoolValues",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "contractName",
				"type": "bytes32"
			  },
			  {
				"internalType": "bytes32",
				"name": "record",
				"type": "bytes32"
			  },
			  {
				"internalType": "bytes32",
				"name": "value",
				"type": "bytes32"
			  }
			],
			"name": "setBytes32Value",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "contractName",
				"type": "bytes32"
			  },
			  {
				"internalType": "bytes32[]",
				"name": "records",
				"type": "bytes32[]"
			  },
			  {
				"internalType": "bytes32[]",
				"name": "values",
				"type": "bytes32[]"
			  }
			],
			"name": "setBytes32Values",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "contractName",
				"type": "bytes32"
			  },
			  {
				"internalType": "bytes32",
				"name": "record",
				"type": "bytes32"
			  },
			  {
				"internalType": "int256",
				"name": "value",
				"type": "int256"
			  }
			],
			"name": "setIntValue",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "contractName",
				"type": "bytes32"
			  },
			  {
				"internalType": "bytes32[]",
				"name": "records",
				"type": "bytes32[]"
			  },
			  {
				"internalType": "int256[]",
				"name": "values",
				"type": "int256[]"
			  }
			],
			"name": "setIntValues",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "contractName",
				"type": "bytes32"
			  },
			  {
				"internalType": "bytes32",
				"name": "record",
				"type": "bytes32"
			  },
			  {
				"internalType": "uint256",
				"name": "value",
				"type": "uint256"
			  }
			],
			"name": "setUIntValue",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "contractName",
				"type": "bytes32"
			  },
			  {
				"internalType": "bytes32[]",
				"name": "records",
				"type": "bytes32[]"
			  },
			  {
				"internalType": "uint256[]",
				"name": "values",
				"type": "uint256[]"
			  }
			],
			"name": "setUIntValues",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  }
		]
	  },
	  "SystemSettings": {
		"abi": [
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "_owner",
				"type": "address"
			  },
			  {
				"internalType": "address",
				"name": "_resolver",
				"type": "address"
			  }
			],
			"stateMutability": "nonpayable",
			"type": "constructor"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "address",
				"name": "flags",
				"type": "address"
			  }
			],
			"name": "AggregatorWarningFlagsUpdated",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "bytes32",
				"name": "synthKey",
				"type": "bytes32"
			  },
			  {
				"indexed": false,
				"internalType": "address",
				"name": "equivalent",
				"type": "address"
			  }
			],
			"name": "AtomicEquivalentForDexPricingUpdated",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "bytes32",
				"name": "synthKey",
				"type": "bytes32"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "newExchangeFeeRate",
				"type": "uint256"
			  }
			],
			"name": "AtomicExchangeFeeUpdated",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "newMaxVolume",
				"type": "uint256"
			  }
			],
			"name": "AtomicMaxVolumePerBlockUpdated",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "newWindow",
				"type": "uint256"
			  }
			],
			"name": "AtomicTwapWindowUpdated",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "bytes32",
				"name": "synthKey",
				"type": "bytes32"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "newVolatilityConsiderationWindow",
				"type": "uint256"
			  }
			],
			"name": "AtomicVolatilityConsiderationWindowUpdated",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "bytes32",
				"name": "synthKey",
				"type": "bytes32"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "newVolatilityUpdateThreshold",
				"type": "uint256"
			  }
			],
			"name": "AtomicVolatilityUpdateThresholdUpdated",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "bytes32",
				"name": "name",
				"type": "bytes32"
			  },
			  {
				"indexed": false,
				"internalType": "address",
				"name": "destination",
				"type": "address"
			  }
			],
			"name": "CacheUpdated",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "dynamicFeeRounds",
				"type": "uint256"
			  }
			],
			"name": "ExchangeDynamicFeeRoundsUpdated",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "dynamicFeeThreshold",
				"type": "uint256"
			  }
			],
			"name": "ExchangeDynamicFeeThresholdUpdated",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "dynamicFeeWeightDecay",
				"type": "uint256"
			  }
			],
			"name": "ExchangeDynamicFeeWeightDecayUpdated",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "bytes32",
				"name": "synthKey",
				"type": "bytes32"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "newExchangeFeeRate",
				"type": "uint256"
			  }
			],
			"name": "ExchangeFeeUpdated",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "maxDynamicFee",
				"type": "uint256"
			  }
			],
			"name": "ExchangeMaxDynamicFeeUpdated",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "address",
				"name": "oldOwner",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "address",
				"name": "newOwner",
				"type": "address"
			  }
			],
			"name": "OwnerChanged",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "address",
				"name": "newOwner",
				"type": "address"
			  }
			],
			"name": "OwnerNominated",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "threshold",
				"type": "uint256"
			  }
			],
			"name": "PriceDeviationThresholdUpdated",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "bytes32",
				"name": "synthKey",
				"type": "bytes32"
			  },
			  {
				"indexed": false,
				"internalType": "bool",
				"name": "enabled",
				"type": "bool"
			  }
			],
			"name": "PureChainlinkPriceForAtomicSwapsEnabledUpdated",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "rateStalePeriod",
				"type": "uint256"
			  }
			],
			"name": "RateStalePeriodUpdated",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "waitingPeriodSecs",
				"type": "uint256"
			  }
			],
			"name": "WaitingPeriodSecsUpdated",
			"type": "event"
		  },
		  {
			"inputs": [],
			"name": "CONTRACT_NAME",
			"outputs": [
			  {
				"internalType": "bytes32",
				"name": "",
				"type": "bytes32"
			  }
			],
			"stateMutability": "pure",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "acceptOwnership",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "aggregatorWarningFlags",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "currencyKey",
				"type": "bytes32"
			  }
			],
			"name": "atomicEquivalentForDexPricing",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "currencyKey",
				"type": "bytes32"
			  }
			],
			"name": "atomicExchangeFeeRate",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "atomicMaxVolumePerBlock",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "atomicTwapWindow",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "currencyKey",
				"type": "bytes32"
			  }
			],
			"name": "atomicVolatilityConsiderationWindow",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "currencyKey",
				"type": "bytes32"
			  }
			],
			"name": "atomicVolatilityUpdateThreshold",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "exchangeDynamicFeeRounds",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "exchangeDynamicFeeThreshold",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "exchangeDynamicFeeWeightDecay",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "currencyKey",
				"type": "bytes32"
			  }
			],
			"name": "exchangeFeeRate",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "exchangeMaxDynamicFee",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "isResolverCached",
			"outputs": [
			  {
				"internalType": "bool",
				"name": "",
				"type": "bool"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "_owner",
				"type": "address"
			  }
			],
			"name": "nominateNewOwner",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "nominatedOwner",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "owner",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "priceDeviationThresholdFactor",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "currencyKey",
				"type": "bytes32"
			  }
			],
			"name": "pureChainlinkPriceForAtomicSwapsEnabled",
			"outputs": [
			  {
				"internalType": "bool",
				"name": "",
				"type": "bool"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "rateStalePeriod",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "rebuildCache",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "resolver",
			"outputs": [
			  {
				"internalType": "contract AddressResolverLightChain",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "resolverAddressesRequired",
			"outputs": [
			  {
				"internalType": "bytes32[]",
				"name": "addresses",
				"type": "bytes32[]"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "_flags",
				"type": "address"
			  }
			],
			"name": "setAggregatorWarningFlags",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "_currencyKey",
				"type": "bytes32"
			  },
			  {
				"internalType": "address",
				"name": "_equivalent",
				"type": "address"
			  }
			],
			"name": "setAtomicEquivalentForDexPricing",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "_currencyKey",
				"type": "bytes32"
			  },
			  {
				"internalType": "uint256",
				"name": "_exchangeFeeRate",
				"type": "uint256"
			  }
			],
			"name": "setAtomicExchangeFeeRate",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "uint256",
				"name": "_maxVolume",
				"type": "uint256"
			  }
			],
			"name": "setAtomicMaxVolumePerBlock",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "uint256",
				"name": "_window",
				"type": "uint256"
			  }
			],
			"name": "setAtomicTwapWindow",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "_currencyKey",
				"type": "bytes32"
			  },
			  {
				"internalType": "uint256",
				"name": "_window",
				"type": "uint256"
			  }
			],
			"name": "setAtomicVolatilityConsiderationWindow",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "_currencyKey",
				"type": "bytes32"
			  },
			  {
				"internalType": "uint256",
				"name": "_threshold",
				"type": "uint256"
			  }
			],
			"name": "setAtomicVolatilityUpdateThreshold",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "uint256",
				"name": "rounds",
				"type": "uint256"
			  }
			],
			"name": "setExchangeDynamicFeeRounds",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "uint256",
				"name": "threshold",
				"type": "uint256"
			  }
			],
			"name": "setExchangeDynamicFeeThreshold",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "uint256",
				"name": "weightDecay",
				"type": "uint256"
			  }
			],
			"name": "setExchangeDynamicFeeWeightDecay",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32[]",
				"name": "synthKeys",
				"type": "bytes32[]"
			  },
			  {
				"internalType": "uint256[]",
				"name": "exchangeFeeRates",
				"type": "uint256[]"
			  }
			],
			"name": "setExchangeFeeRateForSynths",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "uint256",
				"name": "maxFee",
				"type": "uint256"
			  }
			],
			"name": "setExchangeMaxDynamicFee",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "uint256",
				"name": "_priceDeviationThresholdFactor",
				"type": "uint256"
			  }
			],
			"name": "setPriceDeviationThresholdFactor",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "_currencyKey",
				"type": "bytes32"
			  },
			  {
				"internalType": "bool",
				"name": "_enabled",
				"type": "bool"
			  }
			],
			"name": "setPureChainlinkPriceForAtomicSwapsEnabled",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "uint256",
				"name": "period",
				"type": "uint256"
			  }
			],
			"name": "setRateStalePeriod",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "uint256",
				"name": "_waitingPeriodSecs",
				"type": "uint256"
			  }
			],
			"name": "setWaitingPeriodSecs",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "waitingPeriodSecs",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  }
		]
	  },
	  "SystemStatus": {
		"abi": [
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "_owner",
				"type": "address"
			  }
			],
			"stateMutability": "nonpayable",
			"type": "constructor"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": true,
				"internalType": "bytes32",
				"name": "section",
				"type": "bytes32"
			  },
			  {
				"indexed": true,
				"internalType": "address",
				"name": "account",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "bool",
				"name": "canSuspend",
				"type": "bool"
			  },
			  {
				"indexed": false,
				"internalType": "bool",
				"name": "canResume",
				"type": "bool"
			  }
			],
			"name": "AccessControlUpdated",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "reason",
				"type": "uint256"
			  }
			],
			"name": "ExchangeResumed",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "reason",
				"type": "uint256"
			  }
			],
			"name": "ExchangeSuspended",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "reason",
				"type": "uint256"
			  }
			],
			"name": "IssuanceResumed",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "reason",
				"type": "uint256"
			  }
			],
			"name": "IssuanceSuspended",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "address",
				"name": "oldOwner",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "address",
				"name": "newOwner",
				"type": "address"
			  }
			],
			"name": "OwnerChanged",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "address",
				"name": "newOwner",
				"type": "address"
			  }
			],
			"name": "OwnerNominated",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "bytes32",
				"name": "currencyKey",
				"type": "bytes32"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "reason",
				"type": "uint256"
			  }
			],
			"name": "SynthExchangeResumed",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "bytes32",
				"name": "currencyKey",
				"type": "bytes32"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "reason",
				"type": "uint256"
			  }
			],
			"name": "SynthExchangeSuspended",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "bytes32",
				"name": "currencyKey",
				"type": "bytes32"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "reason",
				"type": "uint256"
			  }
			],
			"name": "SynthResumed",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "bytes32",
				"name": "currencyKey",
				"type": "bytes32"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "reason",
				"type": "uint256"
			  }
			],
			"name": "SynthSuspended",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "reason",
				"type": "uint256"
			  }
			],
			"name": "SystemResumed",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "reason",
				"type": "uint256"
			  }
			],
			"name": "SystemSuspended",
			"type": "event"
		  },
		  {
			"inputs": [],
			"name": "CONTRACT_NAME",
			"outputs": [
			  {
				"internalType": "bytes32",
				"name": "",
				"type": "bytes32"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "SECTION_EXCHANGE",
			"outputs": [
			  {
				"internalType": "bytes32",
				"name": "",
				"type": "bytes32"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "SECTION_ISSUANCE",
			"outputs": [
			  {
				"internalType": "bytes32",
				"name": "",
				"type": "bytes32"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "SECTION_SYNTH",
			"outputs": [
			  {
				"internalType": "bytes32",
				"name": "",
				"type": "bytes32"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "SECTION_SYNTH_EXCHANGE",
			"outputs": [
			  {
				"internalType": "bytes32",
				"name": "",
				"type": "bytes32"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "SECTION_SYSTEM",
			"outputs": [
			  {
				"internalType": "bytes32",
				"name": "",
				"type": "bytes32"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "SUSPENSION_REASON_UPGRADE",
			"outputs": [
			  {
				"internalType": "uint248",
				"name": "",
				"type": "uint248"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "acceptOwnership",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "",
				"type": "bytes32"
			  },
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"name": "accessControl",
			"outputs": [
			  {
				"internalType": "bool",
				"name": "canSuspend",
				"type": "bool"
			  },
			  {
				"internalType": "bool",
				"name": "canResume",
				"type": "bool"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "exchangeSuspension",
			"outputs": [
			  {
				"internalType": "bool",
				"name": "suspended",
				"type": "bool"
			  },
			  {
				"internalType": "uint248",
				"name": "reason",
				"type": "uint248"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32[]",
				"name": "synths",
				"type": "bytes32[]"
			  }
			],
			"name": "getSynthExchangeSuspensions",
			"outputs": [
			  {
				"internalType": "bool[]",
				"name": "exchangeSuspensions",
				"type": "bool[]"
			  },
			  {
				"internalType": "uint256[]",
				"name": "reasons",
				"type": "uint256[]"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32[]",
				"name": "synths",
				"type": "bytes32[]"
			  }
			],
			"name": "getSynthSuspensions",
			"outputs": [
			  {
				"internalType": "bool[]",
				"name": "suspensions",
				"type": "bool[]"
			  },
			  {
				"internalType": "uint256[]",
				"name": "reasons",
				"type": "uint256[]"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "isSystemUpgrading",
			"outputs": [
			  {
				"internalType": "bool",
				"name": "",
				"type": "bool"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "issuanceSuspension",
			"outputs": [
			  {
				"internalType": "bool",
				"name": "suspended",
				"type": "bool"
			  },
			  {
				"internalType": "uint248",
				"name": "reason",
				"type": "uint248"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "_owner",
				"type": "address"
			  }
			],
			"name": "nominateNewOwner",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "nominatedOwner",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "owner",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "requireExchangeActive",
			"outputs": [],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "sourceCurrencyKey",
				"type": "bytes32"
			  },
			  {
				"internalType": "bytes32",
				"name": "destinationCurrencyKey",
				"type": "bytes32"
			  }
			],
			"name": "requireExchangeBetweenSynthsAllowed",
			"outputs": [],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "requireIssuanceActive",
			"outputs": [],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "currencyKey",
				"type": "bytes32"
			  }
			],
			"name": "requireSynthActive",
			"outputs": [],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "currencyKey",
				"type": "bytes32"
			  }
			],
			"name": "requireSynthExchangeActive",
			"outputs": [],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "sourceCurrencyKey",
				"type": "bytes32"
			  },
			  {
				"internalType": "bytes32",
				"name": "destinationCurrencyKey",
				"type": "bytes32"
			  }
			],
			"name": "requireSynthsActive",
			"outputs": [],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "requireSystemActive",
			"outputs": [],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "resumeExchange",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "resumeIssuance",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "currencyKey",
				"type": "bytes32"
			  }
			],
			"name": "resumeSynth",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "currencyKey",
				"type": "bytes32"
			  }
			],
			"name": "resumeSynthExchange",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32[]",
				"name": "currencyKeys",
				"type": "bytes32[]"
			  }
			],
			"name": "resumeSynths",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32[]",
				"name": "currencyKeys",
				"type": "bytes32[]"
			  }
			],
			"name": "resumeSynthsExchange",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "resumeSystem",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "uint256",
				"name": "reason",
				"type": "uint256"
			  }
			],
			"name": "suspendExchange",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "uint256",
				"name": "reason",
				"type": "uint256"
			  }
			],
			"name": "suspendIssuance",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "currencyKey",
				"type": "bytes32"
			  },
			  {
				"internalType": "uint256",
				"name": "reason",
				"type": "uint256"
			  }
			],
			"name": "suspendSynth",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "currencyKey",
				"type": "bytes32"
			  },
			  {
				"internalType": "uint256",
				"name": "reason",
				"type": "uint256"
			  }
			],
			"name": "suspendSynthExchange",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32[]",
				"name": "currencyKeys",
				"type": "bytes32[]"
			  },
			  {
				"internalType": "uint256",
				"name": "reason",
				"type": "uint256"
			  }
			],
			"name": "suspendSynths",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32[]",
				"name": "currencyKeys",
				"type": "bytes32[]"
			  },
			  {
				"internalType": "uint256",
				"name": "reason",
				"type": "uint256"
			  }
			],
			"name": "suspendSynthsExchange",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "uint256",
				"name": "reason",
				"type": "uint256"
			  }
			],
			"name": "suspendSystem",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "",
				"type": "bytes32"
			  }
			],
			"name": "synthExchangeSuspension",
			"outputs": [
			  {
				"internalType": "bool",
				"name": "suspended",
				"type": "bool"
			  },
			  {
				"internalType": "uint248",
				"name": "reason",
				"type": "uint248"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "currencyKey",
				"type": "bytes32"
			  }
			],
			"name": "synthSuspended",
			"outputs": [
			  {
				"internalType": "bool",
				"name": "",
				"type": "bool"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "",
				"type": "bytes32"
			  }
			],
			"name": "synthSuspension",
			"outputs": [
			  {
				"internalType": "bool",
				"name": "suspended",
				"type": "bool"
			  },
			  {
				"internalType": "uint248",
				"name": "reason",
				"type": "uint248"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "systemSuspended",
			"outputs": [
			  {
				"internalType": "bool",
				"name": "",
				"type": "bool"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "systemSuspension",
			"outputs": [
			  {
				"internalType": "bool",
				"name": "suspended",
				"type": "bool"
			  },
			  {
				"internalType": "uint248",
				"name": "reason",
				"type": "uint248"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "section",
				"type": "bytes32"
			  },
			  {
				"internalType": "address",
				"name": "account",
				"type": "address"
			  },
			  {
				"internalType": "bool",
				"name": "canSuspend",
				"type": "bool"
			  },
			  {
				"internalType": "bool",
				"name": "canResume",
				"type": "bool"
			  }
			],
			"name": "updateAccessControl",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32[]",
				"name": "sections",
				"type": "bytes32[]"
			  },
			  {
				"internalType": "address[]",
				"name": "accounts",
				"type": "address[]"
			  },
			  {
				"internalType": "bool[]",
				"name": "canSuspends",
				"type": "bool[]"
			  },
			  {
				"internalType": "bool[]",
				"name": "canResumes",
				"type": "bool[]"
			  }
			],
			"name": "updateAccessControls",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  }
		]
	  },
	  "ExchangeRatesWithDexPricing": {
		"abi": [
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "_owner",
				"type": "address"
			  },
			  {
				"internalType": "address",
				"name": "_resolver",
				"type": "address"
			  }
			],
			"stateMutability": "nonpayable",
			"type": "constructor"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "bytes32",
				"name": "currencyKey",
				"type": "bytes32"
			  },
			  {
				"indexed": false,
				"internalType": "address",
				"name": "aggregator",
				"type": "address"
			  }
			],
			"name": "AggregatorAdded",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "bytes32",
				"name": "currencyKey",
				"type": "bytes32"
			  },
			  {
				"indexed": false,
				"internalType": "address",
				"name": "aggregator",
				"type": "address"
			  }
			],
			"name": "AggregatorRemoved",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "bytes32",
				"name": "name",
				"type": "bytes32"
			  },
			  {
				"indexed": false,
				"internalType": "address",
				"name": "destination",
				"type": "address"
			  }
			],
			"name": "CacheUpdated",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "address",
				"name": "newDexPriceAggregator",
				"type": "address"
			  }
			],
			"name": "DexPriceAggregatorUpdated",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "address",
				"name": "oldOwner",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "address",
				"name": "newOwner",
				"type": "address"
			  }
			],
			"name": "OwnerChanged",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "address",
				"name": "newOwner",
				"type": "address"
			  }
			],
			"name": "OwnerNominated",
			"type": "event"
		  },
		  {
			"inputs": [],
			"name": "CONTRACT_NAME",
			"outputs": [
			  {
				"internalType": "bytes32",
				"name": "",
				"type": "bytes32"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "acceptOwnership",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "currencyKey",
				"type": "bytes32"
			  },
			  {
				"internalType": "address",
				"name": "aggregatorAddress",
				"type": "address"
			  }
			],
			"name": "addAggregator",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"name": "aggregatorKeys",
			"outputs": [
			  {
				"internalType": "bytes32",
				"name": "",
				"type": "bytes32"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "aggregatorWarningFlags",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "",
				"type": "bytes32"
			  }
			],
			"name": "aggregators",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32[]",
				"name": "currencyKeys",
				"type": "bytes32[]"
			  }
			],
			"name": "anyRateIsInvalid",
			"outputs": [
			  {
				"internalType": "bool",
				"name": "",
				"type": "bool"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32[]",
				"name": "currencyKeys",
				"type": "bytes32[]"
			  },
			  {
				"internalType": "uint256[]",
				"name": "roundIds",
				"type": "uint256[]"
			  }
			],
			"name": "anyRateIsInvalidAtRound",
			"outputs": [
			  {
				"internalType": "bool",
				"name": "",
				"type": "bool"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "currencyKey",
				"type": "bytes32"
			  }
			],
			"name": "atomicEquivalentForDexPricing",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "atomicTwapWindow",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "currencyKey",
				"type": "bytes32"
			  }
			],
			"name": "atomicVolatilityConsiderationWindow",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "currencyKey",
				"type": "bytes32"
			  }
			],
			"name": "atomicVolatilityUpdateThreshold",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "aggregator",
				"type": "address"
			  }
			],
			"name": "currenciesUsingAggregator",
			"outputs": [
			  {
				"internalType": "bytes32[]",
				"name": "currencies",
				"type": "bytes32[]"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "",
				"type": "bytes32"
			  }
			],
			"name": "currencyKeyDecimals",
			"outputs": [
			  {
				"internalType": "uint8",
				"name": "",
				"type": "uint8"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "dexPriceAggregator",
			"outputs": [
			  {
				"internalType": "contract IDexPriceAggregator",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "sourceCurrencyKey",
				"type": "bytes32"
			  },
			  {
				"internalType": "uint256",
				"name": "sourceAmount",
				"type": "uint256"
			  },
			  {
				"internalType": "bytes32",
				"name": "destinationCurrencyKey",
				"type": "bytes32"
			  }
			],
			"name": "effectiveAtomicValueAndRates",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "value",
				"type": "uint256"
			  },
			  {
				"internalType": "uint256",
				"name": "systemValue",
				"type": "uint256"
			  },
			  {
				"internalType": "uint256",
				"name": "systemSourceRate",
				"type": "uint256"
			  },
			  {
				"internalType": "uint256",
				"name": "systemDestinationRate",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "sourceCurrencyKey",
				"type": "bytes32"
			  },
			  {
				"internalType": "uint256",
				"name": "sourceAmount",
				"type": "uint256"
			  },
			  {
				"internalType": "bytes32",
				"name": "destinationCurrencyKey",
				"type": "bytes32"
			  }
			],
			"name": "effectiveValue",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "value",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "sourceCurrencyKey",
				"type": "bytes32"
			  },
			  {
				"internalType": "uint256",
				"name": "sourceAmount",
				"type": "uint256"
			  },
			  {
				"internalType": "bytes32",
				"name": "destinationCurrencyKey",
				"type": "bytes32"
			  }
			],
			"name": "effectiveValueAndRates",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "value",
				"type": "uint256"
			  },
			  {
				"internalType": "uint256",
				"name": "sourceRate",
				"type": "uint256"
			  },
			  {
				"internalType": "uint256",
				"name": "destinationRate",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "sourceCurrencyKey",
				"type": "bytes32"
			  },
			  {
				"internalType": "uint256",
				"name": "sourceAmount",
				"type": "uint256"
			  },
			  {
				"internalType": "bytes32",
				"name": "destinationCurrencyKey",
				"type": "bytes32"
			  },
			  {
				"internalType": "uint256",
				"name": "roundIdForSrc",
				"type": "uint256"
			  },
			  {
				"internalType": "uint256",
				"name": "roundIdForDest",
				"type": "uint256"
			  }
			],
			"name": "effectiveValueAndRatesAtRound",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "value",
				"type": "uint256"
			  },
			  {
				"internalType": "uint256",
				"name": "sourceRate",
				"type": "uint256"
			  },
			  {
				"internalType": "uint256",
				"name": "destinationRate",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "currencyKey",
				"type": "bytes32"
			  }
			],
			"name": "getCurrentRoundId",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "currencyKey",
				"type": "bytes32"
			  },
			  {
				"internalType": "uint256",
				"name": "startingRoundId",
				"type": "uint256"
			  },
			  {
				"internalType": "uint256",
				"name": "startingTimestamp",
				"type": "uint256"
			  },
			  {
				"internalType": "uint256",
				"name": "timediff",
				"type": "uint256"
			  }
			],
			"name": "getLastRoundIdBeforeElapsedSecs",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "isResolverCached",
			"outputs": [
			  {
				"internalType": "bool",
				"name": "",
				"type": "bool"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "currencyKey",
				"type": "bytes32"
			  }
			],
			"name": "lastRateUpdateTimes",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32[]",
				"name": "currencyKeys",
				"type": "bytes32[]"
			  }
			],
			"name": "lastRateUpdateTimesForCurrencies",
			"outputs": [
			  {
				"internalType": "uint256[]",
				"name": "",
				"type": "uint256[]"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "_owner",
				"type": "address"
			  }
			],
			"name": "nominateNewOwner",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "nominatedOwner",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "owner",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "currencyKey",
				"type": "bytes32"
			  }
			],
			"name": "rateAndInvalid",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "rate",
				"type": "uint256"
			  },
			  {
				"internalType": "bool",
				"name": "isInvalid",
				"type": "bool"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "currencyKey",
				"type": "bytes32"
			  },
			  {
				"internalType": "uint256",
				"name": "roundId",
				"type": "uint256"
			  }
			],
			"name": "rateAndTimestampAtRound",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "rate",
				"type": "uint256"
			  },
			  {
				"internalType": "uint256",
				"name": "time",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "currencyKey",
				"type": "bytes32"
			  }
			],
			"name": "rateAndUpdatedTime",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "rate",
				"type": "uint256"
			  },
			  {
				"internalType": "uint256",
				"name": "time",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "currencyKey",
				"type": "bytes32"
			  }
			],
			"name": "rateForCurrency",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "currencyKey",
				"type": "bytes32"
			  }
			],
			"name": "rateIsFlagged",
			"outputs": [
			  {
				"internalType": "bool",
				"name": "",
				"type": "bool"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "currencyKey",
				"type": "bytes32"
			  }
			],
			"name": "rateIsInvalid",
			"outputs": [
			  {
				"internalType": "bool",
				"name": "",
				"type": "bool"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "currencyKey",
				"type": "bytes32"
			  }
			],
			"name": "rateIsStale",
			"outputs": [
			  {
				"internalType": "bool",
				"name": "",
				"type": "bool"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "rateStalePeriod",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32[]",
				"name": "currencyKeys",
				"type": "bytes32[]"
			  }
			],
			"name": "ratesAndInvalidForCurrencies",
			"outputs": [
			  {
				"internalType": "uint256[]",
				"name": "rates",
				"type": "uint256[]"
			  },
			  {
				"internalType": "bool",
				"name": "anyRateInvalid",
				"type": "bool"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "currencyKey",
				"type": "bytes32"
			  },
			  {
				"internalType": "uint256",
				"name": "numRounds",
				"type": "uint256"
			  },
			  {
				"internalType": "uint256",
				"name": "roundId",
				"type": "uint256"
			  }
			],
			"name": "ratesAndUpdatedTimeForCurrencyLastNRounds",
			"outputs": [
			  {
				"internalType": "uint256[]",
				"name": "rates",
				"type": "uint256[]"
			  },
			  {
				"internalType": "uint256[]",
				"name": "times",
				"type": "uint256[]"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32[]",
				"name": "currencyKeys",
				"type": "bytes32[]"
			  }
			],
			"name": "ratesForCurrencies",
			"outputs": [
			  {
				"internalType": "uint256[]",
				"name": "",
				"type": "uint256[]"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "rebuildCache",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "currencyKey",
				"type": "bytes32"
			  }
			],
			"name": "removeAggregator",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "resolver",
			"outputs": [
			  {
				"internalType": "contract AddressResolverLightChain",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "resolverAddressesRequired",
			"outputs": [
			  {
				"internalType": "bytes32[]",
				"name": "addresses",
				"type": "bytes32[]"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "contract IDexPriceAggregator",
				"name": "_dexPriceAggregator",
				"type": "address"
			  }
			],
			"name": "setDexPriceAggregator",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "currencyKey",
				"type": "bytes32"
			  }
			],
			"name": "synthTooVolatileForAtomicExchange",
			"outputs": [
			  {
				"internalType": "bool",
				"name": "",
				"type": "bool"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  }
		]
	  },
	  "RewardEscrow": {
		"abi": [
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "_owner",
				"type": "address"
			  },
			  {
				"internalType": "contract ISynthetix",
				"name": "_synthetix",
				"type": "address"
			  },
			  {
				"internalType": "contract IFeePool",
				"name": "_feePool",
				"type": "address"
			  }
			],
			"payable": false,
			"stateMutability": "nonpayable",
			"type": "constructor"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "address",
				"name": "newFeePool",
				"type": "address"
			  }
			],
			"name": "FeePoolUpdated",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "address",
				"name": "oldOwner",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "address",
				"name": "newOwner",
				"type": "address"
			  }
			],
			"name": "OwnerChanged",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "address",
				"name": "newOwner",
				"type": "address"
			  }
			],
			"name": "OwnerNominated",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "address",
				"name": "newSynthetix",
				"type": "address"
			  }
			],
			"name": "SynthetixUpdated",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": true,
				"internalType": "address",
				"name": "beneficiary",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "time",
				"type": "uint256"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "value",
				"type": "uint256"
			  }
			],
			"name": "Vested",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": true,
				"internalType": "address",
				"name": "beneficiary",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "time",
				"type": "uint256"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "value",
				"type": "uint256"
			  }
			],
			"name": "VestingEntryCreated",
			"type": "event"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "MAX_VESTING_ENTRIES",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": false,
			"inputs": [],
			"name": "acceptOwnership",
			"outputs": [],
			"payable": false,
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "feePool",
			"outputs": [
			  {
				"internalType": "contract IFeePool",
				"name": "",
				"type": "address"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": false,
			"inputs": [
			  {
				"internalType": "address",
				"name": "_owner",
				"type": "address"
			  }
			],
			"name": "nominateNewOwner",
			"outputs": [],
			"payable": false,
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "nominatedOwner",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "owner",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "synthetix",
			"outputs": [
			  {
				"internalType": "contract ISynthetix",
				"name": "",
				"type": "address"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"name": "totalEscrowedAccountBalance",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "totalEscrowedBalance",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"name": "totalVestedAccountBalance",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  },
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  },
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"name": "vestingSchedules",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": false,
			"inputs": [
			  {
				"internalType": "contract ISynthetix",
				"name": "_synthetix",
				"type": "address"
			  }
			],
			"name": "setSynthetix",
			"outputs": [],
			"payable": false,
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"constant": false,
			"inputs": [
			  {
				"internalType": "contract IFeePool",
				"name": "_feePool",
				"type": "address"
			  }
			],
			"name": "setFeePool",
			"outputs": [],
			"payable": false,
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [
			  {
				"internalType": "address",
				"name": "account",
				"type": "address"
			  }
			],
			"name": "balanceOf",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [
			  {
				"internalType": "address",
				"name": "account",
				"type": "address"
			  }
			],
			"name": "numVestingEntries",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [
			  {
				"internalType": "address",
				"name": "account",
				"type": "address"
			  },
			  {
				"internalType": "uint256",
				"name": "index",
				"type": "uint256"
			  }
			],
			"name": "getVestingScheduleEntry",
			"outputs": [
			  {
				"internalType": "uint256[2]",
				"name": "",
				"type": "uint256[2]"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [
			  {
				"internalType": "address",
				"name": "account",
				"type": "address"
			  },
			  {
				"internalType": "uint256",
				"name": "index",
				"type": "uint256"
			  }
			],
			"name": "getVestingTime",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [
			  {
				"internalType": "address",
				"name": "account",
				"type": "address"
			  },
			  {
				"internalType": "uint256",
				"name": "index",
				"type": "uint256"
			  }
			],
			"name": "getVestingQuantity",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [
			  {
				"internalType": "address",
				"name": "account",
				"type": "address"
			  }
			],
			"name": "getNextVestingIndex",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [
			  {
				"internalType": "address",
				"name": "account",
				"type": "address"
			  }
			],
			"name": "getNextVestingEntry",
			"outputs": [
			  {
				"internalType": "uint256[2]",
				"name": "",
				"type": "uint256[2]"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [
			  {
				"internalType": "address",
				"name": "account",
				"type": "address"
			  }
			],
			"name": "getNextVestingTime",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [
			  {
				"internalType": "address",
				"name": "account",
				"type": "address"
			  }
			],
			"name": "getNextVestingQuantity",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [
			  {
				"internalType": "address",
				"name": "account",
				"type": "address"
			  }
			],
			"name": "checkAccountSchedule",
			"outputs": [
			  {
				"internalType": "uint256[520]",
				"name": "",
				"type": "uint256[520]"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": false,
			"inputs": [
			  {
				"internalType": "address",
				"name": "account",
				"type": "address"
			  },
			  {
				"internalType": "uint256",
				"name": "quantity",
				"type": "uint256"
			  }
			],
			"name": "appendVestingEntry",
			"outputs": [],
			"payable": false,
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"constant": false,
			"inputs": [],
			"name": "vest",
			"outputs": [],
			"payable": false,
			"stateMutability": "nonpayable",
			"type": "function"
		  }
		]
	  },
	  "RewardEscrowV2": {
		"abi": [
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "_owner",
				"type": "address"
			  },
			  {
				"internalType": "address",
				"name": "_resolver",
				"type": "address"
			  },
			  {
				"internalType": "address",
				"name": "_synthToken",
				"type": "address"
			  }
			],
			"stateMutability": "nonpayable",
			"type": "constructor"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": true,
				"internalType": "address",
				"name": "account",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "uint256[]",
				"name": "entryIDs",
				"type": "uint256[]"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "escrowedAmountMigrated",
				"type": "uint256"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "time",
				"type": "uint256"
			  }
			],
			"name": "BurnedForMigrationToL2",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "bytes32",
				"name": "name",
				"type": "bytes32"
			  },
			  {
				"indexed": false,
				"internalType": "address",
				"name": "destination",
				"type": "address"
			  }
			],
			"name": "CacheUpdated",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": true,
				"internalType": "address",
				"name": "account",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "entryID",
				"type": "uint256"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "escrowAmount",
				"type": "uint256"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "endTime",
				"type": "uint256"
			  }
			],
			"name": "ImportedVestingEntry",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": true,
				"internalType": "address",
				"name": "account",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "time",
				"type": "uint256"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "escrowAmount",
				"type": "uint256"
			  }
			],
			"name": "ImportedVestingSchedule",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "newDuration",
				"type": "uint256"
			  }
			],
			"name": "MaxEscrowDurationUpdated",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": true,
				"internalType": "address",
				"name": "account",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "escrowedAmount",
				"type": "uint256"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "vestedAmount",
				"type": "uint256"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "time",
				"type": "uint256"
			  }
			],
			"name": "MigratedAccountEscrow",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "address",
				"name": "oldOwner",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "address",
				"name": "newOwner",
				"type": "address"
			  }
			],
			"name": "OwnerChanged",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "address",
				"name": "newOwner",
				"type": "address"
			  }
			],
			"name": "OwnerNominated",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": true,
				"internalType": "address",
				"name": "beneficiary",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "time",
				"type": "uint256"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "value",
				"type": "uint256"
			  }
			],
			"name": "Vested",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": true,
				"internalType": "address",
				"name": "beneficiary",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "time",
				"type": "uint256"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "value",
				"type": "uint256"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "duration",
				"type": "uint256"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "entryID",
				"type": "uint256"
			  }
			],
			"name": "VestingEntryCreated",
			"type": "event"
		  },
		  {
			"inputs": [],
			"name": "acceptOwnership",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  },
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"name": "accountVestingEntryIDs",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "_to",
				"type": "address"
			  },
			  {
				"internalType": "uint256",
				"name": "_amount",
				"type": "uint256"
			  }
			],
			"name": "adminWithdrawSynth",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "account",
				"type": "address"
			  },
			  {
				"internalType": "uint256",
				"name": "quantity",
				"type": "uint256"
			  },
			  {
				"internalType": "uint256",
				"name": "duration",
				"type": "uint256"
			  }
			],
			"name": "appendVestingEntry",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "account",
				"type": "address"
			  }
			],
			"name": "balanceOf",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "account",
				"type": "address"
			  }
			],
			"name": "balanceOfInUSDC",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "beneficiary",
				"type": "address"
			  },
			  {
				"internalType": "uint256",
				"name": "deposit",
				"type": "uint256"
			  },
			  {
				"internalType": "uint256",
				"name": "duration",
				"type": "uint256"
			  }
			],
			"name": "createEscrowEntry",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "account",
				"type": "address"
			  },
			  {
				"internalType": "uint256",
				"name": "index",
				"type": "uint256"
			  },
			  {
				"internalType": "uint256",
				"name": "pageSize",
				"type": "uint256"
			  }
			],
			"name": "getAccountVestingEntryIDs",
			"outputs": [
			  {
				"internalType": "uint256[]",
				"name": "",
				"type": "uint256[]"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "account",
				"type": "address"
			  },
			  {
				"internalType": "uint256",
				"name": "entryID",
				"type": "uint256"
			  }
			],
			"name": "getVestingEntry",
			"outputs": [
			  {
				"internalType": "uint64",
				"name": "endTime",
				"type": "uint64"
			  },
			  {
				"internalType": "uint256",
				"name": "escrowAmount",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "account",
				"type": "address"
			  },
			  {
				"internalType": "uint256",
				"name": "entryID",
				"type": "uint256"
			  }
			],
			"name": "getVestingEntryClaimable",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "account",
				"type": "address"
			  },
			  {
				"internalType": "uint256[]",
				"name": "entryIDs",
				"type": "uint256[]"
			  }
			],
			"name": "getVestingQuantity",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "total",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "account",
				"type": "address"
			  },
			  {
				"internalType": "uint256",
				"name": "index",
				"type": "uint256"
			  },
			  {
				"internalType": "uint256",
				"name": "pageSize",
				"type": "uint256"
			  }
			],
			"name": "getVestingSchedules",
			"outputs": [
			  {
				"components": [
				  {
					"internalType": "uint64",
					"name": "endTime",
					"type": "uint64"
				  },
				  {
					"internalType": "uint256",
					"name": "escrowAmount",
					"type": "uint256"
				  },
				  {
					"internalType": "uint256",
					"name": "entryID",
					"type": "uint256"
				  }
				],
				"internalType": "struct VestingEntries.VestingEntryWithID[]",
				"name": "",
				"type": "tuple[]"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address[]",
				"name": "accounts",
				"type": "address[]"
			  },
			  {
				"internalType": "uint256[]",
				"name": "escrowAmounts",
				"type": "uint256[]"
			  }
			],
			"name": "importVestingSchedule",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "isResolverCached",
			"outputs": [
			  {
				"internalType": "bool",
				"name": "",
				"type": "bool"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "max_duration",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "nextEntryId",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "_owner",
				"type": "address"
			  }
			],
			"name": "nominateNewOwner",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "nominatedOwner",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"name": "nominatedReceiver",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "account",
				"type": "address"
			  }
			],
			"name": "numVestingEntries",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "owner",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "rebuildCache",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "resolver",
			"outputs": [
			  {
				"internalType": "contract AddressResolver",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "resolverAddressesRequired",
			"outputs": [
			  {
				"internalType": "bytes32[]",
				"name": "addresses",
				"type": "bytes32[]"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "uint256",
				"name": "duration",
				"type": "uint256"
			  }
			],
			"name": "setMaxEscrowDuration",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "_synthToken",
				"type": "address"
			  }
			],
			"name": "setSynthToken",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "setupExpiryTime",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "synthToken",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"name": "totalBalancePendingMigration",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"name": "totalEscrowedAccountBalance",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "totalEscrowedBalance",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"name": "totalVestedAccountBalance",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "uint256[]",
				"name": "entryIDs",
				"type": "uint256[]"
			  }
			],
			"name": "vest",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  },
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"name": "vestingSchedules",
			"outputs": [
			  {
				"internalType": "uint64",
				"name": "endTime",
				"type": "uint64"
			  },
			  {
				"internalType": "uint256",
				"name": "escrowAmount",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"stateMutability": "payable",
			"type": "receive"
		  }
		]
	  },
	  "SynthetixEscrow": {
		"abi": [
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "_owner",
				"type": "address"
			  },
			  {
				"internalType": "contract ISynthetix",
				"name": "_synthetix",
				"type": "address"
			  }
			],
			"payable": false,
			"stateMutability": "nonpayable",
			"type": "constructor"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "address",
				"name": "oldOwner",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "address",
				"name": "newOwner",
				"type": "address"
			  }
			],
			"name": "OwnerChanged",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "address",
				"name": "newOwner",
				"type": "address"
			  }
			],
			"name": "OwnerNominated",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "address",
				"name": "newSynthetix",
				"type": "address"
			  }
			],
			"name": "SynthetixUpdated",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": true,
				"internalType": "address",
				"name": "beneficiary",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "time",
				"type": "uint256"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "value",
				"type": "uint256"
			  }
			],
			"name": "Vested",
			"type": "event"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "MAX_VESTING_ENTRIES",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "QUANTITY_INDEX",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "TIME_INDEX",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": false,
			"inputs": [],
			"name": "acceptOwnership",
			"outputs": [],
			"payable": false,
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"constant": false,
			"inputs": [
			  {
				"internalType": "address",
				"name": "_owner",
				"type": "address"
			  }
			],
			"name": "nominateNewOwner",
			"outputs": [],
			"payable": false,
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "nominatedOwner",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "owner",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "setupExpiryTime",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "synthetix",
			"outputs": [
			  {
				"internalType": "contract ISynthetix",
				"name": "",
				"type": "address"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"name": "totalVestedAccountBalance",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "totalVestedBalance",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  },
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  },
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"name": "vestingSchedules",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": false,
			"inputs": [
			  {
				"internalType": "contract ISynthetix",
				"name": "_synthetix",
				"type": "address"
			  }
			],
			"name": "setSynthetix",
			"outputs": [],
			"payable": false,
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [
			  {
				"internalType": "address",
				"name": "account",
				"type": "address"
			  }
			],
			"name": "balanceOf",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [
			  {
				"internalType": "address",
				"name": "account",
				"type": "address"
			  }
			],
			"name": "numVestingEntries",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [
			  {
				"internalType": "address",
				"name": "account",
				"type": "address"
			  },
			  {
				"internalType": "uint256",
				"name": "index",
				"type": "uint256"
			  }
			],
			"name": "getVestingScheduleEntry",
			"outputs": [
			  {
				"internalType": "uint256[2]",
				"name": "",
				"type": "uint256[2]"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [
			  {
				"internalType": "address",
				"name": "account",
				"type": "address"
			  },
			  {
				"internalType": "uint256",
				"name": "index",
				"type": "uint256"
			  }
			],
			"name": "getVestingTime",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [
			  {
				"internalType": "address",
				"name": "account",
				"type": "address"
			  },
			  {
				"internalType": "uint256",
				"name": "index",
				"type": "uint256"
			  }
			],
			"name": "getVestingQuantity",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [
			  {
				"internalType": "address",
				"name": "account",
				"type": "address"
			  }
			],
			"name": "getNextVestingIndex",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [
			  {
				"internalType": "address",
				"name": "account",
				"type": "address"
			  }
			],
			"name": "getNextVestingEntry",
			"outputs": [
			  {
				"internalType": "uint256[2]",
				"name": "",
				"type": "uint256[2]"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [
			  {
				"internalType": "address",
				"name": "account",
				"type": "address"
			  }
			],
			"name": "getNextVestingTime",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [
			  {
				"internalType": "address",
				"name": "account",
				"type": "address"
			  }
			],
			"name": "getNextVestingQuantity",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": false,
			"inputs": [
			  {
				"internalType": "address",
				"name": "account",
				"type": "address"
			  }
			],
			"name": "purgeAccount",
			"outputs": [],
			"payable": false,
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"constant": false,
			"inputs": [
			  {
				"internalType": "address",
				"name": "account",
				"type": "address"
			  },
			  {
				"internalType": "uint256",
				"name": "time",
				"type": "uint256"
			  },
			  {
				"internalType": "uint256",
				"name": "quantity",
				"type": "uint256"
			  }
			],
			"name": "appendVestingEntry",
			"outputs": [],
			"payable": false,
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"constant": false,
			"inputs": [
			  {
				"internalType": "address",
				"name": "account",
				"type": "address"
			  },
			  {
				"internalType": "uint256[]",
				"name": "times",
				"type": "uint256[]"
			  },
			  {
				"internalType": "uint256[]",
				"name": "quantities",
				"type": "uint256[]"
			  }
			],
			"name": "addVestingSchedule",
			"outputs": [],
			"payable": false,
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"constant": false,
			"inputs": [],
			"name": "vest",
			"outputs": [],
			"payable": false,
			"stateMutability": "nonpayable",
			"type": "function"
		  }
		]
	  },
	  "SynthetixState": {
		"abi": [
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "_owner",
				"type": "address"
			  },
			  {
				"internalType": "address",
				"name": "_associatedContract",
				"type": "address"
			  }
			],
			"payable": false,
			"stateMutability": "nonpayable",
			"type": "constructor"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "address",
				"name": "associatedContract",
				"type": "address"
			  }
			],
			"name": "AssociatedContractUpdated",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "address",
				"name": "oldOwner",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "address",
				"name": "newOwner",
				"type": "address"
			  }
			],
			"name": "OwnerChanged",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "address",
				"name": "newOwner",
				"type": "address"
			  }
			],
			"name": "OwnerNominated",
			"type": "event"
		  },
		  {
			"constant": false,
			"inputs": [],
			"name": "acceptOwnership",
			"outputs": [],
			"payable": false,
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"constant": false,
			"inputs": [
			  {
				"internalType": "uint256",
				"name": "value",
				"type": "uint256"
			  }
			],
			"name": "appendDebtLedgerValue",
			"outputs": [],
			"payable": false,
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "associatedContract",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": false,
			"inputs": [
			  {
				"internalType": "address",
				"name": "account",
				"type": "address"
			  }
			],
			"name": "clearIssuanceData",
			"outputs": [],
			"payable": false,
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"name": "debtLedger",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "debtLedgerLength",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": false,
			"inputs": [],
			"name": "decrementTotalIssuerCount",
			"outputs": [],
			"payable": false,
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [
			  {
				"internalType": "address",
				"name": "account",
				"type": "address"
			  }
			],
			"name": "hasIssued",
			"outputs": [
			  {
				"internalType": "bool",
				"name": "",
				"type": "bool"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": false,
			"inputs": [],
			"name": "incrementTotalIssuerCount",
			"outputs": [],
			"payable": false,
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"name": "issuanceData",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "initialDebtOwnership",
				"type": "uint256"
			  },
			  {
				"internalType": "uint256",
				"name": "debtEntryIndex",
				"type": "uint256"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "lastDebtLedgerEntry",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": false,
			"inputs": [
			  {
				"internalType": "address",
				"name": "_owner",
				"type": "address"
			  }
			],
			"name": "nominateNewOwner",
			"outputs": [],
			"payable": false,
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "nominatedOwner",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "owner",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": false,
			"inputs": [
			  {
				"internalType": "address",
				"name": "_associatedContract",
				"type": "address"
			  }
			],
			"name": "setAssociatedContract",
			"outputs": [],
			"payable": false,
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"constant": false,
			"inputs": [
			  {
				"internalType": "address",
				"name": "account",
				"type": "address"
			  },
			  {
				"internalType": "uint256",
				"name": "initialDebtOwnership",
				"type": "uint256"
			  }
			],
			"name": "setCurrentIssuanceData",
			"outputs": [],
			"payable": false,
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "totalIssuerCount",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  }
		]
	  },
	  "SynthetixDebtShare": {
		"abi": [
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "_owner",
				"type": "address"
			  },
			  {
				"internalType": "address",
				"name": "_resolver",
				"type": "address"
			  }
			],
			"stateMutability": "nonpayable",
			"type": "constructor"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": true,
				"internalType": "address",
				"name": "account",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "amount",
				"type": "uint256"
			  }
			],
			"name": "Burn",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "bytes32",
				"name": "name",
				"type": "bytes32"
			  },
			  {
				"indexed": false,
				"internalType": "address",
				"name": "destination",
				"type": "address"
			  }
			],
			"name": "CacheUpdated",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": true,
				"internalType": "address",
				"name": "authorizedToSnapshot",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "bool",
				"name": "authorized",
				"type": "bool"
			  }
			],
			"name": "ChangeAuthorizedToSnapshot",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": true,
				"internalType": "address",
				"name": "account",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "amount",
				"type": "uint256"
			  }
			],
			"name": "Mint",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "address",
				"name": "oldOwner",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "address",
				"name": "newOwner",
				"type": "address"
			  }
			],
			"name": "OwnerChanged",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "address",
				"name": "newOwner",
				"type": "address"
			  }
			],
			"name": "OwnerNominated",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": true,
				"internalType": "address",
				"name": "from",
				"type": "address"
			  },
			  {
				"indexed": true,
				"internalType": "address",
				"name": "to",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "value",
				"type": "uint256"
			  }
			],
			"name": "Transfer",
			"type": "event"
		  },
		  {
			"inputs": [],
			"name": "CONTRACT_NAME",
			"outputs": [
			  {
				"internalType": "bytes32",
				"name": "",
				"type": "bytes32"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "acceptOwnership",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "target",
				"type": "address"
			  }
			],
			"name": "addAuthorizedToSnapshot",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"name": "authorizedToSnapshot",
			"outputs": [
			  {
				"internalType": "bool",
				"name": "",
				"type": "bool"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "account",
				"type": "address"
			  }
			],
			"name": "balanceOf",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "account",
				"type": "address"
			  },
			  {
				"internalType": "uint256",
				"name": "periodId",
				"type": "uint256"
			  }
			],
			"name": "balanceOfOnPeriod",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  },
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"name": "balances",
			"outputs": [
			  {
				"internalType": "uint128",
				"name": "amount",
				"type": "uint128"
			  },
			  {
				"internalType": "uint128",
				"name": "periodId",
				"type": "uint128"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "account",
				"type": "address"
			  },
			  {
				"internalType": "uint256",
				"name": "amount",
				"type": "uint256"
			  }
			],
			"name": "burnShare",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "currentPeriodId",
			"outputs": [
			  {
				"internalType": "uint128",
				"name": "",
				"type": "uint128"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "debtRatio",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "decimals",
			"outputs": [
			  {
				"internalType": "uint8",
				"name": "",
				"type": "uint8"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "isResolverCached",
			"outputs": [
			  {
				"internalType": "bool",
				"name": "",
				"type": "bool"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "account",
				"type": "address"
			  },
			  {
				"internalType": "uint256",
				"name": "amount",
				"type": "uint256"
			  }
			],
			"name": "mintShare",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "name",
			"outputs": [
			  {
				"internalType": "string",
				"name": "",
				"type": "string"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "_owner",
				"type": "address"
			  }
			],
			"name": "nominateNewOwner",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "nominatedOwner",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "owner",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "rebuildCache",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "target",
				"type": "address"
			  }
			],
			"name": "removeAuthorizedToSnapshot",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "resolver",
			"outputs": [
			  {
				"internalType": "contract AddressResolver",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "resolverAddressesRequired",
			"outputs": [
			  {
				"internalType": "bytes32[]",
				"name": "addresses",
				"type": "bytes32[]"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "account",
				"type": "address"
			  }
			],
			"name": "sharePercent",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "account",
				"type": "address"
			  },
			  {
				"internalType": "uint256",
				"name": "periodId",
				"type": "uint256"
			  }
			],
			"name": "sharePercentOnPeriod",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "symbol",
			"outputs": [
			  {
				"internalType": "string",
				"name": "",
				"type": "string"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "uint128",
				"name": "id",
				"type": "uint128"
			  }
			],
			"name": "takeSnapshot",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "totalSupply",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"name": "totalSupplyOnPeriod",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  }
		]
	  },
	  "Proxy": {
		"abi": [
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "_owner",
				"type": "address"
			  }
			],
			"stateMutability": "nonpayable",
			"type": "constructor"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "address",
				"name": "oldOwner",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "address",
				"name": "newOwner",
				"type": "address"
			  }
			],
			"name": "OwnerChanged",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "address",
				"name": "newOwner",
				"type": "address"
			  }
			],
			"name": "OwnerNominated",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "contract Proxyable",
				"name": "newTarget",
				"type": "address"
			  }
			],
			"name": "TargetUpdated",
			"type": "event"
		  },
		  {
			"stateMutability": "payable",
			"type": "fallback"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes",
				"name": "callData",
				"type": "bytes"
			  },
			  {
				"internalType": "uint256",
				"name": "numTopics",
				"type": "uint256"
			  },
			  {
				"internalType": "bytes32",
				"name": "topic1",
				"type": "bytes32"
			  },
			  {
				"internalType": "bytes32",
				"name": "topic2",
				"type": "bytes32"
			  },
			  {
				"internalType": "bytes32",
				"name": "topic3",
				"type": "bytes32"
			  },
			  {
				"internalType": "bytes32",
				"name": "topic4",
				"type": "bytes32"
			  }
			],
			"name": "_emit",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "acceptOwnership",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "_owner",
				"type": "address"
			  }
			],
			"name": "nominateNewOwner",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "nominatedOwner",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "owner",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "contract Proxyable",
				"name": "_target",
				"type": "address"
			  }
			],
			"name": "setTarget",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "target",
			"outputs": [
			  {
				"internalType": "contract Proxyable",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  }
		]
	  },
	  "EternalStorage": {
		"abi": [
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "_owner",
				"type": "address"
			  },
			  {
				"internalType": "address",
				"name": "_associatedContract",
				"type": "address"
			  }
			],
			"stateMutability": "nonpayable",
			"type": "constructor"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "address",
				"name": "associatedContract",
				"type": "address"
			  }
			],
			"name": "AssociatedContractUpdated",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "address",
				"name": "oldOwner",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "address",
				"name": "newOwner",
				"type": "address"
			  }
			],
			"name": "OwnerChanged",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "address",
				"name": "newOwner",
				"type": "address"
			  }
			],
			"name": "OwnerNominated",
			"type": "event"
		  },
		  {
			"inputs": [],
			"name": "acceptOwnership",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "associatedContract",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "record",
				"type": "bytes32"
			  }
			],
			"name": "deleteAddressValue",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "record",
				"type": "bytes32"
			  }
			],
			"name": "deleteBooleanValue",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "record",
				"type": "bytes32"
			  }
			],
			"name": "deleteBytes32Value",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "record",
				"type": "bytes32"
			  }
			],
			"name": "deleteBytesValue",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "record",
				"type": "bytes32"
			  }
			],
			"name": "deleteIntValue",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "record",
				"type": "bytes32"
			  }
			],
			"name": "deleteStringValue",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "record",
				"type": "bytes32"
			  }
			],
			"name": "deleteUIntValue",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "record",
				"type": "bytes32"
			  }
			],
			"name": "getAddressValue",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "record",
				"type": "bytes32"
			  }
			],
			"name": "getBooleanValue",
			"outputs": [
			  {
				"internalType": "bool",
				"name": "",
				"type": "bool"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "record",
				"type": "bytes32"
			  }
			],
			"name": "getBytes32Value",
			"outputs": [
			  {
				"internalType": "bytes32",
				"name": "",
				"type": "bytes32"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "record",
				"type": "bytes32"
			  }
			],
			"name": "getBytesValue",
			"outputs": [
			  {
				"internalType": "bytes",
				"name": "",
				"type": "bytes"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "record",
				"type": "bytes32"
			  }
			],
			"name": "getIntValue",
			"outputs": [
			  {
				"internalType": "int256",
				"name": "",
				"type": "int256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "record",
				"type": "bytes32"
			  }
			],
			"name": "getStringValue",
			"outputs": [
			  {
				"internalType": "string",
				"name": "",
				"type": "string"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "record",
				"type": "bytes32"
			  }
			],
			"name": "getUIntValue",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "_owner",
				"type": "address"
			  }
			],
			"name": "nominateNewOwner",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "nominatedOwner",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "owner",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "record",
				"type": "bytes32"
			  },
			  {
				"internalType": "address",
				"name": "value",
				"type": "address"
			  }
			],
			"name": "setAddressValue",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "_associatedContract",
				"type": "address"
			  }
			],
			"name": "setAssociatedContract",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "record",
				"type": "bytes32"
			  },
			  {
				"internalType": "bool",
				"name": "value",
				"type": "bool"
			  }
			],
			"name": "setBooleanValue",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "record",
				"type": "bytes32"
			  },
			  {
				"internalType": "bytes32",
				"name": "value",
				"type": "bytes32"
			  }
			],
			"name": "setBytes32Value",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "record",
				"type": "bytes32"
			  },
			  {
				"internalType": "bytes",
				"name": "value",
				"type": "bytes"
			  }
			],
			"name": "setBytesValue",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "record",
				"type": "bytes32"
			  },
			  {
				"internalType": "int256",
				"name": "value",
				"type": "int256"
			  }
			],
			"name": "setIntValue",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "record",
				"type": "bytes32"
			  },
			  {
				"internalType": "string",
				"name": "value",
				"type": "string"
			  }
			],
			"name": "setStringValue",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "record",
				"type": "bytes32"
			  },
			  {
				"internalType": "uint256",
				"name": "value",
				"type": "uint256"
			  }
			],
			"name": "setUIntValue",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  }
		]
	  },
	  "DelegateApprovals": {
		"abi": [
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "_owner",
				"type": "address"
			  },
			  {
				"internalType": "contract EternalStorage",
				"name": "_eternalStorage",
				"type": "address"
			  }
			],
			"stateMutability": "nonpayable",
			"type": "constructor"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": true,
				"internalType": "address",
				"name": "authoriser",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "address",
				"name": "delegate",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "bytes32",
				"name": "action",
				"type": "bytes32"
			  }
			],
			"name": "Approval",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "address",
				"name": "newEternalStorage",
				"type": "address"
			  }
			],
			"name": "EternalStorageUpdated",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "address",
				"name": "oldOwner",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "address",
				"name": "newOwner",
				"type": "address"
			  }
			],
			"name": "OwnerChanged",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "address",
				"name": "newOwner",
				"type": "address"
			  }
			],
			"name": "OwnerNominated",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": true,
				"internalType": "address",
				"name": "authoriser",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "address",
				"name": "delegate",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "bytes32",
				"name": "action",
				"type": "bytes32"
			  }
			],
			"name": "WithdrawApproval",
			"type": "event"
		  },
		  {
			"inputs": [],
			"name": "APPROVE_ALL",
			"outputs": [
			  {
				"internalType": "bytes32",
				"name": "",
				"type": "bytes32"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "BURN_FOR_ADDRESS",
			"outputs": [
			  {
				"internalType": "bytes32",
				"name": "",
				"type": "bytes32"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "CLAIM_FOR_ADDRESS",
			"outputs": [
			  {
				"internalType": "bytes32",
				"name": "",
				"type": "bytes32"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "EXCHANGE_FOR_ADDRESS",
			"outputs": [
			  {
				"internalType": "bytes32",
				"name": "",
				"type": "bytes32"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "ISSUE_FOR_ADDRESS",
			"outputs": [
			  {
				"internalType": "bytes32",
				"name": "",
				"type": "bytes32"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "acceptOwnership",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "delegate",
				"type": "address"
			  }
			],
			"name": "approveAllDelegatePowers",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "delegate",
				"type": "address"
			  }
			],
			"name": "approveBurnOnBehalf",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "delegate",
				"type": "address"
			  }
			],
			"name": "approveClaimOnBehalf",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "delegate",
				"type": "address"
			  }
			],
			"name": "approveExchangeOnBehalf",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "delegate",
				"type": "address"
			  }
			],
			"name": "approveIssueOnBehalf",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "authoriser",
				"type": "address"
			  },
			  {
				"internalType": "address",
				"name": "delegate",
				"type": "address"
			  }
			],
			"name": "approvedAll",
			"outputs": [
			  {
				"internalType": "bool",
				"name": "",
				"type": "bool"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "authoriser",
				"type": "address"
			  },
			  {
				"internalType": "address",
				"name": "delegate",
				"type": "address"
			  }
			],
			"name": "canBurnFor",
			"outputs": [
			  {
				"internalType": "bool",
				"name": "",
				"type": "bool"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "authoriser",
				"type": "address"
			  },
			  {
				"internalType": "address",
				"name": "delegate",
				"type": "address"
			  }
			],
			"name": "canClaimFor",
			"outputs": [
			  {
				"internalType": "bool",
				"name": "",
				"type": "bool"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "authoriser",
				"type": "address"
			  },
			  {
				"internalType": "address",
				"name": "delegate",
				"type": "address"
			  }
			],
			"name": "canExchangeFor",
			"outputs": [
			  {
				"internalType": "bool",
				"name": "",
				"type": "bool"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "authoriser",
				"type": "address"
			  },
			  {
				"internalType": "address",
				"name": "delegate",
				"type": "address"
			  }
			],
			"name": "canIssueFor",
			"outputs": [
			  {
				"internalType": "bool",
				"name": "",
				"type": "bool"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "eternalStorage",
			"outputs": [
			  {
				"internalType": "contract EternalStorage",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "_owner",
				"type": "address"
			  }
			],
			"name": "nominateNewOwner",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "nominatedOwner",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "owner",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "delegate",
				"type": "address"
			  }
			],
			"name": "removeAllDelegatePowers",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "delegate",
				"type": "address"
			  }
			],
			"name": "removeBurnOnBehalf",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "delegate",
				"type": "address"
			  }
			],
			"name": "removeClaimOnBehalf",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "delegate",
				"type": "address"
			  }
			],
			"name": "removeExchangeOnBehalf",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "delegate",
				"type": "address"
			  }
			],
			"name": "removeIssueOnBehalf",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "contract EternalStorage",
				"name": "_eternalStorage",
				"type": "address"
			  }
			],
			"name": "setEternalStorage",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  }
		]
	  },
	  "Liquidator": {
		"abi": [
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "_owner",
				"type": "address"
			  },
			  {
				"internalType": "address",
				"name": "_resolver",
				"type": "address"
			  }
			],
			"stateMutability": "nonpayable",
			"type": "constructor"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": true,
				"internalType": "address",
				"name": "account",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "deadline",
				"type": "uint256"
			  }
			],
			"name": "AccountFlaggedForLiquidation",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": true,
				"internalType": "address",
				"name": "account",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "time",
				"type": "uint256"
			  }
			],
			"name": "AccountRemovedFromLiquidation",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "bytes32",
				"name": "name",
				"type": "bytes32"
			  },
			  {
				"indexed": false,
				"internalType": "address",
				"name": "destination",
				"type": "address"
			  }
			],
			"name": "CacheUpdated",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "address",
				"name": "oldOwner",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "address",
				"name": "newOwner",
				"type": "address"
			  }
			],
			"name": "OwnerChanged",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "address",
				"name": "newOwner",
				"type": "address"
			  }
			],
			"name": "OwnerNominated",
			"type": "event"
		  },
		  {
			"inputs": [],
			"name": "CONTRACT_NAME",
			"outputs": [
			  {
				"internalType": "bytes32",
				"name": "",
				"type": "bytes32"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "LIQUIDATION_CALLER",
			"outputs": [
			  {
				"internalType": "bytes32",
				"name": "",
				"type": "bytes32"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "LIQUIDATION_DEADLINE",
			"outputs": [
			  {
				"internalType": "bytes32",
				"name": "",
				"type": "bytes32"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "acceptOwnership",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "uint256",
				"name": "debtBalance",
				"type": "uint256"
			  },
			  {
				"internalType": "uint256",
				"name": "collateral",
				"type": "uint256"
			  },
			  {
				"internalType": "uint256",
				"name": "penalty",
				"type": "uint256"
			  }
			],
			"name": "calculateAmountToFixCollateral",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "account",
				"type": "address"
			  }
			],
			"name": "checkAndRemoveAccountInLiquidation",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "account",
				"type": "address"
			  }
			],
			"name": "flagAccountForLiquidation",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "flagReward",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "account",
				"type": "address"
			  }
			],
			"name": "getLiquidationCallerForAccount",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "account",
				"type": "address"
			  }
			],
			"name": "getLiquidationDeadlineForAccount",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "account",
				"type": "address"
			  }
			],
			"name": "isLiquidationDeadlinePassed",
			"outputs": [
			  {
				"internalType": "bool",
				"name": "",
				"type": "bool"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "account",
				"type": "address"
			  },
			  {
				"internalType": "bool",
				"name": "isSelfLiquidation",
				"type": "bool"
			  }
			],
			"name": "isLiquidationOpen",
			"outputs": [
			  {
				"internalType": "bool",
				"name": "",
				"type": "bool"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "isResolverCached",
			"outputs": [
			  {
				"internalType": "bool",
				"name": "",
				"type": "bool"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "issuanceRatio",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "liquidateReward",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "liquidationCollateralRatio",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "liquidationDelay",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "liquidationEscrowDuration",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "liquidationPenalty",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "liquidationRatio",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "_owner",
				"type": "address"
			  }
			],
			"name": "nominateNewOwner",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "nominatedOwner",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "owner",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "rebuildCache",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "account",
				"type": "address"
			  }
			],
			"name": "removeAccountInLiquidation",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "resolver",
			"outputs": [
			  {
				"internalType": "contract AddressResolver",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "resolverAddressesRequired",
			"outputs": [
			  {
				"internalType": "bytes32[]",
				"name": "addresses",
				"type": "bytes32[]"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "selfLiquidationPenalty",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  }
		]
	  },
	  "LiquidatorRewards": {
		"abi": [
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "_owner",
				"type": "address"
			  },
			  {
				"internalType": "address",
				"name": "_resolver",
				"type": "address"
			  },
			  {
				"internalType": "address",
				"name": "_synthToken",
				"type": "address"
			  }
			],
			"stateMutability": "nonpayable",
			"type": "constructor"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "bytes32",
				"name": "name",
				"type": "bytes32"
			  },
			  {
				"indexed": false,
				"internalType": "address",
				"name": "destination",
				"type": "address"
			  }
			],
			"name": "CacheUpdated",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "address",
				"name": "oldOwner",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "address",
				"name": "newOwner",
				"type": "address"
			  }
			],
			"name": "OwnerChanged",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "address",
				"name": "newOwner",
				"type": "address"
			  }
			],
			"name": "OwnerNominated",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": true,
				"internalType": "address",
				"name": "user",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "reward",
				"type": "uint256"
			  }
			],
			"name": "RewardPaid",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": true,
				"internalType": "address",
				"name": "_to",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "_amount",
				"type": "uint256"
			  },
			  {
				"indexed": false,
				"internalType": "bytes32",
				"name": "_collateralKey",
				"type": "bytes32"
			  }
			],
			"name": "TransferForRestritution",
			"type": "event"
		  },
		  {
			"inputs": [],
			"name": "CONTRACT_NAME",
			"outputs": [
			  {
				"internalType": "bytes32",
				"name": "",
				"type": "bytes32"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "acceptOwnership",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "accumulatedRewardsPerShare",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "_to",
				"type": "address"
			  },
			  {
				"internalType": "uint256",
				"name": "_amount",
				"type": "uint256"
			  }
			],
			"name": "adminWithdrawSynth",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "collateralKey",
			"outputs": [
			  {
				"internalType": "bytes32",
				"name": "",
				"type": "bytes32"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "account",
				"type": "address"
			  }
			],
			"name": "earned",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "account",
				"type": "address"
			  }
			],
			"name": "earnedInUSDC",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"name": "entries",
			"outputs": [
			  {
				"internalType": "uint128",
				"name": "claimable",
				"type": "uint128"
			  },
			  {
				"internalType": "uint128",
				"name": "entryAccumulatedRewards",
				"type": "uint128"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "account",
				"type": "address"
			  },
			  {
				"internalType": "uint256",
				"name": "fixClaimableAmount",
				"type": "uint256"
			  },
			  {
				"internalType": "uint256",
				"name": "fixRewardsPerShare",
				"type": "uint256"
			  }
			],
			"name": "fixEntryAndRewardsPerShare",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "account",
				"type": "address"
			  }
			],
			"name": "getReward",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"name": "initiated",
			"outputs": [
			  {
				"internalType": "bool",
				"name": "",
				"type": "bool"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "isResolverCached",
			"outputs": [
			  {
				"internalType": "bool",
				"name": "",
				"type": "bool"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "_owner",
				"type": "address"
			  }
			],
			"name": "nominateNewOwner",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "nominatedOwner",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "uint256",
				"name": "reward",
				"type": "uint256"
			  }
			],
			"name": "notifyRewardAmount",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "owner",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "rebuildCache",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "resolver",
			"outputs": [
			  {
				"internalType": "contract AddressResolver",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "resolverAddressesRequired",
			"outputs": [
			  {
				"internalType": "bytes32[]",
				"name": "addresses",
				"type": "bytes32[]"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "_to",
				"type": "address"
			  },
			  {
				"internalType": "uint256",
				"name": "_amount",
				"type": "uint256"
			  }
			],
			"name": "rewardRestitution",
			"outputs": [
			  {
				"internalType": "bool",
				"name": "",
				"type": "bool"
			  }
			],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "_synthToken",
				"type": "address"
			  }
			],
			"name": "setSynthToken",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "synthToken",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "totalLiquidates",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "account",
				"type": "address"
			  }
			],
			"name": "updateEntry",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"stateMutability": "payable",
			"type": "receive"
		  }
		]
	  },
	  "FeePoolEternalStorage": {
		"abi": [
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "_owner",
				"type": "address"
			  },
			  {
				"internalType": "address",
				"name": "_feePool",
				"type": "address"
			  }
			],
			"stateMutability": "nonpayable",
			"type": "constructor"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "address",
				"name": "associatedContract",
				"type": "address"
			  }
			],
			"name": "AssociatedContractUpdated",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "address",
				"name": "oldOwner",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "address",
				"name": "newOwner",
				"type": "address"
			  }
			],
			"name": "OwnerChanged",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "address",
				"name": "newOwner",
				"type": "address"
			  }
			],
			"name": "OwnerNominated",
			"type": "event"
		  },
		  {
			"inputs": [],
			"name": "acceptOwnership",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "associatedContract",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "record",
				"type": "bytes32"
			  }
			],
			"name": "deleteAddressValue",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "record",
				"type": "bytes32"
			  }
			],
			"name": "deleteBooleanValue",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "record",
				"type": "bytes32"
			  }
			],
			"name": "deleteBytes32Value",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "record",
				"type": "bytes32"
			  }
			],
			"name": "deleteBytesValue",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "record",
				"type": "bytes32"
			  }
			],
			"name": "deleteIntValue",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "record",
				"type": "bytes32"
			  }
			],
			"name": "deleteStringValue",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "record",
				"type": "bytes32"
			  }
			],
			"name": "deleteUIntValue",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "record",
				"type": "bytes32"
			  }
			],
			"name": "getAddressValue",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "record",
				"type": "bytes32"
			  }
			],
			"name": "getBooleanValue",
			"outputs": [
			  {
				"internalType": "bool",
				"name": "",
				"type": "bool"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "record",
				"type": "bytes32"
			  }
			],
			"name": "getBytes32Value",
			"outputs": [
			  {
				"internalType": "bytes32",
				"name": "",
				"type": "bytes32"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "record",
				"type": "bytes32"
			  }
			],
			"name": "getBytesValue",
			"outputs": [
			  {
				"internalType": "bytes",
				"name": "",
				"type": "bytes"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "record",
				"type": "bytes32"
			  }
			],
			"name": "getIntValue",
			"outputs": [
			  {
				"internalType": "int256",
				"name": "",
				"type": "int256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "record",
				"type": "bytes32"
			  }
			],
			"name": "getStringValue",
			"outputs": [
			  {
				"internalType": "string",
				"name": "",
				"type": "string"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "record",
				"type": "bytes32"
			  }
			],
			"name": "getUIntValue",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address[]",
				"name": "accounts",
				"type": "address[]"
			  },
			  {
				"internalType": "uint256[]",
				"name": "feePeriodIDs",
				"type": "uint256[]"
			  }
			],
			"name": "importFeeWithdrawalData",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "_owner",
				"type": "address"
			  }
			],
			"name": "nominateNewOwner",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "nominatedOwner",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "owner",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "record",
				"type": "bytes32"
			  },
			  {
				"internalType": "address",
				"name": "value",
				"type": "address"
			  }
			],
			"name": "setAddressValue",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "_associatedContract",
				"type": "address"
			  }
			],
			"name": "setAssociatedContract",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "record",
				"type": "bytes32"
			  },
			  {
				"internalType": "bool",
				"name": "value",
				"type": "bool"
			  }
			],
			"name": "setBooleanValue",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "record",
				"type": "bytes32"
			  },
			  {
				"internalType": "bytes32",
				"name": "value",
				"type": "bytes32"
			  }
			],
			"name": "setBytes32Value",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "record",
				"type": "bytes32"
			  },
			  {
				"internalType": "bytes",
				"name": "value",
				"type": "bytes"
			  }
			],
			"name": "setBytesValue",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "record",
				"type": "bytes32"
			  },
			  {
				"internalType": "int256",
				"name": "value",
				"type": "int256"
			  }
			],
			"name": "setIntValue",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "record",
				"type": "bytes32"
			  },
			  {
				"internalType": "string",
				"name": "value",
				"type": "string"
			  }
			],
			"name": "setStringValue",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "record",
				"type": "bytes32"
			  },
			  {
				"internalType": "uint256",
				"name": "value",
				"type": "uint256"
			  }
			],
			"name": "setUIntValue",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "setupExpiryTime",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  }
		]
	  },
	  "FeePool": {
		"abi": [
		  {
			"inputs": [
			  {
				"internalType": "address payable",
				"name": "_proxy",
				"type": "address"
			  },
			  {
				"internalType": "address",
				"name": "_owner",
				"type": "address"
			  },
			  {
				"internalType": "address",
				"name": "_resolver",
				"type": "address"
			  }
			],
			"stateMutability": "nonpayable",
			"type": "constructor"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "bytes32",
				"name": "name",
				"type": "bytes32"
			  },
			  {
				"indexed": false,
				"internalType": "address",
				"name": "destination",
				"type": "address"
			  }
			],
			"name": "CacheUpdated",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "feePeriodId",
				"type": "uint256"
			  }
			],
			"name": "FeePeriodClosed",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "address",
				"name": "account",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "sUSDAmount",
				"type": "uint256"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "synthTokenRewards",
				"type": "uint256"
			  }
			],
			"name": "FeesClaimed",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "address",
				"name": "oldOwner",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "address",
				"name": "newOwner",
				"type": "address"
			  }
			],
			"name": "OwnerChanged",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "address",
				"name": "newOwner",
				"type": "address"
			  }
			],
			"name": "OwnerNominated",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "address",
				"name": "proxyAddress",
				"type": "address"
			  }
			],
			"name": "ProxyUpdated",
			"type": "event"
		  },
		  {
			"inputs": [],
			"name": "CONTRACT_NAME",
			"outputs": [
			  {
				"internalType": "bytes32",
				"name": "",
				"type": "bytes32"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "FEE_ADDRESS",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "FEE_PERIOD_LENGTH",
			"outputs": [
			  {
				"internalType": "uint8",
				"name": "",
				"type": "uint8"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "acceptOwnership",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "allNetworksBackedDebt",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "debt",
				"type": "uint256"
			  },
			  {
				"internalType": "uint256",
				"name": "updatedAt",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "allNetworksDebtSharesSupply",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "sharesSupply",
				"type": "uint256"
			  },
			  {
				"internalType": "uint256",
				"name": "updatedAt",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "claimFees",
			"outputs": [
			  {
				"internalType": "bool",
				"name": "",
				"type": "bool"
			  }
			],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "closeCurrentFeePeriod",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "account",
				"type": "address"
			  },
			  {
				"internalType": "uint256",
				"name": "period",
				"type": "uint256"
			  }
			],
			"name": "effectiveDebtRatioForPeriod",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "feePeriodDuration",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "account",
				"type": "address"
			  }
			],
			"name": "feesAvailable",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  },
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "account",
				"type": "address"
			  }
			],
			"name": "feesByPeriod",
			"outputs": [
			  {
				"internalType": "uint256[2][2]",
				"name": "results",
				"type": "uint256[2][2]"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "_claimingAddress",
				"type": "address"
			  }
			],
			"name": "getLastFeeWithdrawal",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "getPenaltyThresholdRatio",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "uint256",
				"name": "feePeriodIndex",
				"type": "uint256"
			  },
			  {
				"internalType": "uint256",
				"name": "feePeriodId",
				"type": "uint256"
			  },
			  {
				"internalType": "uint256",
				"name": "startTime",
				"type": "uint256"
			  },
			  {
				"internalType": "uint256",
				"name": "feesToDistribute",
				"type": "uint256"
			  },
			  {
				"internalType": "uint256",
				"name": "feesClaimed",
				"type": "uint256"
			  },
			  {
				"internalType": "uint256",
				"name": "rewardsToDistribute",
				"type": "uint256"
			  },
			  {
				"internalType": "uint256",
				"name": "rewardsClaimed",
				"type": "uint256"
			  }
			],
			"name": "importFeePeriod",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "account",
				"type": "address"
			  }
			],
			"name": "isFeesClaimable",
			"outputs": [
			  {
				"internalType": "bool",
				"name": "feesClaimable",
				"type": "bool"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "isResolverCached",
			"outputs": [
			  {
				"internalType": "bool",
				"name": "",
				"type": "bool"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "issuanceRatio",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "messageSender",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "_owner",
				"type": "address"
			  }
			],
			"name": "nominateNewOwner",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "nominatedOwner",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "owner",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "proxy",
			"outputs": [
			  {
				"internalType": "contract Proxy",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "rebuildCache",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "uint256",
				"name": "index",
				"type": "uint256"
			  }
			],
			"name": "recentFeePeriods",
			"outputs": [
			  {
				"internalType": "uint64",
				"name": "feePeriodId",
				"type": "uint64"
			  },
			  {
				"internalType": "uint64",
				"name": "unused",
				"type": "uint64"
			  },
			  {
				"internalType": "uint64",
				"name": "startTime",
				"type": "uint64"
			  },
			  {
				"internalType": "uint256",
				"name": "feesToDistribute",
				"type": "uint256"
			  },
			  {
				"internalType": "uint256",
				"name": "feesClaimed",
				"type": "uint256"
			  },
			  {
				"internalType": "uint256",
				"name": "rewardsToDistribute",
				"type": "uint256"
			  },
			  {
				"internalType": "uint256",
				"name": "rewardsClaimed",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "uint256",
				"name": "amount",
				"type": "uint256"
			  }
			],
			"name": "recordFeePaid",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "resolver",
			"outputs": [
			  {
				"internalType": "contract AddressResolver",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "resolverAddressesRequired",
			"outputs": [
			  {
				"internalType": "bytes32[]",
				"name": "addresses",
				"type": "bytes32[]"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "sender",
				"type": "address"
			  }
			],
			"name": "setMessageSender",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address payable",
				"name": "_proxy",
				"type": "address"
			  }
			],
			"name": "setProxy",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "uint256",
				"name": "amount",
				"type": "uint256"
			  }
			],
			"name": "setRewardsToDistribute",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "setupExpiryTime",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "targetThreshold",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "totalFeesAvailable",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "totalRewardsAvailable",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  }
		]
	  },
	  "FeePoolState": {
		"abi": [
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "_owner",
				"type": "address"
			  },
			  {
				"internalType": "contract IFeePool",
				"name": "_feePool",
				"type": "address"
			  }
			],
			"payable": false,
			"stateMutability": "nonpayable",
			"type": "constructor"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": true,
				"internalType": "address",
				"name": "account",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "debtRatio",
				"type": "uint256"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "feePeriodCloseIndex",
				"type": "uint256"
			  }
			],
			"name": "IssuanceDebtRatioEntry",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "address",
				"name": "oldOwner",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "address",
				"name": "newOwner",
				"type": "address"
			  }
			],
			"name": "OwnerChanged",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "address",
				"name": "newOwner",
				"type": "address"
			  }
			],
			"name": "OwnerNominated",
			"type": "event"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "FEE_PERIOD_LENGTH",
			"outputs": [
			  {
				"internalType": "uint8",
				"name": "",
				"type": "uint8"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": false,
			"inputs": [],
			"name": "acceptOwnership",
			"outputs": [],
			"payable": false,
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  },
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"name": "accountIssuanceLedger",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "debtPercentage",
				"type": "uint256"
			  },
			  {
				"internalType": "uint256",
				"name": "debtEntryIndex",
				"type": "uint256"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": false,
			"inputs": [
			  {
				"internalType": "address",
				"name": "account",
				"type": "address"
			  },
			  {
				"internalType": "uint256",
				"name": "debtRatio",
				"type": "uint256"
			  },
			  {
				"internalType": "uint256",
				"name": "debtEntryIndex",
				"type": "uint256"
			  },
			  {
				"internalType": "uint256",
				"name": "currentPeriodStartDebtIndex",
				"type": "uint256"
			  }
			],
			"name": "appendAccountIssuanceRecord",
			"outputs": [],
			"payable": false,
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [
			  {
				"internalType": "address",
				"name": "account",
				"type": "address"
			  },
			  {
				"internalType": "uint256",
				"name": "closingDebtIndex",
				"type": "uint256"
			  }
			],
			"name": "applicableIssuanceData",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  },
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "feePool",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [
			  {
				"internalType": "address",
				"name": "account",
				"type": "address"
			  },
			  {
				"internalType": "uint256",
				"name": "index",
				"type": "uint256"
			  }
			],
			"name": "getAccountsDebtEntry",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "debtPercentage",
				"type": "uint256"
			  },
			  {
				"internalType": "uint256",
				"name": "debtEntryIndex",
				"type": "uint256"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": false,
			"inputs": [
			  {
				"internalType": "address[]",
				"name": "accounts",
				"type": "address[]"
			  },
			  {
				"internalType": "uint256[]",
				"name": "ratios",
				"type": "uint256[]"
			  },
			  {
				"internalType": "uint256",
				"name": "periodToInsert",
				"type": "uint256"
			  },
			  {
				"internalType": "uint256",
				"name": "feePeriodCloseIndex",
				"type": "uint256"
			  }
			],
			"name": "importIssuerData",
			"outputs": [],
			"payable": false,
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"constant": false,
			"inputs": [
			  {
				"internalType": "address",
				"name": "_owner",
				"type": "address"
			  }
			],
			"name": "nominateNewOwner",
			"outputs": [],
			"payable": false,
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "nominatedOwner",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "owner",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": false,
			"inputs": [
			  {
				"internalType": "contract IFeePool",
				"name": "_feePool",
				"type": "address"
			  }
			],
			"name": "setFeePool",
			"outputs": [],
			"payable": false,
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "setupExpiryTime",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  }
		]
	  },
	  "RewardsDistribution": {
		"abi": [
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "_owner",
				"type": "address"
			  },
			  {
				"internalType": "address",
				"name": "_authority",
				"type": "address"
			  },
			  {
				"internalType": "address",
				"name": "_synthToken",
				"type": "address"
			  },
			  {
				"internalType": "address",
				"name": "_rewardEscrowV2",
				"type": "address"
			  },
			  {
				"internalType": "address",
				"name": "_feePoolProxy",
				"type": "address"
			  }
			],
			"stateMutability": "nonpayable",
			"type": "constructor"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "address",
				"name": "oldOwner",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "address",
				"name": "newOwner",
				"type": "address"
			  }
			],
			"name": "OwnerChanged",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "address",
				"name": "newOwner",
				"type": "address"
			  }
			],
			"name": "OwnerNominated",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "index",
				"type": "uint256"
			  },
			  {
				"indexed": false,
				"internalType": "address",
				"name": "destination",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "amount",
				"type": "uint256"
			  }
			],
			"name": "RewardDistributionAdded",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "amount",
				"type": "uint256"
			  }
			],
			"name": "RewardsDistributed",
			"type": "event"
		  },
		  {
			"inputs": [],
			"name": "acceptOwnership",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "destination",
				"type": "address"
			  },
			  {
				"internalType": "uint256",
				"name": "amount",
				"type": "uint256"
			  }
			],
			"name": "addRewardDistribution",
			"outputs": [
			  {
				"internalType": "bool",
				"name": "",
				"type": "bool"
			  }
			],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "authority",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "uint256",
				"name": "amount",
				"type": "uint256"
			  }
			],
			"name": "distributeRewards",
			"outputs": [
			  {
				"internalType": "bool",
				"name": "",
				"type": "bool"
			  }
			],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"name": "distributions",
			"outputs": [
			  {
				"internalType": "address",
				"name": "destination",
				"type": "address"
			  },
			  {
				"internalType": "uint256",
				"name": "amount",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "distributionsLength",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "uint256",
				"name": "index",
				"type": "uint256"
			  },
			  {
				"internalType": "address",
				"name": "destination",
				"type": "address"
			  },
			  {
				"internalType": "uint256",
				"name": "amount",
				"type": "uint256"
			  }
			],
			"name": "editRewardDistribution",
			"outputs": [
			  {
				"internalType": "bool",
				"name": "",
				"type": "bool"
			  }
			],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "feePoolProxy",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "_owner",
				"type": "address"
			  }
			],
			"name": "nominateNewOwner",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "nominatedOwner",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "owner",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "uint256",
				"name": "index",
				"type": "uint256"
			  }
			],
			"name": "removeRewardDistribution",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "rewardEscrowV2",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "_authority",
				"type": "address"
			  }
			],
			"name": "setAuthority",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "_feePoolProxy",
				"type": "address"
			  }
			],
			"name": "setFeePoolProxy",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "_rewardEscrowV2",
				"type": "address"
			  }
			],
			"name": "setRewardEscrowV2",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "_synthToken",
				"type": "address"
			  }
			],
			"name": "setSynthToken",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "synthToken",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  }
		]
	  },
	  "LegacyTokenState": {
		"abi": [
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "_owner",
				"type": "address"
			  },
			  {
				"internalType": "address",
				"name": "_associatedContract",
				"type": "address"
			  }
			],
			"payable": false,
			"stateMutability": "nonpayable",
			"type": "constructor"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "address",
				"name": "_associatedContract",
				"type": "address"
			  }
			],
			"name": "AssociatedContractUpdated",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "address",
				"name": "oldOwner",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "address",
				"name": "newOwner",
				"type": "address"
			  }
			],
			"name": "OwnerChanged",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "address",
				"name": "newOwner",
				"type": "address"
			  }
			],
			"name": "OwnerNominated",
			"type": "event"
		  },
		  {
			"constant": false,
			"inputs": [],
			"name": "acceptOwnership",
			"outputs": [],
			"payable": false,
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  },
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"name": "allowance",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "associatedContract",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"name": "balanceOf",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": false,
			"inputs": [
			  {
				"internalType": "address",
				"name": "_owner",
				"type": "address"
			  }
			],
			"name": "nominateOwner",
			"outputs": [],
			"payable": false,
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "nominatedOwner",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "owner",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": false,
			"inputs": [
			  {
				"internalType": "address",
				"name": "tokenOwner",
				"type": "address"
			  },
			  {
				"internalType": "address",
				"name": "spender",
				"type": "address"
			  },
			  {
				"internalType": "uint256",
				"name": "value",
				"type": "uint256"
			  }
			],
			"name": "setAllowance",
			"outputs": [],
			"payable": false,
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"constant": false,
			"inputs": [
			  {
				"internalType": "address",
				"name": "_associatedContract",
				"type": "address"
			  }
			],
			"name": "setAssociatedContract",
			"outputs": [],
			"payable": false,
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"constant": false,
			"inputs": [
			  {
				"internalType": "address",
				"name": "account",
				"type": "address"
			  },
			  {
				"internalType": "uint256",
				"name": "value",
				"type": "uint256"
			  }
			],
			"name": "setBalanceOf",
			"outputs": [],
			"payable": false,
			"stateMutability": "nonpayable",
			"type": "function"
		  }
		]
	  },
	  "ProxyERC20": {
		"abi": [
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "_owner",
				"type": "address"
			  }
			],
			"stateMutability": "nonpayable",
			"type": "constructor"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": true,
				"internalType": "address",
				"name": "owner",
				"type": "address"
			  },
			  {
				"indexed": true,
				"internalType": "address",
				"name": "spender",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "value",
				"type": "uint256"
			  }
			],
			"name": "Approval",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "address",
				"name": "oldOwner",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "address",
				"name": "newOwner",
				"type": "address"
			  }
			],
			"name": "OwnerChanged",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "address",
				"name": "newOwner",
				"type": "address"
			  }
			],
			"name": "OwnerNominated",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "contract Proxyable",
				"name": "newTarget",
				"type": "address"
			  }
			],
			"name": "TargetUpdated",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": true,
				"internalType": "address",
				"name": "from",
				"type": "address"
			  },
			  {
				"indexed": true,
				"internalType": "address",
				"name": "to",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "value",
				"type": "uint256"
			  }
			],
			"name": "Transfer",
			"type": "event"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes",
				"name": "callData",
				"type": "bytes"
			  },
			  {
				"internalType": "uint256",
				"name": "numTopics",
				"type": "uint256"
			  },
			  {
				"internalType": "bytes32",
				"name": "topic1",
				"type": "bytes32"
			  },
			  {
				"internalType": "bytes32",
				"name": "topic2",
				"type": "bytes32"
			  },
			  {
				"internalType": "bytes32",
				"name": "topic3",
				"type": "bytes32"
			  },
			  {
				"internalType": "bytes32",
				"name": "topic4",
				"type": "bytes32"
			  }
			],
			"name": "_emit",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "acceptOwnership",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "owner",
				"type": "address"
			  },
			  {
				"internalType": "address",
				"name": "spender",
				"type": "address"
			  }
			],
			"name": "allowance",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "spender",
				"type": "address"
			  },
			  {
				"internalType": "uint256",
				"name": "value",
				"type": "uint256"
			  }
			],
			"name": "approve",
			"outputs": [
			  {
				"internalType": "bool",
				"name": "",
				"type": "bool"
			  }
			],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "account",
				"type": "address"
			  }
			],
			"name": "balanceOf",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "decimals",
			"outputs": [
			  {
				"internalType": "uint8",
				"name": "",
				"type": "uint8"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "name",
			"outputs": [
			  {
				"internalType": "string",
				"name": "",
				"type": "string"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "_owner",
				"type": "address"
			  }
			],
			"name": "nominateNewOwner",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "nominatedOwner",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "owner",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "contract Proxyable",
				"name": "_target",
				"type": "address"
			  }
			],
			"name": "setTarget",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "symbol",
			"outputs": [
			  {
				"internalType": "string",
				"name": "",
				"type": "string"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "target",
			"outputs": [
			  {
				"internalType": "contract Proxyable",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "totalSupply",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "to",
				"type": "address"
			  },
			  {
				"internalType": "uint256",
				"name": "value",
				"type": "uint256"
			  }
			],
			"name": "transfer",
			"outputs": [
			  {
				"internalType": "bool",
				"name": "",
				"type": "bool"
			  }
			],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "from",
				"type": "address"
			  },
			  {
				"internalType": "address",
				"name": "to",
				"type": "address"
			  },
			  {
				"internalType": "uint256",
				"name": "value",
				"type": "uint256"
			  }
			],
			"name": "transferFrom",
			"outputs": [
			  {
				"internalType": "bool",
				"name": "",
				"type": "bool"
			  }
			],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"stateMutability": "payable",
			"type": "receive"
		  }
		]
	  },
	  "Synthetix": {
		"abi": [
		  {
			"inputs": [
			  {
				"internalType": "contract ExternWrappedStateTokenLightChain",
				"name": "_extTokenState",
				"type": "address"
			  },
			  {
				"internalType": "address",
				"name": "_owner",
				"type": "address"
			  },
			  {
				"internalType": "address",
				"name": "_resolver",
				"type": "address"
			  }
			],
			"stateMutability": "nonpayable",
			"type": "constructor"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": true,
				"internalType": "address",
				"name": "account",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "synthRedeemed",
				"type": "uint256"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "amountLiquidated",
				"type": "uint256"
			  },
			  {
				"indexed": false,
				"internalType": "address",
				"name": "liquidator",
				"type": "address"
			  }
			],
			"name": "AccountLiquidated",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "bytes32",
				"name": "name",
				"type": "bytes32"
			  },
			  {
				"indexed": false,
				"internalType": "address",
				"name": "destination",
				"type": "address"
			  }
			],
			"name": "CacheUpdated",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "address",
				"name": "oldOwner",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "address",
				"name": "newOwner",
				"type": "address"
			  }
			],
			"name": "OwnerChanged",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "address",
				"name": "newOwner",
				"type": "address"
			  }
			],
			"name": "OwnerNominated",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": true,
				"internalType": "address",
				"name": "from",
				"type": "address"
			  },
			  {
				"indexed": true,
				"internalType": "address",
				"name": "to",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "bytes32",
				"name": "collateralKey",
				"type": "bytes32"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "collateralAmount",
				"type": "uint256"
			  }
			],
			"name": "StakeCollateral",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": true,
				"internalType": "address",
				"name": "from",
				"type": "address"
			  },
			  {
				"indexed": true,
				"internalType": "address",
				"name": "to",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "value",
				"type": "uint256"
			  }
			],
			"name": "Transfer",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "address",
				"name": "from",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "bytes32",
				"name": "collateralKey",
				"type": "bytes32"
			  },
			  {
				"indexed": false,
				"internalType": "address",
				"name": "collateralCurrency",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "collateralAmount",
				"type": "uint256"
			  }
			],
			"name": "WithdrawCollateral",
			"type": "event"
		  },
		  {
			"inputs": [],
			"name": "CONTRACT_NAME",
			"outputs": [
			  {
				"internalType": "bytes32",
				"name": "",
				"type": "bytes32"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "acceptOwnership",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "account",
				"type": "address"
			  }
			],
			"name": "balanceOf",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "_account",
				"type": "address"
			  },
			  {
				"internalType": "bytes32",
				"name": "_collateralKey",
				"type": "bytes32"
			  }
			],
			"name": "balanceOfPerKey",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "uint256",
				"name": "_amount",
				"type": "uint256"
			  },
			  {
				"internalType": "bytes32",
				"name": "_synthKey",
				"type": "bytes32"
			  }
			],
			"name": "burnSynths",
			"outputs": [],
			"stateMutability": "payable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "_collateralKey",
				"type": "bytes32"
			  }
			],
			"name": "collateralCurrency",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "_from",
				"type": "address"
			  },
			  {
				"internalType": "bytes32",
				"name": "_collateralKey",
				"type": "bytes32"
			  },
			  {
				"internalType": "uint256",
				"name": "_collateralAmount",
				"type": "uint256"
			  }
			],
			"name": "collateralTransfer",
			"outputs": [
			  {
				"internalType": "bool",
				"name": "",
				"type": "bool"
			  }
			],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "decimals",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "sourceCurrencyKey",
				"type": "bytes32"
			  },
			  {
				"internalType": "uint256",
				"name": "sourceAmount",
				"type": "uint256"
			  },
			  {
				"internalType": "bytes32",
				"name": "destinationCurrencyKey",
				"type": "bytes32"
			  },
			  {
				"internalType": "uint16",
				"name": "destChainId",
				"type": "uint16"
			  }
			],
			"name": "exchange",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "amountReceived",
				"type": "uint256"
			  }
			],
			"stateMutability": "payable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "sourceCurrencyKey",
				"type": "bytes32"
			  },
			  {
				"internalType": "uint256",
				"name": "sourceAmount",
				"type": "uint256"
			  },
			  {
				"internalType": "bytes32",
				"name": "destinationCurrencyKey",
				"type": "bytes32"
			  },
			  {
				"internalType": "uint256",
				"name": "minAmount",
				"type": "uint256"
			  },
			  {
				"internalType": "uint16",
				"name": "destChainId",
				"type": "uint16"
			  }
			],
			"name": "exchangeAtomically",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "amountReceived",
				"type": "uint256"
			  }
			],
			"stateMutability": "payable",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "getAvailableCollaterals",
			"outputs": [
			  {
				"internalType": "bytes32[]",
				"name": "",
				"type": "bytes32[]"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "_account",
				"type": "address"
			  },
			  {
				"internalType": "bytes32",
				"name": "_synthKey",
				"type": "bytes32"
			  },
			  {
				"internalType": "uint256",
				"name": "_synthAmount",
				"type": "uint256"
			  },
			  {
				"internalType": "uint16",
				"name": "_destChainId",
				"type": "uint16"
			  }
			],
			"name": "getSendBurnGasFee",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "_account",
				"type": "address"
			  },
			  {
				"internalType": "bytes32",
				"name": "_collateralKey",
				"type": "bytes32"
			  },
			  {
				"internalType": "uint256",
				"name": "_collateralAmount",
				"type": "uint256"
			  },
			  {
				"internalType": "uint16",
				"name": "_destChainId",
				"type": "uint16"
			  }
			],
			"name": "getSendStakingGasFee",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "isResolverCached",
			"outputs": [
			  {
				"internalType": "bool",
				"name": "",
				"type": "bool"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "name",
			"outputs": [
			  {
				"internalType": "string",
				"name": "",
				"type": "string"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "_owner",
				"type": "address"
			  }
			],
			"name": "nominateNewOwner",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "nominatedOwner",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "owner",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "rebuildCache",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "resolver",
			"outputs": [
			  {
				"internalType": "contract AddressResolverLightChain",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "resolverAddressesRequired",
			"outputs": [
			  {
				"internalType": "bytes32[]",
				"name": "addresses",
				"type": "bytes32[]"
			  }
			],
			"stateMutability": "pure",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "sUSD",
			"outputs": [
			  {
				"internalType": "bytes32",
				"name": "",
				"type": "bytes32"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "currencyKey",
				"type": "bytes32"
			  }
			],
			"name": "settle",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "reclaimed",
				"type": "uint256"
			  },
			  {
				"internalType": "uint256",
				"name": "refunded",
				"type": "uint256"
			  },
			  {
				"internalType": "uint256",
				"name": "numEntriesSettled",
				"type": "uint256"
			  }
			],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "_collateralKey",
				"type": "bytes32"
			  },
			  {
				"internalType": "uint256",
				"name": "_collateralAmount",
				"type": "uint256"
			  }
			],
			"name": "stakeCollateral",
			"outputs": [],
			"stateMutability": "payable",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "symbol",
			"outputs": [
			  {
				"internalType": "string",
				"name": "",
				"type": "string"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "_from",
				"type": "address"
			  },
			  {
				"internalType": "address",
				"name": "_to",
				"type": "address"
			  },
			  {
				"internalType": "bytes32",
				"name": "_collateralKey",
				"type": "bytes32"
			  },
			  {
				"internalType": "uint256",
				"name": "_collateralAmount",
				"type": "uint256"
			  }
			],
			"name": "withdrawCollateral",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"stateMutability": "payable",
			"type": "receive"
		  }
		]
	  },
	  "DebtCache": {
		"abi": [
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "_owner",
				"type": "address"
			  },
			  {
				"internalType": "address",
				"name": "_resolver",
				"type": "address"
			  }
			],
			"payable": false,
			"stateMutability": "nonpayable",
			"type": "constructor"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "bytes32",
				"name": "name",
				"type": "bytes32"
			  },
			  {
				"indexed": false,
				"internalType": "address",
				"name": "destination",
				"type": "address"
			  }
			],
			"name": "CacheUpdated",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "timestamp",
				"type": "uint256"
			  }
			],
			"name": "DebtCacheSnapshotTaken",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "cachedDebt",
				"type": "uint256"
			  }
			],
			"name": "DebtCacheUpdated",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": true,
				"internalType": "bool",
				"name": "isInvalid",
				"type": "bool"
			  }
			],
			"name": "DebtCacheValidityChanged",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "address",
				"name": "oldOwner",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "address",
				"name": "newOwner",
				"type": "address"
			  }
			],
			"name": "OwnerChanged",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "address",
				"name": "newOwner",
				"type": "address"
			  }
			],
			"name": "OwnerNominated",
			"type": "event"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "CONTRACT_NAME",
			"outputs": [
			  {
				"internalType": "bytes32",
				"name": "",
				"type": "bytes32"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": false,
			"inputs": [],
			"name": "acceptOwnership",
			"outputs": [],
			"payable": false,
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "cacheInfo",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "debt",
				"type": "uint256"
			  },
			  {
				"internalType": "uint256",
				"name": "timestamp",
				"type": "uint256"
			  },
			  {
				"internalType": "bool",
				"name": "isInvalid",
				"type": "bool"
			  },
			  {
				"internalType": "bool",
				"name": "isStale",
				"type": "bool"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "cacheInvalid",
			"outputs": [
			  {
				"internalType": "bool",
				"name": "",
				"type": "bool"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "cacheStale",
			"outputs": [
			  {
				"internalType": "bool",
				"name": "",
				"type": "bool"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "cacheTimestamp",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "cachedDebt",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "currencyKey",
				"type": "bytes32"
			  }
			],
			"name": "cachedSynthDebt",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [
			  {
				"internalType": "bytes32[]",
				"name": "currencyKeys",
				"type": "bytes32[]"
			  }
			],
			"name": "cachedSynthDebts",
			"outputs": [
			  {
				"internalType": "uint256[]",
				"name": "snxIssuedDebts",
				"type": "uint256[]"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "currentDebt",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "debt",
				"type": "uint256"
			  },
			  {
				"internalType": "bool",
				"name": "anyRateIsInvalid",
				"type": "bool"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [
			  {
				"internalType": "bytes32[]",
				"name": "currencyKeys",
				"type": "bytes32[]"
			  }
			],
			"name": "currentSynthDebts",
			"outputs": [
			  {
				"internalType": "uint256[]",
				"name": "debtValues",
				"type": "uint256[]"
			  },
			  {
				"internalType": "uint256",
				"name": "futuresDebt",
				"type": "uint256"
			  },
			  {
				"internalType": "uint256",
				"name": "excludedDebt",
				"type": "uint256"
			  },
			  {
				"internalType": "bool",
				"name": "anyRateIsInvalid",
				"type": "bool"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "debtSnapshotStaleTime",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [
			  {
				"internalType": "bytes32[]",
				"name": "currencyKeys",
				"type": "bytes32[]"
			  }
			],
			"name": "excludedIssuedDebts",
			"outputs": [
			  {
				"internalType": "uint256[]",
				"name": "excludedDebts",
				"type": "uint256[]"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": false,
			"inputs": [
			  {
				"internalType": "contract IDebtCache",
				"name": "prevDebtCache",
				"type": "address"
			  },
			  {
				"internalType": "contract IIssuer",
				"name": "prevIssuer",
				"type": "address"
			  }
			],
			"name": "importExcludedIssuedDebts",
			"outputs": [],
			"payable": false,
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "isInitialized",
			"outputs": [
			  {
				"internalType": "bool",
				"name": "",
				"type": "bool"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "isResolverCached",
			"outputs": [
			  {
				"internalType": "bool",
				"name": "",
				"type": "bool"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": false,
			"inputs": [
			  {
				"internalType": "address",
				"name": "_owner",
				"type": "address"
			  }
			],
			"name": "nominateNewOwner",
			"outputs": [],
			"payable": false,
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "nominatedOwner",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "owner",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": false,
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "currencyKey",
				"type": "bytes32"
			  }
			],
			"name": "purgeCachedSynthDebt",
			"outputs": [],
			"payable": false,
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"constant": false,
			"inputs": [],
			"name": "rebuildCache",
			"outputs": [],
			"payable": false,
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"constant": false,
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "currencyKey",
				"type": "bytes32"
			  },
			  {
				"internalType": "int256",
				"name": "delta",
				"type": "int256"
			  }
			],
			"name": "recordExcludedDebtChange",
			"outputs": [],
			"payable": false,
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "resolver",
			"outputs": [
			  {
				"internalType": "contract AddressResolver",
				"name": "",
				"type": "address"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "resolverAddressesRequired",
			"outputs": [
			  {
				"internalType": "bytes32[]",
				"name": "addresses",
				"type": "bytes32[]"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": false,
			"inputs": [],
			"name": "takeDebtSnapshot",
			"outputs": [],
			"payable": false,
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "totalNonSnxBackedDebt",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "excludedDebt",
				"type": "uint256"
			  },
			  {
				"internalType": "bool",
				"name": "isInvalid",
				"type": "bool"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": false,
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "currencyKey",
				"type": "bytes32"
			  },
			  {
				"internalType": "uint256",
				"name": "currencyRate",
				"type": "uint256"
			  }
			],
			"name": "updateCachedSynthDebtWithRate",
			"outputs": [],
			"payable": false,
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"constant": false,
			"inputs": [
			  {
				"internalType": "bytes32[]",
				"name": "currencyKeys",
				"type": "bytes32[]"
			  }
			],
			"name": "updateCachedSynthDebts",
			"outputs": [],
			"payable": false,
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"constant": false,
			"inputs": [
			  {
				"internalType": "bytes32[]",
				"name": "currencyKeys",
				"type": "bytes32[]"
			  },
			  {
				"internalType": "uint256[]",
				"name": "currencyRates",
				"type": "uint256[]"
			  }
			],
			"name": "updateCachedSynthDebtsWithRates",
			"outputs": [],
			"payable": false,
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"constant": false,
			"inputs": [
			  {
				"internalType": "int256",
				"name": "amount",
				"type": "int256"
			  }
			],
			"name": "updateCachedsUSDDebt",
			"outputs": [],
			"payable": false,
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"constant": false,
			"inputs": [
			  {
				"internalType": "bool",
				"name": "currentlyInvalid",
				"type": "bool"
			  }
			],
			"name": "updateDebtCacheValidity",
			"outputs": [],
			"payable": false,
			"stateMutability": "nonpayable",
			"type": "function"
		  }
		]
	  },
	  "ExchangerWithFeeRecAlternatives": {
		"abi": [
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "_owner",
				"type": "address"
			  },
			  {
				"internalType": "address",
				"name": "_resolver",
				"type": "address"
			  }
			],
			"stateMutability": "nonpayable",
			"type": "constructor"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": true,
				"internalType": "address",
				"name": "account",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "bytes32",
				"name": "fromCurrencyKey",
				"type": "bytes32"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "fromAmount",
				"type": "uint256"
			  },
			  {
				"indexed": false,
				"internalType": "bytes32",
				"name": "toCurrencyKey",
				"type": "bytes32"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "toAmount",
				"type": "uint256"
			  },
			  {
				"indexed": false,
				"internalType": "address",
				"name": "toAddress",
				"type": "address"
			  }
			],
			"name": "AtomicSynthExchange",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "bytes32",
				"name": "name",
				"type": "bytes32"
			  },
			  {
				"indexed": false,
				"internalType": "address",
				"name": "destination",
				"type": "address"
			  }
			],
			"name": "CacheUpdated",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": true,
				"internalType": "address",
				"name": "account",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "bytes32",
				"name": "src",
				"type": "bytes32"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "amount",
				"type": "uint256"
			  },
			  {
				"indexed": false,
				"internalType": "bytes32",
				"name": "dest",
				"type": "bytes32"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "amountReceived",
				"type": "uint256"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "exchangeFeeRate",
				"type": "uint256"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "roundIdForSrc",
				"type": "uint256"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "roundIdForDest",
				"type": "uint256"
			  }
			],
			"name": "ExchangeEntryAppended",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": true,
				"internalType": "address",
				"name": "from",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "bytes32",
				"name": "src",
				"type": "bytes32"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "amount",
				"type": "uint256"
			  },
			  {
				"indexed": false,
				"internalType": "bytes32",
				"name": "dest",
				"type": "bytes32"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "reclaim",
				"type": "uint256"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "rebate",
				"type": "uint256"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "srcRoundIdAtPeriodEnd",
				"type": "uint256"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "destRoundIdAtPeriodEnd",
				"type": "uint256"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "exchangeTimestamp",
				"type": "uint256"
			  }
			],
			"name": "ExchangeEntrySettled",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": true,
				"internalType": "address",
				"name": "account",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "bytes32",
				"name": "currencyKey",
				"type": "bytes32"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "amount",
				"type": "uint256"
			  }
			],
			"name": "ExchangeRebate",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": true,
				"internalType": "address",
				"name": "account",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "bytes32",
				"name": "currencyKey",
				"type": "bytes32"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "amount",
				"type": "uint256"
			  }
			],
			"name": "ExchangeReclaim",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "address",
				"name": "oldOwner",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "address",
				"name": "newOwner",
				"type": "address"
			  }
			],
			"name": "OwnerChanged",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "address",
				"name": "newOwner",
				"type": "address"
			  }
			],
			"name": "OwnerNominated",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": true,
				"internalType": "address",
				"name": "account",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "bytes32",
				"name": "fromCurrencyKey",
				"type": "bytes32"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "fromAmount",
				"type": "uint256"
			  },
			  {
				"indexed": false,
				"internalType": "bytes32",
				"name": "toCurrencyKey",
				"type": "bytes32"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "toAmount",
				"type": "uint256"
			  },
			  {
				"indexed": false,
				"internalType": "address",
				"name": "toAddress",
				"type": "address"
			  }
			],
			"name": "SynthExchange",
			"type": "event"
		  },
		  {
			"inputs": [],
			"name": "CONTRACT_NAME",
			"outputs": [
			  {
				"internalType": "bytes32",
				"name": "",
				"type": "bytes32"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "acceptOwnership",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "from",
				"type": "address"
			  },
			  {
				"internalType": "bytes32",
				"name": "currencyKey",
				"type": "bytes32"
			  },
			  {
				"internalType": "uint256",
				"name": "amount",
				"type": "uint256"
			  },
			  {
				"internalType": "uint256",
				"name": "refunded",
				"type": "uint256"
			  }
			],
			"name": "calculateAmountAfterSettlement",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "amountAfterSettlement",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "sourceCurrencyKey",
				"type": "bytes32"
			  },
			  {
				"internalType": "bytes32",
				"name": "destinationCurrencyKey",
				"type": "bytes32"
			  }
			],
			"name": "dynamicFeeRateForExchange",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "feeRate",
				"type": "uint256"
			  },
			  {
				"internalType": "bool",
				"name": "tooVolatile",
				"type": "bool"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"components": [
				  {
					"internalType": "address",
					"name": "fromAccount",
					"type": "address"
				  },
				  {
					"internalType": "address",
					"name": "destAccount",
					"type": "address"
				  },
				  {
					"internalType": "bytes32",
					"name": "sourceCurrencyKey",
					"type": "bytes32"
				  },
				  {
					"internalType": "bytes32",
					"name": "destCurrencyKey",
					"type": "bytes32"
				  },
				  {
					"internalType": "uint256",
					"name": "sourceAmount",
					"type": "uint256"
				  },
				  {
					"internalType": "uint256",
					"name": "destAmount",
					"type": "uint256"
				  },
				  {
					"internalType": "uint256",
					"name": "fee",
					"type": "uint256"
				  },
				  {
					"internalType": "uint256",
					"name": "reclaimed",
					"type": "uint256"
				  },
				  {
					"internalType": "uint256",
					"name": "refunded",
					"type": "uint256"
				  },
				  {
					"internalType": "uint16",
					"name": "destChainId",
					"type": "uint16"
				  }
				],
				"internalType": "struct IExchanger.ExchangeArgs",
				"name": "args",
				"type": "tuple"
			  }
			],
			"name": "exchange",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "amountReceived",
				"type": "uint256"
			  }
			],
			"stateMutability": "payable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "uint256",
				"name": "minAmount",
				"type": "uint256"
			  },
			  {
				"components": [
				  {
					"internalType": "address",
					"name": "fromAccount",
					"type": "address"
				  },
				  {
					"internalType": "address",
					"name": "destAccount",
					"type": "address"
				  },
				  {
					"internalType": "bytes32",
					"name": "sourceCurrencyKey",
					"type": "bytes32"
				  },
				  {
					"internalType": "bytes32",
					"name": "destCurrencyKey",
					"type": "bytes32"
				  },
				  {
					"internalType": "uint256",
					"name": "sourceAmount",
					"type": "uint256"
				  },
				  {
					"internalType": "uint256",
					"name": "destAmount",
					"type": "uint256"
				  },
				  {
					"internalType": "uint256",
					"name": "fee",
					"type": "uint256"
				  },
				  {
					"internalType": "uint256",
					"name": "reclaimed",
					"type": "uint256"
				  },
				  {
					"internalType": "uint256",
					"name": "refunded",
					"type": "uint256"
				  },
				  {
					"internalType": "uint16",
					"name": "destChainId",
					"type": "uint16"
				  }
				],
				"internalType": "struct IExchanger.ExchangeArgs",
				"name": "args",
				"type": "tuple"
			  }
			],
			"name": "exchangeAtomically",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "amountReceived",
				"type": "uint256"
			  }
			],
			"stateMutability": "payable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "sourceCurrencyKey",
				"type": "bytes32"
			  },
			  {
				"internalType": "bytes32",
				"name": "destinationCurrencyKey",
				"type": "bytes32"
			  }
			],
			"name": "feeRateForExchange",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "uint256",
				"name": "sourceAmount",
				"type": "uint256"
			  },
			  {
				"internalType": "bytes32",
				"name": "sourceCurrencyKey",
				"type": "bytes32"
			  },
			  {
				"internalType": "bytes32",
				"name": "destinationCurrencyKey",
				"type": "bytes32"
			  }
			],
			"name": "getAmountsForAtomicExchange",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "amountReceived",
				"type": "uint256"
			  },
			  {
				"internalType": "uint256",
				"name": "fee",
				"type": "uint256"
			  },
			  {
				"internalType": "uint256",
				"name": "exchangeFeeRate",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "uint256",
				"name": "sourceAmount",
				"type": "uint256"
			  },
			  {
				"internalType": "bytes32",
				"name": "sourceCurrencyKey",
				"type": "bytes32"
			  },
			  {
				"internalType": "bytes32",
				"name": "destinationCurrencyKey",
				"type": "bytes32"
			  }
			],
			"name": "getAmountsForExchange",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "amountReceived",
				"type": "uint256"
			  },
			  {
				"internalType": "uint256",
				"name": "fee",
				"type": "uint256"
			  },
			  {
				"internalType": "uint256",
				"name": "exchangeFeeRate",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "_account",
				"type": "address"
			  },
			  {
				"internalType": "bytes32",
				"name": "_sourceKey",
				"type": "bytes32"
			  },
			  {
				"internalType": "uint256",
				"name": "_sourceAmount",
				"type": "uint256"
			  },
			  {
				"internalType": "bytes32",
				"name": "_destKey",
				"type": "bytes32"
			  },
			  {
				"internalType": "uint16",
				"name": "_destChainId",
				"type": "uint16"
			  }
			],
			"name": "getSendExchangeGasFee",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "isResolverCached",
			"outputs": [
			  {
				"internalType": "bool",
				"name": "",
				"type": "bool"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "currencyKey",
				"type": "bytes32"
			  }
			],
			"name": "isSynthRateInvalid",
			"outputs": [
			  {
				"internalType": "bool",
				"name": "",
				"type": "bool"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "lastAtomicVolume",
			"outputs": [
			  {
				"internalType": "uint64",
				"name": "time",
				"type": "uint64"
			  },
			  {
				"internalType": "uint192",
				"name": "volume",
				"type": "uint192"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "account",
				"type": "address"
			  },
			  {
				"internalType": "bytes32",
				"name": "currencyKey",
				"type": "bytes32"
			  }
			],
			"name": "maxSecsLeftInWaitingPeriod",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "_owner",
				"type": "address"
			  }
			],
			"name": "nominateNewOwner",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "nominatedOwner",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "owner",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "rebuildCache",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "resolver",
			"outputs": [
			  {
				"internalType": "contract AddressResolverLightChain",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "resolverAddressesRequired",
			"outputs": [
			  {
				"internalType": "bytes32[]",
				"name": "addresses",
				"type": "bytes32[]"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "from",
				"type": "address"
			  },
			  {
				"internalType": "bytes32",
				"name": "currencyKey",
				"type": "bytes32"
			  }
			],
			"name": "settle",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "reclaimed",
				"type": "uint256"
			  },
			  {
				"internalType": "uint256",
				"name": "refunded",
				"type": "uint256"
			  },
			  {
				"internalType": "uint256",
				"name": "numEntriesSettled",
				"type": "uint256"
			  }
			],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "account",
				"type": "address"
			  },
			  {
				"internalType": "bytes32",
				"name": "currencyKey",
				"type": "bytes32"
			  }
			],
			"name": "settlementOwing",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "reclaimAmount",
				"type": "uint256"
			  },
			  {
				"internalType": "uint256",
				"name": "rebateAmount",
				"type": "uint256"
			  },
			  {
				"internalType": "uint256",
				"name": "numEntries",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "currencyKey",
				"type": "bytes32"
			  }
			],
			"name": "suspendSynthWithInvalidRate",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "recipient",
				"type": "address"
			  },
			  {
				"internalType": "bytes32",
				"name": "destinationKey",
				"type": "bytes32"
			  },
			  {
				"internalType": "uint256",
				"name": "destinationAmount",
				"type": "uint256"
			  }
			],
			"name": "updateDestinationForExchange",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  }
		]
	  },
	  "ExchangeCircuitBreaker": {
		"abi": [
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "_owner",
				"type": "address"
			  },
			  {
				"internalType": "address",
				"name": "_resolver",
				"type": "address"
			  }
			],
			"stateMutability": "nonpayable",
			"type": "constructor"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "bytes32",
				"name": "name",
				"type": "bytes32"
			  },
			  {
				"indexed": false,
				"internalType": "address",
				"name": "destination",
				"type": "address"
			  }
			],
			"name": "CacheUpdated",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "bytes32",
				"name": "currencyKey",
				"type": "bytes32"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "previousRate",
				"type": "uint256"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "newRate",
				"type": "uint256"
			  }
			],
			"name": "LastRateOverriden",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "address",
				"name": "oldOwner",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "address",
				"name": "newOwner",
				"type": "address"
			  }
			],
			"name": "OwnerChanged",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "address",
				"name": "newOwner",
				"type": "address"
			  }
			],
			"name": "OwnerNominated",
			"type": "event"
		  },
		  {
			"inputs": [],
			"name": "CIRCUIT_BREAKER_SUSPENSION_REASON",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "CONTRACT_NAME",
			"outputs": [
			  {
				"internalType": "bytes32",
				"name": "",
				"type": "bytes32"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "acceptOwnership",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "exchangeRates",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "uint256",
				"name": "base",
				"type": "uint256"
			  },
			  {
				"internalType": "uint256",
				"name": "comparison",
				"type": "uint256"
			  }
			],
			"name": "isDeviationAboveThreshold",
			"outputs": [
			  {
				"internalType": "bool",
				"name": "",
				"type": "bool"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "isResolverCached",
			"outputs": [
			  {
				"internalType": "bool",
				"name": "",
				"type": "bool"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "currencyKey",
				"type": "bytes32"
			  }
			],
			"name": "lastExchangeRate",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "_owner",
				"type": "address"
			  }
			],
			"name": "nominateNewOwner",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "nominatedOwner",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "owner",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "priceDeviationThresholdFactor",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "currencyKey",
				"type": "bytes32"
			  }
			],
			"name": "rateWithBreakCircuit",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "lastValidRate",
				"type": "uint256"
			  },
			  {
				"internalType": "bool",
				"name": "circuitBroken",
				"type": "bool"
			  }
			],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "currencyKey",
				"type": "bytes32"
			  }
			],
			"name": "rateWithInvalid",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  },
			  {
				"internalType": "bool",
				"name": "",
				"type": "bool"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "rebuildCache",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32[]",
				"name": "currencyKeys",
				"type": "bytes32[]"
			  }
			],
			"name": "resetLastExchangeRate",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "resolver",
			"outputs": [
			  {
				"internalType": "contract AddressResolverLightChain",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "resolverAddressesRequired",
			"outputs": [
			  {
				"internalType": "bytes32[]",
				"name": "addresses",
				"type": "bytes32[]"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  }
		]
	  },
	  "VirtualSynthMastercopy": {
		"abi": [
		  {
			"inputs": [],
			"payable": false,
			"stateMutability": "nonpayable",
			"type": "constructor"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": true,
				"internalType": "address",
				"name": "owner",
				"type": "address"
			  },
			  {
				"indexed": true,
				"internalType": "address",
				"name": "spender",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "value",
				"type": "uint256"
			  }
			],
			"name": "Approval",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "totalSupply",
				"type": "uint256"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "amountAfterSettled",
				"type": "uint256"
			  }
			],
			"name": "Settled",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": true,
				"internalType": "address",
				"name": "from",
				"type": "address"
			  },
			  {
				"indexed": true,
				"internalType": "address",
				"name": "to",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "value",
				"type": "uint256"
			  }
			],
			"name": "Transfer",
			"type": "event"
		  },
		  {
			"constant": true,
			"inputs": [
			  {
				"internalType": "address",
				"name": "owner",
				"type": "address"
			  },
			  {
				"internalType": "address",
				"name": "spender",
				"type": "address"
			  }
			],
			"name": "allowance",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": false,
			"inputs": [
			  {
				"internalType": "address",
				"name": "spender",
				"type": "address"
			  },
			  {
				"internalType": "uint256",
				"name": "value",
				"type": "uint256"
			  }
			],
			"name": "approve",
			"outputs": [
			  {
				"internalType": "bool",
				"name": "",
				"type": "bool"
			  }
			],
			"payable": false,
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [
			  {
				"internalType": "address",
				"name": "account",
				"type": "address"
			  }
			],
			"name": "balanceOf",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [
			  {
				"internalType": "address",
				"name": "account",
				"type": "address"
			  }
			],
			"name": "balanceOfUnderlying",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "currencyKey",
			"outputs": [
			  {
				"internalType": "bytes32",
				"name": "",
				"type": "bytes32"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "decimals",
			"outputs": [
			  {
				"internalType": "uint8",
				"name": "",
				"type": "uint8"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": false,
			"inputs": [
			  {
				"internalType": "address",
				"name": "spender",
				"type": "address"
			  },
			  {
				"internalType": "uint256",
				"name": "subtractedValue",
				"type": "uint256"
			  }
			],
			"name": "decreaseAllowance",
			"outputs": [
			  {
				"internalType": "bool",
				"name": "",
				"type": "bool"
			  }
			],
			"payable": false,
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"constant": false,
			"inputs": [
			  {
				"internalType": "address",
				"name": "spender",
				"type": "address"
			  },
			  {
				"internalType": "uint256",
				"name": "addedValue",
				"type": "uint256"
			  }
			],
			"name": "increaseAllowance",
			"outputs": [
			  {
				"internalType": "bool",
				"name": "",
				"type": "bool"
			  }
			],
			"payable": false,
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "initialSupply",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": false,
			"inputs": [
			  {
				"internalType": "contract IERC20",
				"name": "_synth",
				"type": "address"
			  },
			  {
				"internalType": "contract IAddressResolver",
				"name": "_resolver",
				"type": "address"
			  },
			  {
				"internalType": "address",
				"name": "_recipient",
				"type": "address"
			  },
			  {
				"internalType": "uint256",
				"name": "_amount",
				"type": "uint256"
			  },
			  {
				"internalType": "bytes32",
				"name": "_currencyKey",
				"type": "bytes32"
			  }
			],
			"name": "initialize",
			"outputs": [],
			"payable": false,
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "initialized",
			"outputs": [
			  {
				"internalType": "bool",
				"name": "",
				"type": "bool"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "name",
			"outputs": [
			  {
				"internalType": "string",
				"name": "",
				"type": "string"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "rate",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "readyToSettle",
			"outputs": [
			  {
				"internalType": "bool",
				"name": "",
				"type": "bool"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "resolver",
			"outputs": [
			  {
				"internalType": "contract IAddressResolver",
				"name": "",
				"type": "address"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "secsLeftInWaitingPeriod",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": false,
			"inputs": [
			  {
				"internalType": "address",
				"name": "account",
				"type": "address"
			  }
			],
			"name": "settle",
			"outputs": [],
			"payable": false,
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "settled",
			"outputs": [
			  {
				"internalType": "bool",
				"name": "",
				"type": "bool"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "settledAmount",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "symbol",
			"outputs": [
			  {
				"internalType": "string",
				"name": "",
				"type": "string"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "synth",
			"outputs": [
			  {
				"internalType": "contract IERC20",
				"name": "",
				"type": "address"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "totalSupply",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": false,
			"inputs": [
			  {
				"internalType": "address",
				"name": "recipient",
				"type": "address"
			  },
			  {
				"internalType": "uint256",
				"name": "amount",
				"type": "uint256"
			  }
			],
			"name": "transfer",
			"outputs": [
			  {
				"internalType": "bool",
				"name": "",
				"type": "bool"
			  }
			],
			"payable": false,
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"constant": false,
			"inputs": [
			  {
				"internalType": "address",
				"name": "sender",
				"type": "address"
			  },
			  {
				"internalType": "address",
				"name": "recipient",
				"type": "address"
			  },
			  {
				"internalType": "uint256",
				"name": "amount",
				"type": "uint256"
			  }
			],
			"name": "transferFrom",
			"outputs": [
			  {
				"internalType": "bool",
				"name": "",
				"type": "bool"
			  }
			],
			"payable": false,
			"stateMutability": "nonpayable",
			"type": "function"
		  }
		]
	  },
	  "ExchangeState": {
		"abi": [
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "_owner",
				"type": "address"
			  },
			  {
				"internalType": "address",
				"name": "_associatedContract",
				"type": "address"
			  }
			],
			"stateMutability": "nonpayable",
			"type": "constructor"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "address",
				"name": "associatedContract",
				"type": "address"
			  }
			],
			"name": "AssociatedContractUpdated",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "address",
				"name": "oldOwner",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "address",
				"name": "newOwner",
				"type": "address"
			  }
			],
			"name": "OwnerChanged",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "address",
				"name": "newOwner",
				"type": "address"
			  }
			],
			"name": "OwnerNominated",
			"type": "event"
		  },
		  {
			"inputs": [],
			"name": "acceptOwnership",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "account",
				"type": "address"
			  },
			  {
				"internalType": "bytes32",
				"name": "src",
				"type": "bytes32"
			  },
			  {
				"internalType": "uint256",
				"name": "amount",
				"type": "uint256"
			  },
			  {
				"internalType": "bytes32",
				"name": "dest",
				"type": "bytes32"
			  },
			  {
				"internalType": "uint256",
				"name": "amountReceived",
				"type": "uint256"
			  },
			  {
				"internalType": "uint256",
				"name": "exchangeFeeRate",
				"type": "uint256"
			  },
			  {
				"internalType": "uint256",
				"name": "timestamp",
				"type": "uint256"
			  },
			  {
				"internalType": "uint256",
				"name": "roundIdForSrc",
				"type": "uint256"
			  },
			  {
				"internalType": "uint256",
				"name": "roundIdForDest",
				"type": "uint256"
			  }
			],
			"name": "appendExchangeEntry",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "associatedContract",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  },
			  {
				"internalType": "bytes32",
				"name": "",
				"type": "bytes32"
			  },
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"name": "exchanges",
			"outputs": [
			  {
				"internalType": "bytes32",
				"name": "src",
				"type": "bytes32"
			  },
			  {
				"internalType": "uint256",
				"name": "amount",
				"type": "uint256"
			  },
			  {
				"internalType": "bytes32",
				"name": "dest",
				"type": "bytes32"
			  },
			  {
				"internalType": "uint256",
				"name": "amountReceived",
				"type": "uint256"
			  },
			  {
				"internalType": "uint256",
				"name": "exchangeFeeRate",
				"type": "uint256"
			  },
			  {
				"internalType": "uint256",
				"name": "timestamp",
				"type": "uint256"
			  },
			  {
				"internalType": "uint256",
				"name": "roundIdForSrc",
				"type": "uint256"
			  },
			  {
				"internalType": "uint256",
				"name": "roundIdForDest",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "account",
				"type": "address"
			  },
			  {
				"internalType": "bytes32",
				"name": "currencyKey",
				"type": "bytes32"
			  },
			  {
				"internalType": "uint256",
				"name": "index",
				"type": "uint256"
			  }
			],
			"name": "getEntryAt",
			"outputs": [
			  {
				"internalType": "bytes32",
				"name": "src",
				"type": "bytes32"
			  },
			  {
				"internalType": "uint256",
				"name": "amount",
				"type": "uint256"
			  },
			  {
				"internalType": "bytes32",
				"name": "dest",
				"type": "bytes32"
			  },
			  {
				"internalType": "uint256",
				"name": "amountReceived",
				"type": "uint256"
			  },
			  {
				"internalType": "uint256",
				"name": "exchangeFeeRate",
				"type": "uint256"
			  },
			  {
				"internalType": "uint256",
				"name": "timestamp",
				"type": "uint256"
			  },
			  {
				"internalType": "uint256",
				"name": "roundIdForSrc",
				"type": "uint256"
			  },
			  {
				"internalType": "uint256",
				"name": "roundIdForDest",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "account",
				"type": "address"
			  },
			  {
				"internalType": "bytes32",
				"name": "currencyKey",
				"type": "bytes32"
			  }
			],
			"name": "getLengthOfEntries",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "account",
				"type": "address"
			  },
			  {
				"internalType": "bytes32",
				"name": "currencyKey",
				"type": "bytes32"
			  }
			],
			"name": "getMaxTimestamp",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "maxEntriesInQueue",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "_owner",
				"type": "address"
			  }
			],
			"name": "nominateNewOwner",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "nominatedOwner",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "owner",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "account",
				"type": "address"
			  },
			  {
				"internalType": "bytes32",
				"name": "currencyKey",
				"type": "bytes32"
			  }
			],
			"name": "removeEntries",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "_associatedContract",
				"type": "address"
			  }
			],
			"name": "setAssociatedContract",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "uint256",
				"name": "_maxEntriesInQueue",
				"type": "uint256"
			  }
			],
			"name": "setMaxEntriesInQueue",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  }
		]
	  },
	  "Issuer": {
		"abi": [
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "_owner",
				"type": "address"
			  },
			  {
				"internalType": "address",
				"name": "_resolver",
				"type": "address"
			  }
			],
			"stateMutability": "nonpayable",
			"type": "constructor"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": true,
				"internalType": "address",
				"name": "account",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "bytes32",
				"name": "currencyKey",
				"type": "bytes32"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "synthAmount",
				"type": "uint256"
			  }
			],
			"name": "BurnSynthForBridge",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "bytes32",
				"name": "name",
				"type": "bytes32"
			  },
			  {
				"indexed": false,
				"internalType": "address",
				"name": "destination",
				"type": "address"
			  }
			],
			"name": "CacheUpdated",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": true,
				"internalType": "address",
				"name": "account",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "bytes32",
				"name": "currencyKey",
				"type": "bytes32"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "synthAmount",
				"type": "uint256"
			  }
			],
			"name": "DestIssue",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "address",
				"name": "oldOwner",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "address",
				"name": "newOwner",
				"type": "address"
			  }
			],
			"name": "OwnerChanged",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "address",
				"name": "newOwner",
				"type": "address"
			  }
			],
			"name": "OwnerNominated",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "bytes32",
				"name": "currencyKey",
				"type": "bytes32"
			  },
			  {
				"indexed": false,
				"internalType": "address",
				"name": "synth",
				"type": "address"
			  }
			],
			"name": "SynthAdded",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "bytes32",
				"name": "currencyKey",
				"type": "bytes32"
			  },
			  {
				"indexed": false,
				"internalType": "address",
				"name": "synth",
				"type": "address"
			  }
			],
			"name": "SynthRemoved",
			"type": "event"
		  },
		  {
			"inputs": [],
			"name": "CIRCUIT_BREAKER_SUSPENSION_REASON",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "CONTRACT_NAME",
			"outputs": [
			  {
				"internalType": "bytes32",
				"name": "",
				"type": "bytes32"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "acceptOwnership",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "contract ISynth",
				"name": "synth",
				"type": "address"
			  }
			],
			"name": "addSynth",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "availableCurrencyKeys",
			"outputs": [
			  {
				"internalType": "bytes32[]",
				"name": "",
				"type": "bytes32[]"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "availableSynthCount",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"name": "availableSynths",
			"outputs": [
			  {
				"internalType": "contract ISynth",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "_account",
				"type": "address"
			  },
			  {
				"internalType": "bytes32",
				"name": "_synthKey",
				"type": "bytes32"
			  },
			  {
				"internalType": "uint256",
				"name": "_amount",
				"type": "uint256"
			  },
			  {
				"internalType": "uint16",
				"name": "_destChainId",
				"type": "uint16"
			  }
			],
			"name": "bridgeSynth",
			"outputs": [
			  {
				"internalType": "bool",
				"name": "",
				"type": "bool"
			  }
			],
			"stateMutability": "payable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "deprecatedSynth",
				"type": "address"
			  },
			  {
				"internalType": "address",
				"name": "account",
				"type": "address"
			  },
			  {
				"internalType": "uint256",
				"name": "balance",
				"type": "uint256"
			  }
			],
			"name": "burnForRedemption",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "_account",
				"type": "address"
			  },
			  {
				"internalType": "bytes32",
				"name": "_synthKey",
				"type": "bytes32"
			  },
			  {
				"internalType": "uint256",
				"name": "_amount",
				"type": "uint256"
			  }
			],
			"name": "burnSynths",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  },
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  },
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  },
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "_account",
				"type": "address"
			  },
			  {
				"internalType": "bytes32",
				"name": "_synthKey",
				"type": "bytes32"
			  },
			  {
				"internalType": "uint256",
				"name": "_synthAmount",
				"type": "uint256"
			  }
			],
			"name": "destIssue",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "_account",
				"type": "address"
			  },
			  {
				"internalType": "bytes32",
				"name": "_synthKey",
				"type": "bytes32"
			  },
			  {
				"internalType": "uint256",
				"name": "_synthAmount",
				"type": "uint256"
			  },
			  {
				"internalType": "uint16",
				"name": "_destChainId",
				"type": "uint16"
			  }
			],
			"name": "getSendBridgeSynthGasFee",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32[]",
				"name": "currencyKeys",
				"type": "bytes32[]"
			  }
			],
			"name": "getSynths",
			"outputs": [
			  {
				"internalType": "contract ISynth[]",
				"name": "",
				"type": "address[]"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "isResolverCached",
			"outputs": [
			  {
				"internalType": "bool",
				"name": "",
				"type": "bool"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "lastDebtRatio",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "_owner",
				"type": "address"
			  }
			],
			"name": "nominateNewOwner",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "nominatedOwner",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "owner",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "rebuildCache",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "currencyKey",
				"type": "bytes32"
			  }
			],
			"name": "removeSynth",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "resolver",
			"outputs": [
			  {
				"internalType": "contract AddressResolverLightChain",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "resolverAddressesRequired",
			"outputs": [
			  {
				"internalType": "bytes32[]",
				"name": "addresses",
				"type": "bytes32[]"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "",
				"type": "bytes32"
			  }
			],
			"name": "synths",
			"outputs": [
			  {
				"internalType": "contract ISynth",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"name": "synthsByAddress",
			"outputs": [
			  {
				"internalType": "bytes32",
				"name": "",
				"type": "bytes32"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  }
		]
	  },
	  "TradingRewards": {
		"abi": [
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "owner",
				"type": "address"
			  },
			  {
				"internalType": "address",
				"name": "periodController",
				"type": "address"
			  },
			  {
				"internalType": "address",
				"name": "resolver",
				"type": "address"
			  }
			],
			"stateMutability": "nonpayable",
			"type": "constructor"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "address",
				"name": "recoverAddress",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "amount",
				"type": "uint256"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "periodID",
				"type": "uint256"
			  }
			],
			"name": "AssignedRewardTokensRecovered",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "bytes32",
				"name": "name",
				"type": "bytes32"
			  },
			  {
				"indexed": false,
				"internalType": "address",
				"name": "destination",
				"type": "address"
			  }
			],
			"name": "CacheUpdated",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": true,
				"internalType": "address",
				"name": "account",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "amount",
				"type": "uint256"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "periodID",
				"type": "uint256"
			  }
			],
			"name": "ExchangeFeeRecorded",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "periodID",
				"type": "uint256"
			  }
			],
			"name": "NewPeriodStarted",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "address",
				"name": "oldOwner",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "address",
				"name": "newOwner",
				"type": "address"
			  }
			],
			"name": "OwnerChanged",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "address",
				"name": "newOwner",
				"type": "address"
			  }
			],
			"name": "OwnerNominated",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "bool",
				"name": "isPaused",
				"type": "bool"
			  }
			],
			"name": "PauseChanged",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "address",
				"name": "newPeriodController",
				"type": "address"
			  }
			],
			"name": "PeriodControllerChanged",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "periodID",
				"type": "uint256"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "rewards",
				"type": "uint256"
			  }
			],
			"name": "PeriodFinalizedWithRewards",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": true,
				"internalType": "address",
				"name": "account",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "amount",
				"type": "uint256"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "periodID",
				"type": "uint256"
			  }
			],
			"name": "RewardsClaimed",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "address",
				"name": "tokenAddress",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "address",
				"name": "recoverAddress",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "amount",
				"type": "uint256"
			  }
			],
			"name": "TokensRecovered",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "address",
				"name": "recoverAddress",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "amount",
				"type": "uint256"
			  }
			],
			"name": "UnassignedRewardTokensRecovered",
			"type": "event"
		  },
		  {
			"inputs": [],
			"name": "acceptOwnership",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "uint256",
				"name": "periodID",
				"type": "uint256"
			  }
			],
			"name": "claimRewardsForPeriod",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "uint256[]",
				"name": "periodIDs",
				"type": "uint256[]"
			  }
			],
			"name": "claimRewardsForPeriods",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "uint256",
				"name": "rewards",
				"type": "uint256"
			  }
			],
			"name": "closeCurrentPeriodWithRewards",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "getAvailableRewards",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "account",
				"type": "address"
			  },
			  {
				"internalType": "uint256",
				"name": "periodID",
				"type": "uint256"
			  }
			],
			"name": "getAvailableRewardsForAccountForPeriod",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "account",
				"type": "address"
			  },
			  {
				"internalType": "uint256[]",
				"name": "periodIDs",
				"type": "uint256[]"
			  }
			],
			"name": "getAvailableRewardsForAccountForPeriods",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "totalRewards",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "getCurrentPeriod",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "uint256",
				"name": "periodID",
				"type": "uint256"
			  }
			],
			"name": "getPeriodAvailableRewards",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "getPeriodController",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "uint256",
				"name": "periodID",
				"type": "uint256"
			  }
			],
			"name": "getPeriodIsClaimable",
			"outputs": [
			  {
				"internalType": "bool",
				"name": "",
				"type": "bool"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "uint256",
				"name": "periodID",
				"type": "uint256"
			  }
			],
			"name": "getPeriodIsFinalized",
			"outputs": [
			  {
				"internalType": "bool",
				"name": "",
				"type": "bool"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "uint256",
				"name": "periodID",
				"type": "uint256"
			  }
			],
			"name": "getPeriodRecordedFees",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "uint256",
				"name": "periodID",
				"type": "uint256"
			  }
			],
			"name": "getPeriodTotalRewards",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "getRewardsToken",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "account",
				"type": "address"
			  },
			  {
				"internalType": "uint256",
				"name": "periodID",
				"type": "uint256"
			  }
			],
			"name": "getUnaccountedFeesForAccountForPeriod",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "getUnassignedRewards",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "isResolverCached",
			"outputs": [
			  {
				"internalType": "bool",
				"name": "",
				"type": "bool"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "lastPauseTime",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "_owner",
				"type": "address"
			  }
			],
			"name": "nominateNewOwner",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "nominatedOwner",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "owner",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "paused",
			"outputs": [
			  {
				"internalType": "bool",
				"name": "",
				"type": "bool"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "rebuildCache",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "uint256",
				"name": "usdFeeAmount",
				"type": "uint256"
			  },
			  {
				"internalType": "address",
				"name": "account",
				"type": "address"
			  }
			],
			"name": "recordExchangeFeeForAccount",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "recoverAddress",
				"type": "address"
			  },
			  {
				"internalType": "uint256",
				"name": "periodID",
				"type": "uint256"
			  }
			],
			"name": "recoverAssignedRewardTokensAndDestroyPeriod",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "tokenAddress",
				"type": "address"
			  },
			  {
				"internalType": "address",
				"name": "recoverAddress",
				"type": "address"
			  }
			],
			"name": "recoverTokens",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "recoverAddress",
				"type": "address"
			  }
			],
			"name": "recoverUnassignedRewardTokens",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "resolver",
			"outputs": [
			  {
				"internalType": "contract AddressResolver",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "resolverAddressesRequired",
			"outputs": [
			  {
				"internalType": "bytes32[]",
				"name": "addresses",
				"type": "bytes32[]"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bool",
				"name": "_paused",
				"type": "bool"
			  }
			],
			"name": "setPaused",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "newPeriodController",
				"type": "address"
			  }
			],
			"name": "setPeriodController",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  }
		]
	  },
	  "SupplySchedule": {
		"abi": [
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "_owner",
				"type": "address"
			  },
			  {
				"internalType": "uint256",
				"name": "_lastMintEvent",
				"type": "uint256"
			  },
			  {
				"internalType": "uint256",
				"name": "_currentWeek",
				"type": "uint256"
			  }
			],
			"stateMutability": "nonpayable",
			"type": "constructor"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "newInflationAmount",
				"type": "uint256"
			  }
			],
			"name": "InflationAmountUpdated",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "newInflationAmount",
				"type": "uint256"
			  }
			],
			"name": "MaxInflationAmountUpdated",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "newRewardAmount",
				"type": "uint256"
			  }
			],
			"name": "MinterRewardUpdated",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "address",
				"name": "oldOwner",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "address",
				"name": "newOwner",
				"type": "address"
			  }
			],
			"name": "OwnerChanged",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "address",
				"name": "newOwner",
				"type": "address"
			  }
			],
			"name": "OwnerNominated",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "supplyMinted",
				"type": "uint256"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "numberOfWeeksIssued",
				"type": "uint256"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "lastMintEvent",
				"type": "uint256"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "timestamp",
				"type": "uint256"
			  }
			],
			"name": "SupplyMinted",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "address",
				"name": "newAddress",
				"type": "address"
			  }
			],
			"name": "SynthTokenUpdated",
			"type": "event"
		  },
		  {
			"inputs": [],
			"name": "CONTRACT_NAME",
			"outputs": [
			  {
				"internalType": "bytes32",
				"name": "",
				"type": "bytes32"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "INFLATION_START_DATE",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "MAX_MINTER_REWARD",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "MINT_BUFFER",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "MINT_PERIOD_DURATION",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "acceptOwnership",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "inflationAmount",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "isMintable",
			"outputs": [
			  {
				"internalType": "bool",
				"name": "",
				"type": "bool"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "lastMintEvent",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "maxInflationAmount",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "mintableSupply",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "minterReward",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "_owner",
				"type": "address"
			  }
			],
			"name": "nominateNewOwner",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "nominatedOwner",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "owner",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "uint256",
				"name": "supplyMinted",
				"type": "uint256"
			  }
			],
			"name": "recordMintEvent",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "uint256",
				"name": "amount",
				"type": "uint256"
			  }
			],
			"name": "setInflationAmount",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "uint256",
				"name": "amount",
				"type": "uint256"
			  }
			],
			"name": "setMaxInflationAmount",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "uint256",
				"name": "amount",
				"type": "uint256"
			  }
			],
			"name": "setMinterReward",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "contract IERC20",
				"name": "_synthToken",
				"type": "address"
			  }
			],
			"name": "setSynthToken",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "synthToken",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "weekCounter",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "weeksSinceLastIssuance",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  }
		]
	  },
	  "EscrowChecker": {
		"abi": [
		  {
			"inputs": [
			  {
				"internalType": "contract ISynthetixEscrow",
				"name": "_esc",
				"type": "address"
			  }
			],
			"payable": false,
			"stateMutability": "nonpayable",
			"type": "constructor"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "synthetix_escrow",
			"outputs": [
			  {
				"internalType": "contract ISynthetixEscrow",
				"name": "",
				"type": "address"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [
			  {
				"internalType": "address",
				"name": "account",
				"type": "address"
			  }
			],
			"name": "checkAccountSchedule",
			"outputs": [
			  {
				"internalType": "uint256[16]",
				"name": "",
				"type": "uint256[16]"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  }
		]
	  },
	  "SynthetixBridgeToOptimism": {
		"abi": [
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "_owner",
				"type": "address"
			  },
			  {
				"internalType": "address",
				"name": "_resolver",
				"type": "address"
			  }
			],
			"stateMutability": "nonpayable",
			"type": "constructor"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "bytes32",
				"name": "name",
				"type": "bytes32"
			  },
			  {
				"indexed": false,
				"internalType": "address",
				"name": "destination",
				"type": "address"
			  }
			],
			"name": "CacheUpdated",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": true,
				"internalType": "address",
				"name": "account",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "escrowedAccountBalance",
				"type": "uint256"
			  },
			  {
				"components": [
				  {
					"internalType": "uint64",
					"name": "endTime",
					"type": "uint64"
				  },
				  {
					"internalType": "uint256",
					"name": "escrowAmount",
					"type": "uint256"
				  }
				],
				"indexed": false,
				"internalType": "struct VestingEntries.VestingEntry[]",
				"name": "vestingEntries",
				"type": "tuple[]"
			  }
			],
			"name": "ExportedVestingEntries",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "snxBackedDebt",
				"type": "uint256"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "totalDebtShares",
				"type": "uint256"
			  }
			],
			"name": "FeePeriodClosed",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": true,
				"internalType": "bytes32",
				"name": "currencyKey",
				"type": "bytes32"
			  },
			  {
				"indexed": true,
				"internalType": "address",
				"name": "destination",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "amount",
				"type": "uint256"
			  }
			],
			"name": "FinalizeSynthTransfer",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": true,
				"internalType": "bytes32",
				"name": "currencyKey",
				"type": "bytes32"
			  },
			  {
				"indexed": true,
				"internalType": "address",
				"name": "destination",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "amount",
				"type": "uint256"
			  }
			],
			"name": "InitiateSynthTransfer",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [],
			"name": "InitiationResumed",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [],
			"name": "InitiationSuspended",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "address",
				"name": "oldOwner",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "address",
				"name": "newOwner",
				"type": "address"
			  }
			],
			"name": "OwnerChanged",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "address",
				"name": "newOwner",
				"type": "address"
			  }
			],
			"name": "OwnerNominated",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": true,
				"internalType": "address",
				"name": "account",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "amount",
				"type": "uint256"
			  }
			],
			"name": "RewardDepositInitiated",
			"type": "event"
		  },
		  {
			"inputs": [],
			"name": "CONTRACT_NAME",
			"outputs": [
			  {
				"internalType": "bytes32",
				"name": "",
				"type": "bytes32"
			  }
			],
			"stateMutability": "pure",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "acceptOwnership",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "uint256",
				"name": "snxBackedAmount",
				"type": "uint256"
			  },
			  {
				"internalType": "uint256",
				"name": "totalDebtShares",
				"type": "uint256"
			  }
			],
			"name": "closeFeePeriod",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "uint256",
				"name": "amount",
				"type": "uint256"
			  }
			],
			"name": "deposit",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "currencyKey",
				"type": "bytes32"
			  },
			  {
				"internalType": "uint256",
				"name": "depositAmount",
				"type": "uint256"
			  },
			  {
				"internalType": "uint256[][]",
				"name": "entryIDs",
				"type": "uint256[][]"
			  }
			],
			"name": "depositAndMigrateEscrow",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "uint256",
				"name": "amount",
				"type": "uint256"
			  }
			],
			"name": "depositReward",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "to",
				"type": "address"
			  },
			  {
				"internalType": "uint256",
				"name": "amount",
				"type": "uint256"
			  }
			],
			"name": "depositTo",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "currencyKey",
				"type": "bytes32"
			  },
			  {
				"internalType": "address",
				"name": "destination",
				"type": "address"
			  },
			  {
				"internalType": "uint256",
				"name": "amount",
				"type": "uint256"
			  }
			],
			"name": "finalizeSynthTransfer",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "to",
				"type": "address"
			  },
			  {
				"internalType": "uint256",
				"name": "amount",
				"type": "uint256"
			  }
			],
			"name": "finalizeWithdrawal",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "token",
				"type": "address"
			  }
			],
			"name": "forwardTokensToEscrow",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "currencyKey",
				"type": "bytes32"
			  },
			  {
				"internalType": "address",
				"name": "destination",
				"type": "address"
			  },
			  {
				"internalType": "uint256",
				"name": "amount",
				"type": "uint256"
			  }
			],
			"name": "initiateSynthTransfer",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "initiationActive",
			"outputs": [
			  {
				"internalType": "bool",
				"name": "",
				"type": "bool"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "isResolverCached",
			"outputs": [
			  {
				"internalType": "bool",
				"name": "",
				"type": "bool"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "currencyKey",
				"type": "bytes32"
			  },
			  {
				"internalType": "uint256[][]",
				"name": "entryIDs",
				"type": "uint256[][]"
			  }
			],
			"name": "migrateEscrow",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "_owner",
				"type": "address"
			  }
			],
			"name": "nominateNewOwner",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "nominatedOwner",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "uint256",
				"name": "amount",
				"type": "uint256"
			  }
			],
			"name": "notifyRewardAmount",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "owner",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "rebuildCache",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "resolver",
			"outputs": [
			  {
				"internalType": "contract AddressResolver",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "resolverAddressesRequired",
			"outputs": [
			  {
				"internalType": "bytes32[]",
				"name": "addresses",
				"type": "bytes32[]"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "resumeInitiation",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "suspendInitiation",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "synthTransferReceived",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "synthTransferSent",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  }
		]
	  },
	  "SynthetixBridgeEscrow": {
		"abi": [
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "_owner",
				"type": "address"
			  }
			],
			"stateMutability": "nonpayable",
			"type": "constructor"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "address",
				"name": "_token",
				"type": "address"
			  },
			  {
				"indexed": true,
				"internalType": "address",
				"name": "spender",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "value",
				"type": "uint256"
			  }
			],
			"name": "BridgeApproval",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "address",
				"name": "oldOwner",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "address",
				"name": "newOwner",
				"type": "address"
			  }
			],
			"name": "OwnerChanged",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "address",
				"name": "newOwner",
				"type": "address"
			  }
			],
			"name": "OwnerNominated",
			"type": "event"
		  },
		  {
			"inputs": [],
			"name": "acceptOwnership",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "_token",
				"type": "address"
			  },
			  {
				"internalType": "address",
				"name": "_bridge",
				"type": "address"
			  },
			  {
				"internalType": "uint256",
				"name": "_amount",
				"type": "uint256"
			  }
			],
			"name": "approveBridge",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "_owner",
				"type": "address"
			  }
			],
			"name": "nominateNewOwner",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "nominatedOwner",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "owner",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  }
		]
	  },
	  "OwnerRelayOnEthereum": {
		"abi": [
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "_owner",
				"type": "address"
			  },
			  {
				"internalType": "address",
				"name": "_resolver",
				"type": "address"
			  }
			],
			"payable": false,
			"stateMutability": "nonpayable",
			"type": "constructor"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "bytes32",
				"name": "name",
				"type": "bytes32"
			  },
			  {
				"indexed": false,
				"internalType": "address",
				"name": "destination",
				"type": "address"
			  }
			],
			"name": "CacheUpdated",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "address",
				"name": "oldOwner",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "address",
				"name": "newOwner",
				"type": "address"
			  }
			],
			"name": "OwnerChanged",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "address",
				"name": "newOwner",
				"type": "address"
			  }
			],
			"name": "OwnerNominated",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "address[]",
				"name": "targets",
				"type": "address[]"
			  },
			  {
				"indexed": false,
				"internalType": "bytes[]",
				"name": "payloads",
				"type": "bytes[]"
			  }
			],
			"name": "RelayBatchInitiated",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "address",
				"name": "target",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "bytes",
				"name": "payload",
				"type": "bytes"
			  }
			],
			"name": "RelayInitiated",
			"type": "event"
		  },
		  {
			"constant": false,
			"inputs": [],
			"name": "acceptOwnership",
			"outputs": [],
			"payable": false,
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"constant": false,
			"inputs": [
			  {
				"internalType": "address",
				"name": "target",
				"type": "address"
			  },
			  {
				"internalType": "bytes",
				"name": "payload",
				"type": "bytes"
			  },
			  {
				"internalType": "uint32",
				"name": "crossDomainGasLimit",
				"type": "uint32"
			  }
			],
			"name": "initiateRelay",
			"outputs": [],
			"payable": false,
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"constant": false,
			"inputs": [
			  {
				"internalType": "address[]",
				"name": "targets",
				"type": "address[]"
			  },
			  {
				"internalType": "bytes[]",
				"name": "payloads",
				"type": "bytes[]"
			  },
			  {
				"internalType": "uint32",
				"name": "crossDomainGasLimit",
				"type": "uint32"
			  }
			],
			"name": "initiateRelayBatch",
			"outputs": [],
			"payable": false,
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "isResolverCached",
			"outputs": [
			  {
				"internalType": "bool",
				"name": "",
				"type": "bool"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": false,
			"inputs": [
			  {
				"internalType": "address",
				"name": "_owner",
				"type": "address"
			  }
			],
			"name": "nominateNewOwner",
			"outputs": [],
			"payable": false,
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "nominatedOwner",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "owner",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": false,
			"inputs": [],
			"name": "rebuildCache",
			"outputs": [],
			"payable": false,
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "resolver",
			"outputs": [
			  {
				"internalType": "contract AddressResolver",
				"name": "",
				"type": "address"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "resolverAddressesRequired",
			"outputs": [
			  {
				"internalType": "bytes32[]",
				"name": "addresses",
				"type": "bytes32[]"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  }
		]
	  },
	  "SynthRedeemer": {
		"abi": [
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "_resolver",
				"type": "address"
			  }
			],
			"stateMutability": "nonpayable",
			"type": "constructor"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "bytes32",
				"name": "name",
				"type": "bytes32"
			  },
			  {
				"indexed": false,
				"internalType": "address",
				"name": "destination",
				"type": "address"
			  }
			],
			"name": "CacheUpdated",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "address",
				"name": "synth",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "rateToRedeem",
				"type": "uint256"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "totalSynthSupply",
				"type": "uint256"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "supplyInsUSD",
				"type": "uint256"
			  }
			],
			"name": "SynthDeprecated",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "address",
				"name": "synth",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "address",
				"name": "account",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "amountOfSynth",
				"type": "uint256"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "amountInsUSD",
				"type": "uint256"
			  }
			],
			"name": "SynthRedeemed",
			"type": "event"
		  },
		  {
			"inputs": [],
			"name": "CONTRACT_NAME",
			"outputs": [
			  {
				"internalType": "bytes32",
				"name": "",
				"type": "bytes32"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "contract IERC20",
				"name": "synthProxy",
				"type": "address"
			  },
			  {
				"internalType": "address",
				"name": "account",
				"type": "address"
			  }
			],
			"name": "balanceOf",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "balanceInsUSD",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "contract IERC20",
				"name": "synthProxy",
				"type": "address"
			  },
			  {
				"internalType": "uint256",
				"name": "rateToRedeem",
				"type": "uint256"
			  }
			],
			"name": "deprecate",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "isResolverCached",
			"outputs": [
			  {
				"internalType": "bool",
				"name": "",
				"type": "bool"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "rebuildCache",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "contract IERC20",
				"name": "synthProxy",
				"type": "address"
			  }
			],
			"name": "redeem",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "contract IERC20[]",
				"name": "synthProxies",
				"type": "address[]"
			  }
			],
			"name": "redeemAll",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "contract IERC20",
				"name": "synthProxy",
				"type": "address"
			  },
			  {
				"internalType": "uint256",
				"name": "amountOfSynth",
				"type": "uint256"
			  }
			],
			"name": "redeemPartial",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"name": "redemptions",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "resolver",
			"outputs": [
			  {
				"internalType": "contract AddressResolverLightChain",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "resolverAddressesRequired",
			"outputs": [
			  {
				"internalType": "bytes32[]",
				"name": "addresses",
				"type": "bytes32[]"
			  }
			],
			"stateMutability": "pure",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "contract IERC20",
				"name": "synthProxy",
				"type": "address"
			  }
			],
			"name": "totalSupply",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "supplyInsUSD",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  }
		]
	  },
	  "WrapperFactory": {
		"abi": [
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "_owner",
				"type": "address"
			  },
			  {
				"internalType": "address",
				"name": "_resolver",
				"type": "address"
			  }
			],
			"payable": false,
			"stateMutability": "nonpayable",
			"type": "constructor"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "bytes32",
				"name": "name",
				"type": "bytes32"
			  },
			  {
				"indexed": false,
				"internalType": "address",
				"name": "destination",
				"type": "address"
			  }
			],
			"name": "CacheUpdated",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "address",
				"name": "oldOwner",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "address",
				"name": "newOwner",
				"type": "address"
			  }
			],
			"name": "OwnerChanged",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "address",
				"name": "newOwner",
				"type": "address"
			  }
			],
			"name": "OwnerNominated",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": true,
				"internalType": "address",
				"name": "token",
				"type": "address"
			  },
			  {
				"indexed": true,
				"internalType": "bytes32",
				"name": "currencyKey",
				"type": "bytes32"
			  },
			  {
				"indexed": false,
				"internalType": "address",
				"name": "wrapperAddress",
				"type": "address"
			  }
			],
			"name": "WrapperCreated",
			"type": "event"
		  },
		  {
			"payable": true,
			"stateMutability": "payable",
			"type": "fallback"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "CONTRACT_NAME",
			"outputs": [
			  {
				"internalType": "bytes32",
				"name": "",
				"type": "bytes32"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": false,
			"inputs": [],
			"name": "acceptOwnership",
			"outputs": [],
			"payable": false,
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "isResolverCached",
			"outputs": [
			  {
				"internalType": "bool",
				"name": "",
				"type": "bool"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": false,
			"inputs": [
			  {
				"internalType": "address",
				"name": "_owner",
				"type": "address"
			  }
			],
			"name": "nominateNewOwner",
			"outputs": [],
			"payable": false,
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "nominatedOwner",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "owner",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": false,
			"inputs": [],
			"name": "rebuildCache",
			"outputs": [],
			"payable": false,
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "resolver",
			"outputs": [
			  {
				"internalType": "contract AddressResolver",
				"name": "",
				"type": "address"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "resolverAddressesRequired",
			"outputs": [
			  {
				"internalType": "bytes32[]",
				"name": "addresses",
				"type": "bytes32[]"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [
			  {
				"internalType": "address",
				"name": "possibleWrapper",
				"type": "address"
			  }
			],
			"name": "isWrapper",
			"outputs": [
			  {
				"internalType": "bool",
				"name": "",
				"type": "bool"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "feesEscrowed",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": false,
			"inputs": [
			  {
				"internalType": "contract IERC20",
				"name": "token",
				"type": "address"
			  },
			  {
				"internalType": "bytes32",
				"name": "currencyKey",
				"type": "bytes32"
			  },
			  {
				"internalType": "bytes32",
				"name": "synthContractName",
				"type": "bytes32"
			  }
			],
			"name": "createWrapper",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"payable": false,
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"constant": false,
			"inputs": [],
			"name": "distributeFees",
			"outputs": [],
			"payable": false,
			"stateMutability": "nonpayable",
			"type": "function"
		  }
		]
	  },
	  "TokenState": {
		"abi": [
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "_owner",
				"type": "address"
			  },
			  {
				"internalType": "address",
				"name": "_associatedContract",
				"type": "address"
			  }
			],
			"stateMutability": "nonpayable",
			"type": "constructor"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "address",
				"name": "associatedContract",
				"type": "address"
			  }
			],
			"name": "AssociatedContractUpdated",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "address",
				"name": "oldOwner",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "address",
				"name": "newOwner",
				"type": "address"
			  }
			],
			"name": "OwnerChanged",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "address",
				"name": "newOwner",
				"type": "address"
			  }
			],
			"name": "OwnerNominated",
			"type": "event"
		  },
		  {
			"inputs": [],
			"name": "acceptOwnership",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  },
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"name": "allowance",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "associatedContract",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"name": "balanceOf",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "_owner",
				"type": "address"
			  }
			],
			"name": "nominateNewOwner",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "nominatedOwner",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "owner",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "tokenOwner",
				"type": "address"
			  },
			  {
				"internalType": "address",
				"name": "spender",
				"type": "address"
			  },
			  {
				"internalType": "uint256",
				"name": "value",
				"type": "uint256"
			  }
			],
			"name": "setAllowance",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "_associatedContract",
				"type": "address"
			  }
			],
			"name": "setAssociatedContract",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "account",
				"type": "address"
			  },
			  {
				"internalType": "uint256",
				"name": "value",
				"type": "uint256"
			  }
			],
			"name": "setBalanceOf",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  }
		]
	  },
	  "Synth": {
		"abi": [
		  {
			"inputs": [
			  {
				"internalType": "address payable",
				"name": "_proxy",
				"type": "address"
			  },
			  {
				"internalType": "contract TokenState",
				"name": "_tokenState",
				"type": "address"
			  },
			  {
				"internalType": "string",
				"name": "_tokenName",
				"type": "string"
			  },
			  {
				"internalType": "string",
				"name": "_tokenSymbol",
				"type": "string"
			  },
			  {
				"internalType": "address",
				"name": "_owner",
				"type": "address"
			  },
			  {
				"internalType": "bytes32",
				"name": "_currencyKey",
				"type": "bytes32"
			  },
			  {
				"internalType": "uint256",
				"name": "_totalSupply",
				"type": "uint256"
			  },
			  {
				"internalType": "address",
				"name": "_resolver",
				"type": "address"
			  }
			],
			"stateMutability": "nonpayable",
			"type": "constructor"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": true,
				"internalType": "address",
				"name": "owner",
				"type": "address"
			  },
			  {
				"indexed": true,
				"internalType": "address",
				"name": "spender",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "value",
				"type": "uint256"
			  }
			],
			"name": "Approval",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": true,
				"internalType": "address",
				"name": "account",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "value",
				"type": "uint256"
			  }
			],
			"name": "Burned",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "bytes32",
				"name": "name",
				"type": "bytes32"
			  },
			  {
				"indexed": false,
				"internalType": "address",
				"name": "destination",
				"type": "address"
			  }
			],
			"name": "CacheUpdated",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": true,
				"internalType": "address",
				"name": "account",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "value",
				"type": "uint256"
			  }
			],
			"name": "Issued",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "address",
				"name": "oldOwner",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "address",
				"name": "newOwner",
				"type": "address"
			  }
			],
			"name": "OwnerChanged",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "address",
				"name": "newOwner",
				"type": "address"
			  }
			],
			"name": "OwnerNominated",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "address",
				"name": "proxyAddress",
				"type": "address"
			  }
			],
			"name": "ProxyUpdated",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "address",
				"name": "oldAggregator",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "address",
				"name": "newAggregator",
				"type": "address"
			  }
			],
			"name": "SetSyAggregator",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "address",
				"name": "newTokenState",
				"type": "address"
			  }
			],
			"name": "TokenStateUpdated",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": true,
				"internalType": "address",
				"name": "from",
				"type": "address"
			  },
			  {
				"indexed": true,
				"internalType": "address",
				"name": "to",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "value",
				"type": "uint256"
			  }
			],
			"name": "Transfer",
			"type": "event"
		  },
		  {
			"inputs": [],
			"name": "CONTRACT_NAME",
			"outputs": [
			  {
				"internalType": "bytes32",
				"name": "",
				"type": "bytes32"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "DECIMALS",
			"outputs": [
			  {
				"internalType": "uint8",
				"name": "",
				"type": "uint8"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "FEE_ADDRESS",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "acceptOwnership",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "owner",
				"type": "address"
			  },
			  {
				"internalType": "address",
				"name": "spender",
				"type": "address"
			  }
			],
			"name": "allowance",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "spender",
				"type": "address"
			  },
			  {
				"internalType": "uint256",
				"name": "value",
				"type": "uint256"
			  }
			],
			"name": "approve",
			"outputs": [
			  {
				"internalType": "bool",
				"name": "",
				"type": "bool"
			  }
			],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "account",
				"type": "address"
			  }
			],
			"name": "balanceOf",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "account",
				"type": "address"
			  },
			  {
				"internalType": "uint256",
				"name": "amount",
				"type": "uint256"
			  }
			],
			"name": "burn",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "currencyKey",
			"outputs": [
			  {
				"internalType": "bytes32",
				"name": "",
				"type": "bytes32"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "decimals",
			"outputs": [
			  {
				"internalType": "uint8",
				"name": "",
				"type": "uint8"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "isResolverCached",
			"outputs": [
			  {
				"internalType": "bool",
				"name": "",
				"type": "bool"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "account",
				"type": "address"
			  },
			  {
				"internalType": "uint256",
				"name": "amount",
				"type": "uint256"
			  }
			],
			"name": "issue",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "messageSender",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "name",
			"outputs": [
			  {
				"internalType": "string",
				"name": "",
				"type": "string"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "_owner",
				"type": "address"
			  }
			],
			"name": "nominateNewOwner",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "nominatedOwner",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "owner",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "proxy",
			"outputs": [
			  {
				"internalType": "contract Proxy",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "rebuildCache",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "resolver",
			"outputs": [
			  {
				"internalType": "contract AddressResolver",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "resolverAddressesRequired",
			"outputs": [
			  {
				"internalType": "bytes32[]",
				"name": "addresses",
				"type": "bytes32[]"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "sender",
				"type": "address"
			  }
			],
			"name": "setMessageSender",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address payable",
				"name": "_proxy",
				"type": "address"
			  }
			],
			"name": "setProxy",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "contract TokenState",
				"name": "_tokenState",
				"type": "address"
			  }
			],
			"name": "setTokenState",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "uint256",
				"name": "amount",
				"type": "uint256"
			  }
			],
			"name": "setTotalSupply",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "symbol",
			"outputs": [
			  {
				"internalType": "string",
				"name": "",
				"type": "string"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "tokenState",
			"outputs": [
			  {
				"internalType": "contract TokenState",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "totalSupply",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "to",
				"type": "address"
			  },
			  {
				"internalType": "uint256",
				"name": "value",
				"type": "uint256"
			  }
			],
			"name": "transfer",
			"outputs": [
			  {
				"internalType": "bool",
				"name": "",
				"type": "bool"
			  }
			],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "to",
				"type": "address"
			  },
			  {
				"internalType": "uint256",
				"name": "value",
				"type": "uint256"
			  }
			],
			"name": "transferAndSettle",
			"outputs": [
			  {
				"internalType": "bool",
				"name": "",
				"type": "bool"
			  }
			],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "from",
				"type": "address"
			  },
			  {
				"internalType": "address",
				"name": "to",
				"type": "address"
			  },
			  {
				"internalType": "uint256",
				"name": "value",
				"type": "uint256"
			  }
			],
			"name": "transferFrom",
			"outputs": [
			  {
				"internalType": "bool",
				"name": "",
				"type": "bool"
			  }
			],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "from",
				"type": "address"
			  },
			  {
				"internalType": "address",
				"name": "to",
				"type": "address"
			  },
			  {
				"internalType": "uint256",
				"name": "value",
				"type": "uint256"
			  }
			],
			"name": "transferFromAndSettle",
			"outputs": [
			  {
				"internalType": "bool",
				"name": "",
				"type": "bool"
			  }
			],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "account",
				"type": "address"
			  }
			],
			"name": "transferableSynths",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  }
		]
	  },
	  "MultiCollateralSynth": {
		"abi": [
		  {
			"inputs": [
			  {
				"internalType": "contract TokenState",
				"name": "_tokenState",
				"type": "address"
			  },
			  {
				"internalType": "string",
				"name": "_tokenName",
				"type": "string"
			  },
			  {
				"internalType": "string",
				"name": "_tokenSymbol",
				"type": "string"
			  },
			  {
				"internalType": "address",
				"name": "_owner",
				"type": "address"
			  },
			  {
				"internalType": "bytes32",
				"name": "_currencyKey",
				"type": "bytes32"
			  },
			  {
				"internalType": "uint256",
				"name": "_totalSupply",
				"type": "uint256"
			  },
			  {
				"internalType": "address",
				"name": "_resolver",
				"type": "address"
			  }
			],
			"stateMutability": "nonpayable",
			"type": "constructor"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": true,
				"internalType": "address",
				"name": "owner",
				"type": "address"
			  },
			  {
				"indexed": true,
				"internalType": "address",
				"name": "spender",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "value",
				"type": "uint256"
			  }
			],
			"name": "Approval",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "bytes32",
				"name": "name",
				"type": "bytes32"
			  },
			  {
				"indexed": false,
				"internalType": "address",
				"name": "destination",
				"type": "address"
			  }
			],
			"name": "CacheUpdated",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "address",
				"name": "oldOwner",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "address",
				"name": "newOwner",
				"type": "address"
			  }
			],
			"name": "OwnerChanged",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "address",
				"name": "newOwner",
				"type": "address"
			  }
			],
			"name": "OwnerNominated",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "address",
				"name": "newTokenState",
				"type": "address"
			  }
			],
			"name": "TokenStateUpdated",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": true,
				"internalType": "address",
				"name": "from",
				"type": "address"
			  },
			  {
				"indexed": true,
				"internalType": "address",
				"name": "to",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "value",
				"type": "uint256"
			  }
			],
			"name": "Transfer",
			"type": "event"
		  },
		  {
			"inputs": [],
			"name": "CONTRACT_NAME",
			"outputs": [
			  {
				"internalType": "bytes32",
				"name": "",
				"type": "bytes32"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "DECIMALS",
			"outputs": [
			  {
				"internalType": "uint8",
				"name": "",
				"type": "uint8"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "FEE_ADDRESS",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "acceptOwnership",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "owner",
				"type": "address"
			  },
			  {
				"internalType": "address",
				"name": "spender",
				"type": "address"
			  }
			],
			"name": "allowance",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "spender",
				"type": "address"
			  },
			  {
				"internalType": "uint256",
				"name": "value",
				"type": "uint256"
			  }
			],
			"name": "approve",
			"outputs": [
			  {
				"internalType": "bool",
				"name": "",
				"type": "bool"
			  }
			],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "account",
				"type": "address"
			  }
			],
			"name": "balanceOf",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "account",
				"type": "address"
			  },
			  {
				"internalType": "uint256",
				"name": "amount",
				"type": "uint256"
			  }
			],
			"name": "burn",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "currencyKey",
			"outputs": [
			  {
				"internalType": "bytes32",
				"name": "",
				"type": "bytes32"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "decimals",
			"outputs": [
			  {
				"internalType": "uint8",
				"name": "",
				"type": "uint8"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "isResolverCached",
			"outputs": [
			  {
				"internalType": "bool",
				"name": "",
				"type": "bool"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "account",
				"type": "address"
			  },
			  {
				"internalType": "uint256",
				"name": "amount",
				"type": "uint256"
			  }
			],
			"name": "issue",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "name",
			"outputs": [
			  {
				"internalType": "string",
				"name": "",
				"type": "string"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "_owner",
				"type": "address"
			  }
			],
			"name": "nominateNewOwner",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "nominatedOwner",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "owner",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "rebuildCache",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "resolver",
			"outputs": [
			  {
				"internalType": "contract AddressResolver",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "resolverAddressesRequired",
			"outputs": [
			  {
				"internalType": "bytes32[]",
				"name": "addresses",
				"type": "bytes32[]"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "contract TokenState",
				"name": "_tokenState",
				"type": "address"
			  }
			],
			"name": "setTokenState",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "uint256",
				"name": "amount",
				"type": "uint256"
			  }
			],
			"name": "setTotalSupply",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "symbol",
			"outputs": [
			  {
				"internalType": "string",
				"name": "",
				"type": "string"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "tokenState",
			"outputs": [
			  {
				"internalType": "contract TokenState",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "totalSupply",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "to",
				"type": "address"
			  },
			  {
				"internalType": "uint256",
				"name": "value",
				"type": "uint256"
			  }
			],
			"name": "transfer",
			"outputs": [
			  {
				"internalType": "bool",
				"name": "",
				"type": "bool"
			  }
			],
			"stateMutability": "payable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "to",
				"type": "address"
			  },
			  {
				"internalType": "uint256",
				"name": "value",
				"type": "uint256"
			  }
			],
			"name": "transferAndSettle",
			"outputs": [
			  {
				"internalType": "bool",
				"name": "",
				"type": "bool"
			  }
			],
			"stateMutability": "payable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "from",
				"type": "address"
			  },
			  {
				"internalType": "address",
				"name": "to",
				"type": "address"
			  },
			  {
				"internalType": "uint256",
				"name": "value",
				"type": "uint256"
			  }
			],
			"name": "transferFrom",
			"outputs": [
			  {
				"internalType": "bool",
				"name": "",
				"type": "bool"
			  }
			],
			"stateMutability": "payable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "from",
				"type": "address"
			  },
			  {
				"internalType": "address",
				"name": "to",
				"type": "address"
			  },
			  {
				"internalType": "uint256",
				"name": "value",
				"type": "uint256"
			  }
			],
			"name": "transferFromAndSettle",
			"outputs": [
			  {
				"internalType": "bool",
				"name": "",
				"type": "bool"
			  }
			],
			"stateMutability": "payable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "account",
				"type": "address"
			  }
			],
			"name": "transferableSynths",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  }
		]
	  },
	  "Depot": {
		"abi": [
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "_owner",
				"type": "address"
			  },
			  {
				"internalType": "address payable",
				"name": "_fundsWallet",
				"type": "address"
			  },
			  {
				"internalType": "address",
				"name": "_resolver",
				"type": "address"
			  }
			],
			"stateMutability": "nonpayable",
			"type": "constructor"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "bytes32",
				"name": "name",
				"type": "bytes32"
			  },
			  {
				"indexed": false,
				"internalType": "address",
				"name": "destination",
				"type": "address"
			  }
			],
			"name": "CacheUpdated",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": true,
				"internalType": "address",
				"name": "fromAddress",
				"type": "address"
			  },
			  {
				"indexed": true,
				"internalType": "address",
				"name": "toAddress",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "fromETHAmount",
				"type": "uint256"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "toAmount",
				"type": "uint256"
			  },
			  {
				"indexed": true,
				"internalType": "uint256",
				"name": "depositIndex",
				"type": "uint256"
			  }
			],
			"name": "ClearedDeposit",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "string",
				"name": "fromCurrency",
				"type": "string"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "fromAmount",
				"type": "uint256"
			  },
			  {
				"indexed": false,
				"internalType": "string",
				"name": "toCurrency",
				"type": "string"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "toAmount",
				"type": "uint256"
			  }
			],
			"name": "Exchange",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "address",
				"name": "newFundsWallet",
				"type": "address"
			  }
			],
			"name": "FundsWalletUpdated",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "amount",
				"type": "uint256"
			  }
			],
			"name": "MaxEthPurchaseUpdated",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "amount",
				"type": "uint256"
			  }
			],
			"name": "MinimumDepositAmountUpdated",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": true,
				"internalType": "address",
				"name": "receiver",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "amount",
				"type": "uint256"
			  }
			],
			"name": "NonPayableContract",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "address",
				"name": "oldOwner",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "address",
				"name": "newOwner",
				"type": "address"
			  }
			],
			"name": "OwnerChanged",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "address",
				"name": "newOwner",
				"type": "address"
			  }
			],
			"name": "OwnerNominated",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "bool",
				"name": "isPaused",
				"type": "bool"
			  }
			],
			"name": "PauseChanged",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": true,
				"internalType": "address",
				"name": "user",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "amount",
				"type": "uint256"
			  },
			  {
				"indexed": true,
				"internalType": "uint256",
				"name": "depositIndex",
				"type": "uint256"
			  }
			],
			"name": "SynthDeposit",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "address",
				"name": "user",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "amount",
				"type": "uint256"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "minimum",
				"type": "uint256"
			  }
			],
			"name": "SynthDepositNotAccepted",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": true,
				"internalType": "address",
				"name": "user",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "amount",
				"type": "uint256"
			  },
			  {
				"indexed": true,
				"internalType": "uint256",
				"name": "depositIndex",
				"type": "uint256"
			  }
			],
			"name": "SynthDepositRemoved",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "address",
				"name": "user",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "amount",
				"type": "uint256"
			  }
			],
			"name": "SynthWithdrawal",
			"type": "event"
		  },
		  {
			"inputs": [],
			"name": "acceptOwnership",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "depositEndIndex",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "depositStartIndex",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "uint256",
				"name": "amount",
				"type": "uint256"
			  }
			],
			"name": "depositSynths",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"name": "deposits",
			"outputs": [
			  {
				"internalType": "address payable",
				"name": "user",
				"type": "address"
			  },
			  {
				"internalType": "uint256",
				"name": "amount",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "exchangeEtherForSNX",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "payable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "uint256",
				"name": "guaranteedEtherRate",
				"type": "uint256"
			  },
			  {
				"internalType": "uint256",
				"name": "guaranteedSynthetixRate",
				"type": "uint256"
			  }
			],
			"name": "exchangeEtherForSNXAtRate",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "payable",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "exchangeEtherForSynths",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "payable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "uint256",
				"name": "guaranteedRate",
				"type": "uint256"
			  }
			],
			"name": "exchangeEtherForSynthsAtRate",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "payable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "uint256",
				"name": "synthAmount",
				"type": "uint256"
			  }
			],
			"name": "exchangeSynthsForSNX",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "uint256",
				"name": "synthAmount",
				"type": "uint256"
			  },
			  {
				"internalType": "uint256",
				"name": "guaranteedRate",
				"type": "uint256"
			  }
			],
			"name": "exchangeSynthsForSNXAtRate",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "fundsWallet",
			"outputs": [
			  {
				"internalType": "address payable",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "isResolverCached",
			"outputs": [
			  {
				"internalType": "bool",
				"name": "",
				"type": "bool"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "lastPauseTime",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "maxEthPurchase",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "minimumDepositAmount",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "_owner",
				"type": "address"
			  }
			],
			"name": "nominateNewOwner",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "nominatedOwner",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "owner",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "paused",
			"outputs": [
			  {
				"internalType": "bool",
				"name": "",
				"type": "bool"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "rebuildCache",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "resolver",
			"outputs": [
			  {
				"internalType": "contract AddressResolver",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "resolverAddressesRequired",
			"outputs": [
			  {
				"internalType": "bytes32[]",
				"name": "addresses",
				"type": "bytes32[]"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address payable",
				"name": "_fundsWallet",
				"type": "address"
			  }
			],
			"name": "setFundsWallet",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "uint256",
				"name": "_maxEthPurchase",
				"type": "uint256"
			  }
			],
			"name": "setMaxEthPurchase",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "uint256",
				"name": "_amount",
				"type": "uint256"
			  }
			],
			"name": "setMinimumDepositAmount",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bool",
				"name": "_paused",
				"type": "bool"
			  }
			],
			"name": "setPaused",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"name": "smallDeposits",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "uint256",
				"name": "amount",
				"type": "uint256"
			  }
			],
			"name": "synthetixReceivedForEther",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "uint256",
				"name": "amount",
				"type": "uint256"
			  }
			],
			"name": "synthetixReceivedForSynths",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "uint256",
				"name": "amount",
				"type": "uint256"
			  }
			],
			"name": "synthsReceivedForEther",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "totalSellableDeposits",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "withdrawMyDepositedSynths",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "uint256",
				"name": "amount",
				"type": "uint256"
			  }
			],
			"name": "withdrawSynthetix",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"stateMutability": "payable",
			"type": "receive"
		  }
		]
	  },
	  "EtherWrapper": {
		"abi": [
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "_owner",
				"type": "address"
			  },
			  {
				"internalType": "address",
				"name": "_resolver",
				"type": "address"
			  },
			  {
				"internalType": "address payable",
				"name": "_WETH",
				"type": "address"
			  }
			],
			"payable": false,
			"stateMutability": "nonpayable",
			"type": "constructor"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": true,
				"internalType": "address",
				"name": "account",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "principal",
				"type": "uint256"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "fee",
				"type": "uint256"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "amountIn",
				"type": "uint256"
			  }
			],
			"name": "Burned",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "bytes32",
				"name": "name",
				"type": "bytes32"
			  },
			  {
				"indexed": false,
				"internalType": "address",
				"name": "destination",
				"type": "address"
			  }
			],
			"name": "CacheUpdated",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": true,
				"internalType": "address",
				"name": "account",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "principal",
				"type": "uint256"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "fee",
				"type": "uint256"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "amountIn",
				"type": "uint256"
			  }
			],
			"name": "Minted",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "address",
				"name": "oldOwner",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "address",
				"name": "newOwner",
				"type": "address"
			  }
			],
			"name": "OwnerChanged",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "address",
				"name": "newOwner",
				"type": "address"
			  }
			],
			"name": "OwnerNominated",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "bool",
				"name": "isPaused",
				"type": "bool"
			  }
			],
			"name": "PauseChanged",
			"type": "event"
		  },
		  {
			"payable": true,
			"stateMutability": "payable",
			"type": "fallback"
		  },
		  {
			"constant": false,
			"inputs": [],
			"name": "acceptOwnership",
			"outputs": [],
			"payable": false,
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"constant": false,
			"inputs": [
			  {
				"internalType": "uint256",
				"name": "amountIn",
				"type": "uint256"
			  }
			],
			"name": "burn",
			"outputs": [],
			"payable": false,
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "burnFeeRate",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [
			  {
				"internalType": "uint256",
				"name": "amount",
				"type": "uint256"
			  }
			],
			"name": "calculateBurnFee",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [
			  {
				"internalType": "uint256",
				"name": "amount",
				"type": "uint256"
			  }
			],
			"name": "calculateMintFee",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "capacity",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "_capacity",
				"type": "uint256"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": false,
			"inputs": [],
			"name": "distributeFees",
			"outputs": [],
			"payable": false,
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "feesEscrowed",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "getReserves",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "isResolverCached",
			"outputs": [
			  {
				"internalType": "bool",
				"name": "",
				"type": "bool"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "lastPauseTime",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "maxETH",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": false,
			"inputs": [
			  {
				"internalType": "uint256",
				"name": "amountIn",
				"type": "uint256"
			  }
			],
			"name": "mint",
			"outputs": [],
			"payable": false,
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "mintFeeRate",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": false,
			"inputs": [
			  {
				"internalType": "address",
				"name": "_owner",
				"type": "address"
			  }
			],
			"name": "nominateNewOwner",
			"outputs": [],
			"payable": false,
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "nominatedOwner",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "owner",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "paused",
			"outputs": [
			  {
				"internalType": "bool",
				"name": "",
				"type": "bool"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": false,
			"inputs": [],
			"name": "rebuildCache",
			"outputs": [],
			"payable": false,
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "resolver",
			"outputs": [
			  {
				"internalType": "contract AddressResolver",
				"name": "",
				"type": "address"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "resolverAddressesRequired",
			"outputs": [
			  {
				"internalType": "bytes32[]",
				"name": "addresses",
				"type": "bytes32[]"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "sETHIssued",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "sUSDIssued",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": false,
			"inputs": [
			  {
				"internalType": "bool",
				"name": "_paused",
				"type": "bool"
			  }
			],
			"name": "setPaused",
			"outputs": [],
			"payable": false,
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "totalIssuedSynths",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "weth",
			"outputs": [
			  {
				"internalType": "contract IWETH",
				"name": "",
				"type": "address"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  }
		]
	  },
	  "NativeEtherWrapper": {
		"abi": [
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "_owner",
				"type": "address"
			  },
			  {
				"internalType": "address",
				"name": "_resolver",
				"type": "address"
			  }
			],
			"payable": false,
			"stateMutability": "nonpayable",
			"type": "constructor"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": true,
				"internalType": "address",
				"name": "account",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "amount",
				"type": "uint256"
			  }
			],
			"name": "Burned",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "bytes32",
				"name": "name",
				"type": "bytes32"
			  },
			  {
				"indexed": false,
				"internalType": "address",
				"name": "destination",
				"type": "address"
			  }
			],
			"name": "CacheUpdated",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": true,
				"internalType": "address",
				"name": "account",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "amount",
				"type": "uint256"
			  }
			],
			"name": "Minted",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "address",
				"name": "oldOwner",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "address",
				"name": "newOwner",
				"type": "address"
			  }
			],
			"name": "OwnerChanged",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "address",
				"name": "newOwner",
				"type": "address"
			  }
			],
			"name": "OwnerNominated",
			"type": "event"
		  },
		  {
			"payable": true,
			"stateMutability": "payable",
			"type": "fallback"
		  },
		  {
			"constant": false,
			"inputs": [],
			"name": "acceptOwnership",
			"outputs": [],
			"payable": false,
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"constant": false,
			"inputs": [
			  {
				"internalType": "uint256",
				"name": "amount",
				"type": "uint256"
			  }
			],
			"name": "burn",
			"outputs": [],
			"payable": false,
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "isResolverCached",
			"outputs": [
			  {
				"internalType": "bool",
				"name": "",
				"type": "bool"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": false,
			"inputs": [],
			"name": "mint",
			"outputs": [],
			"payable": true,
			"stateMutability": "payable",
			"type": "function"
		  },
		  {
			"constant": false,
			"inputs": [
			  {
				"internalType": "address",
				"name": "_owner",
				"type": "address"
			  }
			],
			"name": "nominateNewOwner",
			"outputs": [],
			"payable": false,
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "nominatedOwner",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "owner",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": false,
			"inputs": [],
			"name": "rebuildCache",
			"outputs": [],
			"payable": false,
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "resolver",
			"outputs": [
			  {
				"internalType": "contract AddressResolver",
				"name": "",
				"type": "address"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "resolverAddressesRequired",
			"outputs": [
			  {
				"internalType": "bytes32[]",
				"name": "addresses",
				"type": "bytes32[]"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  }
		]
	  },
	  "CollateralUtil": {
		"abi": [
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "_resolver",
				"type": "address"
			  }
			],
			"payable": false,
			"stateMutability": "nonpayable",
			"type": "constructor"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "bytes32",
				"name": "name",
				"type": "bytes32"
			  },
			  {
				"indexed": false,
				"internalType": "address",
				"name": "destination",
				"type": "address"
			  }
			],
			"name": "CacheUpdated",
			"type": "event"
		  },
		  {
			"constant": true,
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "currency",
				"type": "bytes32"
			  },
			  {
				"internalType": "uint256",
				"name": "amount",
				"type": "uint256"
			  },
			  {
				"internalType": "bytes32",
				"name": "collateralKey",
				"type": "bytes32"
			  }
			],
			"name": "collateralRedeemed",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "collateral",
				"type": "uint256"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [
			  {
				"components": [
				  {
					"internalType": "uint256",
					"name": "id",
					"type": "uint256"
				  },
				  {
					"internalType": "address payable",
					"name": "account",
					"type": "address"
				  },
				  {
					"internalType": "uint256",
					"name": "collateral",
					"type": "uint256"
				  },
				  {
					"internalType": "bytes32",
					"name": "currency",
					"type": "bytes32"
				  },
				  {
					"internalType": "uint256",
					"name": "amount",
					"type": "uint256"
				  },
				  {
					"internalType": "bool",
					"name": "short",
					"type": "bool"
				  },
				  {
					"internalType": "uint256",
					"name": "accruedInterest",
					"type": "uint256"
				  },
				  {
					"internalType": "uint256",
					"name": "interestIndex",
					"type": "uint256"
				  },
				  {
					"internalType": "uint256",
					"name": "lastInteraction",
					"type": "uint256"
				  }
				],
				"internalType": "struct ICollateralLoan.Loan",
				"name": "loan",
				"type": "tuple"
			  },
			  {
				"internalType": "bytes32",
				"name": "collateralKey",
				"type": "bytes32"
			  }
			],
			"name": "getCollateralRatio",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "cratio",
				"type": "uint256"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "isResolverCached",
			"outputs": [
			  {
				"internalType": "bool",
				"name": "",
				"type": "bool"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [
			  {
				"components": [
				  {
					"internalType": "uint256",
					"name": "id",
					"type": "uint256"
				  },
				  {
					"internalType": "address payable",
					"name": "account",
					"type": "address"
				  },
				  {
					"internalType": "uint256",
					"name": "collateral",
					"type": "uint256"
				  },
				  {
					"internalType": "bytes32",
					"name": "currency",
					"type": "bytes32"
				  },
				  {
					"internalType": "uint256",
					"name": "amount",
					"type": "uint256"
				  },
				  {
					"internalType": "bool",
					"name": "short",
					"type": "bool"
				  },
				  {
					"internalType": "uint256",
					"name": "accruedInterest",
					"type": "uint256"
				  },
				  {
					"internalType": "uint256",
					"name": "interestIndex",
					"type": "uint256"
				  },
				  {
					"internalType": "uint256",
					"name": "lastInteraction",
					"type": "uint256"
				  }
				],
				"internalType": "struct ICollateralLoan.Loan",
				"name": "loan",
				"type": "tuple"
			  },
			  {
				"internalType": "uint256",
				"name": "minCratio",
				"type": "uint256"
			  },
			  {
				"internalType": "bytes32",
				"name": "collateralKey",
				"type": "bytes32"
			  }
			],
			"name": "liquidationAmount",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "amount",
				"type": "uint256"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [
			  {
				"internalType": "uint256",
				"name": "amount",
				"type": "uint256"
			  },
			  {
				"internalType": "bytes32",
				"name": "currency",
				"type": "bytes32"
			  },
			  {
				"internalType": "uint256",
				"name": "minCratio",
				"type": "uint256"
			  },
			  {
				"internalType": "bytes32",
				"name": "collateralKey",
				"type": "bytes32"
			  }
			],
			"name": "maxLoan",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "max",
				"type": "uint256"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": false,
			"inputs": [],
			"name": "rebuildCache",
			"outputs": [],
			"payable": false,
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "resolver",
			"outputs": [
			  {
				"internalType": "contract AddressResolver",
				"name": "",
				"type": "address"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "resolverAddressesRequired",
			"outputs": [
			  {
				"internalType": "bytes32[]",
				"name": "addresses",
				"type": "bytes32[]"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  }
		]
	  },
	  "CollateralManagerState": {
		"abi": [
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "_owner",
				"type": "address"
			  },
			  {
				"internalType": "address",
				"name": "_associatedContract",
				"type": "address"
			  }
			],
			"stateMutability": "nonpayable",
			"type": "constructor"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "address",
				"name": "associatedContract",
				"type": "address"
			  }
			],
			"name": "AssociatedContractUpdated",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "address",
				"name": "oldOwner",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "address",
				"name": "newOwner",
				"type": "address"
			  }
			],
			"name": "OwnerChanged",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "address",
				"name": "newOwner",
				"type": "address"
			  }
			],
			"name": "OwnerNominated",
			"type": "event"
		  },
		  {
			"inputs": [],
			"name": "acceptOwnership",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "currency",
				"type": "bytes32"
			  }
			],
			"name": "addShortCurrency",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "associatedContract",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"name": "borrowRates",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "borrowRatesLastUpdated",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "synth",
				"type": "bytes32"
			  },
			  {
				"internalType": "uint256",
				"name": "amount",
				"type": "uint256"
			  }
			],
			"name": "decrementLongs",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "synth",
				"type": "bytes32"
			  },
			  {
				"internalType": "uint256",
				"name": "amount",
				"type": "uint256"
			  }
			],
			"name": "decrementShorts",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "uint256",
				"name": "index",
				"type": "uint256"
			  }
			],
			"name": "getRateAt",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "uint256",
				"name": "index",
				"type": "uint256"
			  }
			],
			"name": "getRatesAndTime",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "entryRate",
				"type": "uint256"
			  },
			  {
				"internalType": "uint256",
				"name": "lastRate",
				"type": "uint256"
			  },
			  {
				"internalType": "uint256",
				"name": "lastUpdated",
				"type": "uint256"
			  },
			  {
				"internalType": "uint256",
				"name": "newIndex",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "getRatesLength",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "currency",
				"type": "bytes32"
			  },
			  {
				"internalType": "uint256",
				"name": "index",
				"type": "uint256"
			  }
			],
			"name": "getShortRatesAndTime",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "entryRate",
				"type": "uint256"
			  },
			  {
				"internalType": "uint256",
				"name": "lastRate",
				"type": "uint256"
			  },
			  {
				"internalType": "uint256",
				"name": "lastUpdated",
				"type": "uint256"
			  },
			  {
				"internalType": "uint256",
				"name": "newIndex",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "currency",
				"type": "bytes32"
			  }
			],
			"name": "getShortRatesLength",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "synth",
				"type": "bytes32"
			  },
			  {
				"internalType": "uint256",
				"name": "amount",
				"type": "uint256"
			  }
			],
			"name": "incrementLongs",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "synth",
				"type": "bytes32"
			  },
			  {
				"internalType": "uint256",
				"name": "amount",
				"type": "uint256"
			  }
			],
			"name": "incrementShorts",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "incrementTotalLoans",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "synth",
				"type": "bytes32"
			  }
			],
			"name": "long",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "_owner",
				"type": "address"
			  }
			],
			"name": "nominateNewOwner",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "nominatedOwner",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "owner",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "ratesLastUpdated",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "currency",
				"type": "bytes32"
			  }
			],
			"name": "removeShortCurrency",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "_associatedContract",
				"type": "address"
			  }
			],
			"name": "setAssociatedContract",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "synth",
				"type": "bytes32"
			  }
			],
			"name": "short",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "",
				"type": "bytes32"
			  },
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"name": "shortRates",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "",
				"type": "bytes32"
			  }
			],
			"name": "shortRatesLastUpdated",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "",
				"type": "bytes32"
			  }
			],
			"name": "totalIssuedSynths",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "long",
				"type": "uint256"
			  },
			  {
				"internalType": "uint256",
				"name": "short",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "totalLoans",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "uint256",
				"name": "rate",
				"type": "uint256"
			  }
			],
			"name": "updateBorrowRates",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "currency",
				"type": "bytes32"
			  },
			  {
				"internalType": "uint256",
				"name": "rate",
				"type": "uint256"
			  }
			],
			"name": "updateShortRates",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  }
		]
	  },
	  "CollateralManager": {
		"abi": [
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "_owner",
				"type": "address"
			  },
			  {
				"internalType": "address",
				"name": "_resolver",
				"type": "address"
			  }
			],
			"stateMutability": "nonpayable",
			"type": "constructor"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "bytes32",
				"name": "name",
				"type": "bytes32"
			  },
			  {
				"indexed": false,
				"internalType": "address",
				"name": "destination",
				"type": "address"
			  }
			],
			"name": "CacheUpdated",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "address",
				"name": "_from",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "address",
				"name": "_collateral",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "_amount",
				"type": "uint256"
			  }
			],
			"name": "DepositCollateral",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "address",
				"name": "oldOwner",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "address",
				"name": "newOwner",
				"type": "address"
			  }
			],
			"name": "OwnerChanged",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "address",
				"name": "newOwner",
				"type": "address"
			  }
			],
			"name": "OwnerNominated",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "address",
				"name": "_to",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "address",
				"name": "_collateral",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "_amount",
				"type": "uint256"
			  }
			],
			"name": "WithdrawCollateral",
			"type": "event"
		  },
		  {
			"inputs": [],
			"name": "CONTRACT_NAME",
			"outputs": [
			  {
				"internalType": "bytes32",
				"name": "",
				"type": "bytes32"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "acceptOwnership",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "_from",
				"type": "address"
			  },
			  {
				"internalType": "address",
				"name": "_collateralCurrency",
				"type": "address"
			  },
			  {
				"internalType": "uint256",
				"name": "_collateralAmount",
				"type": "uint256"
			  }
			],
			"name": "depositeCollateral",
			"outputs": [],
			"stateMutability": "payable",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "isResolverCached",
			"outputs": [
			  {
				"internalType": "bool",
				"name": "",
				"type": "bool"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "_owner",
				"type": "address"
			  }
			],
			"name": "nominateNewOwner",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "nominatedOwner",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "owner",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "rebuildCache",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "resolver",
			"outputs": [
			  {
				"internalType": "contract AddressResolverLightChain",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "resolverAddressesRequired",
			"outputs": [
			  {
				"internalType": "bytes32[]",
				"name": "addresses",
				"type": "bytes32[]"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"name": "whiteList",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "_to",
				"type": "address"
			  },
			  {
				"internalType": "address",
				"name": "_collateralCurrency",
				"type": "address"
			  },
			  {
				"internalType": "uint256",
				"name": "_amount",
				"type": "uint256"
			  }
			],
			"name": "withdrawCollateral",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  }
		]
	  },
	  "CollateralEth": {
		"abi": [
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "_owner",
				"type": "address"
			  },
			  {
				"internalType": "contract ICollateralManager",
				"name": "_manager",
				"type": "address"
			  },
			  {
				"internalType": "address",
				"name": "_resolver",
				"type": "address"
			  },
			  {
				"internalType": "bytes32",
				"name": "_collateralKey",
				"type": "bytes32"
			  },
			  {
				"internalType": "uint256",
				"name": "_minCratio",
				"type": "uint256"
			  },
			  {
				"internalType": "uint256",
				"name": "_minCollateral",
				"type": "uint256"
			  }
			],
			"payable": false,
			"stateMutability": "nonpayable",
			"type": "constructor"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "bytes32",
				"name": "name",
				"type": "bytes32"
			  },
			  {
				"indexed": false,
				"internalType": "address",
				"name": "destination",
				"type": "address"
			  }
			],
			"name": "CacheUpdated",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "bool",
				"name": "canOpenLoans",
				"type": "bool"
			  }
			],
			"name": "CanOpenLoansUpdated",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": true,
				"internalType": "address",
				"name": "account",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "id",
				"type": "uint256"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "amountDeposited",
				"type": "uint256"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "collateralAfter",
				"type": "uint256"
			  }
			],
			"name": "CollateralDeposited",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": true,
				"internalType": "address",
				"name": "account",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "id",
				"type": "uint256"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "amountWithdrawn",
				"type": "uint256"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "collateralAfter",
				"type": "uint256"
			  }
			],
			"name": "CollateralWithdrawn",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "issueFeeRate",
				"type": "uint256"
			  }
			],
			"name": "IssueFeeRateUpdated",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": true,
				"internalType": "address",
				"name": "account",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "id",
				"type": "uint256"
			  }
			],
			"name": "LoanClosed",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": true,
				"internalType": "address",
				"name": "account",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "id",
				"type": "uint256"
			  },
			  {
				"indexed": true,
				"internalType": "address",
				"name": "liquidator",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "amountLiquidated",
				"type": "uint256"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "collateralLiquidated",
				"type": "uint256"
			  }
			],
			"name": "LoanClosedByLiquidation",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": true,
				"internalType": "address",
				"name": "account",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "id",
				"type": "uint256"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "amountRepaid",
				"type": "uint256"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "collateralAfter",
				"type": "uint256"
			  }
			],
			"name": "LoanClosedByRepayment",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": true,
				"internalType": "address",
				"name": "account",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "id",
				"type": "uint256"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "amount",
				"type": "uint256"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "collateral",
				"type": "uint256"
			  },
			  {
				"indexed": false,
				"internalType": "bytes32",
				"name": "currency",
				"type": "bytes32"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "issuanceFee",
				"type": "uint256"
			  }
			],
			"name": "LoanCreated",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": true,
				"internalType": "address",
				"name": "account",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "id",
				"type": "uint256"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "amount",
				"type": "uint256"
			  }
			],
			"name": "LoanDrawnDown",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": true,
				"internalType": "address",
				"name": "account",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "id",
				"type": "uint256"
			  },
			  {
				"indexed": false,
				"internalType": "address",
				"name": "liquidator",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "amountLiquidated",
				"type": "uint256"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "collateralLiquidated",
				"type": "uint256"
			  }
			],
			"name": "LoanPartiallyLiquidated",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": true,
				"internalType": "address",
				"name": "account",
				"type": "address"
			  },
			  {
				"indexed": true,
				"internalType": "address",
				"name": "repayer",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "id",
				"type": "uint256"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "amountRepaid",
				"type": "uint256"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "amountAfter",
				"type": "uint256"
			  }
			],
			"name": "LoanRepaymentMade",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "minCollateral",
				"type": "uint256"
			  }
			],
			"name": "MinCollateralUpdated",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "address",
				"name": "oldOwner",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "address",
				"name": "newOwner",
				"type": "address"
			  }
			],
			"name": "OwnerChanged",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "address",
				"name": "newOwner",
				"type": "address"
			  }
			],
			"name": "OwnerNominated",
			"type": "event"
		  },
		  {
			"constant": false,
			"inputs": [],
			"name": "acceptOwnership",
			"outputs": [],
			"payable": false,
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"constant": false,
			"inputs": [
			  {
				"internalType": "address",
				"name": "rewardsContract",
				"type": "address"
			  },
			  {
				"internalType": "bytes32",
				"name": "synth",
				"type": "bytes32"
			  }
			],
			"name": "addRewardsContracts",
			"outputs": [],
			"payable": false,
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"constant": false,
			"inputs": [
			  {
				"internalType": "bytes32[]",
				"name": "_synthNamesInResolver",
				"type": "bytes32[]"
			  },
			  {
				"internalType": "bytes32[]",
				"name": "_synthKeys",
				"type": "bytes32[]"
			  }
			],
			"name": "addSynths",
			"outputs": [],
			"payable": false,
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [
			  {
				"internalType": "bytes32[]",
				"name": "_synthNamesInResolver",
				"type": "bytes32[]"
			  },
			  {
				"internalType": "bytes32[]",
				"name": "_synthKeys",
				"type": "bytes32[]"
			  }
			],
			"name": "areSynthsAndCurrenciesSet",
			"outputs": [
			  {
				"internalType": "bool",
				"name": "",
				"type": "bool"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "canOpenLoans",
			"outputs": [
			  {
				"internalType": "bool",
				"name": "",
				"type": "bool"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "collateralKey",
			"outputs": [
			  {
				"internalType": "bytes32",
				"name": "",
				"type": "bytes32"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [
			  {
				"internalType": "uint256",
				"name": "id",
				"type": "uint256"
			  }
			],
			"name": "collateralRatio",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "cratio",
				"type": "uint256"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "isResolverCached",
			"outputs": [
			  {
				"internalType": "bool",
				"name": "",
				"type": "bool"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "issueFeeRate",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [
			  {
				"internalType": "uint256",
				"name": "id",
				"type": "uint256"
			  }
			],
			"name": "liquidationAmount",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "liqAmount",
				"type": "uint256"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"name": "loans",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "id",
				"type": "uint256"
			  },
			  {
				"internalType": "address payable",
				"name": "account",
				"type": "address"
			  },
			  {
				"internalType": "uint256",
				"name": "collateral",
				"type": "uint256"
			  },
			  {
				"internalType": "bytes32",
				"name": "currency",
				"type": "bytes32"
			  },
			  {
				"internalType": "uint256",
				"name": "amount",
				"type": "uint256"
			  },
			  {
				"internalType": "bool",
				"name": "short",
				"type": "bool"
			  },
			  {
				"internalType": "uint256",
				"name": "accruedInterest",
				"type": "uint256"
			  },
			  {
				"internalType": "uint256",
				"name": "interestIndex",
				"type": "uint256"
			  },
			  {
				"internalType": "uint256",
				"name": "lastInteraction",
				"type": "uint256"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "manager",
			"outputs": [
			  {
				"internalType": "contract ICollateralManager",
				"name": "",
				"type": "address"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [
			  {
				"internalType": "uint256",
				"name": "amount",
				"type": "uint256"
			  },
			  {
				"internalType": "bytes32",
				"name": "currency",
				"type": "bytes32"
			  }
			],
			"name": "maxLoan",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "max",
				"type": "uint256"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "minCollateral",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "minCratio",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": false,
			"inputs": [
			  {
				"internalType": "address",
				"name": "_owner",
				"type": "address"
			  }
			],
			"name": "nominateNewOwner",
			"outputs": [],
			"payable": false,
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "nominatedOwner",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "owner",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"name": "pendingWithdrawals",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": false,
			"inputs": [],
			"name": "rebuildCache",
			"outputs": [],
			"payable": false,
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "resolver",
			"outputs": [
			  {
				"internalType": "contract AddressResolver",
				"name": "",
				"type": "address"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "resolverAddressesRequired",
			"outputs": [
			  {
				"internalType": "bytes32[]",
				"name": "addresses",
				"type": "bytes32[]"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": false,
			"inputs": [
			  {
				"internalType": "bool",
				"name": "_canOpenLoans",
				"type": "bool"
			  }
			],
			"name": "setCanOpenLoans",
			"outputs": [],
			"payable": false,
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"constant": false,
			"inputs": [
			  {
				"internalType": "uint256",
				"name": "_issueFeeRate",
				"type": "uint256"
			  }
			],
			"name": "setIssueFeeRate",
			"outputs": [],
			"payable": false,
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"constant": false,
			"inputs": [
			  {
				"internalType": "uint256",
				"name": "_minCollateral",
				"type": "uint256"
			  }
			],
			"name": "setMinCollateral",
			"outputs": [],
			"payable": false,
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "",
				"type": "bytes32"
			  }
			],
			"name": "shortingRewards",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"name": "synths",
			"outputs": [
			  {
				"internalType": "bytes32",
				"name": "",
				"type": "bytes32"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "",
				"type": "bytes32"
			  }
			],
			"name": "synthsByKey",
			"outputs": [
			  {
				"internalType": "bytes32",
				"name": "",
				"type": "bytes32"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": false,
			"inputs": [
			  {
				"internalType": "uint256",
				"name": "amount",
				"type": "uint256"
			  },
			  {
				"internalType": "bytes32",
				"name": "currency",
				"type": "bytes32"
			  }
			],
			"name": "open",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "id",
				"type": "uint256"
			  }
			],
			"payable": true,
			"stateMutability": "payable",
			"type": "function"
		  },
		  {
			"constant": false,
			"inputs": [
			  {
				"internalType": "uint256",
				"name": "id",
				"type": "uint256"
			  }
			],
			"name": "close",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "amount",
				"type": "uint256"
			  },
			  {
				"internalType": "uint256",
				"name": "collateral",
				"type": "uint256"
			  }
			],
			"payable": false,
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"constant": false,
			"inputs": [
			  {
				"internalType": "address",
				"name": "borrower",
				"type": "address"
			  },
			  {
				"internalType": "uint256",
				"name": "id",
				"type": "uint256"
			  }
			],
			"name": "deposit",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "principal",
				"type": "uint256"
			  },
			  {
				"internalType": "uint256",
				"name": "collateral",
				"type": "uint256"
			  }
			],
			"payable": true,
			"stateMutability": "payable",
			"type": "function"
		  },
		  {
			"constant": false,
			"inputs": [
			  {
				"internalType": "uint256",
				"name": "id",
				"type": "uint256"
			  },
			  {
				"internalType": "uint256",
				"name": "amount",
				"type": "uint256"
			  }
			],
			"name": "withdraw",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "principal",
				"type": "uint256"
			  },
			  {
				"internalType": "uint256",
				"name": "collateral",
				"type": "uint256"
			  }
			],
			"payable": false,
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"constant": false,
			"inputs": [
			  {
				"internalType": "address",
				"name": "borrower",
				"type": "address"
			  },
			  {
				"internalType": "uint256",
				"name": "id",
				"type": "uint256"
			  },
			  {
				"internalType": "uint256",
				"name": "amount",
				"type": "uint256"
			  }
			],
			"name": "repay",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "principal",
				"type": "uint256"
			  },
			  {
				"internalType": "uint256",
				"name": "collateral",
				"type": "uint256"
			  }
			],
			"payable": false,
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"constant": false,
			"inputs": [
			  {
				"internalType": "uint256",
				"name": "id",
				"type": "uint256"
			  },
			  {
				"internalType": "uint256",
				"name": "amount",
				"type": "uint256"
			  }
			],
			"name": "draw",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "principal",
				"type": "uint256"
			  },
			  {
				"internalType": "uint256",
				"name": "collateral",
				"type": "uint256"
			  }
			],
			"payable": false,
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"constant": false,
			"inputs": [
			  {
				"internalType": "address",
				"name": "borrower",
				"type": "address"
			  },
			  {
				"internalType": "uint256",
				"name": "id",
				"type": "uint256"
			  },
			  {
				"internalType": "uint256",
				"name": "amount",
				"type": "uint256"
			  }
			],
			"name": "liquidate",
			"outputs": [],
			"payable": false,
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"constant": false,
			"inputs": [
			  {
				"internalType": "uint256",
				"name": "amount",
				"type": "uint256"
			  }
			],
			"name": "claim",
			"outputs": [],
			"payable": false,
			"stateMutability": "nonpayable",
			"type": "function"
		  }
		]
	  },
	  "CollateralErc20": {
		"abi": [
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "_owner",
				"type": "address"
			  },
			  {
				"internalType": "contract ICollateralManager",
				"name": "_manager",
				"type": "address"
			  },
			  {
				"internalType": "address",
				"name": "_resolver",
				"type": "address"
			  },
			  {
				"internalType": "bytes32",
				"name": "_collateralKey",
				"type": "bytes32"
			  },
			  {
				"internalType": "uint256",
				"name": "_minCratio",
				"type": "uint256"
			  },
			  {
				"internalType": "uint256",
				"name": "_minCollateral",
				"type": "uint256"
			  },
			  {
				"internalType": "address",
				"name": "_underlyingContract",
				"type": "address"
			  },
			  {
				"internalType": "uint256",
				"name": "_underlyingDecimals",
				"type": "uint256"
			  }
			],
			"payable": false,
			"stateMutability": "nonpayable",
			"type": "constructor"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "bytes32",
				"name": "name",
				"type": "bytes32"
			  },
			  {
				"indexed": false,
				"internalType": "address",
				"name": "destination",
				"type": "address"
			  }
			],
			"name": "CacheUpdated",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "bool",
				"name": "canOpenLoans",
				"type": "bool"
			  }
			],
			"name": "CanOpenLoansUpdated",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": true,
				"internalType": "address",
				"name": "account",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "id",
				"type": "uint256"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "amountDeposited",
				"type": "uint256"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "collateralAfter",
				"type": "uint256"
			  }
			],
			"name": "CollateralDeposited",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": true,
				"internalType": "address",
				"name": "account",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "id",
				"type": "uint256"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "amountWithdrawn",
				"type": "uint256"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "collateralAfter",
				"type": "uint256"
			  }
			],
			"name": "CollateralWithdrawn",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "issueFeeRate",
				"type": "uint256"
			  }
			],
			"name": "IssueFeeRateUpdated",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": true,
				"internalType": "address",
				"name": "account",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "id",
				"type": "uint256"
			  }
			],
			"name": "LoanClosed",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": true,
				"internalType": "address",
				"name": "account",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "id",
				"type": "uint256"
			  },
			  {
				"indexed": true,
				"internalType": "address",
				"name": "liquidator",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "amountLiquidated",
				"type": "uint256"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "collateralLiquidated",
				"type": "uint256"
			  }
			],
			"name": "LoanClosedByLiquidation",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": true,
				"internalType": "address",
				"name": "account",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "id",
				"type": "uint256"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "amountRepaid",
				"type": "uint256"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "collateralAfter",
				"type": "uint256"
			  }
			],
			"name": "LoanClosedByRepayment",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": true,
				"internalType": "address",
				"name": "account",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "id",
				"type": "uint256"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "amount",
				"type": "uint256"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "collateral",
				"type": "uint256"
			  },
			  {
				"indexed": false,
				"internalType": "bytes32",
				"name": "currency",
				"type": "bytes32"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "issuanceFee",
				"type": "uint256"
			  }
			],
			"name": "LoanCreated",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": true,
				"internalType": "address",
				"name": "account",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "id",
				"type": "uint256"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "amount",
				"type": "uint256"
			  }
			],
			"name": "LoanDrawnDown",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": true,
				"internalType": "address",
				"name": "account",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "id",
				"type": "uint256"
			  },
			  {
				"indexed": false,
				"internalType": "address",
				"name": "liquidator",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "amountLiquidated",
				"type": "uint256"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "collateralLiquidated",
				"type": "uint256"
			  }
			],
			"name": "LoanPartiallyLiquidated",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": true,
				"internalType": "address",
				"name": "account",
				"type": "address"
			  },
			  {
				"indexed": true,
				"internalType": "address",
				"name": "repayer",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "id",
				"type": "uint256"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "amountRepaid",
				"type": "uint256"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "amountAfter",
				"type": "uint256"
			  }
			],
			"name": "LoanRepaymentMade",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "minCollateral",
				"type": "uint256"
			  }
			],
			"name": "MinCollateralUpdated",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "address",
				"name": "oldOwner",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "address",
				"name": "newOwner",
				"type": "address"
			  }
			],
			"name": "OwnerChanged",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "address",
				"name": "newOwner",
				"type": "address"
			  }
			],
			"name": "OwnerNominated",
			"type": "event"
		  },
		  {
			"constant": false,
			"inputs": [],
			"name": "acceptOwnership",
			"outputs": [],
			"payable": false,
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"constant": false,
			"inputs": [
			  {
				"internalType": "address",
				"name": "rewardsContract",
				"type": "address"
			  },
			  {
				"internalType": "bytes32",
				"name": "synth",
				"type": "bytes32"
			  }
			],
			"name": "addRewardsContracts",
			"outputs": [],
			"payable": false,
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"constant": false,
			"inputs": [
			  {
				"internalType": "bytes32[]",
				"name": "_synthNamesInResolver",
				"type": "bytes32[]"
			  },
			  {
				"internalType": "bytes32[]",
				"name": "_synthKeys",
				"type": "bytes32[]"
			  }
			],
			"name": "addSynths",
			"outputs": [],
			"payable": false,
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [
			  {
				"internalType": "bytes32[]",
				"name": "_synthNamesInResolver",
				"type": "bytes32[]"
			  },
			  {
				"internalType": "bytes32[]",
				"name": "_synthKeys",
				"type": "bytes32[]"
			  }
			],
			"name": "areSynthsAndCurrenciesSet",
			"outputs": [
			  {
				"internalType": "bool",
				"name": "",
				"type": "bool"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "canOpenLoans",
			"outputs": [
			  {
				"internalType": "bool",
				"name": "",
				"type": "bool"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "collateralKey",
			"outputs": [
			  {
				"internalType": "bytes32",
				"name": "",
				"type": "bytes32"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [
			  {
				"internalType": "uint256",
				"name": "id",
				"type": "uint256"
			  }
			],
			"name": "collateralRatio",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "cratio",
				"type": "uint256"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "isResolverCached",
			"outputs": [
			  {
				"internalType": "bool",
				"name": "",
				"type": "bool"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "issueFeeRate",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [
			  {
				"internalType": "uint256",
				"name": "id",
				"type": "uint256"
			  }
			],
			"name": "liquidationAmount",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "liqAmount",
				"type": "uint256"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"name": "loans",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "id",
				"type": "uint256"
			  },
			  {
				"internalType": "address payable",
				"name": "account",
				"type": "address"
			  },
			  {
				"internalType": "uint256",
				"name": "collateral",
				"type": "uint256"
			  },
			  {
				"internalType": "bytes32",
				"name": "currency",
				"type": "bytes32"
			  },
			  {
				"internalType": "uint256",
				"name": "amount",
				"type": "uint256"
			  },
			  {
				"internalType": "bool",
				"name": "short",
				"type": "bool"
			  },
			  {
				"internalType": "uint256",
				"name": "accruedInterest",
				"type": "uint256"
			  },
			  {
				"internalType": "uint256",
				"name": "interestIndex",
				"type": "uint256"
			  },
			  {
				"internalType": "uint256",
				"name": "lastInteraction",
				"type": "uint256"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "manager",
			"outputs": [
			  {
				"internalType": "contract ICollateralManager",
				"name": "",
				"type": "address"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [
			  {
				"internalType": "uint256",
				"name": "amount",
				"type": "uint256"
			  },
			  {
				"internalType": "bytes32",
				"name": "currency",
				"type": "bytes32"
			  }
			],
			"name": "maxLoan",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "max",
				"type": "uint256"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "minCollateral",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "minCratio",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": false,
			"inputs": [
			  {
				"internalType": "address",
				"name": "_owner",
				"type": "address"
			  }
			],
			"name": "nominateNewOwner",
			"outputs": [],
			"payable": false,
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "nominatedOwner",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "owner",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": false,
			"inputs": [],
			"name": "rebuildCache",
			"outputs": [],
			"payable": false,
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "resolver",
			"outputs": [
			  {
				"internalType": "contract AddressResolver",
				"name": "",
				"type": "address"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "resolverAddressesRequired",
			"outputs": [
			  {
				"internalType": "bytes32[]",
				"name": "addresses",
				"type": "bytes32[]"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": false,
			"inputs": [
			  {
				"internalType": "bool",
				"name": "_canOpenLoans",
				"type": "bool"
			  }
			],
			"name": "setCanOpenLoans",
			"outputs": [],
			"payable": false,
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"constant": false,
			"inputs": [
			  {
				"internalType": "uint256",
				"name": "_issueFeeRate",
				"type": "uint256"
			  }
			],
			"name": "setIssueFeeRate",
			"outputs": [],
			"payable": false,
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"constant": false,
			"inputs": [
			  {
				"internalType": "uint256",
				"name": "_minCollateral",
				"type": "uint256"
			  }
			],
			"name": "setMinCollateral",
			"outputs": [],
			"payable": false,
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "",
				"type": "bytes32"
			  }
			],
			"name": "shortingRewards",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"name": "synths",
			"outputs": [
			  {
				"internalType": "bytes32",
				"name": "",
				"type": "bytes32"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "",
				"type": "bytes32"
			  }
			],
			"name": "synthsByKey",
			"outputs": [
			  {
				"internalType": "bytes32",
				"name": "",
				"type": "bytes32"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "underlyingContract",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "underlyingContractDecimals",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": false,
			"inputs": [
			  {
				"internalType": "uint256",
				"name": "collateral",
				"type": "uint256"
			  },
			  {
				"internalType": "uint256",
				"name": "amount",
				"type": "uint256"
			  },
			  {
				"internalType": "bytes32",
				"name": "currency",
				"type": "bytes32"
			  }
			],
			"name": "open",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "id",
				"type": "uint256"
			  }
			],
			"payable": false,
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"constant": false,
			"inputs": [
			  {
				"internalType": "uint256",
				"name": "id",
				"type": "uint256"
			  }
			],
			"name": "close",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "amount",
				"type": "uint256"
			  },
			  {
				"internalType": "uint256",
				"name": "collateral",
				"type": "uint256"
			  }
			],
			"payable": false,
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"constant": false,
			"inputs": [
			  {
				"internalType": "address",
				"name": "borrower",
				"type": "address"
			  },
			  {
				"internalType": "uint256",
				"name": "id",
				"type": "uint256"
			  },
			  {
				"internalType": "uint256",
				"name": "amount",
				"type": "uint256"
			  }
			],
			"name": "deposit",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "principal",
				"type": "uint256"
			  },
			  {
				"internalType": "uint256",
				"name": "collateral",
				"type": "uint256"
			  }
			],
			"payable": false,
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"constant": false,
			"inputs": [
			  {
				"internalType": "uint256",
				"name": "id",
				"type": "uint256"
			  },
			  {
				"internalType": "uint256",
				"name": "amount",
				"type": "uint256"
			  }
			],
			"name": "withdraw",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "principal",
				"type": "uint256"
			  },
			  {
				"internalType": "uint256",
				"name": "collateral",
				"type": "uint256"
			  }
			],
			"payable": false,
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"constant": false,
			"inputs": [
			  {
				"internalType": "address",
				"name": "borrower",
				"type": "address"
			  },
			  {
				"internalType": "uint256",
				"name": "id",
				"type": "uint256"
			  },
			  {
				"internalType": "uint256",
				"name": "amount",
				"type": "uint256"
			  }
			],
			"name": "repay",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "principal",
				"type": "uint256"
			  },
			  {
				"internalType": "uint256",
				"name": "collateral",
				"type": "uint256"
			  }
			],
			"payable": false,
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"constant": false,
			"inputs": [
			  {
				"internalType": "uint256",
				"name": "id",
				"type": "uint256"
			  },
			  {
				"internalType": "uint256",
				"name": "amount",
				"type": "uint256"
			  }
			],
			"name": "draw",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "principal",
				"type": "uint256"
			  },
			  {
				"internalType": "uint256",
				"name": "collateral",
				"type": "uint256"
			  }
			],
			"payable": false,
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"constant": false,
			"inputs": [
			  {
				"internalType": "address",
				"name": "borrower",
				"type": "address"
			  },
			  {
				"internalType": "uint256",
				"name": "id",
				"type": "uint256"
			  },
			  {
				"internalType": "uint256",
				"name": "amount",
				"type": "uint256"
			  }
			],
			"name": "liquidate",
			"outputs": [],
			"payable": false,
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [
			  {
				"internalType": "uint256",
				"name": "collateral",
				"type": "uint256"
			  }
			],
			"name": "scaleUpCollateral",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "scaledUp",
				"type": "uint256"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [
			  {
				"internalType": "uint256",
				"name": "collateral",
				"type": "uint256"
			  }
			],
			"name": "scaleDownCollateral",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "scaledDown",
				"type": "uint256"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  }
		]
	  },
	  "CollateralShort": {
		"abi": [
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "_owner",
				"type": "address"
			  },
			  {
				"internalType": "contract ICollateralManager",
				"name": "_manager",
				"type": "address"
			  },
			  {
				"internalType": "address",
				"name": "_resolver",
				"type": "address"
			  },
			  {
				"internalType": "bytes32",
				"name": "_collateralKey",
				"type": "bytes32"
			  },
			  {
				"internalType": "uint256",
				"name": "_minCratio",
				"type": "uint256"
			  },
			  {
				"internalType": "uint256",
				"name": "_minCollateral",
				"type": "uint256"
			  }
			],
			"payable": false,
			"stateMutability": "nonpayable",
			"type": "constructor"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "bytes32",
				"name": "name",
				"type": "bytes32"
			  },
			  {
				"indexed": false,
				"internalType": "address",
				"name": "destination",
				"type": "address"
			  }
			],
			"name": "CacheUpdated",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "bool",
				"name": "canOpenLoans",
				"type": "bool"
			  }
			],
			"name": "CanOpenLoansUpdated",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": true,
				"internalType": "address",
				"name": "account",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "id",
				"type": "uint256"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "amountDeposited",
				"type": "uint256"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "collateralAfter",
				"type": "uint256"
			  }
			],
			"name": "CollateralDeposited",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": true,
				"internalType": "address",
				"name": "account",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "id",
				"type": "uint256"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "amountWithdrawn",
				"type": "uint256"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "collateralAfter",
				"type": "uint256"
			  }
			],
			"name": "CollateralWithdrawn",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "issueFeeRate",
				"type": "uint256"
			  }
			],
			"name": "IssueFeeRateUpdated",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": true,
				"internalType": "address",
				"name": "account",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "id",
				"type": "uint256"
			  }
			],
			"name": "LoanClosed",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": true,
				"internalType": "address",
				"name": "account",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "id",
				"type": "uint256"
			  },
			  {
				"indexed": true,
				"internalType": "address",
				"name": "liquidator",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "amountLiquidated",
				"type": "uint256"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "collateralLiquidated",
				"type": "uint256"
			  }
			],
			"name": "LoanClosedByLiquidation",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": true,
				"internalType": "address",
				"name": "account",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "id",
				"type": "uint256"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "amountRepaid",
				"type": "uint256"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "collateralAfter",
				"type": "uint256"
			  }
			],
			"name": "LoanClosedByRepayment",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": true,
				"internalType": "address",
				"name": "account",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "id",
				"type": "uint256"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "amount",
				"type": "uint256"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "collateral",
				"type": "uint256"
			  },
			  {
				"indexed": false,
				"internalType": "bytes32",
				"name": "currency",
				"type": "bytes32"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "issuanceFee",
				"type": "uint256"
			  }
			],
			"name": "LoanCreated",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": true,
				"internalType": "address",
				"name": "account",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "id",
				"type": "uint256"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "amount",
				"type": "uint256"
			  }
			],
			"name": "LoanDrawnDown",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": true,
				"internalType": "address",
				"name": "account",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "id",
				"type": "uint256"
			  },
			  {
				"indexed": false,
				"internalType": "address",
				"name": "liquidator",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "amountLiquidated",
				"type": "uint256"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "collateralLiquidated",
				"type": "uint256"
			  }
			],
			"name": "LoanPartiallyLiquidated",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": true,
				"internalType": "address",
				"name": "account",
				"type": "address"
			  },
			  {
				"indexed": true,
				"internalType": "address",
				"name": "repayer",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "id",
				"type": "uint256"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "amountRepaid",
				"type": "uint256"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "amountAfter",
				"type": "uint256"
			  }
			],
			"name": "LoanRepaymentMade",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "minCollateral",
				"type": "uint256"
			  }
			],
			"name": "MinCollateralUpdated",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "address",
				"name": "oldOwner",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "address",
				"name": "newOwner",
				"type": "address"
			  }
			],
			"name": "OwnerChanged",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "address",
				"name": "newOwner",
				"type": "address"
			  }
			],
			"name": "OwnerNominated",
			"type": "event"
		  },
		  {
			"constant": false,
			"inputs": [],
			"name": "acceptOwnership",
			"outputs": [],
			"payable": false,
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"constant": false,
			"inputs": [
			  {
				"internalType": "address",
				"name": "rewardsContract",
				"type": "address"
			  },
			  {
				"internalType": "bytes32",
				"name": "synth",
				"type": "bytes32"
			  }
			],
			"name": "addRewardsContracts",
			"outputs": [],
			"payable": false,
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"constant": false,
			"inputs": [
			  {
				"internalType": "bytes32[]",
				"name": "_synthNamesInResolver",
				"type": "bytes32[]"
			  },
			  {
				"internalType": "bytes32[]",
				"name": "_synthKeys",
				"type": "bytes32[]"
			  }
			],
			"name": "addSynths",
			"outputs": [],
			"payable": false,
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [
			  {
				"internalType": "bytes32[]",
				"name": "_synthNamesInResolver",
				"type": "bytes32[]"
			  },
			  {
				"internalType": "bytes32[]",
				"name": "_synthKeys",
				"type": "bytes32[]"
			  }
			],
			"name": "areSynthsAndCurrenciesSet",
			"outputs": [
			  {
				"internalType": "bool",
				"name": "",
				"type": "bool"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "canOpenLoans",
			"outputs": [
			  {
				"internalType": "bool",
				"name": "",
				"type": "bool"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": false,
			"inputs": [
			  {
				"internalType": "uint256",
				"name": "id",
				"type": "uint256"
			  }
			],
			"name": "close",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "amount",
				"type": "uint256"
			  },
			  {
				"internalType": "uint256",
				"name": "collateral",
				"type": "uint256"
			  }
			],
			"payable": false,
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"constant": false,
			"inputs": [
			  {
				"internalType": "uint256",
				"name": "id",
				"type": "uint256"
			  }
			],
			"name": "closeWithCollateral",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "amount",
				"type": "uint256"
			  },
			  {
				"internalType": "uint256",
				"name": "collateral",
				"type": "uint256"
			  }
			],
			"payable": false,
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "collateralKey",
			"outputs": [
			  {
				"internalType": "bytes32",
				"name": "",
				"type": "bytes32"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [
			  {
				"internalType": "uint256",
				"name": "id",
				"type": "uint256"
			  }
			],
			"name": "collateralRatio",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "cratio",
				"type": "uint256"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": false,
			"inputs": [
			  {
				"internalType": "address",
				"name": "borrower",
				"type": "address"
			  },
			  {
				"internalType": "uint256",
				"name": "id",
				"type": "uint256"
			  },
			  {
				"internalType": "uint256",
				"name": "amount",
				"type": "uint256"
			  }
			],
			"name": "deposit",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "principal",
				"type": "uint256"
			  },
			  {
				"internalType": "uint256",
				"name": "collateral",
				"type": "uint256"
			  }
			],
			"payable": false,
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"constant": false,
			"inputs": [
			  {
				"internalType": "uint256",
				"name": "id",
				"type": "uint256"
			  },
			  {
				"internalType": "uint256",
				"name": "amount",
				"type": "uint256"
			  }
			],
			"name": "draw",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "principal",
				"type": "uint256"
			  },
			  {
				"internalType": "uint256",
				"name": "collateral",
				"type": "uint256"
			  }
			],
			"payable": false,
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  },
			  {
				"internalType": "uint256",
				"name": "id",
				"type": "uint256"
			  }
			],
			"name": "getShortAndCollateral",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "principal",
				"type": "uint256"
			  },
			  {
				"internalType": "uint256",
				"name": "collateral",
				"type": "uint256"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "isResolverCached",
			"outputs": [
			  {
				"internalType": "bool",
				"name": "",
				"type": "bool"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "issueFeeRate",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": false,
			"inputs": [
			  {
				"internalType": "address",
				"name": "borrower",
				"type": "address"
			  },
			  {
				"internalType": "uint256",
				"name": "id",
				"type": "uint256"
			  },
			  {
				"internalType": "uint256",
				"name": "amount",
				"type": "uint256"
			  }
			],
			"name": "liquidate",
			"outputs": [],
			"payable": false,
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [
			  {
				"internalType": "uint256",
				"name": "id",
				"type": "uint256"
			  }
			],
			"name": "liquidationAmount",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "liqAmount",
				"type": "uint256"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"name": "loans",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "id",
				"type": "uint256"
			  },
			  {
				"internalType": "address payable",
				"name": "account",
				"type": "address"
			  },
			  {
				"internalType": "uint256",
				"name": "collateral",
				"type": "uint256"
			  },
			  {
				"internalType": "bytes32",
				"name": "currency",
				"type": "bytes32"
			  },
			  {
				"internalType": "uint256",
				"name": "amount",
				"type": "uint256"
			  },
			  {
				"internalType": "bool",
				"name": "short",
				"type": "bool"
			  },
			  {
				"internalType": "uint256",
				"name": "accruedInterest",
				"type": "uint256"
			  },
			  {
				"internalType": "uint256",
				"name": "interestIndex",
				"type": "uint256"
			  },
			  {
				"internalType": "uint256",
				"name": "lastInteraction",
				"type": "uint256"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "manager",
			"outputs": [
			  {
				"internalType": "contract ICollateralManager",
				"name": "",
				"type": "address"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [
			  {
				"internalType": "uint256",
				"name": "amount",
				"type": "uint256"
			  },
			  {
				"internalType": "bytes32",
				"name": "currency",
				"type": "bytes32"
			  }
			],
			"name": "maxLoan",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "max",
				"type": "uint256"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "minCollateral",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "minCratio",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": false,
			"inputs": [
			  {
				"internalType": "address",
				"name": "_owner",
				"type": "address"
			  }
			],
			"name": "nominateNewOwner",
			"outputs": [],
			"payable": false,
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "nominatedOwner",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": false,
			"inputs": [
			  {
				"internalType": "uint256",
				"name": "collateral",
				"type": "uint256"
			  },
			  {
				"internalType": "uint256",
				"name": "amount",
				"type": "uint256"
			  },
			  {
				"internalType": "bytes32",
				"name": "currency",
				"type": "bytes32"
			  }
			],
			"name": "open",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "id",
				"type": "uint256"
			  }
			],
			"payable": false,
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "owner",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": false,
			"inputs": [],
			"name": "rebuildCache",
			"outputs": [],
			"payable": false,
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"constant": false,
			"inputs": [
			  {
				"internalType": "address",
				"name": "borrower",
				"type": "address"
			  },
			  {
				"internalType": "uint256",
				"name": "id",
				"type": "uint256"
			  },
			  {
				"internalType": "uint256",
				"name": "amount",
				"type": "uint256"
			  }
			],
			"name": "repay",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "principal",
				"type": "uint256"
			  },
			  {
				"internalType": "uint256",
				"name": "collateral",
				"type": "uint256"
			  }
			],
			"payable": false,
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"constant": false,
			"inputs": [
			  {
				"internalType": "uint256",
				"name": "id",
				"type": "uint256"
			  },
			  {
				"internalType": "uint256",
				"name": "amount",
				"type": "uint256"
			  }
			],
			"name": "repayWithCollateral",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "principal",
				"type": "uint256"
			  },
			  {
				"internalType": "uint256",
				"name": "collateral",
				"type": "uint256"
			  }
			],
			"payable": false,
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "resolver",
			"outputs": [
			  {
				"internalType": "contract AddressResolver",
				"name": "",
				"type": "address"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [],
			"name": "resolverAddressesRequired",
			"outputs": [
			  {
				"internalType": "bytes32[]",
				"name": "addresses",
				"type": "bytes32[]"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": false,
			"inputs": [
			  {
				"internalType": "bool",
				"name": "_canOpenLoans",
				"type": "bool"
			  }
			],
			"name": "setCanOpenLoans",
			"outputs": [],
			"payable": false,
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"constant": false,
			"inputs": [
			  {
				"internalType": "uint256",
				"name": "_issueFeeRate",
				"type": "uint256"
			  }
			],
			"name": "setIssueFeeRate",
			"outputs": [],
			"payable": false,
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"constant": false,
			"inputs": [
			  {
				"internalType": "uint256",
				"name": "_minCollateral",
				"type": "uint256"
			  }
			],
			"name": "setMinCollateral",
			"outputs": [],
			"payable": false,
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "",
				"type": "bytes32"
			  }
			],
			"name": "shortingRewards",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"name": "synths",
			"outputs": [
			  {
				"internalType": "bytes32",
				"name": "",
				"type": "bytes32"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": true,
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "",
				"type": "bytes32"
			  }
			],
			"name": "synthsByKey",
			"outputs": [
			  {
				"internalType": "bytes32",
				"name": "",
				"type": "bytes32"
			  }
			],
			"payable": false,
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"constant": false,
			"inputs": [
			  {
				"internalType": "uint256",
				"name": "id",
				"type": "uint256"
			  },
			  {
				"internalType": "uint256",
				"name": "amount",
				"type": "uint256"
			  }
			],
			"name": "withdraw",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "principal",
				"type": "uint256"
			  },
			  {
				"internalType": "uint256",
				"name": "collateral",
				"type": "uint256"
			  }
			],
			"payable": false,
			"stateMutability": "nonpayable",
			"type": "function"
		  }
		]
	  },
	  "EmptyFuturesMarketManager": {
		"abi": [
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "_owner",
				"type": "address"
			  },
			  {
				"internalType": "address",
				"name": "_resolver",
				"type": "address"
			  }
			],
			"stateMutability": "nonpayable",
			"type": "constructor"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "bytes32",
				"name": "name",
				"type": "bytes32"
			  },
			  {
				"indexed": false,
				"internalType": "address",
				"name": "destination",
				"type": "address"
			  }
			],
			"name": "CacheUpdated",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "address",
				"name": "market",
				"type": "address"
			  },
			  {
				"indexed": true,
				"internalType": "bytes32",
				"name": "asset",
				"type": "bytes32"
			  },
			  {
				"indexed": true,
				"internalType": "bytes32",
				"name": "marketKey",
				"type": "bytes32"
			  }
			],
			"name": "MarketAdded",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "address",
				"name": "market",
				"type": "address"
			  },
			  {
				"indexed": true,
				"internalType": "bytes32",
				"name": "asset",
				"type": "bytes32"
			  },
			  {
				"indexed": true,
				"internalType": "bytes32",
				"name": "marketKey",
				"type": "bytes32"
			  }
			],
			"name": "MarketRemoved",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "address",
				"name": "oldOwner",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "address",
				"name": "newOwner",
				"type": "address"
			  }
			],
			"name": "OwnerChanged",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "address",
				"name": "newOwner",
				"type": "address"
			  }
			],
			"name": "OwnerNominated",
			"type": "event"
		  },
		  {
			"inputs": [],
			"name": "CONTRACT_NAME",
			"outputs": [
			  {
				"internalType": "bytes32",
				"name": "",
				"type": "bytes32"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "acceptOwnership",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address[]",
				"name": "marketsToAdd",
				"type": "address[]"
			  }
			],
			"name": "addMarkets",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "allMarketSummaries",
			"outputs": [
			  {
				"components": [
				  {
					"internalType": "address",
					"name": "market",
					"type": "address"
				  },
				  {
					"internalType": "bytes32",
					"name": "asset",
					"type": "bytes32"
				  },
				  {
					"internalType": "bytes32",
					"name": "marketKey",
					"type": "bytes32"
				  },
				  {
					"internalType": "uint256",
					"name": "price",
					"type": "uint256"
				  },
				  {
					"internalType": "uint256",
					"name": "marketSize",
					"type": "uint256"
				  },
				  {
					"internalType": "int256",
					"name": "marketSkew",
					"type": "int256"
				  },
				  {
					"internalType": "uint256",
					"name": "marketDebt",
					"type": "uint256"
				  },
				  {
					"internalType": "int256",
					"name": "currentFundingRate",
					"type": "int256"
				  },
				  {
					"internalType": "bool",
					"name": "priceInvalid",
					"type": "bool"
				  }
				],
				"internalType": "struct FuturesMarketManager.MarketSummary[]",
				"name": "",
				"type": "tuple[]"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "allMarkets",
			"outputs": [
			  {
				"internalType": "address[]",
				"name": "",
				"type": "address[]"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "account",
				"type": "address"
			  },
			  {
				"internalType": "uint256",
				"name": "amount",
				"type": "uint256"
			  }
			],
			"name": "burnSUSD",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "postReclamationAmount",
				"type": "uint256"
			  }
			],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "isResolverCached",
			"outputs": [
			  {
				"internalType": "bool",
				"name": "",
				"type": "bool"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "account",
				"type": "address"
			  },
			  {
				"internalType": "uint256",
				"name": "amount",
				"type": "uint256"
			  }
			],
			"name": "issueSUSD",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "",
				"type": "bytes32"
			  }
			],
			"name": "marketForKey",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address[]",
				"name": "addresses",
				"type": "address[]"
			  }
			],
			"name": "marketSummaries",
			"outputs": [
			  {
				"components": [
				  {
					"internalType": "address",
					"name": "market",
					"type": "address"
				  },
				  {
					"internalType": "bytes32",
					"name": "asset",
					"type": "bytes32"
				  },
				  {
					"internalType": "bytes32",
					"name": "marketKey",
					"type": "bytes32"
				  },
				  {
					"internalType": "uint256",
					"name": "price",
					"type": "uint256"
				  },
				  {
					"internalType": "uint256",
					"name": "marketSize",
					"type": "uint256"
				  },
				  {
					"internalType": "int256",
					"name": "marketSkew",
					"type": "int256"
				  },
				  {
					"internalType": "uint256",
					"name": "marketDebt",
					"type": "uint256"
				  },
				  {
					"internalType": "int256",
					"name": "currentFundingRate",
					"type": "int256"
				  },
				  {
					"internalType": "bool",
					"name": "priceInvalid",
					"type": "bool"
				  }
				],
				"internalType": "struct FuturesMarketManager.MarketSummary[]",
				"name": "",
				"type": "tuple[]"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32[]",
				"name": "marketKeys",
				"type": "bytes32[]"
			  }
			],
			"name": "marketSummariesForKeys",
			"outputs": [
			  {
				"components": [
				  {
					"internalType": "address",
					"name": "market",
					"type": "address"
				  },
				  {
					"internalType": "bytes32",
					"name": "asset",
					"type": "bytes32"
				  },
				  {
					"internalType": "bytes32",
					"name": "marketKey",
					"type": "bytes32"
				  },
				  {
					"internalType": "uint256",
					"name": "price",
					"type": "uint256"
				  },
				  {
					"internalType": "uint256",
					"name": "marketSize",
					"type": "uint256"
				  },
				  {
					"internalType": "int256",
					"name": "marketSkew",
					"type": "int256"
				  },
				  {
					"internalType": "uint256",
					"name": "marketDebt",
					"type": "uint256"
				  },
				  {
					"internalType": "int256",
					"name": "currentFundingRate",
					"type": "int256"
				  },
				  {
					"internalType": "bool",
					"name": "priceInvalid",
					"type": "bool"
				  }
				],
				"internalType": "struct FuturesMarketManager.MarketSummary[]",
				"name": "",
				"type": "tuple[]"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "uint256",
				"name": "index",
				"type": "uint256"
			  },
			  {
				"internalType": "uint256",
				"name": "pageSize",
				"type": "uint256"
			  }
			],
			"name": "markets",
			"outputs": [
			  {
				"internalType": "address[]",
				"name": "",
				"type": "address[]"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32[]",
				"name": "marketKeys",
				"type": "bytes32[]"
			  }
			],
			"name": "marketsForKeys",
			"outputs": [
			  {
				"internalType": "address[]",
				"name": "",
				"type": "address[]"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "_owner",
				"type": "address"
			  }
			],
			"name": "nominateNewOwner",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "nominatedOwner",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "numMarkets",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "owner",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "uint256",
				"name": "amount",
				"type": "uint256"
			  },
			  {
				"internalType": "bytes32",
				"name": "trackingCode",
				"type": "bytes32"
			  }
			],
			"name": "payFee",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "uint256",
				"name": "amount",
				"type": "uint256"
			  }
			],
			"name": "payFee",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "rebuildCache",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address[]",
				"name": "marketsToRemove",
				"type": "address[]"
			  }
			],
			"name": "removeMarkets",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32[]",
				"name": "marketKeysToRemove",
				"type": "bytes32[]"
			  }
			],
			"name": "removeMarketsByKey",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "resolver",
			"outputs": [
			  {
				"internalType": "contract AddressResolver",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "resolverAddressesRequired",
			"outputs": [
			  {
				"internalType": "bytes32[]",
				"name": "addresses",
				"type": "bytes32[]"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "totalDebt",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "debt",
				"type": "uint256"
			  },
			  {
				"internalType": "bool",
				"name": "isInvalid",
				"type": "bool"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  }
		]
	  },
	  "SynthUtil": {
		"abi": [
		  {
			"inputs": [
			  { "internalType": "address", "name": "resolver", "type": "address" }
			],
			"stateMutability": "nonpayable",
			"type": "constructor"
		  },
		  {
			"inputs": [],
			"name": "addressResolverProxy",
			"outputs": [
			  {
				"internalType": "contract IAddressResolver",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  { "internalType": "address", "name": "account", "type": "address" }
			],
			"name": "synthsBalances",
			"outputs": [
			  { "internalType": "bytes32[]", "name": "", "type": "bytes32[]" },
			  { "internalType": "uint256[]", "name": "", "type": "uint256[]" },
			  { "internalType": "uint256[]", "name": "", "type": "uint256[]" }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "synthsRates",
			"outputs": [
			  { "internalType": "bytes32[]", "name": "", "type": "bytes32[]" },
			  { "internalType": "uint256[]", "name": "", "type": "uint256[]" }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "synthsTotalSupplies",
			"outputs": [
			  { "internalType": "bytes32[]", "name": "", "type": "bytes32[]" },
			  { "internalType": "uint256[]", "name": "", "type": "uint256[]" },
			  { "internalType": "uint256[]", "name": "", "type": "uint256[]" }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  { "internalType": "address", "name": "account", "type": "address" },
			  { "internalType": "bytes32", "name": "currencyKey", "type": "bytes32" }
			],
			"name": "totalSynthsInKey",
			"outputs": [
			  { "internalType": "uint256", "name": "total", "type": "uint256" }
			],
			"stateMutability": "view",
			"type": "function"
		  }
		]
	  },
	  "DappMaintenance": {
		"abi": [
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "_owner",
				"type": "address"
			  }
			],
			"stateMutability": "nonpayable",
			"type": "constructor"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "address",
				"name": "oldOwner",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "address",
				"name": "newOwner",
				"type": "address"
			  }
			],
			"name": "OwnerChanged",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "address",
				"name": "newOwner",
				"type": "address"
			  }
			],
			"name": "OwnerNominated",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "bool",
				"name": "isPaused",
				"type": "bool"
			  }
			],
			"name": "SXMaintenance",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "bool",
				"name": "isPaused",
				"type": "bool"
			  }
			],
			"name": "StakingMaintenance",
			"type": "event"
		  },
		  {
			"inputs": [],
			"name": "acceptOwnership",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "isPausedSX",
			"outputs": [
			  {
				"internalType": "bool",
				"name": "",
				"type": "bool"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "isPausedStaking",
			"outputs": [
			  {
				"internalType": "bool",
				"name": "",
				"type": "bool"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "_owner",
				"type": "address"
			  }
			],
			"name": "nominateNewOwner",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "nominatedOwner",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "owner",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bool",
				"name": "isPaused",
				"type": "bool"
			  }
			],
			"name": "setMaintenanceModeAll",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bool",
				"name": "isPaused",
				"type": "bool"
			  }
			],
			"name": "setMaintenanceModeSX",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bool",
				"name": "isPaused",
				"type": "bool"
			  }
			],
			"name": "setMaintenanceModeStaking",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  }
		]
	  },
	  "IssuedSynthAggregator": {
		"abi": [
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "_owner",
				"type": "address"
			  },
			  {
				"internalType": "address",
				"name": "_resolver",
				"type": "address"
			  }
			],
			"stateMutability": "nonpayable",
			"type": "constructor"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "bytes32",
				"name": "name",
				"type": "bytes32"
			  },
			  {
				"indexed": false,
				"internalType": "address",
				"name": "destination",
				"type": "address"
			  }
			],
			"name": "CacheUpdated",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "address",
				"name": "oldOwner",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "address",
				"name": "newOwner",
				"type": "address"
			  }
			],
			"name": "OwnerChanged",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "address",
				"name": "newOwner",
				"type": "address"
			  }
			],
			"name": "OwnerNominated",
			"type": "event"
		  },
		  {
			"inputs": [],
			"name": "CONTRACT_NAME",
			"outputs": [
			  {
				"internalType": "bytes32",
				"name": "",
				"type": "bytes32"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "acceptOwnership",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "isResolverCached",
			"outputs": [
			  {
				"internalType": "bool",
				"name": "",
				"type": "bool"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "_owner",
				"type": "address"
			  }
			],
			"name": "nominateNewOwner",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "nominatedOwner",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "owner",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "rebuildCache",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "resolver",
			"outputs": [
			  {
				"internalType": "contract AddressResolver",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "resolverAddressesRequired",
			"outputs": [
			  {
				"internalType": "bytes32[]",
				"name": "addresses",
				"type": "bytes32[]"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "currencyKey",
				"type": "bytes32"
			  }
			],
			"name": "totalIssuedSynthPerAsset",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "_issuedSynth",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "totalIssuedSynths",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "_issuedSynths",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  }
		]
	  },
	  "LiquidatorRewardsManager": {
		"abi": [
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "_owner",
				"type": "address"
			  },
			  {
				"internalType": "address",
				"name": "_resolver",
				"type": "address"
			  }
			],
			"stateMutability": "nonpayable",
			"type": "constructor"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "bytes32",
				"name": "collateralKey",
				"type": "bytes32"
			  },
			  {
				"indexed": false,
				"internalType": "contract ILiquidatorRewards",
				"name": "liquidateReward",
				"type": "address"
			  }
			],
			"name": "AddLiquidatorRewards",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "bytes32",
				"name": "name",
				"type": "bytes32"
			  },
			  {
				"indexed": false,
				"internalType": "address",
				"name": "destination",
				"type": "address"
			  }
			],
			"name": "CacheUpdated",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "address",
				"name": "oldOwner",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "address",
				"name": "newOwner",
				"type": "address"
			  }
			],
			"name": "OwnerChanged",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "address",
				"name": "newOwner",
				"type": "address"
			  }
			],
			"name": "OwnerNominated",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "bytes32",
				"name": "collateralKey",
				"type": "bytes32"
			  },
			  {
				"indexed": false,
				"internalType": "contract ILiquidatorRewards",
				"name": "oldLiquidateReward",
				"type": "address"
			  }
			],
			"name": "RemoveLiquidatorRewards",
			"type": "event"
		  },
		  {
			"inputs": [],
			"name": "CONTRACT_NAME",
			"outputs": [
			  {
				"internalType": "bytes32",
				"name": "",
				"type": "bytes32"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "acceptOwnership",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "collateralKey",
				"type": "bytes32"
			  },
			  {
				"internalType": "contract ILiquidatorRewards",
				"name": "liquidateReward",
				"type": "address"
			  }
			],
			"name": "addLiquidatorRewards",
			"outputs": [
			  {
				"internalType": "bool",
				"name": "",
				"type": "bool"
			  }
			],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "key",
				"type": "bytes32"
			  }
			],
			"name": "getLiquidateReward",
			"outputs": [
			  {
				"internalType": "contract ILiquidatorRewards",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "getLiquidateRewards",
			"outputs": [
			  {
				"internalType": "bytes32[]",
				"name": "",
				"type": "bytes32[]"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "isResolverCached",
			"outputs": [
			  {
				"internalType": "bool",
				"name": "",
				"type": "bool"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "",
				"type": "bytes32"
			  }
			],
			"name": "liquidateRewards",
			"outputs": [
			  {
				"internalType": "contract ILiquidatorRewards",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "_owner",
				"type": "address"
			  }
			],
			"name": "nominateNewOwner",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "nominatedOwner",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "owner",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "rebuildCache",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "collateralKey",
				"type": "bytes32"
			  }
			],
			"name": "removeLiquidatorRewards",
			"outputs": [
			  {
				"internalType": "bool",
				"name": "",
				"type": "bool"
			  }
			],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "resolver",
			"outputs": [
			  {
				"internalType": "contract AddressResolver",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "resolverAddressesRequired",
			"outputs": [
			  {
				"internalType": "bytes32[]",
				"name": "addresses",
				"type": "bytes32[]"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "account",
				"type": "address"
			  }
			],
			"name": "totalLiquidateEarned",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "account",
				"type": "address"
			  }
			],
			"name": "totalLiquidateEarnedOnChain",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "_totalLiquidates",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "currencyKey",
				"type": "bytes32"
			  },
			  {
				"internalType": "address",
				"name": "account",
				"type": "address"
			  }
			],
			"name": "totalLiquidateEarnedPerCurrencyKey",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "totalLiquidatesBalanceOnChain",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "_totalLiquidates",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "account",
				"type": "address"
			  }
			],
			"name": "updateEntry",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  }
		]
	  },
	  "RewardEscrowV2Manager": {
		"abi": [
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "_owner",
				"type": "address"
			  },
			  {
				"internalType": "address",
				"name": "_resolver",
				"type": "address"
			  }
			],
			"stateMutability": "nonpayable",
			"type": "constructor"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "bytes32",
				"name": "collateralKey",
				"type": "bytes32"
			  },
			  {
				"indexed": false,
				"internalType": "contract IRewardEscrowV2",
				"name": "rewardEscrow",
				"type": "address"
			  }
			],
			"name": "AddRewardEscrows",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "bytes32",
				"name": "name",
				"type": "bytes32"
			  },
			  {
				"indexed": false,
				"internalType": "address",
				"name": "destination",
				"type": "address"
			  }
			],
			"name": "CacheUpdated",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "address",
				"name": "oldOwner",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "address",
				"name": "newOwner",
				"type": "address"
			  }
			],
			"name": "OwnerChanged",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "address",
				"name": "newOwner",
				"type": "address"
			  }
			],
			"name": "OwnerNominated",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "bytes32",
				"name": "collateralKey",
				"type": "bytes32"
			  },
			  {
				"indexed": false,
				"internalType": "contract IRewardEscrowV2",
				"name": "oldRewardEscrow",
				"type": "address"
			  }
			],
			"name": "RemoveRewardEscrows",
			"type": "event"
		  },
		  {
			"inputs": [],
			"name": "CONTRACT_NAME",
			"outputs": [
			  {
				"internalType": "bytes32",
				"name": "",
				"type": "bytes32"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "acceptOwnership",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "collateralKey",
				"type": "bytes32"
			  },
			  {
				"internalType": "contract IRewardEscrowV2",
				"name": "rewardEscrow",
				"type": "address"
			  }
			],
			"name": "addRewardEscrows",
			"outputs": [
			  {
				"internalType": "bool",
				"name": "",
				"type": "bool"
			  }
			],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "key",
				"type": "bytes32"
			  }
			],
			"name": "getRewardEscrow",
			"outputs": [
			  {
				"internalType": "contract IRewardEscrowV2",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "getRewardEscrows",
			"outputs": [
			  {
				"internalType": "bytes32[]",
				"name": "",
				"type": "bytes32[]"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "isResolverCached",
			"outputs": [
			  {
				"internalType": "bool",
				"name": "",
				"type": "bool"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "_owner",
				"type": "address"
			  }
			],
			"name": "nominateNewOwner",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "nominatedOwner",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "owner",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "rebuildCache",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "collateralKey",
				"type": "bytes32"
			  }
			],
			"name": "removeRewardEscrows",
			"outputs": [
			  {
				"internalType": "bool",
				"name": "",
				"type": "bool"
			  }
			],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "resolver",
			"outputs": [
			  {
				"internalType": "contract AddressResolver",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "resolverAddressesRequired",
			"outputs": [
			  {
				"internalType": "bytes32[]",
				"name": "addresses",
				"type": "bytes32[]"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "",
				"type": "bytes32"
			  }
			],
			"name": "rewardEscrows",
			"outputs": [
			  {
				"internalType": "contract IRewardEscrowV2",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "account",
				"type": "address"
			  }
			],
			"name": "totalBalanceOf",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "_totalBalanceOf",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "currencyKey",
				"type": "bytes32"
			  },
			  {
				"internalType": "address",
				"name": "account",
				"type": "address"
			  }
			],
			"name": "totalBalanceOfByKey",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "_totalBalanceOf",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "currencyKey",
				"type": "bytes32"
			  },
			  {
				"internalType": "address",
				"name": "account",
				"type": "address"
			  }
			],
			"name": "totalBalanceOfByKeyOnChain",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "_totalBalance",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "account",
				"type": "address"
			  }
			],
			"name": "totalBalanceOfOnChain",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "_totalBalance",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "totalEscrowedBalance",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "_totalEscrowedBalance",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "currencyKey",
				"type": "bytes32"
			  }
			],
			"name": "totalEscrowedBalanceByKey",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "_totalEscrowedBalance",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  }
		]
	  },
	  "SynthrBridge": {
		"abi": [
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "_lzEndpoint",
				"type": "address"
			  }
			],
			"stateMutability": "nonpayable",
			"type": "constructor"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "uint16",
				"name": "_srcChainId",
				"type": "uint16"
			  },
			  {
				"indexed": false,
				"internalType": "bytes",
				"name": "_srcAddress",
				"type": "bytes"
			  },
			  {
				"indexed": false,
				"internalType": "uint64",
				"name": "_nonce",
				"type": "uint64"
			  },
			  {
				"indexed": false,
				"internalType": "bytes",
				"name": "_payload",
				"type": "bytes"
			  },
			  {
				"indexed": false,
				"internalType": "bytes",
				"name": "_reason",
				"type": "bytes"
			  }
			],
			"name": "MessageFailed",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": true,
				"internalType": "address",
				"name": "previousOwner",
				"type": "address"
			  },
			  {
				"indexed": true,
				"internalType": "address",
				"name": "newOwner",
				"type": "address"
			  }
			],
			"name": "OwnershipTransferred",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": true,
				"internalType": "uint16",
				"name": "packetType",
				"type": "uint16"
			  },
			  {
				"indexed": true,
				"internalType": "uint16",
				"name": "srcChainId",
				"type": "uint16"
			  },
			  {
				"indexed": false,
				"internalType": "uint64",
				"name": "nonce",
				"type": "uint64"
			  }
			],
			"name": "ReceivePacket",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "uint16",
				"name": "_srcChainId",
				"type": "uint16"
			  },
			  {
				"indexed": false,
				"internalType": "bytes",
				"name": "_srcAddress",
				"type": "bytes"
			  },
			  {
				"indexed": false,
				"internalType": "uint64",
				"name": "_nonce",
				"type": "uint64"
			  },
			  {
				"indexed": false,
				"internalType": "bytes32",
				"name": "_payloadHash",
				"type": "bytes32"
			  }
			],
			"name": "RetryMessageSuccess",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": true,
				"internalType": "uint16",
				"name": "packetType",
				"type": "uint16"
			  },
			  {
				"indexed": true,
				"internalType": "uint16",
				"name": "dstChainId",
				"type": "uint16"
			  },
			  {
				"indexed": false,
				"internalType": "uint64",
				"name": "nonce",
				"type": "uint64"
			  }
			],
			"name": "SendPacket",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "uint16",
				"name": "_dstChainId",
				"type": "uint16"
			  },
			  {
				"indexed": false,
				"internalType": "uint16",
				"name": "_type",
				"type": "uint16"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "_minDstGas",
				"type": "uint256"
			  }
			],
			"name": "SetMinDstGas",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "address",
				"name": "precrime",
				"type": "address"
			  }
			],
			"name": "SetPrecrime",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "uint16",
				"name": "_remoteChainId",
				"type": "uint16"
			  },
			  {
				"indexed": false,
				"internalType": "bytes",
				"name": "_path",
				"type": "bytes"
			  }
			],
			"name": "SetTrustedRemote",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "uint16",
				"name": "_remoteChainId",
				"type": "uint16"
			  },
			  {
				"indexed": false,
				"internalType": "bytes",
				"name": "_remoteAddress",
				"type": "bytes"
			  }
			],
			"name": "SetTrustedRemoteAddress",
			"type": "event"
		  },
		  {
			"inputs": [],
			"name": "_synthrAddressResolver",
			"outputs": [
			  { "internalType": "address", "name": "", "type": "address" }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  { "internalType": "bytes", "name": "lzPayload", "type": "bytes" },
			  {
				"internalType": "uint16",
				"name": "packetType",
				"type": "uint16"
			  },
			  { "internalType": "uint16", "name": "dstChainId", "type": "uint16" }
			],
			"name": "calcLZFee",
			"outputs": [
			  { "internalType": "uint256", "name": "lzFee", "type": "uint256" }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  { "internalType": "uint16", "name": "", "type": "uint16" },
			  { "internalType": "bytes", "name": "", "type": "bytes" },
			  { "internalType": "uint64", "name": "", "type": "uint64" }
			],
			"name": "failedMessages",
			"outputs": [
			  { "internalType": "bytes32", "name": "", "type": "bytes32" }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "uint16",
				"name": "_srcChainId",
				"type": "uint16"
			  },
			  { "internalType": "bytes", "name": "_srcAddress", "type": "bytes" }
			],
			"name": "forceResumeReceive",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  { "internalType": "uint16", "name": "_version", "type": "uint16" },
			  { "internalType": "uint16", "name": "_chainId", "type": "uint16" },
			  { "internalType": "address", "name": "", "type": "address" },
			  {
				"internalType": "uint256",
				"name": "_configType",
				"type": "uint256"
			  }
			],
			"name": "getConfig",
			"outputs": [{ "internalType": "bytes", "name": "", "type": "bytes" }],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "uint16",
				"name": "_remoteChainId",
				"type": "uint16"
			  }
			],
			"name": "getTrustedRemoteAddress",
			"outputs": [{ "internalType": "bytes", "name": "", "type": "bytes" }],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "__synthrAddressResolver",
				"type": "address"
			  },
			  {
				"internalType": "uint16",
				"name": "__mainChainId",
				"type": "uint16"
			  }
			],
			"name": "initialize",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "uint16",
				"name": "_srcChainId",
				"type": "uint16"
			  },
			  { "internalType": "bytes", "name": "_srcAddress", "type": "bytes" }
			],
			"name": "isTrustedRemote",
			"outputs": [{ "internalType": "bool", "name": "", "type": "bool" }],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "lzEndpoint",
			"outputs": [
			  {
				"internalType": "contract ILayerZeroEndpoint",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "uint16",
				"name": "_srcChainId",
				"type": "uint16"
			  },
			  { "internalType": "bytes", "name": "_srcAddress", "type": "bytes" },
			  { "internalType": "uint64", "name": "_nonce", "type": "uint64" },
			  { "internalType": "bytes", "name": "_payload", "type": "bytes" }
			],
			"name": "lzReceive",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  { "internalType": "uint16", "name": "", "type": "uint16" },
			  { "internalType": "uint16", "name": "", "type": "uint16" }
			],
			"name": "minDstGasLookup",
			"outputs": [
			  { "internalType": "uint256", "name": "", "type": "uint256" }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "uint16",
				"name": "_srcChainId",
				"type": "uint16"
			  },
			  { "internalType": "bytes", "name": "_srcAddress", "type": "bytes" },
			  { "internalType": "uint64", "name": "_nonce", "type": "uint64" },
			  { "internalType": "bytes", "name": "_payload", "type": "bytes" }
			],
			"name": "nonblockingLzReceive",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "owner",
			"outputs": [
			  { "internalType": "address", "name": "", "type": "address" }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "precrime",
			"outputs": [
			  { "internalType": "address", "name": "", "type": "address" }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "renounceOwnership",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "uint16",
				"name": "_srcChainId",
				"type": "uint16"
			  },
			  { "internalType": "bytes", "name": "_srcAddress", "type": "bytes" },
			  { "internalType": "uint64", "name": "_nonce", "type": "uint64" },
			  { "internalType": "bytes", "name": "_payload", "type": "bytes" }
			],
			"name": "retryMessage",
			"outputs": [],
			"stateMutability": "payable",
			"type": "function"
		  },
		  {
			"inputs": [
			  { "internalType": "address", "name": "account", "type": "address" },
			  {
				"internalType": "bytes32",
				"name": "synthKey",
				"type": "bytes32"
			  },
			  { "internalType": "uint256", "name": "amount", "type": "uint256" },
			  { "internalType": "uint16", "name": "dstChainId", "type": "uint16" }
			],
			"name": "sendBridgeSyToken",
			"outputs": [],
			"stateMutability": "payable",
			"type": "function"
		  },
		  {
			"inputs": [
			  { "internalType": "address", "name": "account", "type": "address" },
			  {
				"internalType": "bytes32",
				"name": "synthKey",
				"type": "bytes32"
			  },
			  { "internalType": "uint256", "name": "amount", "type": "uint256" }
			],
			"name": "sendBurn",
			"outputs": [],
			"stateMutability": "payable",
			"type": "function"
		  },
		  {
			"inputs": [
			  { "internalType": "address", "name": "account", "type": "address" },
			  {
				"internalType": "bytes32",
				"name": "collateralKey",
				"type": "bytes32"
			  },
			  { "internalType": "uint256", "name": "amount", "type": "uint256" }
			],
			"name": "sendDepositCollateral",
			"outputs": [],
			"stateMutability": "payable",
			"type": "function"
		  },
		  {
			"inputs": [
			  { "internalType": "address", "name": "account", "type": "address" },
			  {
				"internalType": "bytes32",
				"name": "srcSynthKey",
				"type": "bytes32"
			  },
			  {
				"internalType": "bytes32",
				"name": "dstSynthKey",
				"type": "bytes32"
			  },
			  {
				"internalType": "uint256",
				"name": "srcAmount",
				"type": "uint256"
			  },
			  {
				"internalType": "uint256",
				"name": "dstAmount",
				"type": "uint256"
			  },
			  {
				"internalType": "uint256",
				"name": "reclaimed",
				"type": "uint256"
			  },
			  { "internalType": "uint256", "name": "refund", "type": "uint256" },
			  { "internalType": "uint256", "name": "fee", "type": "uint256" },
			  { "internalType": "uint16", "name": "dstChainId", "type": "uint16" }
			],
			"name": "sendExchange",
			"outputs": [],
			"stateMutability": "payable",
			"type": "function"
		  },
		  {
			"inputs": [
			  { "internalType": "uint16", "name": "_version", "type": "uint16" },
			  { "internalType": "uint16", "name": "_chainId", "type": "uint16" },
			  {
				"internalType": "uint256",
				"name": "_configType",
				"type": "uint256"
			  },
			  { "internalType": "bytes", "name": "_config", "type": "bytes" }
			],
			"name": "setConfig",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "uint16",
				"name": "_dstChainId",
				"type": "uint16"
			  },
			  {
				"internalType": "uint16",
				"name": "_packetType",
				"type": "uint16"
			  },
			  { "internalType": "uint256", "name": "_minGas", "type": "uint256" }
			],
			"name": "setMinDstGas",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "_precrime",
				"type": "address"
			  }
			],
			"name": "setPrecrime",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  { "internalType": "uint16", "name": "_version", "type": "uint16" }
			],
			"name": "setReceiveVersion",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  { "internalType": "uint16", "name": "_version", "type": "uint16" }
			],
			"name": "setSendVersion",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "uint16",
				"name": "_srcChainId",
				"type": "uint16"
			  },
			  { "internalType": "bytes", "name": "_path", "type": "bytes" }
			],
			"name": "setTrustedRemote",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "uint16",
				"name": "_remoteChainId",
				"type": "uint16"
			  },
			  {
				"internalType": "bytes",
				"name": "_remoteAddress",
				"type": "bytes"
			  }
			],
			"name": "setTrustedRemoteAddress",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  { "internalType": "address", "name": "newOwner", "type": "address" }
			],
			"name": "transferOwnership",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  { "internalType": "uint16", "name": "", "type": "uint16" }
			],
			"name": "trustedRemoteLookup",
			"outputs": [{ "internalType": "bytes", "name": "", "type": "bytes" }],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  { "internalType": "address", "name": "token", "type": "address" },
			  { "internalType": "uint256", "name": "amount", "type": "uint256" }
			],
			"name": "withdrawAsset",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  { "stateMutability": "payable", "type": "receive" }
		]
	  }
	}
  }
  